---
title: "Redeem Code"
method: POST
path: "/api/referral/redeem"
tags: ["referral"]
---

# Redeem Code

`POST /api/referral/redeem`

## Request

- Base URL: `https://api.equity-rank.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.equity-rank.com/api/referral/redeem`
- Auth: HTTP bearer

Redeem a referral code.
Called by a new user during or after trial start (or auto-fired by the
Stripe customer.subscription.created webhook via _redeem_referral_for_user).

Rules:
- Code must exist and have redeemed_at IS NULL (the template row)
- Referrer cannot redeem their own code
- Each user can only redeem one code ever
- If referrer already has 30 bonus days, mark as redeemed but do not extend Stripe trial

## Request body

- RedeemRequest
  - `code` string, required

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/equity-rank/apis/equity-rank-api.md) · [All operations](https://skmtc.dev/equity-rank/apis/equity-rank-api/llms.txt) · [OpenAPI document](https://skmtc.dev/equity-rank/apis/equity-rank-api/revisions/c2f2463fee33?raw)
