| Requires any of the roles: | Admin, TeamAdmin | Required permission: | Tickets.Add |
| POST | /Webshop/Product |
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using TicketUserServices.ServiceModel;
using TicketUserServices.ServiceModel.Types;
namespace TicketUserServices.ServiceModel
{
public partial class WebshopProductCreateRequest
{
public virtual WebshopProduct Item { get; set; }
public virtual int? OwnerId { get; set; }
}
public partial class WebshopProductResult
{
public virtual WebshopProductSummary Product { get; set; }
public virtual int StatusCode { get; set; }
public virtual string Message { get; set; }
}
public partial class WebshopProductSummary
{
public WebshopProductSummary()
{
Variants = new List<WebshopVariantSummary>{};
}
public virtual int ID { get; set; }
public virtual int OwnerId { get; set; }
public virtual string Name { get; set; }
public virtual string Description { get; set; }
public virtual string Category { get; set; }
public virtual string SubCategory { get; set; }
public virtual int DefaultPriceMinor { get; set; }
public virtual string ImageUrl { get; set; }
public virtual int ViewOrder { get; set; }
public virtual string Status { get; set; }
public virtual int? PayoutInfoId { get; set; }
public virtual int? LegacyItemId { get; set; }
public virtual List<WebshopVariantSummary> Variants { get; set; }
}
public partial class WebshopVariantSummary
{
public virtual int ID { get; set; }
public virtual int ProductId { get; set; }
public virtual string Size { get; set; }
public virtual string Color { get; set; }
public virtual int StockOnHand { get; set; }
public virtual int QuantitySold { get; set; }
public virtual int AvailableQuantity { get; set; }
public virtual string Status { get; set; }
}
}
namespace TicketUserServices.ServiceModel.Types
{
public partial class WebshopProduct
{
public virtual int ID { get; set; }
public virtual int OwnerId { get; set; }
[StringLength(200)]
public virtual string Name { get; set; }
[StringLength(2000)]
public virtual string Description { get; set; }
[StringLength(150)]
public virtual string Category { get; set; }
[StringLength(150)]
public virtual string SubCategory { get; set; }
public virtual int DefaultPriceMinor { get; set; }
[StringLength(1500)]
public virtual string ImageUrl { get; set; }
public virtual int ViewOrder { get; set; }
[StringLength(20)]
public virtual string Status { get; set; }
public virtual int? PayoutInfoId { get; set; }
public virtual int? LegacyItemId { get; set; }
public virtual DateTime CreatedAt { get; set; }
public virtual DateTime UpdatedAt { get; set; }
}
}
C# WebshopProductCreateRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
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: text/csv
Content-Type: text/csv
Content-Length: length
{"item":{"id":0,"ownerId":0,"name":"String","description":"String","category":"String","subCategory":"String","defaultPriceMinor":0,"imageUrl":"String","viewOrder":0,"status":"String","payoutInfoId":0,"legacyItemId":0,"createdAt":"0001-01-01T00:00:00.0000000","updatedAt":"0001-01-01T00:00:00.0000000"},"ownerId":0}
HTTP/1.1 200 OK
Content-Type: text/csv
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"}