ServiceStack Home (Live)

<back to all web services

PurchaseSubscription

The following routes are available for this service:
POST/PurchaseSubscription
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Subscriptions:
    section: Optional[str] = None
    success: bool = False
    activated: bool = False
    purchased_order_id: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PurchaseSubscription(ICardInfo, IAddress):
    code: Optional[str] = None
    coupon: Optional[str] = None
    renewal_ref: Optional[str] = None
    upgrade_ref: Optional[str] = None
    quantity: int = 0
    user_auth_id: Optional[str] = None
    sku_id: int = 0
    is_small_company: Optional[bool] = None
    is_non_profit: Optional[bool] = None
    agree_terms: bool = False
    first_name: Optional[str] = None
    last_name: Optional[str] = None
    email: Optional[str] = None
    password: Optional[str] = None
    company: Optional[str] = None
    phone_number: Optional[str] = None
    address_line1: Optional[str] = None
    address_line2: Optional[str] = None
    address_city: Optional[str] = None
    address_zip: Optional[str] = None
    address_state: Optional[str] = None
    address_country: Optional[str] = None
    license_name: Optional[str] = None
    license_email: Optional[str] = None
    license_address: Optional[str] = None
    card_number: Optional[str] = None
    cvc: Optional[str] = None
    exp_month: int = 0
    exp_year: int = 0
    notes: Optional[str] = None

Python PurchaseSubscription DTOs

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

HTTP + XML

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

POST /PurchaseSubscription HTTP/1.1 
Host: account.servicestack.net 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<PurchaseSubscription xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/MyApp.ServiceModel">
  <AddressCity>String</AddressCity>
  <AddressCountry>String</AddressCountry>
  <AddressLine1>String</AddressLine1>
  <AddressLine2>String</AddressLine2>
  <AddressState>String</AddressState>
  <AddressZip>String</AddressZip>
  <AgreeTerms>false</AgreeTerms>
  <CardNumber>String</CardNumber>
  <Code>String</Code>
  <Company>String</Company>
  <Coupon>String</Coupon>
  <Cvc>String</Cvc>
  <Email>String</Email>
  <ExpMonth>0</ExpMonth>
  <ExpYear>0</ExpYear>
  <FirstName>String</FirstName>
  <IsNonProfit>false</IsNonProfit>
  <IsSmallCompany>false</IsSmallCompany>
  <LastName>String</LastName>
  <LicenseAddress>String</LicenseAddress>
  <LicenseEmail>String</LicenseEmail>
  <LicenseName>String</LicenseName>
  <Notes>String</Notes>
  <Password>String</Password>
  <PhoneNumber>String</PhoneNumber>
  <Quantity>0</Quantity>
  <RenewalRef>String</RenewalRef>
  <SkuId>0</SkuId>
  <UpgradeRef>String</UpgradeRef>
  <UserAuthId>String</UserAuthId>
</PurchaseSubscription>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<Subscriptions xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/MyApp.ServiceModel">
  <Activated>false</Activated>
  <PurchasedOrderId>0</PurchasedOrderId>
  <Section>String</Section>
  <Success>false</Success>
</Subscriptions>