---
title: "Create subscription"
method: POST
path: "/self/subscriptions"
tags: ["Subscriptions"]
---

# Create subscription

`POST /self/subscriptions`

## Request

- Base URL: `https://api.distill.io/v2`
- URL: `https://api.distill.io/v2/self/subscriptions`
- Auth: one of:
  - API key in cookie `connect.sid`
  - HTTP bearer
  - API key in query parameter `api_key`

Auth: Auth — Any authenticated user.

## Request body

- object
  - `subscription` object, required
    - `plan_id` string, uuid, required
    - `gateway` string, required
    - `quantity` integer
    - `period` integer
  - `apple_pay` object
    - `transaction_id` string
    - `original_transaction_id` string
    - `receipt_data` string
    - `auto_renew_product_id` string
    - `environment` string

## Response `200`

Success

- object
  - `id` string, uuid, required
  - `owner_id` string, uuid, required
  - `plan_id` string, uuid, required
  - `quantity` integer
  - `charge_id` string, uuid, nullable
  - `renew` boolean
  - `period` integer
  - `price` integer
  - `state` integer, required
  - `gateway` string, nullable
  - `apple_pay_subscription_id` string, uuid, nullable
  - `is_free_trial` boolean
  - `ts_start` string, date-time
  - `ts_end` string, date-time
  - `ts_mod` string, date-time
  - `ts` string, date-time

## Other responses

- `400`: Validation error
- `401`: Unauthorized
- `403`: Forbidden

---

[API](https://skmtc.dev/distill/apis/distill-io-api-v2.md) - [All operations](https://skmtc.dev/distill/apis/distill-io-api-v2/llms.txt) - [OpenAPI document](https://skmtc.dev/distill/apis/distill-io-api-v2/revisions/c55722ccfe14?raw)
