---
title: "Get Subscription Status"
method: GET
path: "/billing/subscription"
tags: ["billing"]
---

# Get Subscription Status

`GET /billing/subscription`

Live renewal/expiry date for the signed-in user's Pro subscription.

Read straight from Stripe (not persisted) so the profile page always
shows the current period boundary. Free users — or paid users we can't
map to a Stripe customer — get an empty response rather than an error so
the caller can render unconditionally.

## Response `200`

Successful Response

- SubscriptionStatusResponse — Current paid-subscription state for the profile page. ``period_end`` is the renewal/expiry boundary as an ISO 8601 UTC string; ``will_renew`` is True when the subscription auto-renews on that date and False when it's scheduled to cancel (i.e. expires) then. Both are null when there's no active paid subscription to describe — the frontend then falls back to a generic "Stardrift Pro" label.
  - `period_end` string, nullable
  - `will_renew` boolean, nullable

---

[API](https://skmtc.dev/stardrift/apis/fastapi.md) · [All operations](https://skmtc.dev/stardrift/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/stardrift/fastapi/revisions/eb694aedc555/schema)
