> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scraperize.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Video

> Fetches a YouTube video or Short by URL: title, full description and its links, hashtags, tags, category, duration, exact publish time, exact view, like and comment counts, the channel (and every collaborator on a collaboration), thumbnails, paid-promotion status, members-only and family-safe flags, chapters, the replay heatmap ("Most replayed") when YouTube shows one, the AI summary, music credits, people / games mentioned, merchandise, caption languages, dubbed audio tracks, available qualities, end-screen links and related videos. Live streams and premieres add their start / end time and concurrent viewers. Age-restricted videos return 403. No video files or download links are returned. Only publicly available data is returned.

> [!NOTE]
>
> **Cost: 1 credit** per successful request. Errors and cache hits (`cache_max_age`) are free.

> [accordion] Copy for AI assistant
>
> Paste this into ChatGPT, Claude or your coding assistant to generate working code for this endpoint (use the copy button).
>
> ```text Prompt
> I want to make an API call to /v1/youtube/video. Here are the details:
>
> Endpoint: GET https://api.scraperize.com/v1/youtube/video
> Description: Fetches a YouTube video or Short by URL: title, full description and its links, hashtags, tags, category, duration, exact publish time, exact view, like and comment counts, the channel (and every collaborator on a collaboration), thumbnails, paid-promotion status, members-only and family-safe flags, chapters, the replay heatmap ("Most replayed") when YouTube shows one, the AI summary, music credits, people / games mentioned, merchandise, caption languages, dubbed audio tracks, available qualities, end-screen links and related videos. Live streams and premieres add their start / end time and concurrent viewers. Age-restricted videos return 403. No video files or download links are returned. Only publicly available data is returned.
>
> Required Headers:
> - x-api-key: Your API key
>
> Parameters:
> - url (string) [required]: A YouTube video or Short URL: `youtube.com/watch?v=<id>`, `youtu.be/<id>`, `youtube.com/shorts/<id>`, `/live/<id>` or `/embed/<id>`.
> - cache_max_age (select): Optional. Return a cached result if one this age or newer exists — served for **0 credits** with `meta.cached=true` and `meta.cachedAt`. Otherwise a fresh scrape runs (**1 credit**) and refreshes the cache. Omit to always scrape fresh.
>
> Example Response:
> {
>   "data": {
>     "video": {
>       "id": "dQw4w9WgXcQ",
>       "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
>       "isShort": false,
>       "title": "Rick Astley - Never Gonna Give You Up (Official Video) (4K Remaster)",
>       "description": "The official video for “Never Gonna Give You Up” by Rick Astley. \n\nNever: The Autobiography 📚 OUT NOW! \nFollow this link to get your copy and listen to Rick’s …",
>       "descriptionLinks": [
>         {
>           "text": "https://linktr.ee/rickastleynever",
>           "url": "https://linktr.ee/rickastleynever"
>         }
>       ],
>       "hashtags": [
>         "RickAstleyNever"
>       ],
>       "keywords": [
>         "rick astley"
>       ],
>       "category": "Music",
>       "durationSeconds": 213,
>       "publishedAt": "2009-10-25T06:57:33.000Z",
>       "uploadedAt": "2009-10-25T06:57:33.000Z",
>       "viewCount": 1833364812,
>       "likeCount": 19492147,
>       "commentCount": 2461279,
>       "commentCountApproximate": false,
>       "commentsDisabled": false,
>       "channel": {
>         "id": "UCuAXFkgsw1L7xaCfnd5JJOw",
>         "name": "Rick Astley",
>         "handle": "RickAstleyYT",
>         "url": "https://www.youtube.com/@RickAstleyYT",
>         "avatarUrl": "https://yt3.ggpht.com/_ShEGOdg-t5YGJse14Ooq6FYBZqX_QSlhaTNjG06miYusm5lWm1UroLyVxnYtahADfRTVLtuVQ=s176-c-k-c0x00ffffff-no-rj",
>         "isVerified": true,
>         "isOfficialArtist": true,
>         "subscriberCount": 4560000,
>         "subscriberCountText": "4.56M subscribers"
>       },
>       "collaborators": [],
>       "thumbnailUrl": "https://i.ytimg.com/vi_webp/dQw4w9WgXcQ/maxresdefault.webp",
>       "thumbnails": [
>         {
>           "url": "https://i.ytimg.com/vi_webp/dQw4w9WgXcQ/maxresdefault.webp",
>           "width": 1920,
>           "height": 1080
>         }
>       ],
>       "embedUrl": "https://www.youtube.com/embed/dQw4w9WgXcQ",
>       "isEmbeddable": true,
>       "hasPaidPromotion": false,
>       "isMembersOnly": false,
>       "isFamilySafe": true,
>       "isUnlisted": false,
>       "isPrivate": false,
>       "allowRatings": true,
>       "playabilityStatus": "OK",
>       "unplayableReason": null,
>       "availableCountryCount": 249,
>       "isLive": false,
>       "isUpcoming": false,
>       "wasLive": false,
>       "liveStartedAt": null,
>       "liveEndedAt": null,
>       "concurrentViewers": null,
>       "chapters": [],
>       "chaptersSource": null,
>       "heatmap": {
>         "segments": [
>           {
>             "startSeconds": 0,
>             "durationSeconds": 2.14,
>             "intensity": 1
>           }
>         ],
>         "mostReplayed": [
>           {
>             "startSeconds": 0,
>             "endSeconds": 6.42,
>             "peakSeconds": 2.14
>           }
>         ]
>       },
>       "aiSummary": null,
>       "music": [
>         {
>           "song": "Never Gonna Give You Up (7\" Mix)",
>           "artist": "Rick Astley",
>           "album": "Whenever You Need Somebody",
>           "imageUrl": "https://yt3.googleusercontent.com/eC9DfRcYSk4FE-fvDCJSu_4xsKdVMKxwmFTYFZwP8OqB7R4TKxAjKoR-Kp1lXeRi2WddPFYulSte4eW-",
>           "credits": {
>             "Song": "Never Gonna Give You Up (7\" Mix)",
>             "Artist": "Rick Astley",
>             "Album": "Whenever You Need Somebody",
>             "Writers": "Pete Waterman, Mike Stock, Matt Aitken"
>           }
>         }
>       ],
>       "attributes": [],
>       "merchandise": [],
>       "series": null,
>       "captions": [
>         {
>           "languageCode": "en",
>           "name": "English",
>           "isAutoGenerated": false,
>           "isTranslatable": true
>         }
>       ],
>       "hasTranscript": true,
>       "audioTracks": [],
>       "formats": {
>         "qualities": [
>           "2160p"
>         ],
>         "maxQuality": "2160p",
>         "maxFps": 25,
>         "hasHdr": false,
>         "is360": false
>       },
>       "endscreen": [
>         {
>           "type": "CHANNEL",
>           "title": "Rick Astley",
>           "videoId": null,
>           "channelId": "UCuAXFkgsw1L7xaCfnd5JJOw",
>           "playlistId": null,
>           "url": null,
>           "startSeconds": 201.45,
>           "endSeconds": 212.04
>         }
>       ],
>       "relatedVideos": [
>         {
>           "id": "KMX8gl_kJcw",
>           "url": "https://www.youtube.com/watch?v=KMX8gl_kJcw",
>           "title": "The lazy twin | Full movie ",
>           "channelName": "GuiltyVibes Tv",
>           "channelId": null,
>           "channelHandle": null,
>           "isChannelVerified": false,
>           "viewCount": 305000,
>           "viewCountText": "305K",
>           "publishedText": "3 days ago",
>           "durationSeconds": 2279,
>           "thumbnailUrl": "https://i.ytimg.com/vi/KMX8gl_kJcw/hqdefault.jpg?sqp=-oaymwEcCNACELwBSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLC9KfUYQMBGjp0jmkl1ljVSphKl7A"
>         }
>       ]
>     },
>     "fetchedAt": "2026-11-03T17:36:32.394Z"
>   },
>   "meta": {
>     "requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f",
>     "creditsCharged": 1,
>     "creditsRemaining": 4999,
>     "cached": false
>   }
> }
>
> Please help me write code in my preferred programming language to make this API call and handle the response appropriately. Include error handling and best practices.
> ```


## OpenAPI

````yaml /api-reference/openapi.json get /v1/youtube/video
openapi: 3.0.3
info:
  title: Scraperize API
  version: 1.0.0
  description: >-
    Extract public data from social media platforms as clean JSON. Endpoints are
    split by platform and by what they return, e.g. `GET /v1/twitter/tweet`.


    ## Authentication

    Send your API key in the `x-api-key` header (or `Authorization: Bearer
    <key>`). Create keys in your dashboard.


    ## Credits

    Each successful live scrape costs **1 credit**. Credits are prepaid and
    never expire.


    ## Caching

    Every endpoint accepts an optional `cache_max_age`
    (`1d`|`3d`|`7d`|`14d`|`30d`). A cache hit within that window is returned for
    **0 credits**.


    ## Responses

    Success returns `{ "data": …, "meta": { "requestId", … } }`. Errors return
    `{ "error": { "code", "message", "requestId" } }` with a matching HTTP
    status. `meta` on a scrape carries `creditsCharged`, `creditsRemaining`,
    `cached`, and (on a hit) `cachedAt`.


    ## Rate limits

    Requests are limited per team per minute; over the limit returns `429` with
    a `Retry-After` header.
servers:
  - url: https://api.scraperize.com
    description: Production
security:
  - ApiKeyAuth: []
tags:
  - name: Twitter
    description: Twitter / X scraping endpoints
  - name: Facebook
    description: Facebook scraping endpoints
  - name: Linkme
    description: Linkme (link.me) scraping endpoints
  - name: Amazon
    description: Amazon (creator shop / storefront) scraping endpoints
  - name: Linkbio
    description: Linkbio (lnk.bio) scraping endpoints
  - name: Pillar
    description: Pillar (pillar.io) scraping endpoints
  - name: Komi
    description: Komi (komi.io) scraping endpoints
  - name: Linktree
    description: Linktree (linktr.ee) scraping endpoints
  - name: Kick
    description: Kick (kick.com) scraping endpoints
  - name: Snapchat
    description: Snapchat (snapchat.com) scraping endpoints
  - name: Telegram
    description: Telegram (t.me) scraping endpoints
  - name: LinkedIn
    description: LinkedIn scraping endpoints
  - name: Twitch
    description: Twitch scraping endpoints
  - name: TikTok
    description: TikTok (tiktok.com) scraping endpoints
  - name: Instagram
    description: Instagram scraping endpoints
  - name: Lagos Life
    description: Lagos Life scraping endpoints
  - name: Bluesky
    description: Bluesky (bsky.app) scraping endpoints
  - name: Threads
    description: Threads (threads.com) scraping endpoints
  - name: Truth Social
    description: Truth Social (truthsocial.com) scraping endpoints
  - name: YouTube
    description: YouTube (youtube.com) scraping endpoints
paths:
  /v1/youtube/video:
    get:
      tags:
        - YouTube
      summary: Video
      description: >-
        Fetches a YouTube video or Short by URL: title, full description and its
        links, hashtags, tags, category, duration, exact publish time, exact
        view, like and comment counts, the channel (and every collaborator on a
        collaboration), thumbnails, paid-promotion status, members-only and
        family-safe flags, chapters, the replay heatmap ("Most replayed") when
        YouTube shows one, the AI summary, music credits, people / games
        mentioned, merchandise, caption languages, dubbed audio tracks,
        available qualities, end-screen links and related videos. Live streams
        and premieres add their start / end time and concurrent viewers.
        Age-restricted videos return 403. No video files or download links are
        returned. Only publicly available data is returned.
      parameters:
        - name: url
          in: query
          required: true
          description: >-
            A YouTube video or Short URL: `youtube.com/watch?v=<id>`,
            `youtu.be/<id>`, `youtube.com/shorts/<id>`, `/live/<id>` or
            `/embed/<id>`.
          schema:
            type: string
          example: https://www.youtube.com/watch?v=dQw4w9WgXcQ
        - name: cache_max_age
          in: query
          required: false
          description: >-
            Optional. Return a cached result if one this age or newer exists —
            served for **0 credits** with `meta.cached=true` and
            `meta.cachedAt`. Otherwise a fresh scrape runs (**1 credit**) and
            refreshes the cache. Omit to always scrape fresh.
          schema:
            type: string
            enum:
              - 1d
              - 3d
              - 7d
              - 14d
              - 30d
          example: 7d
      responses:
        '200':
          description: The video.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      video:
                        type: object
                      fetchedAt:
                        type: string
                        format: date-time
                  meta:
                    type: object
                    description: >-
                      requestId + credit/caching metadata (creditsCharged,
                      creditsRemaining, cached, cachedAt).
                required:
                  - data
                  - meta
              example:
                data:
                  video:
                    id: dQw4w9WgXcQ
                    url: https://www.youtube.com/watch?v=dQw4w9WgXcQ
                    isShort: false
                    title: >-
                      Rick Astley - Never Gonna Give You Up (Official Video) (4K
                      Remaster)
                    description: >-
                      The official video for “Never Gonna Give You Up” by Rick
                      Astley. 


                      Never: The Autobiography 📚 OUT NOW! 

                      Follow this link to get your copy and listen to Rick’s
                      ‘Never’ playlist ❤️ #RickAstleyNever

                      https://linktr.ee/rickastleynever


                      “Never Gonna Give You Up” was a global smash on its
                      release in July 1987, topping the charts in 25 countries
                      including Rick’s native UK and the US Billboard Hot 100. 
                      It also won the Brit Award for Best single in 1988. Stock
                      Aitken and Waterman wrote and produced the track which was
                      the lead-off single and lead track from Rick’s debut LP
                      “Whenever You Need Somebody”.  The album was itself a UK
                      number one and would go on to sell over 15 million copies
                      worldwide.


                      The legendary video was directed by Simon West – who later
                      went on to make Hollywood blockbusters such as Con Air,
                      Lara Croft – Tomb Raider and The Expendables 2.  The video
                      passed the 1bn YouTube views milestone on 28 July 2021.


                      Subscribe to the official Rick Astley YouTube channel:
                      https://RickAstley.lnk.to/YTSubID


                      Follow Rick Astley:

                      Facebook: https://RickAstley.lnk.to/FBFollowID 

                      Twitter: https://RickAstley.lnk.to/TwitterID 

                      Instagram: https://RickAstley.lnk.to/InstagramID 

                      Website: https://RickAstley.lnk.to/storeID 

                      TikTok: https://RickAstley.lnk.to/TikTokID


                      Listen to Rick Astley:

                      Spotify: https://RickAstley.lnk.to/SpotifyID 

                      Apple Music: https://RickAstley.lnk.to/AppleMusicID 

                      Amazon Music: https://RickAstley.lnk.to/AmazonMusicID 

                      Deezer: https://RickAstley.lnk.to/DeezerID 


                      Lyrics:

                      We’re no strangers to love

                      You know the rules and so do I

                      A full commitment’s what I’m thinking of

                      You wouldn’t get this from any other guy


                      I just wanna tell you how I’m feeling

                      Gotta make you understand


                      Never gonna give you up

                      Never gonna let you down

                      Never gonna run around and desert you

                      Never gonna make you cry

                      Never gonna say goodbye

                      Never gonna tell a lie and hurt you


                      We’ve known each other for so long

                      Your heart’s been aching but you’re too shy to say it

                      Inside we both know what’s been going on

                      We know the game and we’re gonna play it


                      And if you ask me how I’m feeling

                      Don’t tell me you’re too blind to see


                      Never gonna give you up

                      Never gonna let you down

                      Never gonna run around and desert you

                      Never gonna make you cry

                      Never gonna say goodbye

                      Never gonna tell a lie and hurt you


                      #RickAstley #NeverGonnaGiveYouUp #WheneverYouNeedSomebody
                      #OfficialMusicVideo
                    descriptionLinks:
                      - text: https://linktr.ee/rickastleynever
                        url: https://linktr.ee/rickastleynever
                      - text: https://RickAstley.lnk.to/YTSubID
                        url: https://RickAstley.lnk.to/YTSubID
                      - text: https://RickAstley.lnk.to/FBFollowID
                        url: https://RickAstley.lnk.to/FBFollowID
                    hashtags:
                      - RickAstleyNever
                      - RickAstley
                      - NeverGonnaGiveYouUp
                    keywords:
                      - rick astley
                      - Never Gonna Give You Up
                      - nggyu
                    category: Music
                    durationSeconds: 213
                    publishedAt: '2009-10-25T06:57:33.000Z'
                    uploadedAt: '2009-10-25T06:57:33.000Z'
                    viewCount: 1833364812
                    likeCount: 19492147
                    commentCount: 2461279
                    commentCountApproximate: false
                    commentsDisabled: false
                    channel:
                      id: UCuAXFkgsw1L7xaCfnd5JJOw
                      name: Rick Astley
                      handle: RickAstleyYT
                      url: https://www.youtube.com/@RickAstleyYT
                      avatarUrl: >-
                        https://yt3.ggpht.com/_ShEGOdg-t5YGJse14Ooq6FYBZqX_QSlhaTNjG06miYusm5lWm1UroLyVxnYtahADfRTVLtuVQ=s176-c-k-c0x00ffffff-no-rj
                      isVerified: true
                      isOfficialArtist: true
                      subscriberCount: 4560000
                      subscriberCountText: 4.56M subscribers
                    collaborators: []
                    thumbnailUrl: https://i.ytimg.com/vi_webp/dQw4w9WgXcQ/maxresdefault.webp
                    thumbnails:
                      - url: >-
                          https://i.ytimg.com/vi_webp/dQw4w9WgXcQ/maxresdefault.webp
                        width: 1920
                        height: 1080
                      - url: https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg
                        width: 1280
                        height: 720
                      - url: >-
                          https://i.ytimg.com/vi/dQw4w9WgXcQ/hqdefault.jpg?sqp=-oaymwEcCNACELwBSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLB_p0PncTtkrhaNDZtntrE3gKkoYw
                        width: 336
                        height: 188
                    embedUrl: https://www.youtube.com/embed/dQw4w9WgXcQ
                    isEmbeddable: true
                    hasPaidPromotion: false
                    isMembersOnly: false
                    isFamilySafe: true
                    isUnlisted: false
                    isPrivate: false
                    allowRatings: true
                    playabilityStatus: OK
                    unplayableReason: null
                    availableCountryCount: 249
                    isLive: false
                    isUpcoming: false
                    wasLive: false
                    liveStartedAt: null
                    liveEndedAt: null
                    concurrentViewers: null
                    chapters: []
                    chaptersSource: null
                    heatmap:
                      segments:
                        - startSeconds: 0
                          durationSeconds: 2.14
                          intensity: 1
                        - startSeconds: 2.14
                          durationSeconds: 2.14
                          intensity: 0.4230315549340408
                        - startSeconds: 4.28
                          durationSeconds: 2.14
                          intensity: 0.3533035491809836
                      mostReplayed:
                        - startSeconds: 0
                          endSeconds: 6.42
                          peakSeconds: 2.14
                    aiSummary: null
                    music:
                      - song: Never Gonna Give You Up (7" Mix)
                        artist: Rick Astley
                        album: Whenever You Need Somebody
                        imageUrl: >-
                          https://yt3.googleusercontent.com/eC9DfRcYSk4FE-fvDCJSu_4xsKdVMKxwmFTYFZwP8OqB7R4TKxAjKoR-Kp1lXeRi2WddPFYulSte4eW-
                        credits:
                          Song: Never Gonna Give You Up (7" Mix)
                          Artist: Rick Astley
                          Album: Whenever You Need Somebody
                          Writers: Pete Waterman, Mike Stock, Matt Aitken
                    attributes: []
                    merchandise: []
                    series: null
                    captions:
                      - languageCode: en
                        name: English
                        isAutoGenerated: false
                        isTranslatable: true
                      - languageCode: en
                        name: English (auto-generated)
                        isAutoGenerated: true
                        isTranslatable: true
                      - languageCode: de-DE
                        name: German (Germany)
                        isAutoGenerated: false
                        isTranslatable: true
                    hasTranscript: true
                    audioTracks: []
                    formats:
                      qualities:
                        - 2160p
                        - 1440p
                        - 1080p
                      maxQuality: 2160p
                      maxFps: 25
                      hasHdr: false
                      is360: false
                    endscreen:
                      - type: CHANNEL
                        title: Rick Astley
                        videoId: null
                        channelId: UCuAXFkgsw1L7xaCfnd5JJOw
                        playlistId: null
                        url: null
                        startSeconds: 201.45
                        endSeconds: 212.04
                      - type: VIDEO
                        title: >-
                          Rick Astley - Never : The Autobiography - Listen to
                          the introduction of the Audiobook
                        videoId: qQDrqV5Hw4c
                        channelId: null
                        playlistId: null
                        url: null
                        startSeconds: 201.45
                        endSeconds: 212.04
                      - type: VIDEO
                        title: Rick Astley - The Reflection Tour 2026 - Trailer
                        videoId: yi6fWPV6qXg
                        channelId: null
                        playlistId: null
                        url: null
                        startSeconds: 201.45
                        endSeconds: 212.04
                    relatedVideos:
                      - id: KMX8gl_kJcw
                        url: https://www.youtube.com/watch?v=KMX8gl_kJcw
                        title: 'The lazy twin | Full movie '
                        channelName: GuiltyVibes Tv
                        channelId: null
                        channelHandle: null
                        isChannelVerified: false
                        viewCount: 305000
                        viewCountText: 305K
                        publishedText: 3 days ago
                        durationSeconds: 2279
                        thumbnailUrl: >-
                          https://i.ytimg.com/vi/KMX8gl_kJcw/hqdefault.jpg?sqp=-oaymwEcCNACELwBSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLC9KfUYQMBGjp0jmkl1ljVSphKl7A
                      - id: h_D3VFfhvs4
                        url: https://www.youtube.com/watch?v=h_D3VFfhvs4
                        title: Michael Jackson - Smooth Criminal (Official Video)
                        channelName: Michael Jackson
                        channelId: UC5OrDvL9DscpcAstz7JnQGA
                        channelHandle: null
                        isChannelVerified: false
                        viewCount: 1300000000
                        viewCountText: 1.3B
                        publishedText: 15 years ago
                        durationSeconds: 566
                        thumbnailUrl: >-
                          https://i.ytimg.com/vi/h_D3VFfhvs4/hqdefault.jpg?sqp=-oaymwEcCNACELwBSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLCR9tySWj6ywxK7kVu9d33iYJvlQw
                      - id: KjqtDep5mT0
                        url: https://www.youtube.com/watch?v=KjqtDep5mT0
                        title: >-
                          Sing | Try Not to Sing Challenge | 10 Minutes | Mini
                          Moments
                        channelName: Mini Moments
                        channelId: UCstwnmjrH6CX63UNqo0Mh5A
                        channelHandle: minimoments_official
                        isChannelVerified: false
                        viewCount: 208000000
                        viewCountText: 208M
                        publishedText: 3 years ago
                        durationSeconds: 573
                        thumbnailUrl: >-
                          https://i.ytimg.com/vi/KjqtDep5mT0/hqdefault.jpg?sqp=-oaymwEcCNACELwBSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLAft0qmv76q1akr23Yh7062zFw9qw
                  fetchedAt: '2026-11-03T17:36:32.394Z'
                meta:
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
                  creditsCharged: 1
                  creditsRemaining: 4999
                  cached: false
        '401':
          description: Missing, invalid, or revoked API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: UNAUTHORIZED
                  message: API key required — pass it in the `x-api-key` header.
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
        '402':
          description: Not enough credits for this request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: INSUFFICIENT_CREDITS
                  message: >-
                    This request costs 1 credit, but your balance is 0. Top up
                    to continue.
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
        '403':
          description: The video is age-restricted (sign-in only).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: >-
            No YouTube video found (it may not exist, be private or have been
            removed).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: NOT_FOUND
                  message: >-
                    The requested content was not found (it may not exist, be
                    deleted, or be private).
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
        '422':
          description: Invalid query parameters (url must be a YouTube video or Short URL).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: VALIDATION_ERROR
                  message: Request validation failed
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
                  details:
                    - path: url
                      message: url is required
        '429':
          description: Over the per-minute rate limit — honour `Retry-After`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: RATE_LIMITED
                  message: >-
                    Rate limit exceeded — max 100 requests per 60s. Retry in
                    ~30s.
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
        '503':
          description: >-
            Temporarily unavailable — retry after `Retry-After`. `error.code`
            tells you why: `UPSTREAM_BLOCKED` (the source blocked this request),
            `EXTRACTION_FAILED` (the source returned unexpected data),
            `PLATFORM_UNAVAILABLE` (the source is down), or
            `SERVICE_UNAVAILABLE` (we are at capacity).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: UPSTREAM_BLOCKED
                  message: >-
                    The source is temporarily unavailable. Please try again
                    shortly.
                  requestId: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
components:
  schemas:
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              example: NOT_FOUND
            message:
              type: string
              example: The requested content was not found.
            requestId:
              type: string
              example: req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f
            details:
              type: array
              items:
                type: object
              description: Present on validation errors.
          required:
            - code
            - message
            - requestId
      required:
        - error
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Your API key. Send it in the `x-api-key` header (or `Authorization:
        Bearer <key>`). Create and manage keys from your dashboard.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.