All Verbs | /buy/{Id} | ||
---|---|---|---|
GET | /Buy/{Id} | ||
All Verbs | /buy/{Id}/{Quantity} | ||
GET | /Buy |
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using MyApp.ServiceModel;
namespace MyApp.ServiceModel
{
public partial class Buy
: IGet
{
public virtual string Id { get; set; }
public virtual string Coupon { get; set; }
public virtual int? Quantity { get; set; }
public virtual string RenewalRef { get; set; }
public virtual string UpgradeRef { get; set; }
}
public partial class BuyResponse
{
public virtual string Coupon { get; set; }
public virtual string RenewalRef { get; set; }
public virtual string UpgradeRef { get; set; }
public virtual Sku Sku { get; set; }
public virtual QuoteResponse Quote { get; set; }
public virtual ResponseStatus ResponseStatus { get; set; }
}
public partial class QuoteResponse
{
public virtual int SkuId { get; set; }
public virtual string Code { get; set; }
public virtual int? CustomerId { get; set; }
public virtual bool ModifyingExistingSubscription { get; set; }
public virtual bool ChangingSubscriptions { get; set; }
public virtual bool SwitchingLicensingModels { get; set; }
public virtual bool ReplacesExistingQuantity { get; set; }
public virtual int? ExistingSubscriptionQuantity { get; set; }
public virtual int? NewSubscriptionQuantity { get; set; }
public virtual string UnusedAmount { get; set; }
public virtual bool ManualProrating { get; set; }
public virtual int UnusedDays { get; set; }
public virtual int Quantity { get; set; }
public virtual int MinQuantity { get; set; }
public virtual int? MaxQuantity { get; set; }
public virtual string Subtotal { get; set; }
public virtual string DiscountDescription { get; set; }
public virtual string DiscountReceived { get; set; }
public virtual string Discount { get; set; }
public virtual string Total { get; set; }
public virtual string ExpiryDate { get; set; }
public virtual string RenewalDate { get; set; }
public virtual bool IsReferrer { get; set; }
public virtual ResponseStatus ResponseStatus { get; set; }
}
public partial class Sku
{
public virtual int Id { get; set; }
public virtual int ProductId { get; set; }
public virtual SkuType Type { get; set; }
public virtual LicenseFeature Feature { get; set; }
public virtual string Code { get; set; }
public virtual string Name { get; set; }
public virtual string Notes { get; set; }
[Ignore]
public virtual int? MinQty { get; set; }
public virtual int? MaxQty { get; set; }
public virtual int Price { get; set; }
public virtual string Plan { get; set; }
public virtual int DiscountOff { get; set; }
public virtual string DiscountLabelOff { get; set; }
public virtual int ActualPrice { get; set; }
public virtual bool IsPlan { get; set; }
public virtual bool IsRenewal { get; set; }
public virtual int? SubscriptionDurationDays { get; set; }
public virtual int? ExpiryDurationDays { get; set; }
public virtual int? TrialPeriodDays { get; set; }
public virtual int SupportQty { get; set; }
public virtual int? CoresQty { get; set; }
public virtual DateTime CreatedDate { get; set; }
public virtual DateTime ModifiedDate { get; set; }
public virtual LicenseType LicenseType { get; set; }
public virtual bool Active { get; set; }
}
public enum SkuType
{
Product,
PerDev,
PerCore,
Site,
Support,
Training,
Register,
Payment,
}
}
namespace ServiceStack
{
[Flags]
public enum LicenseFeature
{
None = 0,
Free = 0,
Premium = 1,
Text = 2,
Client = 4,
Common = 8,
Redis = 16,
RedisSku = 18,
OrmLite = 32,
OrmLiteSku = 34,
ServiceStack = 64,
Server = 128,
Razor = 256,
Admin = 512,
Aws = 1024,
AwsSku = 1026,
All = 2047,
}
public enum LicenseType
{
Free,
FreeIndividual,
FreeOpenSource,
Indie,
Business,
Enterprise,
TextIndie,
TextBusiness,
OrmLiteIndie,
OrmLiteBusiness,
RedisIndie,
RedisBusiness,
AwsIndie,
AwsBusiness,
Trial,
Site,
TextSite,
RedisSite,
OrmLiteSite,
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /buy/{Id} HTTP/1.1
Host: account.servicestack.net
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"id":"String","coupon":"String","quantity":0,"renewalRef":"String","upgradeRef":"String"}
HTTP/1.1 200 OK Content-Type: text/jsonl Content-Length: length {"coupon":"String","renewalRef":"String","upgradeRef":"String","sku":{"id":0,"productId":0,"type":"Product","feature":0,"code":"String","name":"String","notes":"String","maxQty":0,"price":0,"plan":"String","discountOff":0,"discountLabelOff":"String","actualPrice":0,"isPlan":false,"isRenewal":false,"subscriptionDurationDays":0,"expiryDurationDays":0,"trialPeriodDays":0,"supportQty":0,"coresQty":0,"createdDate":"\/Date(-62135596800000-0000)\/","modifiedDate":"\/Date(-62135596800000-0000)\/","licenseType":"Free","active":false},"quote":{"skuId":0,"code":"String","customerId":0,"modifyingExistingSubscription":false,"changingSubscriptions":false,"switchingLicensingModels":false,"replacesExistingQuantity":false,"existingSubscriptionQuantity":0,"newSubscriptionQuantity":0,"unusedAmount":"String","manualProrating":false,"unusedDays":0,"quantity":0,"minQuantity":0,"maxQuantity":0,"subtotal":"String","discountDescription":"String","discountReceived":"String","discount":"String","total":"String","expiryDate":"String","renewalDate":"String","isReferrer":false,"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}},"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}