---
title: Subscriptions (tenant)
path: reference/api/subscriptions
status: published
---

# Subscriptions (tenant)

**6 endpoints** in this group. All paths are prefixed with `/api/v1`.

## Endpoints in this group

- [`GET /api/v1/subscriptions`](#get-api-v1-subscriptions) — List Subscriptions
- [`POST /api/v1/subscriptions`](#post-api-v1-subscriptions) — Create Subscription
- [`GET /api/v1/subscriptions/{subscription_id}`](#get-api-v1-subscriptions-subscription-id) — Get Subscription
- [`PATCH /api/v1/subscriptions/{subscription_id}`](#patch-api-v1-subscriptions-subscription-id) — Update Subscription
- [`POST /api/v1/subscriptions/{subscription_id}/cancel`](#post-api-v1-subscriptions-subscription-id-cancel) — Cancel Subscription
- [`POST /api/v1/subscriptions/{subscription_id}/reactivate`](#post-api-v1-subscriptions-subscription-id-reactivate) — Reactivate Subscription

---

### GET `/api/v1/subscriptions` — List Subscriptions {#get-api-v1-subscriptions}

**Parameters**:

- `authorization` (header, string, optional)


**Responses**:

- `200` — Successful Response. Returns: `ApiResponse_list_SubscriptionResponse__` — {`data`, `meta`}
- `422` — Validation Error. Returns: `HTTPValidationError` — {`detail`}


### POST `/api/v1/subscriptions` — Create Subscription {#post-api-v1-subscriptions}

**Parameters**:

- `authorization` (header, string, optional)


**Body**: `SubscriptionCreateRequest` — {`service_slug`, `plan_id`}


**Responses**:

- `201` — Successful Response. Returns: `ApiResponse_SubscriptionResponse_` — {`data`, `meta`}
- `422` — Validation Error. Returns: `HTTPValidationError` — {`detail`}


### GET `/api/v1/subscriptions/{subscription_id}` — Get Subscription {#get-api-v1-subscriptions-subscription-id}

**Parameters**:

- `subscription_id` (path, string, required)
- `authorization` (header, string, optional)


**Responses**:

- `200` — Successful Response. Returns: `ApiResponse_SubscriptionResponse_` — {`data`, `meta`}
- `422` — Validation Error. Returns: `HTTPValidationError` — {`detail`}


### PATCH `/api/v1/subscriptions/{subscription_id}` — Update Subscription {#patch-api-v1-subscriptions-subscription-id}

**Parameters**:

- `subscription_id` (path, string, required)
- `authorization` (header, string, optional)


**Body**: `SubscriptionUpdateRequest` — {`plan_id`}


**Responses**:

- `200` — Successful Response. Returns: `ApiResponse_SubscriptionResponse_` — {`data`, `meta`}
- `422` — Validation Error. Returns: `HTTPValidationError` — {`detail`}


### POST `/api/v1/subscriptions/{subscription_id}/cancel` — Cancel Subscription {#post-api-v1-subscriptions-subscription-id-cancel}

**Parameters**:

- `subscription_id` (path, string, required)
- `authorization` (header, string, optional)


**Body**: `SubscriptionCancelRequest` — {`reason`}


**Responses**:

- `200` — Successful Response. Returns: `ApiResponse_SubscriptionResponse_` — {`data`, `meta`}
- `422` — Validation Error. Returns: `HTTPValidationError` — {`detail`}


### POST `/api/v1/subscriptions/{subscription_id}/reactivate` — Reactivate Subscription {#post-api-v1-subscriptions-subscription-id-reactivate}

**Parameters**:

- `subscription_id` (path, string, required)
- `authorization` (header, string, optional)


**Responses**:

- `200` — Successful Response. Returns: `ApiResponse_SubscriptionResponse_` — {`data`, `meta`}
- `422` — Validation Error. Returns: `HTTPValidationError` — {`detail`}
