Reference / Monetization

Create a customer plan.

POST /v1/billing/customer-plans
Secret API key operationId: create_plan

Authorization

Server-to-server. Send a secret key as a Bearer token plus the x-application-id header.

Request body · required

  • currency string
  • description string
  • interval string

    `month` (default) or `year`.

  • is_public boolean
  • key string required
  • name string required
  • per_seat_cents integer<int64> int64
  • price_cents integer<int64> required int64

Responses

201 Plan created
{
  "data": {
    "active": false,
    "created_at": "2026-01-15T09:30:00Z",
    "currency": "string",
    "description": "string",
    "id": "018f3c4a-7b2e-7c1d-9e0a-1f2b3c4d5e6f",
    "interval": "string",
    "is_public": false,
    "key": "pro_team",
    "name": "string",
    "per_seat_cents": 0,
    "price_cents": 0
  },
  "error": {
    "code": "string",
    "message": "string"
  },
  "meta": {
    "timestamp": "string"
  },
  "success": false
}
409 Key already in use
422 Invalid input

Request

curl -X POST "http://localhost:8080/v1/billing/customer-plans" \
  -H "Content-Type: application/json" \
  -d '{
  "currency": "string",
  "description": "string",
  "interval": "string",
  "is_public": false,
  "key": "pro_team",
  "name": "Pro Team",
  "per_seat_cents": 0,
  "price_cents": 2900
}'

Try it

live request
POST http://localhost:8080/v1/billing/customer-plans

Request body

application/json