curl --request GET \
--url https://api.fanvue.com/agencies/earnings \
--header 'Authorization: Bearer <token>' \
--header 'X-Fanvue-API-Version: <x-fanvue-api-version>'import requests
url = "https://api.fanvue.com/agencies/earnings"
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/agencies/earnings', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"creatorUuid": "c3d4e5f6-7g8h-9i0j-1k2l-m3n4o5p6q7r8",
"date": "2024-01-15",
"gross": 15000,
"net": 12750,
"currency": "USD"
},
{
"creatorUuid": "c3d4e5f6-7g8h-9i0j-1k2l-m3n4o5p6q7r9",
"date": "2024-01-14",
"gross": 8500,
"net": 7225,
"currency": "USD"
}
],
"pagination": {
"page": 1,
"size": 2,
"hasMore": true
}
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>",
"message": "<string>",
"nextVersion": "<string>"
}{
"error": "<string>"
}List per-creator-per-day earnings across all agency creators
Returns a single paginated stream of per-creator-per-day earnings rows across every creator the authenticated agency manages, sorted by most recent day first. Each row is bucketed by paid_at (UTC) and tagged with creatorUuid so consumers can group results without an additional join.
Only PAID earning invoices that count towards creator insights are included. Each gross/net figure is the sum of the day’s invoices in USD cents (currency is always "USD"), so totals reconcile with the USD figure shown on the dashboard.
curl --request GET \
--url https://api.fanvue.com/agencies/earnings \
--header 'Authorization: Bearer <token>' \
--header 'X-Fanvue-API-Version: <x-fanvue-api-version>'import requests
url = "https://api.fanvue.com/agencies/earnings"
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/agencies/earnings', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"creatorUuid": "c3d4e5f6-7g8h-9i0j-1k2l-m3n4o5p6q7r8",
"date": "2024-01-15",
"gross": 15000,
"net": 12750,
"currency": "USD"
},
{
"creatorUuid": "c3d4e5f6-7g8h-9i0j-1k2l-m3n4o5p6q7r9",
"date": "2024-01-14",
"gross": 8500,
"net": 7225,
"currency": "USD"
}
],
"pagination": {
"page": 1,
"size": 2,
"hasMore": true
}
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>",
"message": "<string>",
"nextVersion": "<string>"
}{
"error": "<string>"
}read:agency— Read agency information, including the agency’s team members.read:creator— Access creator profiles, content, and creator-specific information.
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"
Query Parameters
Page number to retrieve (starts from 1)
x >= 1Number of items to return per page (1-50, default: 15)
1 <= x <= 50Start of the date range (inclusive). UTC ISO 8601 datetime with offset.
End of the date range (exclusive). UTC ISO 8601 datetime with offset.
Comma-separated list of creator UUIDs to restrict results to a subset of the agency's managed creators (max 50) Comma-separated list of creator UUIDs (max 50)
50Was this page helpful?