TicketUserServices

<back to all web services

WebshopProductDetailsRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdmin, MobileAppRequires the permission:ReadData
The following routes are available for this service:
GET/Webshop/Product/{Id}/Details
import Foundation
import ServiceStack

public class WebshopProductDetailsRequest : Codable
{
    public var id:Int?

    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 WebshopProductDetailsRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /Webshop/Product/{Id}/Details HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	product: 
	{
		id: 0,
		ownerId: 0,
		name: String,
		description: String,
		category: String,
		subCategory: String,
		defaultPriceMinor: 0,
		imageUrl: String,
		viewOrder: 0,
		status: String,
		payoutInfoId: 0,
		legacyItemId: 0,
		variants: 
		[
			{
				id: 0,
				productId: 0,
				size: String,
				color: String,
				stockOnHand: 0,
				quantitySold: 0,
				availableQuantity: 0,
				status: String
			}
		]
	},
	statusCode: 0,
	message: String
}