Table of Contents | ||||
---|---|---|---|---|
|
Overview
The
Table of Contents | ||||
---|---|---|---|---|
|
...
Overview
The following operations allow you to work with Subscriptions. Click an operation name to see details on how to use it.
...
This section provides further details on the operations related to subscriptions.
Anchor | ||||
---|---|---|---|---|
|
...
subscription
The
operation creates a subscription.createSubscription
Code Block | ||||
---|---|---|---|---|
| ||||
<killbill.createSubscription> <accountId>{$ctx:accountId}</accountId> <externalKey>{$ctx:externalKey}</externalKey> <bundleId>{$ctx:bundleId}</bundleId> <subscriptionId>{$ctx:subscriptionId}</subscriptionId> <startDate>{$ctx:startDate}</startDate> <productName>{$ctx:productName}</productName> <productCategory>{$ctx:productCategory}</productCategory> <billingPeriod>{$ctx:billingPeriod}</billingPeriod> <phaseType>{$ctx:phaseType}</phaseType> <priceList>{$ctx:priceList}</priceList> <sourceType>{$ctx:sourceType}</sourceType> <cancelledDate>{$ctx:cancelledDate}</cancelledDate> <chargedThroughDate>{$ctx:chargedThroughDate}</chargedThroughDate> <billingStartDate>{$ctx:billingStartDate}</billingStartDate> <state>{$ctx:state}</state> <billingEndDate>{$ctx:billingEndDate}</billingEndDate> <events>{$ctx:events}</events> <priceOverrides>{$ctx:priceOverrides}</priceOverrides> <requestedDate>{$ctx:requestedDate}</requestedDate> <callCompletion>{$ctx:callCompletion}</callCompletion> <callTimeoutSec>{$ctx:callTimeoutSec}</callTimeoutSec> <pluginProperty>{$ctx:pluginProperty}</pluginProperty> <auditLogs>{$ctx:auditLogs}</auditLogs> <createdBy>{$ctx:createdBy}</createdBy> <reason>{$ctx:reason}</reason> <comment>{$ctx:comment}</comment> </killbill.createSubscription> |
Properties
accountId:
externalKey:
bundleId:
subscriptionId:
startDate:
productName:
productCategory:
billingPeriod:
phaseType:
priceList:
sourceType:
cancelledDate:
chargedThroughDate:
billingStartDate:
state:
billingEndDate:
events:
priceOverrides:
requestedDate:
callCompletion:
callTimeoutSec:
pluginProperty:
auditLogs:
createdBy:
reason:
comment:
...
Sample request
...
Following is a sample REST/JSON request that can be handled by the createsubscription
createSubscription
operation.
Code Block | ||||
---|---|---|---|---|
| ||||
{ "apiUrl":"http://127.0.0.1:8080", "apiVersion":"1.0", "username":"admin", "password":"password", "apiKey":"bob", "apiSecret":"lazar", "accountId": "33ca98be-2e86-4861-89df-31cd1f7207ef", "externalKey": "myBundleName", "productName": "Standard", "productCategory": "BASE", "billingPeriod": "MONTHLY", "priceList": "DEFAULT", "createdBy":"demo" } |
...
The u
operation retrieves a single subscription from the specified story.pdateSubscription
Code Block | ||||
---|---|---|---|---|
| ||||
<killbill.updateSubscription> <accountId>{$ctx:accountId}</accountId> <externalKey>{$ctx:externalKey}</externalKey> <bundleId>{$ctx:bundleId}</bundleId> <subscriptionId>{$ctx:subscriptionId}</subscriptionId> <startDate>{$ctx:startDate}</startDate> <productName>{$ctx:productName}</productName> <productCategory>{$ctx:productCategory}</productCategory> <billingPeriod>{$ctx:billingPeriod}</billingPeriod> <phaseType>{$ctx:phaseType}</phaseType> <priceList>{$ctx:priceList}</priceList> <sourceType>{$ctx:sourceType}</sourceType> <cancelledDate>{$ctx:cancelledDate}</cancelledDate> <chargedThroughDate>{$ctx:chargedThroughDate}</chargedThroughDate> <billingStartDate>{$ctx:billingStartDate}</billingStartDate> <state>{$ctx:state}</state> <billingEndDate>{$ctx:billingEndDate}</billingEndDate> <events>{$ctx:events}</events> <priceOverrides>{$ctx:priceOverrides}</priceOverrides> <requestedDate>{$ctx:requestedDate}</requestedDate> <callCompletion>{$ctx:callCompletion}</callCompletion> <callTimeoutSec>{$ctx:callTimeoutSec}</callTimeoutSec> <pluginProperty>{$ctx:pluginProperty}</pluginProperty> <auditLogs>{$ctx:auditLogs}</auditLogs> <createdBy>{$ctx:createdBy}</createdBy> <reason>{$ctx:reason}</reason> <comment>{$ctx:comment}</comment> </killbill.updateSubscription> |
Properties
accountId:
externalKey:
bundleId:
subscriptionId:
startDate:
productName:
productCategory:
billingPeriod:
phaseType:
priceList:
sourceType:
cancelledDate:
chargedThroughDate:
billingStartDate:
state:
billingEndDate:
events:
priceOverrides:
requestedDate:
callCompletion:
callTimeoutSec:
pluginProperty:
auditLogs:
createdBy:
reason:
comment:
...
Sample request
...
Following Following is a sample REST/JSON request that can be handled by the
operation.updateSubscription
...
Code Block | ||||
---|---|---|---|---|
| ||||
<killbill.deleteSubscription> <subscriptionId>{$ctx:subscriptionId}</subscriptionId> <requestedDate>{$ctx:requestedDate}</requestedDate> <callCompletion>{$ctx:callCompletion}</callCompletion> <callTimeoutSec>{$ctx:callTimeoutSec}</callTimeoutSec> <pluginProperty>{$ctx:pluginProperty}</pluginProperty> <createdBy>{$ctx:createdBy}</createdBy> <reason>{$ctx:reason}</reason> <comment>{$ctx:comment}</comment> <entitlementPolicy>{$ctx:entitlementPolicy}</entitlementPolicy> <billingPolicy>{$ctx:billingPolicy}</billingPolicy> <useRequestedDateForBilling>{$ctx:useRequestedDateForBilling}</useRequestedDateForBilling> </killbill.deleteSubscription> |
Properties
subscriptionId:
requestedDate:
callCompletion:
callTimeoutSec:
entitlementPolicy:
billingPolicy:
useRequestedDateForBilling:
pluginProperty:
createdBy:
reason:
comment:
...
Sample request
Following is a sample REST/JSON request that can be handled by the deleteSubscription
operation.
Code Block | ||||
---|---|---|---|---|
| ||||
{ "apiUrl":"http://127.0.0.1:8080", "apiVersion":"1.0", "username":"admin", "password":"password", "apiKey":"bob", "apiSecret":"lazar", "subscriptionId": "33ca98be-2e86-4861-89df-31cd1f7207ef", "createdBy":"demo" } |
Info | ||
---|---|---|
| ||
There are optional parameters available. For more information on the usage of these parameters please check the API document. |
Related Kill Bill documentation
http://killbill.io/api/#!/subscriptions/cancelEntitlementPlan
...
Code Block | ||||
---|---|---|---|---|
| ||||
<killbill.getSubscriptionById> <subscriptionId>{$ctx:subscriptionId}</subscriptionId> </killbill.getSubscriptionById> |
Properties
subscriptionId:
Anchor | ||||
---|---|---|---|---|
|
Following is a sample REST/JSON request that can be handled by the getSubscriptionById
operation.
Code Block | ||||
---|---|---|---|---|
| ||||
{ "apiUrl":"http://127.0.0.1:8080", "apiVersion":"1.0", "username":"admin", "password":"password", "apiKey":"bob", "apiSecret":"lazar", "subscriptionId": "33ca98be-2e86-4861-89df-31cd1f7207ef" } |
Related Kill Bill documentation
http://killbill.io/api/#!/subscriptions/getEntitlement
...
Following is a sample proxy service that illustrates how to connect to Kill Bill with the init
operation and use the createsubscription
getSubscriptionById
operation. The sample request for this proxy can be found in the createsubscription sample getSubscriptionById sample request.
Code Block | ||||
---|---|---|---|---|
| ||||
<proxy name="Kill Bill_createsubscription" startOnLoad="true" statistics="disable" tracexmlns="http://ws.apache.org/ns/synapse" name="getSubscriptionById" transports="https,http" statistics="disable" transportstrace="https,httpdisable" xmlnsstartOnLoad="http://ws.apache.org/ns/synapsetrue"> <target> <inSequence onError="faultHandlerSeq"><inSequence> <property name="apiUrl" expression="json-eval($.apiUrl)"/> <property name="apiKeyusername" expression="json-eval($.apiKeyusername)"/> <property name="formatpassword" expression="json-eval($.formatpassword)"/> <property name="textapiKey" expression="json-eval($.textapiKey)"/> <property name="storyIdapiVersion" expression="json-eval($.storyIdapiVersion)"/> <property name="projectIdapiSecret" expression="json-eval($.projectIdapiSecret)"/> <property name="enrichmentsblocking" expression="json-eval($.enrichmentsblocking)"/> <Kill Bill<property name="subscriptionId" expression="json-eval($.subscriptionId)"/> <killbill.init> <apiUrl>{$ctx:apiUrl}</apiUrl> <apiKey><username>{$ctx:apiKeyusername}</apiKey>username> <format><password>{$ctx:formatpassword}</format>password> <enrichments><apiKey>{$ctx:enrichmentsapiKey}</enrichments>apiKey> <apiSecret>{$ctx:apiSecret}</KillapiSecret> Bill.init> <Kill Bill.createsubscription> <apiVersion>{$ctx:apiVersion}</apiVersion> <text><blocking>{$ctx:textblocking}</text>blocking> </killbill.init> <storyId>{$ctx:storyId}</storyId><killbill.getSubscriptionById> <projectId><subscriptionId>{$ctx:projectIdsubscriptionId}</projectId>subscriptionId> </Kill Billkillbill.createsubscription>getSubscriptionById> <respond /> </inSequence> <outSequence> <send /> </outSequence> </target> <description /> </proxy> |