Skip to main content
POST
Returns the amount that an order for a plan and a billing period would charge your account, with the period discount and an optional coupon already applied. Nothing is created and the coupon is not used. Call it before Create Order to show the final price. Needs the billing:read scope when called with an API key. It is limited to 10 requests per minute.
string
required
The plan name, such as starter-1, pro-4 or business-12. The names and prices are in List Plans.
integer
required
The billing period: 1, 3, 6 or 12. A 3-month period gets 10% off the monthly price, 6 months get 15% off and 12 months get 25% off.
string
An optional discount coupon code. The quote checks the coupon the same way Create Order does.
The price depends on the account. If the account has a plan from before the current grid and buys the equivalent of its own plan, legacy_price is true and total is the price it already pays, until legacy_price_until. Only the monthly period keeps that price. Longer periods use the current price with the period discount.

Response

object

Error Responses

string
The error code indicating the reason for failure. Possible values:
  • AUTH_TOKEN_MISSING, API_KEY_INVALID, SESSION_REVOKED: The Authorization header is missing, the API key is invalid, or the dashboard session was revoked (401).
  • API_KEY_IP_DENIED, API_KEY_SCOPE_DENIED: The API key is used from an IP outside its allowlist, or it lacks the billing:read scope (403).
  • USER_NOT_FOUND: The authenticated user was not found.
  • INVALID_PAYLOAD: The request body failed validation.
  • INVALID_PLAN: The plan name does not exist.
  • INVALID_MONTHS: months is not 1, 3, 6 or 12.
  • PLAN_NOT_FOR_SALE: The plan is no longer sold (400).
  • COUPON_INVALID, COUPON_INACTIVE, COUPON_NOT_STARTED, COUPON_EXPIRED, COUPON_EXHAUSTED, COUPON_USER_LIMIT, COUPON_AUDIENCE, COUPON_PLAN, COUPON_DURATION: The coupon cannot be used for this account, plan or period (400). The codes are listed in Errors.
  • RATE_LIMIT_EXCEEDED: More than 10 requests in a minute (429).
  • INTERNAL_SERVER_ERROR: An unexpected server error occurred.
Last modified on November 1, 2026