---
title: "Billing Status"
method: GET
path: "/api/v1/billing/status"
tags: ["billing"]
---

# Billing Status

`GET /api/v1/billing/status`

## Request

- Base URL: `https://api.cohearence.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.cohearence.app/api/v1/billing/status`
- Auth: HTTP bearer

Return the caller's plan with the detail the Settings screen needs.

``GET /auth/me`` already carries ``is_pro`` for gating; this adds the renewal date,
pending-cancellation state, and whether the account is comped — the things a user
asks "when does this renew?" about.

## Response `200`

Successful Response

- EntitlementResponse: A user's plan, as the client should see it. Provider-neutral by design — ``source`` distinguishes a comped account from a paid one, but never names the Merchant of Record, so swapping it is invisible to the app.
  - `tier` string, required
  - `is_pro` boolean, required
  - `status` string, nullable
  - `source` string, nullable
  - `renews_at` string, date-time, nullable
  - `cancel_at_period_end` boolean

---

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