---
title: "Get an existing subscription record by ID"
method: GET
path: "/subscriptions/{id}"
tags: ["Subscriptions"]
---

# Get an existing subscription record by ID

`GET /subscriptions/{id}`

## Request

- Base URL: `https://api.purplegrain.com/api/v1`
- URL: `https://api.purplegrain.com/api/v1/subscriptions/{id}`
- Auth: HTTP bearer

Retrieve an existing subscription by its PurpleGrain subscription ID. Returns its plan, status, recorded price and interval, service limit, trial and billing-period dates, and start or cancellation dates. Use include=subscribable to embed the owning user or organization. Requires permission to manage that owner, including write access in an assistant connection's grant. Reading the record does not start, renew or cancel a subscription or charge a payment.

## Path parameters

- `id` string, required

## Query parameters

- `include` string

## Response `200`

Successful. When the `include` query parameter is used, the response may contain an `included` array (JSON:API) or inlined related resources (application/json).

- SubscriptionsShowResponseAttributes: Single subscription response for Accept application/json (attributes adapter).
  - `data` SubscriptionModelAttributes: Single subscription in attributes-adapter shape (Accept application/json). id, type, and attribute fields at top level; no nested attributes/relationships. The subscribable relationship key may appear when include is used.
    - `id` string
    - `type` string
    - `plan` 'provider'
    - `status` 'trialing' | 'active' | 'cancelled'
    - `services_limit` integer
    - `price_cents` integer
    - `interval` string
    - `payment_provider` 'mock' | 'stripe'
    - `current_period_start` string, date-time
    - `current_period_end` string, date-time
    - `trial_ends_at` string, date-time, nullable
    - `started_at` string, date-time, nullable
    - `cancelled_at` string, date-time, nullable
    - `created_at` string, date-time
    - `updated_at` string, date-time
    - `subscribable` object: Present when include=subscribable
  - `meta` PaginationMeta
    - `current_page` number
    - `next_page` number, nullable
    - `prev_page` number, nullable

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found

---

[API](https://skmtc.dev/purplegrain/apis/purple-grain-api.md) · [All operations](https://skmtc.dev/purplegrain/apis/purple-grain-api/llms.txt) · [OpenAPI document](https://skmtc.dev/purplegrain/apis/purple-grain-api/revisions/4bedbc1c784c?raw)
