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

# Get playlist videos

> Retrieves videos from a YouTube playlist with shuffled order



## OpenAPI

````yaml /api-reference/oda-media-service-1.0.0.yml get /media/playlists/{playlistId}
openapi: 3.0.1
info:
  title: oda-media-service
  version: 1.0.0
servers: []
security: []
tags:
  - name: Available Media
    description: Search and retrieve available media from external providers
  - name: Video
    description: Video management operations
  - name: Playlist
    description: Playlist management operations
paths:
  /media/playlists/{playlistId}:
    get:
      tags:
        - Playlist
      summary: Get playlist videos
      description: Retrieves videos from a YouTube playlist with shuffled order
      operationId: get
      parameters:
        - name: playlistId
          in: path
          description: YouTube playlist ID
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Playlist with videos
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Playlist'
components:
  schemas:
    Playlist:
      type: object
      properties:
        items:
          type: array
          description: List of videos in the playlist
          items:
            $ref: '#/components/schemas/Video'
        title:
          type: string
          description: Playlist title
      description: Playlist containing videos
    Video:
      type: object
      properties:
        id:
          type: string
          description: Video ID
          nullable: true
        snippet:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/Snippet'
            - type: object
              description: Video snippet with title, description, thumbnails
        contentDetails:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/ContentDetails'
            - type: object
              description: Content details like duration
        statistics:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/Statistics'
            - type: object
              description: Video statistics (views, likes, etc.)
      description: YouTube video data
    Snippet:
      type: object
      properties:
        resourceId:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/Id'
        title:
          type: string
          nullable: true
        thumbnails:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/Thumbnail'
          nullable: true
      description: Video snippet with title, description, thumbnails
    ContentDetails:
      type: object
      properties:
        duration:
          type: string
          nullable: true
        regionRestriction:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/RegionRestriction'
        contentRating:
          type: object
          additionalProperties:
            type: string
          nullable: true
      description: Content details like duration
    Statistics:
      type: object
      properties:
        viewCount:
          type: string
          nullable: true
      description: Video statistics (views, likes, etc.)
    Id:
      type: object
      properties:
        kind:
          type: string
          nullable: true
        videoId:
          type: string
          nullable: true
    Thumbnail:
      type: object
      properties:
        url:
          type: string
          nullable: true
        width:
          type: string
          nullable: true
        height:
          type: string
          nullable: true
    RegionRestriction:
      type: object
      properties:
        blocked:
          type: array
          nullable: true
          items:
            type: string

````