---
title: "Redeem a promo code"
method: POST
path: "/api/v2/account/promo-code"
tags: ["Account"]
---

# Redeem a promo code

`POST /api/v2/account/promo-code`

## Request

- Base URL: `https://www.endlesstravelplans.com`
- URL: `https://www.endlesstravelplans.com/api/v2/account/promo-code`
- Auth: HTTP bearer

Redeems a Pro promo code for the caller. Matching ignores case and stray spaces. A code that is unknown,
spent or already redeemed by this account is a 422 `promo_code_invalid` whose `message` says which.
Closed to guests.

## Request body

- object
  - `code` string, required

## Response `200`

the account block, as GET /account

- object
  - `pro` object
    - `has_access` boolean
    - `source` string
    - `plan` string, nullable
    - `expires_at` string
    - `manage` object
      - `kind` string
      - `url` string, nullable

## Other responses

- `401`: unauthenticated: No valid bearer token was sent.
- `422`
- `429`: rate_limited: A throttle or a per-account allowance refused the request; `retry_after` or `remaining` may be present.
- `500`: server_error: Unhandled failure; quote `request_id` to support.

---

[API](https://skmtc.dev/endlesstravelplans/apis/endless-travel-plans-api.md) · [All operations](https://skmtc.dev/endlesstravelplans/apis/endless-travel-plans-api/llms.txt) · [OpenAPI document](https://skmtc.dev/endlesstravelplans/apis/endless-travel-plans-api/revisions/ae82ed3e4a8f?raw)
