Skip to content
scrapeatlas.Dashboard

List trending Shorts

Try in Playground

Retrieve a batch of YouTube Shorts with titles, descriptions, engagement, publication dates, channels, chapters, genres and durations.

GET/v1/youtube/shorts/trendingx-api-key
x-api-keystringrequiredheader

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

Query parameters
1
extrasDetailenumquery

full (default) reads the player and the watch-next data per Short; player reads only the player (one call per Short) and leaves description links, comment counts, publishDateText and chapters empty or null and the channel row without handle or thumbnail (description is then the player's raw text), with the coverage warning watch_next_omitted.

one of: full, player

Response fields
89
requestIdstring

Operation identifier for correlation.

Upstream HTTP attempts, decoded bytes and duration.

accounting.upstreamRequestsinteger

Always included.

≥ 0

accounting.responseBytesinteger

Always included.

≥ 0

accounting.durationMsnumber

Always included.

≥ 0

successboolean

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

statusenum

success, partial (coverage.warnings names the omission), failed or challenged.

one of: success, partial

Up to 48 Shorts in feed order with the video record fields (type short, no watchNextVideos, most_replayed or isPaidPromotion) plus url; keywords, captionTracks and downloadOptions are empty or null on Shorts. Shorts whose details could not be read are omitted.

up to 48 items

shorts.typestring

Always included.

shorts.idstring

Always included.

shorts.titlestring

Always included.

shorts.descriptionstringnullable

Always included.

shorts.descriptionLinksstring[]

Always included.

up to 200 items

shorts.commentCountTextstringnullable

Always included.

shorts.commentCountIntintegernullable

Always included.

shorts.likeCountTextstringnullable

Always included.

shorts.likeCountIntintegernullable

Always included.

shorts.viewCountTextstringnullable

Always included.

shorts.viewCountIntintegernullable

Always included.

shorts.publishDateTextstringnullable

Always included.

Always included.

up to 20 items

shorts.collaborators.idstringnullable

Always included.

shorts.collaborators.urlstringnullable

Always included.

shorts.collaborators.handlestringnullable

Always included.

shorts.collaborators.titlestringnullable

Always included.

shorts.collaborators.thumbnailstringnullable

Always included.

Always included.

shorts.channel.idstringnullable

Always included.

shorts.channel.urlstringnullable

Always included.

shorts.channel.handlestringnullable

Always included.

shorts.channel.titlestringnullable

Always included.

shorts.channel.thumbnailstringnullable

Always included.

Always included.

up to 500 items

shorts.chapters.titlestring

Always included.

shorts.chapters.timeDescriptionstringnullable

Always included.

shorts.chapters.startSecondsintegernullable

Always included.

shorts.urlstring

Always included.

absolute HTTPS URL

shorts.thumbnailstring

Always included.

absolute HTTPS URL

shorts.publishDatestringnullable

Always included.

shorts.keywordsstring[]

Always included.

up to 500 items

shorts.genrestringnullable

Always included.

shorts.durationMsintegernullable

Always included.

shorts.durationFormattedstringnullable

Always included.

Always included.

up to 100 items

shorts.captionTracks.baseUrlstring

Always included.

absolute HTTPS URL

Always included.

shorts.captionTracks.name.simpleTextstring

Always included.

shorts.captionTracks.vssIdstring

Always included.

shorts.captionTracks.languageCodestring

Always included.

shorts.captionTracks.kindstringoptional

Optional.

shorts.captionTracks.isTranslatablebooleanoptional

Optional.

shorts.captionTracks.trackNamestringoptional

Optional.

Always included.

shorts.downloadOptions.expiresInSecondsstringnullable

Always included.

shorts.downloadOptions.hlsManifestUrlstringnullable

Always included.

shorts.downloadOptions.dashManifestUrlstringnullable

Always included.

Always included.

up to 50 items

shorts.downloadOptions.formats.itaginteger

Always included.

shorts.downloadOptions.formats.urlstringnullable

Always included.

shorts.downloadOptions.formats.cdnUrlstringnullable

Always included.

shorts.downloadOptions.formats.expiresAtstringnullable

Always included.

shorts.downloadOptions.formats.mimeTypestringnullable

Always included.

shorts.downloadOptions.formats.codecsstringnullable

Always included.

shorts.downloadOptions.formats.bitrateintegernullable

Always included.

shorts.downloadOptions.formats.widthintegernullable

Always included.

shorts.downloadOptions.formats.heightintegernullable

Always included.

shorts.downloadOptions.formats.qualitystringnullable

Always included.

shorts.downloadOptions.formats.qualityLabelstringnullable

Always included.

shorts.downloadOptions.formats.fpsintegernullable

Always included.

shorts.downloadOptions.formats.audioQualitystringnullable

Always included.

shorts.downloadOptions.formats.audioSampleRatestringnullable

Always included.

shorts.downloadOptions.formats.audioChannelsintegernullable

Always included.

shorts.downloadOptions.formats.approxDurationMsstringnullable

Always included.

shorts.downloadOptions.formats.projectionTypestringnullable

Always included.

shorts.downloadOptions.formats.hasVideoboolean

Always included.

shorts.downloadOptions.formats.hasAudioboolean

Always included.

shorts.downloadOptions.formats.requiresSignatureDecipherboolean

Always included.

Optional.

shorts.downloadOptions.formats.signatureCipher.urlstringnullable

Always included.

shorts.downloadOptions.formats.signatureCipher.signaturestringnullable

Always included.

shorts.downloadOptions.formats.signatureCipher.signatureParameterstringnullable

Always included.

shorts.downloadOptions.formats.signatureCipher.expiresAtstringnullable

Always included.

shorts.downloadOptions.notestring

Always included.

sourceUrlstring

Public YouTube URL the operation represents (page or API route).

absolute HTTPS URL

fetchedAtstring

UTC retrieval timestamp.

source is public_page. Warnings: sequence_incomplete (the six sequence reads, or the deadline, ended before 48 Shorts), extras_incomplete (a Short's details could not be read), watch_next_omitted (extrasDetail=player skipped the watch-next reads).

coverage.sourceenum

Always included.

one of: public_page, public_api

coverage.completeboolean

Always included.

coverage.warningsenum[]

Always included.

up to 8 items

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
13
HTTPfailure.codeMeaning
400invalid_requestMissing, malformed, duplicate or conflicting parameters, unsupported parameters or an unsafe URL.
400invalid_continuationYouTube rejected the supplied continuation token.
401unauthorizedMissing or invalid worker API key.
403restricted_pageThe channel, video, playlist or post is terminated, private, members-only or otherwise unavailable.
403age_restrictedThe video is age restricted and cannot be read logged out.
404not_foundYouTube reports no channel, video, playlist or post for the identifier.
429upstream_rate_limitedYouTube rate limited the request; no automatic retry.
502upstream_challengedYouTube rejected or challenged the request.
502unsupported_pageThe response lacks the embedded data, the data is malformed, or the resolved identity does not match the request.
502response_too_large payload_too_complexThe response exceeded byte, depth or node limits.
502unsafe_redirect request_limit upstream_errorThe bounded request could not complete.
503busyAll worker slots are in use.
504timeoutThe total retrieval deadline expired.