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

# Get all playlists

> Returns a list of created playlists



## OpenAPI

````yaml /api-reference/services_documented/streaming_api.yaml get /streaming/playlists
openapi: 3.1.0
info:
  title: Gcore OpenAPI – Streaming API
  description: >-
    This OpenAPI is an aggregated OpenAPI specification that unifies all Gcore
    products into a single file. It covers Cloud, CDN, DNS, WAAP, DDoS
    Protection, Object Storage, Streaming, and FastEdge services.
  version: '2026-05-11T15:10:30.328297+00:00'
servers:
  - url: https://api.gcore.com
security:
  - APIKey: []
tags:
  - name: AI
    x-displayName: AI
  - name: Broadcasts
    x-displayName: Broadcasts
  - name: Directories
    x-displayName: Directories
  - name: Overlays
    x-displayName: Overlays
  - name: Players
    x-displayName: Players
  - name: Playlists
    x-displayName: Playlists
  - name: QualitySets
    x-displayName: QualitySets
  - name: Restreams
    x-displayName: Restreams
  - name: Streaming Statistics
    x-displayName: Statistics
  - name: Streams
    x-displayName: Streams
  - name: Subtitles
    x-displayName: Subtitles
  - name: Videos
    x-displayName: Videos
paths:
  /streaming/playlists:
    get:
      tags:
        - Playlists
      summary: Get all playlists
      description: Returns a list of created playlists
      operationId: get_playlists
      parameters:
        - name: page
          in: query
          description: Query parameter. Use it to list the paginated content
          schema:
            type: integer
      responses:
        '200':
          description: Successful
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/playlist'
      x-codeSamples:
        - lang: Python
          source: |-
            import os
            from gcore import Gcore

            client = Gcore(
                api_key=os.environ.get("GCORE_API_KEY"),  # This is the default and can be omitted
            )
            page = client.streaming.playlists.list()
            page = page.items[0]
            print(page.ad_id)
        - lang: Go
          source: "package main\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\n\t\"github.com/G-Core/gcore-go\"\n\t\"github.com/G-Core/gcore-go/option\"\n\t\"github.com/G-Core/gcore-go/streaming\"\n)\n\nfunc main() {\n\tclient := gcore.NewClient(\n\t\toption.WithAPIKey(\"My API Key\"),\n\t)\n\tpage, err := client.Streaming.Playlists.List(context.TODO(), streaming.PlaylistListParams{})\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\tfmt.Printf(\"%+v\\n\", page)\n}\n"
components:
  schemas:
    playlist:
      type: object
      properties:
        name:
          type: string
          description: Playlist name
        client_id:
          type: integer
          description: Current playlist client ID
        active:
          type: boolean
          default: true
          description: |-
            Enables/Disables playlist. Has two possible values:
            - true – Playlist can be played.
            - false – Playlist is disabled. No broadcast while it's desabled.
        start_time:
          type: string
          default: null
          description: >-
            Playlist start time. Playlist won't be available before the
            specified time. Datetime in ISO 8601 format.
        loop:
          type: boolean
          default: false
          description: Enables/Disables playlist loop
        video_ids:
          type: array
          description: |-
            A list of VOD IDs included in the playlist. Order of videos in a
            playlist reflects the order of IDs in the array.

            Maximum video limit = 128.
          items:
            type: integer
        client_user_id:
          type: integer
          description: Custom field where you can specify user ID in your system
        ad_id:
          type: integer
          description: The advertisement ID that will be inserted into the video
        player_id:
          type: integer
          description: The player ID with which the video will be played
        countdown:
          type: boolean
          description: >-
            Enables countdown before playlist start with ```playlist_type:
            live```
        playlist_type:
          type: string
          enum:
            - live
            - vod
          description: |-
            Determines whether the playlist:
            - `live` - playlist for live-streaming
            - `vod` - playlist is for video on demand access
        hls_url:
          type: string
          description: >-
            A URL to a master playlist HLS (master.m3u8) with MPEG TS container.
              


            This URL is a link to the main manifest. But you can also manually
            specify suffix-options that will allow you to change the manifest to
            your request:


            ```/playlists/{client_id}_{playlist_id}/master[-cmaf][-min-N][-max-N][-img][-(h264|hevc|av1)].m3u8```

            Please see the details in ```hls_url``` attribute of /videos/{id}
            method.
              


            Caution. Solely master.m3u8 (and master[-options].m3u8) is
            officially documented and intended for your use. Any additional
            internal manifests, sub-manifests, parameters, chunk names, file
            extensions, and related components are internal infrastructure
            entities. These may undergo modifications without prior notice, in
            any manner or form. It is strongly advised not to store them in your
            database or cache them on your end.
        hls_cmaf_url:
          type: string
          description: >-
            A URL to a master playlist HLS (master-cmaf.m3u8) with CMAF-based
            chunks. Chunks are in fMP4 container.
              


            It is possible to use the same suffix-options as described in the
            "hls_url" attribute.
              


            Caution. Solely master.m3u8 (and master[-options].m3u8) is
            officially documented and intended for your use. Any additional
            internal manifests, sub-manifests, parameters, chunk names, file
            extensions, and related components are internal infrastructure
            entities. These may undergo modifications without prior notice, in
            any manner or form. It is strongly advised not to store them in your
            database or cache them on your end.
        iframe_url:
          type: string
          description: >-
            A URL to a built-in HTML video player with the video inside. It can
            be inserted into an iframe on your website and the video will
            automatically play in all browsers.


            The player can be opened or shared via this direct link. Also the
            video player can be integrated into your web pages using the Iframe
            tag.

              


            Please see the details in ```iframe_url``` attribute of /videos/{id}
            method.
      example:
        name: >-
          Playlist: Webinar 'Onboarding for new employees on working with the
          corporate portal'
        active: true
        start_time: '2024-07-01T11:00:00Z'
        loop: false
        video_ids:
          - 17800
          - 17801
        client_user_id: 2876
        countdown: true
        playlist_type: live
  securitySchemes:
    APIKey:
      description: >-
        API key for authentication. Make sure to include the word `apikey`,
        followed by a single space and then your token.

        Example: `apikey 1234$abcdef`
      type: apiKey
      in: header
      name: Authorization

````