Skip to content
LeadityDocs

Billing

Get subscription

Read the account's plan and every credit expiry.

GETapi.leadity.io/v1/billing/subscription
Scope readMCP tool get_subscription

Answers the account's monthly plan, or null when it has none (most accounts buy one-time packs), any older plans still running out beside it, and every expiring credit on the balance grouped by the exact moment it expires. Credits from a one-time pack never expire and are not listed. Cancelling or changing a plan is done by a person on Whop, at manageUrl.

Headers

Authorizationstringrequired

Bearer, a space, then an API key: Bearer lk_api_... An MCP key is refused here with wrong_key_kind.

Response

subscriptionobject | nullrequired

The plan the account keeps, or null.

Show child attributes
planSkustringrequired

The plan's sku.

creditsintegerrequired

Credits each payment grants.

priceCentsintegerrequired

The price of each payment in US cents.

statusstringrequired

The plan's state on Whop: active, or past_due while a payment is failing.

cancelAtPeriodEndbooleanrequired

True once the plan was cancelled: it will not renew.

currentPeriodStartstringrequired

When the latest payment's credits were granted. An ISO 8601 timestamp in UTC.

currentPeriodEndstringrequired

When the latest payment's credits expire. An ISO 8601 timestamp in UTC.

nextPaymentAtstring | nullrequired

When Whop will next charge the plan, when known. An ISO 8601 timestamp in UTC, or null.

manageUrlstringrequired

Where a person manages or cancels the plan on Whop.

othersobject[]required

Other plans still live beside it, newest first: a plan that stopped renewing when a new size started. Usually empty.

Show child attributes
planSkustringrequired

The plan's sku.

creditsintegerrequired

Credits each payment grants.

priceCentsintegerrequired

The price of each payment in US cents.

statusstringrequired

The plan's state on Whop: active, or past_due while a payment is failing.

cancelAtPeriodEndbooleanrequired

True once the plan was cancelled: it will not renew.

creditsExpireAtstring | nullrequired

When this plan's latest credits expire. An ISO 8601 timestamp in UTC, or null.

remainingCreditsintegerrequired

What is left of this plan's own credits.

expiringobject[]required

Every expiring credit on the balance, one entry per exact expiry, soonest first. Expiring credits are spent first.

Show child attributes
creditsintegerrequired
expiresAtstringrequired

When these credits expire. An ISO 8601 timestamp in UTC.

Errors

Every refusal answers { error, message } with the status below. The full list is on the Errors page.

CodeStatusMeaningExtra fields
unauthorized401The API key is missing, malformed, revoked or expired.-
wrong_key_kind401This key opens the other surface: an API key works on the HTTP API, an MCP key on the MCP server.-
account_suspended403The account is suspended.-
email_not_verified403The account's email address is not verified yet.-
rate_limited429Too many requests. Wait for the Retry-After seconds and try again.retryAfterSeconds: The seconds to wait, the same number as the Retry-After header.
try_again503Leadity could not answer just now. Retry in a moment, with the same Idempotency-Key on a spending call.retryAfterSeconds: When a request with this Idempotency-Key is still being processed: the seconds to wait before retrying with the same key, as the Retry-After header says.
internal_error500Something failed on our side. Nothing was charged twice.body: On the MCP server, when Leadity answered in a shape the tool does not publish: that answer as it came.