List Vault Media
Get the media in a vault album, newest first. The response carries albumMedia (the album membership records) alongside media (the media itself, with variants and CDN locations).
Pass before = the id of the last albumMedia entry of the previous page to fetch the next page. A page shorter than Fansly's page size means you reached the end.
Authorization
default Get your API Key from OnlyFansAPI Console - https://app.onlyfansapi.com/api-keys
In: header
Path Parameters
The Fansly Account ID
Query Parameters
The vault album to list media from, from the List Vault Albums endpoint.
Filter by native Fansly media type: 1 = photos only, 2 = videos only, 0 = neither photos nor videos. Omit for all media types.
Filter by filename.
Pagination cursor: the albumMedia ID of the last item from the previous page. Omit (or pass 0) for the first page.
Lower-bound cursor, the albumMedia ID to list media newer than. Defaults to 0 (unbounded).
Response Body
application/json
curl -X GET "https://app.onlyfansapi.com/api/fansly/fansly_acct_XXXXXXXXXXXXXXX/vault/media?album_id=922919290099736576&media_type=2&search=beach&before=922919290229764096&after=0"{
"data": {
"albumMedia": [
{
"id": "400000000000000001",
"mediaId": "500000000000000001",
"mediaType": 1,
"albumId": "300000000000000001",
"accountId": "800000000000000001",
"createdAt": 1786490793000,
"customFilename": "beach-01.jpeg"
},
{
"id": "400000000000000002",
"mediaId": "500000000000000010",
"mediaType": 2,
"albumId": "300000000000000001",
"accountId": "800000000000000001",
"createdAt": 1784297785000,
"customFilename": "clip-01.mp4"
}
],
"media": [
{
"id": "500000000000000001",
"type": 1,
"status": 1,
"accountId": "800000000000000001",
"mimetype": "image/jpeg",
"flags": 6,
"filename": "beach-01.jpeg",
"location": "/800000000000000001/500000000000000001.jpeg",
"width": 588,
"height": 480,
"metadata": "{\"dominant\":{\"r\":248,\"g\":248,\"b\":248},\"resolutionMode\":1}",
"updatedAt": 1786490605,
"createdAt": 1786490605,
"variants": [
{
"id": "500000000000000002",
"type": 1,
"status": 1,
"mimetype": "image/jpeg",
"flags": 0,
"filename": "beach-01_360.jpeg",
"location": "/800000000000000001/500000000000000002.jpeg",
"width": 442,
"height": 360,
"metadata": "{\"resolutionMode\":1}",
"updatedAt": 1786490606,
"locations": [
{
"locationId": "1",
"location": "https://cdn3.fansly.com/800000000000000001/500000000000000002.jpeg?ngsw-bypass=true&Policy=EXAMPLE_POLICY&Key-Pair-Id=EXAMPLE_KEY&Signature=EXAMPLE_SIGNATURE"
}
]
},
{
"id": "500000000000000003",
"type": 1,
"status": 1,
"mimetype": "image/jpeg",
"flags": 0,
"filename": "beach-01_240.jpeg",
"location": "/800000000000000001/500000000000000003.jpeg",
"width": 294,
"height": 240,
"metadata": "{\"resolutionMode\":1}",
"updatedAt": 1786490606,
"locations": [
{
"locationId": "1",
"location": "https://cdn3.fansly.com/800000000000000001/500000000000000003.jpeg?ngsw-bypass=true&Policy=EXAMPLE_POLICY&Key-Pair-Id=EXAMPLE_KEY&Signature=EXAMPLE_SIGNATURE"
}
]
},
{
"id": "500000000000000004",
"type": 3,
"status": 1,
"mimetype": "image/jpeg",
"flags": 0,
"filename": "beach-01_240_blur.jpeg",
"location": "/800000000000000001/500000000000000004.jpeg",
"width": 294,
"height": 240,
"metadata": "{\"resolutionMode\":1}",
"updatedAt": 1786490606,
"locations": [
{
"locationId": "1",
"location": "https://cdn3.fansly.com/800000000000000001/500000000000000004.jpeg?ngsw-bypass=true&Policy=EXAMPLE_POLICY&Key-Pair-Id=EXAMPLE_KEY&Signature=EXAMPLE_SIGNATURE"
}
]
}
],
"variantHash": {},
"locations": [
{
"locationId": "1",
"location": "https://cdn3.fansly.com/800000000000000001/500000000000000001.jpeg?ngsw-bypass=true&Policy=EXAMPLE_POLICY&Key-Pair-Id=EXAMPLE_KEY&Signature=EXAMPLE_SIGNATURE"
}
]
},
{
"id": "500000000000000010",
"type": 2,
"status": 1,
"accountId": "800000000000000001",
"mimetype": "video/mp4",
"flags": 0,
"filename": "clip-01.mp4",
"location": "/800000000000000001/500000000000000010.mp4",
"width": 480,
"height": 270,
"metadata": "{\"originalHeight\":270,\"originalWidth\":480,\"duration\":30.526667,\"resolutionMode\":1,\"frameRate\":30}",
"updatedAt": 1784297504,
"createdAt": 1784297501,
"variants": [
{
"id": "500000000000000011",
"type": 1,
"status": 1,
"mimetype": "image/jpeg",
"flags": 0,
"filename": "clip-01_frame.jpeg",
"location": "/800000000000000001/500000000000000011.jpeg",
"width": 480,
"height": 270,
"metadata": "{\"resolutionMode\":1}",
"updatedAt": 1784297504,
"locations": [
{
"locationId": "1",
"location": "https://cdn3.fansly.com/800000000000000001/500000000000000011.jpeg?ngsw-bypass=true&Policy=EXAMPLE_POLICY&Key-Pair-Id=EXAMPLE_KEY&Signature=EXAMPLE_SIGNATURE"
}
]
},
{
"id": "500000000000000012",
"type": 3,
"status": 1,
"mimetype": "image/jpeg",
"flags": 0,
"filename": "clip-01_frame.jpeg",
"location": "/800000000000000001/500000000000000012.jpeg",
"width": 480,
"height": 270,
"metadata": "{\"resolutionMode\":1}",
"updatedAt": 1784297504,
"locations": [
{
"locationId": "1",
"location": "https://cdn3.fansly.com/800000000000000001/500000000000000012.jpeg?ngsw-bypass=true&Policy=EXAMPLE_POLICY&Key-Pair-Id=EXAMPLE_KEY&Signature=EXAMPLE_SIGNATURE"
}
]
},
{
"id": "500000000000000013",
"type": 4,
"status": 1,
"mimetype": "image/jpeg",
"flags": 0,
"filename": "clip-01_thumbnails.jpeg",
"location": "/800000000000000001/500000000000000013.jpeg",
"width": 256,
"height": 144,
"metadata": "{\"resolutionMode\":1}",
"updatedAt": 1784297504,
"locations": [
{
"locationId": "1",
"location": "https://cdn3.fansly.com/800000000000000001/500000000000000013.jpeg?ngsw-bypass=true&Policy=EXAMPLE_POLICY&Key-Pair-Id=EXAMPLE_KEY&Signature=EXAMPLE_SIGNATURE"
}
]
},
{
"id": "500000000000000014",
"type": 302,
"status": 1,
"mimetype": "application/vnd.apple.mpegurl",
"flags": 0,
"filename": "500000000000000014.m3u8",
"location": "/800000000000000001/500000000000000014.m3u8",
"width": 480,
"height": 270,
"metadata": "{\"originalHeight\":270,\"originalWidth\":480,\"duration\":30.526667}",
"updatedAt": 1784297504,
"locations": [
{
"locationId": "1",
"location": "https://cdn3.fansly.com/800000000000000001/500000000000000014.m3u8?ngsw-bypass=true&Policy=EXAMPLE_POLICY&Key-Pair-Id=EXAMPLE_KEY&Signature=EXAMPLE_SIGNATURE"
}
]
},
{
"id": "500000000000000015",
"type": 303,
"status": 1,
"mimetype": "application/dash+xml",
"flags": 0,
"filename": "500000000000000015.mpd",
"location": "/800000000000000001/500000000000000015.mpd",
"width": 480,
"height": 270,
"metadata": "{\"originalHeight\":270,\"originalWidth\":480,\"duration\":30.526667}",
"updatedAt": 1784297504,
"locations": [
{
"locationId": "1",
"location": "https://cdn3.fansly.com/800000000000000001/500000000000000015.mpd?ngsw-bypass=true&Policy=EXAMPLE_POLICY&Key-Pair-Id=EXAMPLE_KEY&Signature=EXAMPLE_SIGNATURE"
}
]
}
],
"variantHash": {},
"locations": [
{
"locationId": "1",
"location": "https://cdn3.fansly.com/800000000000000001/500000000000000010.mp4?ngsw-bypass=true&Policy=EXAMPLE_POLICY&Key-Pair-Id=EXAMPLE_KEY&Signature=EXAMPLE_SIGNATURE"
}
]
}
]
},
"_meta": {
"_credits": {
"used": 1,
"balance": 10055790,
"note": "Always"
},
"_cache": {
"is_cached": false,
"note": "Cache disabled for this endpoint"
},
"_rate_limits": {
"limit_minute": 5000,
"limit_day": null,
"remaining_minute": 4999,
"remaining_day": null,
"notice": "We have decided to remove our daily rate limits. Please remove any references to these in your integrations."
}
}
}