ServiceStack Home (Live)

<back to all web services

ActivateSubscription

The following routes are available for this service:
GET/subscriptions/activate/{ExternalRef}
POST/subscriptions/activate
GET POST/ActivateSubscription
import Foundation
import ServiceStack

public class ActivateSubscription : IPost, Codable
{
    public var externalRef:String
    public var userAuthId:String
    public var agreeTerms:Bool
    public var firstName:String
    public var lastName:String
    public var email:String
    public var password:String
    public var company:String
    public var phoneNumber:String
    public var addressLine1:String
    public var addressLine2:String
    public var addressCity:String
    public var addressZip:String
    public var addressState:String
    public var addressCountry:String

    required public init(){}
}

public class ActivateSubscriptionResponse : Codable
{
    public var subscription:Subscription
    public var responseStatus:ResponseStatus

    required public init(){}
}

public class Subscription : Codable
{
    public var id:Int
    public var customerId:Int
    public var email:String
    public var skuId:Int
    public var skuName:String
    public var skuType:SkuType
    public var code:String
    public var quantity:Int
    public var supportQuantity:Int
    public var total:Int
    public var isPlan:Bool
    public var isRenewal:Bool
    public var subscriptionDurationDays:Int
    public var renewalDate:Date?
    public var licenseRef:String
    public var licenseName:String
    public var licenseAddress:String
    public var licenseType:LicenseType
    public var expiryDate:Date
    public var licenseKey:LicenseKey
    public var licenseKeyText:String
    public var createdDate:Date
    public var modifiedDate:Date
    public var cancelledDate:Date?
    public var stripeSubscriptionId:String
    public var emailId:Int?
    public var emailRenewalId:Int?
    public var emailExpiredId:Int?
    public var renewalSubscriptionId:Int?
    public var externalRef:String
    public var notes:String
    public var error:String

    required public init(){}
}

public enum SkuType : String, Codable
{
    case Product
    case PerDev
    case PerCore
    case Site
    case Support
    case Training
    case Register
    case Payment
}

public enum LicenseType : String, Codable
{
    case Free
    case FreeIndividual
    case FreeOpenSource
    case Indie
    case Business
    case Enterprise
    case TextIndie
    case TextBusiness
    case OrmLiteIndie
    case OrmLiteBusiness
    case RedisIndie
    case RedisBusiness
    case AwsIndie
    case AwsBusiness
    case Trial
    case Site
    case TextSite
    case RedisSite
    case OrmLiteSite
}

public class LicenseKey : Codable
{
    public var ref:String
    public var name:String
    public var type:LicenseType
    public var meta:Int
    public var hash:String
    public var halg:String
    public var expiry:Date

    required public init(){}
}


Swift ActivateSubscription DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

POST /subscriptions/activate HTTP/1.1 
Host: account.servicestack.net 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"externalRef":"String","userAuthId":"String","agreeTerms":false,"firstName":"String","lastName":"String","email":"String","password":"String","company":"String","phoneNumber":"String","addressLine1":"String","addressLine2":"String","addressCity":"String","addressZip":"String","addressState":"String","addressCountry":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"subscription":{"id":0,"customerId":0,"email":"String","skuId":0,"skuName":"String","skuType":"Product","code":"String","quantity":0,"supportQuantity":0,"total":0,"isPlan":false,"isRenewal":false,"subscriptionDurationDays":0,"renewalDate":"\/Date(-62135596800000-0000)\/","licenseRef":"String","licenseName":"String","licenseAddress":"String","licenseType":"Free","expiryDate":"\/Date(-62135596800000-0000)\/","licenseKey":{"ref":"String","name":"String","type":"Free","meta":0,"hash":"String","halg":"String","expiry":"\/Date(-62135596800000-0000)\/"},"licenseKeyText":"String","createdDate":"\/Date(-62135596800000-0000)\/","modifiedDate":"\/Date(-62135596800000-0000)\/","cancelledDate":"\/Date(-62135596800000-0000)\/","stripeSubscriptionId":"String","emailId":0,"emailRenewalId":0,"emailExpiredId":0,"renewalSubscriptionId":0,"externalRef":"String","notes":"String","error":"String"},"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}