Billhighway Cloud API

<back to all web services

MemberSubscriptionPaymentRq

The following routes are available for this service:
GET/signup/api/memberSubscriptionInvoice/{memberSubscriptionInvoiceID}
import Foundation
import ServiceStack

public class MemberSubscriptionPaymentRq : IApiRequest, Codable
{
    public var memberSubscriptionInvoiceId:Int?

    required public init(){}
}

public class GroupSubscriptionInfoGetRs : IApiResponse, Codable
{
    public var signupInfo:GroupSubscriptionInfo?
    public var links:[Link] = []

    required public init(){}
}

public class GroupSubscriptionInfo : Codable
{
    public var brandingInfo:GroupBrandingInfo?
    public var subscriptions:[GroupSubscriptionInvoiceType] = []
    public var formInfo:SubscriberForm?
    public var campaigns:[CampaignItem] = []

    required public init(){}
}

public class GroupBrandingInfo : Codable
{
    public var items:[ApiParameter] = []
    public var countries:[CountryInfo] = []
    public var states:[StateInfo] = []

    required public init(){}
}

public class ApiParameter : Codable
{
    public var name:String?
    public var value:String?

    required public init(){}
}

public class CountryInfo : Codable
{
    public var countryID:Int?
    public var abbr:String?
    public var fullName:String?
    public var isoA2:String?
    public var isoNum:Int?

    required public init(){}
}

public class StateInfo : Codable
{
    public var countryID:Int?
    public var stateID:Int?
    public var abbr:String?
    public var fullName:String?

    required public init(){}
}

public class GroupSubscriptionInvoiceType : Codable
{
    public var id:Int?
    public var name:String?
    public var subscriptionInvoices:[GroupSubscriptionInvoice] = []
    public var subscriptionInvTemplateTypeID:Int?
    public var templateTypeName:String?

    required public init(){}
}

public class GroupSubscriptionInvoice : Codable
{
    public var id:Int?
    public var lineageID:Int?
    public var typeID:Int?
    public var Description:String?
    public var invoiceItems:[GroupSubscriptionInvoiceItem] = []
    public var frequencyTotals:[SubscriptionFrequency] = []
    public var clientSubscriptionTypeID:String?

    required public init(){}
}

public class GroupSubscriptionInvoiceItem : Codable
{
    public var id:Int?
    public var Description:String?
    public var amount:Double?
    public var frequencies:[SubscriptionFrequency] = []

    required public init(){}
}

public class SubscriptionFrequency : Codable
{
    public var id:Int?
    public var Description:String?
    public var friendlyDescription:String?
    public var totalAmount:Double?
    public var installmentAmount:Double?
    public var numInstallments:Int?

    required public init(){}
}

public class SubscriberForm : Codable
{
    public var id:Int?
    public var formTempateID:Int?
    public var subscriptionInvoiceID:Int?
    public var signupTypeID:Int?
    public var fields:[SubscriberFormField] = []

    required public init(){}
}

public class SubscriberFormField : Codable
{
    public var name:String?
    public var value:String?

    required public init(){}
}

public class CampaignItem : Codable
{
    public var id:Int?
    public var name:String?
    public var subTitle:String?
    public var Description:String?
    public var hasGoal:Bool?
    public var detailUri:String?
    public var theme:CampaignTheme?
    public var goal:CampaignGoal?
    public var levels:[CampaignLevel] = []
    public var logoUrl:String?
    public var highResolutionLogoUrl:String?
    public var signup:Signup?

    required public init(){}
}

public class CampaignTheme : Codable
{
    public var id:Int?
    public var name:String?
    public var mainColor:String?
    public var secondaryColor:String?
    public var iPhone:CampaignThemeImage?
    public var iPhoneRetina:CampaignThemeImage?

    required public init(){}
}

public class CampaignThemeImage : Codable
{
    public var backgroundImage:String?
    public var icon:String?

    required public init(){}
}

public class CampaignGoal : Codable
{
    public var target:Double?
    public var actual:Double?

    required public init(){}
}

public class CampaignLevel : Codable
{
    public var sequence:Int?
    public var amount:Double?
    public var Description:String?

    required public init(){}
}

public class Signup : Codable
{
    public var showOnNewMembership:Bool?
    public var showOnSignupRenewal:Bool?
    public var showOtherAmount:Bool?

    required public init(){}
}

public class Link : Codable
{
    public var rel:String?
    public var url:String?

    required public init(){}
}


Swift MemberSubscriptionPaymentRq 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 /signup/api/memberSubscriptionInvoice/{memberSubscriptionInvoiceID} HTTP/1.1 
Host: devapi.billhighway.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	SignupInfo: 
	{
		BrandingInfo: 
		{
			Items: 
			[
				{
					Name: String,
					Value: String
				}
			]
		},
		FormInfo: 
		{
			ID: 0,
			FormTempateID: 0,
			SubscriptionInvoiceID: 0,
			SignupTypeID: 0,
			Fields: 
			[
				{
					FormTemplateFieldID: 0,
					Name: String,
					Value: String
				}
			]
		}
	},
	Links: 
	[
		{
			Rel: String,
			Url: String
		}
	]
}