Cancel the paid plan at the end of the current billing cycle. Access continues until then.
const url = 'https://api.pingram.io/account/subscription/cancel';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"reason":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.pingram.io/account/subscription/cancel \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "reason": "example" }'Authorizations
Request Bodyrequired
POST /account/subscription/cancel request.
object
Optional note about why you are canceling. Helps us improve the product.
Examplegenerated
{ "reason": "example"}Responses
200
Successful response
GET /account response: public plan fields for the authenticated account.
object
When omitted, defaults to LATEST_BILLING_VERSION.
ISO date (YYYY-MM-DD) when the billing cycle resets.
When true, paid accounts move up one budget tier at 90% of the monthly budget.
Email alerts for monthly usage. New accounts start enabled for the creator at 80% and 100%.
object
When false, saved addresses and thresholds are kept but no email is sent.
Addresses that receive threshold emails. At most three.
Percents to email, from 5 to 100 in steps of 5. At most two. At least one is required while enabled.
Example
{ "accountType": "free", "billingVersion": 1, "status": "verified", "subscriptionStatus": "active", "pendingDowngradeAccountType": "free"}400
Bad Request - validation errors, invalid input
Standard error response for API errors.
object
Unique tracking ID for the request.
Structured error details for API error responses.
object
Machine-readable error code.
Human-readable error message.
Actionable hint for fixing the error.
Examplegenerated
{ "trackingId": "example", "error": { "code": "example", "message": "example", "fix": "example" }}401
Unauthorized
402
Payment Required - usage limits exceeded
Standard error response for API errors.
object
Unique tracking ID for the request.
Structured error details for API error responses.
object
Machine-readable error code.
Human-readable error message.
Actionable hint for fixing the error.
Examplegenerated
{ "trackingId": "example", "error": { "code": "example", "message": "example", "fix": "example" }}500
Internal Server Error
502
Bad Gateway - provider error
Standard error response for API errors.
object
Unique tracking ID for the request.
Structured error details for API error responses.
object
Machine-readable error code.
Human-readable error message.
Actionable hint for fixing the error.
Examplegenerated
{ "trackingId": "example", "error": { "code": "example", "message": "example", "fix": "example" }}