curl --request GET \
--url https://api.fanvue.com/v1/media/{uuid} \
--header 'Authorization: Bearer <token>' \
--header 'X-Fanvue-API-Version: <x-fanvue-api-version>'import requests
url = "https://api.fanvue.com/v1/media/{uuid}"
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}', 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>"
}Get media by UUID
Returns a specific media item by its UUID for the authenticated user.
For media with status other than FINALISED, only uuid and status are returned.
For FINALISED media, all details including variants are included, plus a
tags field containing structured AI content tags when the owning
creator has AI content tagging enabled and the media has been processed
(null otherwise).
variants query parameter (e.g., ?variants=main,thumbnail,blurred)
to include them in the response. Without this parameter, the variants field
will be an empty array and no media URLs will be returned.curl --request GET \
--url https://api.fanvue.com/v1/media/{uuid} \
--header 'Authorization: Bearer <token>' \
--header 'X-Fanvue-API-Version: <x-fanvue-api-version>'import requests
url = "https://api.fanvue.com/v1/media/{uuid}"
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}', 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>"
}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
"2025-06-26"
Path Parameters
Query Parameters
UUID of the user to check media purchase against. When provided, the media item will include a purchasedByFan boolean indicating if that user has purchased it.
Comma-separated list of media variant types
The type of media variant
blurred, main, thumbnail, thumbnail_gallery Was this page helpful?