---
title: "Get a user's subscription history"
method: GET
path: "/admin/billing/users/{id}/subscription-history"
tags: ["Billing"]
---

# Get a user's subscription history

`GET /admin/billing/users/{id}/subscription-history`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/admin/billing/users/{id}/subscription-history`
- Auth: API key in header `x-api-key`

Admin-only endpoint that returns a user's current subscription plus the full history of past subscription transitions (upgrade, downgrade, cancellation/expiry, payment-failure downgrade, admin change), newest first.

## Path parameters

- `id` string, required

## Headers

- `x-api-key` string, required

## Response `200`

Subscription history

- BillingAdminSubscriptionHistoryResponseDoc
  - `code` integer
  - `data` BillingAdminSubscriptionHistoryResponse
    - `current` BillingAdminSubscriptionCurrent
      - `currency` string
      - `monthly_price_cents` integer
      - `plan` string
      - `stripe_subscription_id` string
      - `subscription_end_date` string
      - `subscription_start_date` string
      - `subscription_status` string
    - `history` BillingAdminSubscriptionRecord[]
      - `created_at` string
      - `currency` string
      - `end_date` string
      - `monthly_price_cents` integer
      - `plan` string
      - `reason` string
      - `start_date` string
      - `status` string
      - `stripe_subscription_id` string
    - `user_id` string
  - `msg` string

## Other responses

- `401`: Authentication required
- `403`: Admin plan required
- `404`: User not found
- `500`: Internal server error

---

[API](https://skmtc.dev/crawlora/apis/crawlora-api.md) · [All operations](https://skmtc.dev/crawlora/apis/crawlora-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crawlora/apis/crawlora-api/revisions/afac9b012a27?raw)
