| Requires any of the roles: | Admin, TeamAdmin | Required permission: | Tickets.Add |
| POST | /Webshop/Product |
|---|
import Foundation
import ServiceStack
public class WebshopProductCreateRequest : Codable
{
public var item:WebshopProduct?
public var ownerId:Int?
required public init(){}
}
public class WebshopProduct : Codable
{
public var id:Int?
public var ownerId:Int?
// @StringLength(200)
public var name:String?
// @StringLength(2000)
public var Description:String?
// @StringLength(150)
public var category:String?
// @StringLength(150)
public var subCategory:String?
public var defaultPriceMinor:Int?
// @StringLength(1500)
public var imageUrl:String?
public var viewOrder:Int?
// @StringLength(20)
public var status:String?
public var payoutInfoId:Int?
public var legacyItemId:Int?
public var createdAt:Date?
public var updatedAt:Date?
required public init(){}
}
public class WebshopProductResult : Codable
{
public var product:WebshopProductSummary?
public var statusCode:Int?
public var message:String?
required public init(){}
}
public class WebshopProductSummary : Codable
{
public var id:Int?
public var ownerId:Int?
public var name:String?
public var Description:String?
public var category:String?
public var subCategory:String?
public var defaultPriceMinor:Int?
public var imageUrl:String?
public var viewOrder:Int?
public var status:String?
public var payoutInfoId:Int?
public var legacyItemId:Int?
public var variants:[WebshopVariantSummary] = []
required public init(){}
}
public class WebshopVariantSummary : Codable
{
public var id:Int?
public var productId:Int?
public var size:String?
public var color:String?
public var stockOnHand:Int?
public var quantitySold:Int?
public var availableQuantity:Int?
public var status:String?
required public init(){}
}
Swift WebshopProductCreateRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /Webshop/Product HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<WebshopProductCreateRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
<Item xmlns:d2p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types">
<d2p1:Category>String</d2p1:Category>
<d2p1:CreatedAt>0001-01-01T00:00:00</d2p1:CreatedAt>
<d2p1:DefaultPriceMinor>0</d2p1:DefaultPriceMinor>
<d2p1:Description>String</d2p1:Description>
<d2p1:ID>0</d2p1:ID>
<d2p1:ImageUrl>String</d2p1:ImageUrl>
<d2p1:LegacyItemId>0</d2p1:LegacyItemId>
<d2p1:Name>String</d2p1:Name>
<d2p1:OwnerId>0</d2p1:OwnerId>
<d2p1:PayoutInfoId>0</d2p1:PayoutInfoId>
<d2p1:Status>String</d2p1:Status>
<d2p1:SubCategory>String</d2p1:SubCategory>
<d2p1:UpdatedAt>0001-01-01T00:00:00</d2p1:UpdatedAt>
<d2p1:ViewOrder>0</d2p1:ViewOrder>
</Item>
<OwnerId>0</OwnerId>
</WebshopProductCreateRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<WebshopProductResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
<Message>String</Message>
<Product>
<Category>String</Category>
<DefaultPriceMinor>0</DefaultPriceMinor>
<Description>String</Description>
<ID>0</ID>
<ImageUrl>String</ImageUrl>
<LegacyItemId>0</LegacyItemId>
<Name>String</Name>
<OwnerId>0</OwnerId>
<PayoutInfoId>0</PayoutInfoId>
<Status>String</Status>
<SubCategory>String</SubCategory>
<Variants>
<WebshopVariantSummary>
<AvailableQuantity>0</AvailableQuantity>
<Color>String</Color>
<ID>0</ID>
<ProductId>0</ProductId>
<QuantitySold>0</QuantitySold>
<Size>String</Size>
<Status>String</Status>
<StockOnHand>0</StockOnHand>
</WebshopVariantSummary>
</Variants>
<ViewOrder>0</ViewOrder>
</Product>
<StatusCode>0</StatusCode>
</WebshopProductResult>