---
title: "Get subscribers"
method: GET
path: "/subscribers"
---

# Get subscribers

`GET /subscribers`

Returns a paginated list of users who have subscriptions to the authenticated user.

<Info>
  **Polling for real-time updates? Use a webhook instead.**

  If you are calling this endpoint on a schedule to detect new activity, subscribe to the `creator.subscription.activated`, `creator.subscription.cancel_at_period_end_changed`, `creator.subscription.deactivated` webhook events instead — you'll get pushed updates in real time without polling. See the [webhook documentation](https://api.fanvue.com/docs/creator/subscriptions).
</Info>

## Query parameters

- `page` integer — Page number to retrieve (starts from 1)
- `size` integer — Number of items to return per page (1-50, default: 15)
- `sortField` 'name' | 'subscribedAt' — Public field to sort by
- `sortDirection` 'asc' | 'desc' — Sort direction
- `startDate` string, date-time — Only include users whose subscription started on or after this ISO 8601 datetime (e.g., 2024-10-20T00:00:00Z).
- `endDate` string, date-time — Only include users whose subscription started before this ISO 8601 datetime (non-inclusive).
- `cursor` string — Opaque pagination cursor from a previous response's pagination.nextCursor. When provided, page, sortField, sortDirection, startDate, and endDate are ignored (the cursor carries them); size applies when explicitly passed. Cursor pagination is more efficient than page-based pagination for iterating over large subscriber lists.

## Headers

- `X-Fanvue-API-Version` string, required

## Response `200`

List of subscribers

- object
  - `data` object[], required — Array of subscribers
    - `uuid` string, uuid, required
    - `handle` string, required
    - `displayName` string, required
    - `nickname` string, nullable, required
    - `isTopSpender` boolean, required
    - `avatarUrl` string, nullable, required
    - `registeredAt` string, date-time, required
    - `subscription` object, nullable, required — Details of the subscriber's current subscription to the creator, or null if none is found
      - `status` 'active' | 'cancelled' | 'pending_confirmation' | 'paused', required — Current status of the subscriber's subscription to this creator
      - `price` number, required — Configured subscription price per period, in minor currency units (cents). This is the list price and does not reflect discounts or free trials — see `amountPaid` for the actual amount charged.
      - `amountPaid` number, required — Amount actually charged for the current period, in minor currency units (cents), after any discount. 0 when nothing has been charged yet (e.g. a fan inside a free trial).
      - `currentPeriodStart` string, date-time, required — Start of the current subscription period (ISO 8601)
      - `currentPeriodEnd` string, date-time, nullable, required — End of the current subscription period / next renewal date (ISO 8601), or null
      - `autoRenewalEnabled` boolean, required — Whether the subscription is set to auto-renew (rebill) at the end of the period
    - `firstSubscribedAt` string, date-time, nullable, required — When the fan first subscribed to the creator (earliest across their whole subscription history), used to tell a genuinely new fan from a re-subscriber. Null if unknown.
  - `pagination` object, required — Pagination information
    - `page` number, required — Current page number
    - `size` number, required — Number of records returned in this response
    - `hasMore` boolean, required — Whether there are more items available on subsequent pages
    - `nextCursor` string, nullable, required — Opaque cursor to fetch the next page; pass it as the cursor query parameter. Null when there are no further results, or when sorting by name (cursor pagination is only supported for the subscribedAt sort).

## Other responses

- `400` — Bad Request - API version not supported OR validation failed
- `401` — Unauthorized Response
- `403` — Unauthorized Response
- `410` — API version no longer supported (sunset)
- `429` — Too many requests - rate limit exceeded

---

[API](https://skmtc.net/fanvue/apis/fanvue-api.md) · [All operations](https://skmtc.net/fanvue/apis/fanvue-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fanvue/fanvue-api/revisions/c5ddcd5c7e72/schema)
