Skip to main content
POST
/
api
/
v1
/
subscriptions
Create a subscription
curl --request POST \
  --url http://localhost:7701/api/v1/subscriptions \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "plan_uuid": "plan-uuid-...",
  "customer_token": "cus_token_abc123",
  "card_token": "card_tok_xyz",
  "coupon_code": "PROMO10",
  "billing_day": 10,
  "gateway_id": 1,
  "metadata": {}
}
'
{
  "data": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "status": "active",
    "plan": {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "name": "Basic Monthly",
      "description": "<string>",
      "amount": 2990,
      "currency": "BRL",
      "interval": "monthly",
      "interval_count": 1,
      "trial_period_days": 7,
      "billing_day": 5,
      "is_active": true,
      "created_at": "2023-11-07T05:31:56Z",
      "updated_at": "2023-11-07T05:31:56Z"
    },
    "customer": {},
    "card": {
      "last_4_digits": "4242",
      "brand": "visa",
      "expire_month": "12",
      "expire_year": "2028"
    },
    "coupon": {},
    "amount": 2990,
    "original_amount": 2990,
    "discount_amount": 500,
    "currency": "BRL",
    "interval": "monthly",
    "interval_count": 1,
    "billing_day": 5,
    "trial": {
      "period_days": 7,
      "start": "2023-11-07T05:31:56Z",
      "end": "2023-11-07T05:31:56Z"
    },
    "current_period": {
      "start": "2023-11-07T05:31:56Z",
      "end": "2023-11-07T05:31:56Z"
    },
    "next_billing_at": "2023-11-07T05:31:56Z",
    "paused_at": "2023-11-07T05:31:56Z",
    "paused_until": "2023-11-07T05:31:56Z",
    "canceled_at": "2023-11-07T05:31:56Z",
    "cancel_at": "2023-11-07T05:31:56Z",
    "cancel_at_period_end": false,
    "plan_change_at": "2023-11-07T05:31:56Z",
    "new_plan_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "metadata": [
      {}
    ],
    "created_at": "2023-11-07T05:31:56Z",
    "updated_at": "2023-11-07T05:31:56Z"
  }
}

Authorizations

X-API-Key
string
header
required

Company API key. Send in the X-API-Key header.

Body

application/json
plan_uuid
string<uuid>
required

UUID of the subscription plan to attach.

Example:

"plan-uuid-..."

customer_token
string
required

Token of an existing customer.

Example:

"cus_token_abc123"

card_token
string | null

Stored card token to charge on each cycle. Required for paid plans without a trial.

Example:

"card_tok_xyz"

coupon_code
string | null

Discount coupon code to apply at creation (max 50 chars).

Example:

"PROMO10"

billing_day
integer | null

Override the plan billing day (1–28). Defaults to plan or creation day.

Example:

10

gateway_id
integer | null

Force a specific gateway ID for this subscription's charges.

Example:

1

metadata
object

Arbitrary key-value data stored with the subscription.

Response

Subscription created

data
object