curl --request GET \
--url https://api.fanvue.com/v1/creators/{creatorUserUuid}/subscribers \
--header 'Authorization: Bearer <token>' \
--header 'X-Fanvue-API-Version: <x-fanvue-api-version>'import requests
url = "https://api.fanvue.com/v1/creators/{creatorUserUuid}/subscribers"
headers = {
"X-Fanvue-API-Version": "<x-fanvue-api-version>",
"Authorization": "Bearer <token>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
'X-Fanvue-API-Version': '<x-fanvue-api-version>',
Authorization: 'Bearer <token>'
}
};
fetch('https://api.fanvue.com/v1/creators/{creatorUserUuid}/subscribers', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"uuid": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"handle": "sarah-jones",
"nickname": "SarahK",
"displayName": "Sarah Jones",
"isTopSpender": true,
"avatarUrl": "https://media.fanvue.com/avatars/example-avatar.jpg",
"registeredAt": "2024-01-10T12:00:00.000Z",
"role": "creator",
"subscription": {
"status": "active",
"price": 999,
"amountPaid": 999,
"currentPeriodStart": "2026-05-15T00:00:00.000Z",
"currentPeriodEnd": "2026-06-15T00:00:00.000Z",
"autoRenewalEnabled": true
},
"firstSubscribedAt": "2025-11-15T00:00:00.000Z"
},
{
"uuid": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"handle": "mike-smith",
"nickname": null,
"displayName": "Mike Smithly",
"isTopSpender": false,
"avatarUrl": "https://media.fanvue.com/avatars/example-avatar.jpg",
"registeredAt": "2024-01-10T12:00:00.000Z",
"role": "creator",
"subscription": {
"status": "cancelled",
"price": 1499,
"amountPaid": 1499,
"currentPeriodStart": "2026-06-01T00:00:00.000Z",
"currentPeriodEnd": "2026-07-01T00:00:00.000Z",
"autoRenewalEnabled": false
},
"firstSubscribedAt": "2026-06-01T00:00:00.000Z"
}
],
"nextCursor": "k0FQ1m9yZXN0aWdpb3VzLW9wYXF1ZS1jdXJzb3I"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"message": "<string>"
}{
"error": "<string>",
"message": "<string>",
"nextVersion": "<string>"
}{
"error": "<string>"
}Get creator subscribers (cursor-paginated)
Returns the users subscribed to the specified creator.
v1-experimental Breaking Change: Switched from offset-based pagination (page/size) to keyset cursor pagination for both sort modes. The v0 endpoint accepted page and cursor side by side; here page is gone. Page with the opaque nextCursor.
curl --request GET \
--url https://api.fanvue.com/v1/creators/{creatorUserUuid}/subscribers \
--header 'Authorization: Bearer <token>' \
--header 'X-Fanvue-API-Version: <x-fanvue-api-version>'import requests
url = "https://api.fanvue.com/v1/creators/{creatorUserUuid}/subscribers"
headers = {
"X-Fanvue-API-Version": "<x-fanvue-api-version>",
"Authorization": "Bearer <token>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
'X-Fanvue-API-Version': '<x-fanvue-api-version>',
Authorization: 'Bearer <token>'
}
};
fetch('https://api.fanvue.com/v1/creators/{creatorUserUuid}/subscribers', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"uuid": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"handle": "sarah-jones",
"nickname": "SarahK",
"displayName": "Sarah Jones",
"isTopSpender": true,
"avatarUrl": "https://media.fanvue.com/avatars/example-avatar.jpg",
"registeredAt": "2024-01-10T12:00:00.000Z",
"role": "creator",
"subscription": {
"status": "active",
"price": 999,
"amountPaid": 999,
"currentPeriodStart": "2026-05-15T00:00:00.000Z",
"currentPeriodEnd": "2026-06-15T00:00:00.000Z",
"autoRenewalEnabled": true
},
"firstSubscribedAt": "2025-11-15T00:00:00.000Z"
},
{
"uuid": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"handle": "mike-smith",
"nickname": null,
"displayName": "Mike Smithly",
"isTopSpender": false,
"avatarUrl": "https://media.fanvue.com/avatars/example-avatar.jpg",
"registeredAt": "2024-01-10T12:00:00.000Z",
"role": "creator",
"subscription": {
"status": "cancelled",
"price": 1499,
"amountPaid": 1499,
"currentPeriodStart": "2026-06-01T00:00:00.000Z",
"currentPeriodEnd": "2026-07-01T00:00:00.000Z",
"autoRenewalEnabled": false
},
"firstSubscribedAt": "2026-06-01T00:00:00.000Z"
}
],
"nextCursor": "k0FQ1m9yZXN0aWdpb3VzLW9wYXF1ZS1jdXJzb3I"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"message": "<string>"
}{
"error": "<string>",
"message": "<string>",
"nextVersion": "<string>"
}{
"error": "<string>"
}read:creator— Access creator profiles, content, and creator-specific information.read:fan— Access fan-related data and information within the platform.
Authorizations
OAuth 2.0 access token, presented as a JWT bearer token in the Authorization header. Obtain a token via the authorization-code flow; the scopes granted to the token determine which operations it may call.
Headers
API version to use for the request
"2025-06-26"
Path Parameters
Query Parameters
Public field to sort by (default: subscribedAt)
name, subscribedAt Sort direction (default: desc for subscribedAt, asc for name)
asc, desc Only include users whose subscription started on or after this ISO 8601 datetime (e.g., 2024-10-20T00:00:00Z).
Only include users whose subscription started before this ISO 8601 datetime (non-inclusive).
Opaque pagination cursor from a previous response's nextCursor. It carries the sortField, sortDirection and date range the first page was cut under, so later pages need nothing but the cursor. Resending those filters is allowed while they match it; a value that contradicts the cursor is rejected.
Number of items to return (1-50, default: 15)
1 <= x <= 50Was this page helpful?