Cancel Subscription Update
curl --request POST \
--url https://uat-api.clinkbill.com/api/subscription/{id}/update/cancel \
--header 'X-API-KEY: <api-key>' \
--header 'X-Timestamp: <x-timestamp>'HttpResponse<String> response = Unirest.post("https://uat-api.clinkbill.com/api/subscription/{id}/update/cancel")
.header("X-Timestamp", "<x-timestamp>")
.header("X-API-KEY", "<api-key>")
.asString();import requests
url = "https://uat-api.clinkbill.com/api/subscription/{id}/update/cancel"
headers = {
"X-Timestamp": "<x-timestamp>",
"X-API-KEY": "<api-key>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Timestamp': '<x-timestamp>', 'X-API-KEY': '<api-key>'}
};
fetch('https://uat-api.clinkbill.com/api/subscription/{id}/update/cancel', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"code": 123,
"msg": "<string>",
"data": {
"subscriptionId": "<string>",
"customerId": "<string>",
"productId": "<string>",
"priceId": "<string>",
"priceSnapshotId": "<string>",
"createTime": 123,
"quantity": 123,
"paymentMethodType": "<string>",
"paymentInstrumentId": "<string>",
"status": "<string>",
"billing": "<string>",
"recurringInvoiceItem": {
"invoiceItemId": "<string>",
"amount": 123,
"discountAmount": 123,
"paymentAmount": 123,
"couponTerms": "<string>",
"promotionCode": "<string>",
"periodStart": 123,
"periodEnd": 123,
"proration": true,
"price": {
"productId": "<string>",
"productName": "<string>",
"priceId": "<string>",
"priceSnapshotId": "<string>",
"unitAmount": 123,
"quantity": 123,
"recurring": {
"trialPeriodDays": 123,
"intervalCount": 123
}
}
},
"merchantReference": "<string>",
"sessionId": "<string>",
"trialStart": 123,
"trialEnd": 123,
"currentPeriodStart": 123,
"currentPeriodEnd": 123,
"cancelAt": 123,
"cancelAtPeriodEnd": true,
"canceledAt": 123,
"cancelReason": "<string>",
"upcomingInvoiceItem": {
"invoiceItemId": "<string>",
"amount": 123,
"discountAmount": 123,
"paymentAmount": 123,
"couponTerms": "<string>",
"promotionCode": "<string>",
"periodStart": 123,
"periodEnd": 123,
"proration": true,
"price": {
"productId": "<string>",
"productName": "<string>",
"priceId": "<string>",
"priceSnapshotId": "<string>",
"unitAmount": 123,
"quantity": 123,
"recurring": {
"trialPeriodDays": 123,
"intervalCount": 123
}
}
},
"scheduledPhases": [
{
"sequence": 2,
"effectiveCycle": 2,
"priceSnapshotId": "<string>",
"quantity": 2,
"metadata": {}
}
],
"elapsedCycles": 123,
"metadata": {}
}
}"<string>"Subscription
取消待生效订阅变更
Cancel a pending subscription plan update that has not taken effect yet.
POST
/
subscription
/
{id}
/
update
/
cancel
Cancel Subscription Update
curl --request POST \
--url https://uat-api.clinkbill.com/api/subscription/{id}/update/cancel \
--header 'X-API-KEY: <api-key>' \
--header 'X-Timestamp: <x-timestamp>'HttpResponse<String> response = Unirest.post("https://uat-api.clinkbill.com/api/subscription/{id}/update/cancel")
.header("X-Timestamp", "<x-timestamp>")
.header("X-API-KEY", "<api-key>")
.asString();import requests
url = "https://uat-api.clinkbill.com/api/subscription/{id}/update/cancel"
headers = {
"X-Timestamp": "<x-timestamp>",
"X-API-KEY": "<api-key>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Timestamp': '<x-timestamp>', 'X-API-KEY': '<api-key>'}
};
fetch('https://uat-api.clinkbill.com/api/subscription/{id}/update/cancel', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"code": 123,
"msg": "<string>",
"data": {
"subscriptionId": "<string>",
"customerId": "<string>",
"productId": "<string>",
"priceId": "<string>",
"priceSnapshotId": "<string>",
"createTime": 123,
"quantity": 123,
"paymentMethodType": "<string>",
"paymentInstrumentId": "<string>",
"status": "<string>",
"billing": "<string>",
"recurringInvoiceItem": {
"invoiceItemId": "<string>",
"amount": 123,
"discountAmount": 123,
"paymentAmount": 123,
"couponTerms": "<string>",
"promotionCode": "<string>",
"periodStart": 123,
"periodEnd": 123,
"proration": true,
"price": {
"productId": "<string>",
"productName": "<string>",
"priceId": "<string>",
"priceSnapshotId": "<string>",
"unitAmount": 123,
"quantity": 123,
"recurring": {
"trialPeriodDays": 123,
"intervalCount": 123
}
}
},
"merchantReference": "<string>",
"sessionId": "<string>",
"trialStart": 123,
"trialEnd": 123,
"currentPeriodStart": 123,
"currentPeriodEnd": 123,
"cancelAt": 123,
"cancelAtPeriodEnd": true,
"canceledAt": 123,
"cancelReason": "<string>",
"upcomingInvoiceItem": {
"invoiceItemId": "<string>",
"amount": 123,
"discountAmount": 123,
"paymentAmount": 123,
"couponTerms": "<string>",
"promotionCode": "<string>",
"periodStart": 123,
"periodEnd": 123,
"proration": true,
"price": {
"productId": "<string>",
"productName": "<string>",
"priceId": "<string>",
"priceSnapshotId": "<string>",
"unitAmount": 123,
"quantity": 123,
"recurring": {
"trialPeriodDays": 123,
"intervalCount": 123
}
}
},
"scheduledPhases": [
{
"sequence": 2,
"effectiveCycle": 2,
"priceSnapshotId": "<string>",
"quantity": 2,
"metadata": {}
}
],
"elapsedCycles": 123,
"metadata": {}
}
}"<string>"授权
Your secret API key obtained from the Clink dashboard (Developers section)
请求头
Current timestamp in milliseconds since Unix epoch (required for request signing)
示例:
"1783513683000"
路径参数
Unique identifier of the subscription
⌘I