Get media for an entitled consumer
curl --request GET \
--url https://api.fanvue.com/v1/media/{uuid}/entitled \
--header 'Authorization: Bearer <token>' \
--header 'X-Fanvue-API-Version: <x-fanvue-api-version>'import requests
url = "https://api.fanvue.com/v1/media/{uuid}/entitled"
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/media/{uuid}/entitled', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"uuid": "d4e5f6a7-8b9c-0d1e-2f3a-4b5c6d7e8f9a",
"status": "ready",
"createdAt": "2024-01-15T00:00:00.000Z",
"caption": "Sunset at the beach",
"description": null,
"name": "beach-sunset.jpg",
"mediaType": "image",
"recommendedPrice": null,
"tags": {
"description": "Behind-the-scenes shot at sunset on a beach.",
"tags": [
"beach",
"sunset",
"outdoors"
],
"nsfwCategory": [],
"sexActs": [],
"bodyParts": [],
"people": [
"solo woman"
],
"sexObjects": [],
"setting": [
"beach",
"sunset"
],
"position": [],
"skinColor": [],
"bodyType": [],
"hairColor": [
"blonde"
],
"otherTags": [],
"importantTags": [
"beach"
],
"isNsfw": false,
"mediaType": "image"
},
"variants": [
{
"uuid": "c9d0e1f2-3a4b-5c6d-7e8f-9a0b1c2d3e4f",
"variantType": "main",
"displayPosition": 0,
"url": "https://media.fanvue.com/main/d4e5f6a7-8b9c-0d1e-2f3a-4b5c6d7e8f9a.jpg",
"width": 3840,
"height": 2160,
"lengthMs": null
},
{
"uuid": "d0e1f2a3-4b5c-6d7e-8f9a-0b1c2d3e4f5a",
"variantType": "thumbnail",
"displayPosition": 1,
"url": "https://media.fanvue.com/thumb/d4e5f6a7-8b9c-0d1e-2f3a-4b5c6d7e8f9a.jpg",
"width": 320,
"height": 180,
"lengthMs": null
},
{
"uuid": "e1f2a3b4-5c6d-7e8f-9a0b-1c2d3e4f5a6b",
"variantType": "thumbnail_gallery",
"displayPosition": 2,
"url": "https://media.fanvue.com/gallery/d4e5f6a7-8b9c-0d1e-2f3a-4b5c6d7e8f9a.jpg",
"width": 400,
"height": 300,
"lengthMs": null
},
{
"uuid": "f2a3b4c5-6d7e-8f9a-0b1c-2d3e4f5a6b7c",
"variantType": "blurred",
"displayPosition": 3,
"url": "https://media.fanvue.com/blur/d4e5f6a7-8b9c-0d1e-2f3a-4b5c6d7e8f9a.jpg",
"width": 3840,
"height": 2160,
"lengthMs": null
}
]
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"message": "<string>"
}{
"error": "<string>",
"message": "<string>",
"nextVersion": "<string>"
}{
"error": "<string>"
}Media
Get media for an entitled consumer
Returns a media item with signed variant URLs, but only if the specified consumer has been granted access via a prior grant call.
Finalised responses include a tags field with structured AI content
tags when the owning creator has AI content tagging enabled and the media
has been processed (null otherwise).
Media URLs are only available through variants.
Specify the
variants query parameter (e.g., ?variants=main,thumbnail)
to include them in the response.GET
/
v1
/
media
/
{uuid}
/
entitled
Get media for an entitled consumer
curl --request GET \
--url https://api.fanvue.com/v1/media/{uuid}/entitled \
--header 'Authorization: Bearer <token>' \
--header 'X-Fanvue-API-Version: <x-fanvue-api-version>'import requests
url = "https://api.fanvue.com/v1/media/{uuid}/entitled"
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/media/{uuid}/entitled', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"uuid": "d4e5f6a7-8b9c-0d1e-2f3a-4b5c6d7e8f9a",
"status": "ready",
"createdAt": "2024-01-15T00:00:00.000Z",
"caption": "Sunset at the beach",
"description": null,
"name": "beach-sunset.jpg",
"mediaType": "image",
"recommendedPrice": null,
"tags": {
"description": "Behind-the-scenes shot at sunset on a beach.",
"tags": [
"beach",
"sunset",
"outdoors"
],
"nsfwCategory": [],
"sexActs": [],
"bodyParts": [],
"people": [
"solo woman"
],
"sexObjects": [],
"setting": [
"beach",
"sunset"
],
"position": [],
"skinColor": [],
"bodyType": [],
"hairColor": [
"blonde"
],
"otherTags": [],
"importantTags": [
"beach"
],
"isNsfw": false,
"mediaType": "image"
},
"variants": [
{
"uuid": "c9d0e1f2-3a4b-5c6d-7e8f-9a0b1c2d3e4f",
"variantType": "main",
"displayPosition": 0,
"url": "https://media.fanvue.com/main/d4e5f6a7-8b9c-0d1e-2f3a-4b5c6d7e8f9a.jpg",
"width": 3840,
"height": 2160,
"lengthMs": null
},
{
"uuid": "d0e1f2a3-4b5c-6d7e-8f9a-0b1c2d3e4f5a",
"variantType": "thumbnail",
"displayPosition": 1,
"url": "https://media.fanvue.com/thumb/d4e5f6a7-8b9c-0d1e-2f3a-4b5c6d7e8f9a.jpg",
"width": 320,
"height": 180,
"lengthMs": null
},
{
"uuid": "e1f2a3b4-5c6d-7e8f-9a0b-1c2d3e4f5a6b",
"variantType": "thumbnail_gallery",
"displayPosition": 2,
"url": "https://media.fanvue.com/gallery/d4e5f6a7-8b9c-0d1e-2f3a-4b5c6d7e8f9a.jpg",
"width": 400,
"height": 300,
"lengthMs": null
},
{
"uuid": "f2a3b4c5-6d7e-8f9a-0b1c-2d3e4f5a6b7c",
"variantType": "blurred",
"displayPosition": 3,
"url": "https://media.fanvue.com/blur/d4e5f6a7-8b9c-0d1e-2f3a-4b5c6d7e8f9a.jpg",
"width": 3840,
"height": 2160,
"lengthMs": null
}
]
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"message": "<string>"
}{
"error": "<string>",
"message": "<string>",
"nextVersion": "<string>"
}{
"error": "<string>"
}Required scope
read:media— Access media files, images, videos, and other content assets.
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
Example:
"2025-06-26"
Path Parameters
Query Parameters
UUID of the consumer whose entitlement to verify
Comma-separated list of media variant types
The type of media variant
Available options:
blurred, main, thumbnail, thumbnail_gallery Was this page helpful?