Skip to content
scrapeatlas.Dashboard

List a VSCO user's gallery

Try in Playground

List the images and videos in a VSCO user's gallery, newest first, with captions, dimensions, camera metadata, presets and hashtags. Pass nextCursor to read the next page.

GET/v1/vsco/user-mediax-api-key
x-api-keystringrequiredheader

Your ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.

Query parameters
3
usernamestringrequiredquery

VSCO username (1 to 50 letters, digits, dots, underscores or hyphens) or a vsco.co profile URL such as https://vsco.co/example-photographer/gallery.

min 1 chars · max 512 chars

Exampleexample-photographer
cursorstringquery

nextCursor from the previous response; omit for the first page.

max 512 chars

limitstringquery

Records per page, 1 to 20; default 20.

Example20
Response fields
51
successboolean

True when usable data is returned; inspect status and coverage.

statusenum

success or partial for usable data; failed or challenged for a failure.

one of: success, partial

requestIdstring

Request correlation UUID.

sourceUrlstring

Public vsco.co page the data describes.

absolute HTTPS URL

fetchedAtstring

UTC retrieval timestamp.

Returned-page coverage and mapping warnings.

coverage.sourcestring

VSCO's public web API.

coverage.completeboolean

Whether every supported field on this page was mapped without a reported omission.

coverage.warningsenum[]

Named warnings: unknown_media_type, unknown_block_type, invalid_item, record_limit, block_limit, total_unavailable (no collection or search count) or pagination_unavailable (no next-page signal or cursor).

Retrieval attempt, source byte and timing measurements.

accounting.upstreamRequestsinteger

Upstream request attempts, including the token page read and any retry.

≥ 0

accounting.responseBytesinteger

Decoded source bytes read during this request.

≥ 0

accounting.durationMsnumber

Elapsed operation time in milliseconds.

≥ 0

usernamestring

VSCO username (1 to 50 letters, digits, dots, underscores or hyphens) or a vsco.co profile URL such as https://vsco.co/example-photographer/gallery.

Gallery records in source order.

up to 20 items

media.idstring

Always included.

media.mediaTypestring

Always included.

media.descriptionstringnullable

Always included.

media.widthintegernullable

Always included.

≥ 0

media.heightintegernullable

Always included.

≥ 0

media.imageUrlstringnullable

Always included.

absolute HTTPS URL

media.permalinkstringnullable

Always included.

absolute HTTPS URL

media.isVideoboolean

Always included.

media.captureDatestringnullable

Always included.

media.uploadDatestringnullable

Always included.

Always included.

media.camera.makestringnullable

Always included.

media.camera.modelstringnullable

Always included.

media.camera.isonumbernullable

Always included.

media.camera.aperturenumbernullable

Always included.

media.camera.shutterSpeedstringnullable

Always included.

media.camera.whiteBalancestringnullable

Always included.

media.camera.flashModestringnullable

Always included.

media.camera.softwarestringnullable

Always included.

Always included.

media.preset.keystring

Always included.

media.preset.shortNamestringnullable

Always included.

Always included.

up to 100 items

media.tags.textstring

Always included.

media.tags.slugstring

Always included.

Always included.

media.video.playbackUrlstringnullable

Always included.

absolute HTTPS URL

media.video.posterUrlstringnullable

Always included.

absolute HTTPS URL

media.video.durationSecnumbernullable

Always included.

≥ 0

media.video.hasAudiobooleannullable

Always included.

Always included.

media.owner.usernamestringnullable

Always included.

media.owner.namestringnullable

Always included.

media.owner.siteIdintegernullable

Always included.

≥ 0

media.owner.userIdintegernullable

Always included.

≥ 0

nextCursorstringnullable

Cursor for the next page, or null on the last page.

HTTP 200 returns the success variant. Check status: partial means usable data with warnings, and failed or challenged requests carry a failure object described in Errors & responses.

Error codes
14
HTTPfailure.codeMeaning
200partialUsable data with named media-type, block-type, invalid-item, record-limit, total or pagination warnings.
400invalid_requestMissing, duplicate, malformed, unsafe or unsupported parameters.
401unauthorizedMissing or invalid worker API key.
404not_foundThe requested VSCO profile or image was not found.
422restricted_pageVSCO refused anonymous access to the requested resource.
422unsupported_pageThe VSCO response structure or identity could not be mapped.
502upstream_challengedVSCO challenged retrieval.
502upstream_rate_limitedVSCO rate-limited retrieval.
502upstream_errorSource retrieval did not complete.
502response_too_largeDecoded source bytes exceeded the request limit.
502unsafe_redirectVSCO answered with a redirect, which is never followed.
502request_limitThe upstream request budget was exhausted.
503busyWorker request or queue capacity was exceeded.
504timeoutThe operation deadline expired.