---
title: "Start a Stripe Checkout for a paid plan; returns {url}"
method: POST
path: "/v1/billing/checkout"
---

# Start a Stripe Checkout for a paid plan; returns {url}

`POST /v1/billing/checkout`

## Request

- Base URL: `https://api.recallsapi.com`
- URL: `https://api.recallsapi.com/v1/billing/checkout`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Starter $29, Growth $79, Scale $199 a month; a year is 10 times the monthly price. Card payments.

## Request body

- object
  - `plan` 'starter' | 'growth' | 'scale', required
  - `interval` 'month' | 'year'

## Response `200`

OK

- object
  - `url` string, uri

## Other responses

- `400`: Invalid input
- `401`: Missing or invalid API key
- `409`: The account already has a subscription; change it in the billing portal
- `429`: Daily quota reached
- `503`: Plan not on sale yet

---

[API](https://skmtc.dev/recallsapi/apis/recallsapi-com.md) · [All operations](https://skmtc.dev/recallsapi/apis/recallsapi-com/llms.txt) · [OpenAPI document](https://skmtc.dev/recallsapi/apis/recallsapi-com/revisions/2501df40ea54?raw)
