openapi: 3.0.3
info:
  title: LibreTime API
  version: 2.0.0
  description: Radio Broadcast & Automation Platform
paths:
  /api/v2/celery-tasks:
    get:
      operationId: celery_tasks_list
      tags:
      - celery-tasks
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CeleryTask'
          description: ''
    post:
      operationId: celery_tasks_create
      tags:
      - celery-tasks
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CeleryTask'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CeleryTask'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CeleryTask'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CeleryTask'
          description: ''
  /api/v2/celery-tasks/{id}:
    get:
      operationId: celery_tasks_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this celery task.
        required: true
      tags:
      - celery-tasks
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CeleryTask'
          description: ''
    put:
      operationId: celery_tasks_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this celery task.
        required: true
      tags:
      - celery-tasks
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CeleryTask'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CeleryTask'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CeleryTask'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CeleryTask'
          description: ''
    patch:
      operationId: celery_tasks_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this celery task.
        required: true
      tags:
      - celery-tasks
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedCeleryTask'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedCeleryTask'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedCeleryTask'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CeleryTask'
          description: ''
    delete:
      operationId: celery_tasks_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this celery task.
        required: true
      tags:
      - celery-tasks
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/files:
    get:
      operationId: files_list
      tags:
      - files
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/File'
          description: ''
    post:
      operationId: files_create
      tags:
      - files
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/File'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/File'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/File'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/File'
          description: ''
  /api/v2/files/{id}:
    get:
      operationId: files_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this file.
        required: true
      tags:
      - files
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/File'
          description: ''
    put:
      operationId: files_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this file.
        required: true
      tags:
      - files
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/File'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/File'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/File'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/File'
          description: ''
    patch:
      operationId: files_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this file.
        required: true
      tags:
      - files
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedFile'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedFile'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedFile'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/File'
          description: ''
    delete:
      operationId: files_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this file.
        required: true
      tags:
      - files
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/files/{id}/download:
    get:
      operationId: files_download_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this file.
        required: true
      tags:
      - files
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/File'
          description: ''
  /api/v2/imported-podcasts:
    get:
      operationId: imported_podcasts_list
      tags:
      - imported-podcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ImportedPodcast'
          description: ''
    post:
      operationId: imported_podcasts_create
      tags:
      - imported-podcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImportedPodcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ImportedPodcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ImportedPodcast'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ImportedPodcast'
          description: ''
  /api/v2/imported-podcasts/{id}:
    get:
      operationId: imported_podcasts_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this imported podcast.
        required: true
      tags:
      - imported-podcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ImportedPodcast'
          description: ''
    put:
      operationId: imported_podcasts_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this imported podcast.
        required: true
      tags:
      - imported-podcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImportedPodcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ImportedPodcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ImportedPodcast'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ImportedPodcast'
          description: ''
    patch:
      operationId: imported_podcasts_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this imported podcast.
        required: true
      tags:
      - imported-podcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedImportedPodcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedImportedPodcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedImportedPodcast'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ImportedPodcast'
          description: ''
    delete:
      operationId: imported_podcasts_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this imported podcast.
        required: true
      tags:
      - imported-podcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/info:
    get:
      operationId: info_retrieve
      tags:
      - info
      security:
      - cookieAuth: []
      - basicAuth: []
      - {}
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Info'
          description: ''
  /api/v2/libraries:
    get:
      operationId: libraries_list
      tags:
      - libraries
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Library'
          description: ''
    post:
      operationId: libraries_create
      tags:
      - libraries
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Library'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Library'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Library'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Library'
          description: ''
  /api/v2/libraries/{id}:
    get:
      operationId: libraries_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this library.
        required: true
      tags:
      - libraries
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Library'
          description: ''
    put:
      operationId: libraries_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this library.
        required: true
      tags:
      - libraries
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Library'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Library'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Library'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Library'
          description: ''
    patch:
      operationId: libraries_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this library.
        required: true
      tags:
      - libraries
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedLibrary'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedLibrary'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedLibrary'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Library'
          description: ''
    delete:
      operationId: libraries_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this library.
        required: true
      tags:
      - libraries
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/listener-counts:
    get:
      operationId: listener_counts_list
      tags:
      - listener-counts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ListenerCount'
          description: ''
    post:
      operationId: listener_counts_create
      tags:
      - listener-counts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListenerCount'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ListenerCount'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ListenerCount'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListenerCount'
          description: ''
  /api/v2/listener-counts/{id}:
    get:
      operationId: listener_counts_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this listener count.
        required: true
      tags:
      - listener-counts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListenerCount'
          description: ''
    put:
      operationId: listener_counts_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this listener count.
        required: true
      tags:
      - listener-counts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListenerCount'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ListenerCount'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ListenerCount'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListenerCount'
          description: ''
    patch:
      operationId: listener_counts_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this listener count.
        required: true
      tags:
      - listener-counts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedListenerCount'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedListenerCount'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedListenerCount'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListenerCount'
          description: ''
    delete:
      operationId: listener_counts_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this listener count.
        required: true
      tags:
      - listener-counts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/live-logs:
    get:
      operationId: live_logs_list
      tags:
      - live-logs
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LiveLog'
          description: ''
    post:
      operationId: live_logs_create
      tags:
      - live-logs
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LiveLog'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/LiveLog'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/LiveLog'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LiveLog'
          description: ''
  /api/v2/live-logs/{id}:
    get:
      operationId: live_logs_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this live log.
        required: true
      tags:
      - live-logs
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LiveLog'
          description: ''
    put:
      operationId: live_logs_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this live log.
        required: true
      tags:
      - live-logs
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LiveLog'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/LiveLog'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/LiveLog'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LiveLog'
          description: ''
    patch:
      operationId: live_logs_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this live log.
        required: true
      tags:
      - live-logs
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedLiveLog'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedLiveLog'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedLiveLog'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LiveLog'
          description: ''
    delete:
      operationId: live_logs_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this live log.
        required: true
      tags:
      - live-logs
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/login-attempts:
    get:
      operationId: login_attempts_list
      tags:
      - login-attempts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LoginAttempt'
          description: ''
    post:
      operationId: login_attempts_create
      tags:
      - login-attempts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LoginAttempt'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/LoginAttempt'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/LoginAttempt'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LoginAttempt'
          description: ''
  /api/v2/login-attempts/{ip}:
    get:
      operationId: login_attempts_retrieve
      parameters:
      - in: path
        name: ip
        schema:
          type: string
        description: A unique value identifying this login attempt.
        required: true
      tags:
      - login-attempts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LoginAttempt'
          description: ''
    put:
      operationId: login_attempts_update
      parameters:
      - in: path
        name: ip
        schema:
          type: string
        description: A unique value identifying this login attempt.
        required: true
      tags:
      - login-attempts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LoginAttempt'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/LoginAttempt'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/LoginAttempt'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LoginAttempt'
          description: ''
    patch:
      operationId: login_attempts_partial_update
      parameters:
      - in: path
        name: ip
        schema:
          type: string
        description: A unique value identifying this login attempt.
        required: true
      tags:
      - login-attempts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedLoginAttempt'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedLoginAttempt'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedLoginAttempt'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LoginAttempt'
          description: ''
    delete:
      operationId: login_attempts_destroy
      parameters:
      - in: path
        name: ip
        schema:
          type: string
        description: A unique value identifying this login attempt.
        required: true
      tags:
      - login-attempts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/mount-names:
    get:
      operationId: mount_names_list
      tags:
      - mount-names
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MountName'
          description: ''
    post:
      operationId: mount_names_create
      tags:
      - mount-names
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MountName'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/MountName'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/MountName'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MountName'
          description: ''
  /api/v2/mount-names/{id}:
    get:
      operationId: mount_names_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this mount name.
        required: true
      tags:
      - mount-names
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MountName'
          description: ''
    put:
      operationId: mount_names_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this mount name.
        required: true
      tags:
      - mount-names
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MountName'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/MountName'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/MountName'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MountName'
          description: ''
    patch:
      operationId: mount_names_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this mount name.
        required: true
      tags:
      - mount-names
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedMountName'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedMountName'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedMountName'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MountName'
          description: ''
    delete:
      operationId: mount_names_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this mount name.
        required: true
      tags:
      - mount-names
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/playlist-contents:
    get:
      operationId: playlist_contents_list
      tags:
      - playlist-contents
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PlaylistContent'
          description: ''
    post:
      operationId: playlist_contents_create
      tags:
      - playlist-contents
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlaylistContent'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PlaylistContent'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PlaylistContent'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaylistContent'
          description: ''
  /api/v2/playlist-contents/{id}:
    get:
      operationId: playlist_contents_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playlist content.
        required: true
      tags:
      - playlist-contents
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaylistContent'
          description: ''
    put:
      operationId: playlist_contents_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playlist content.
        required: true
      tags:
      - playlist-contents
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlaylistContent'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PlaylistContent'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PlaylistContent'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaylistContent'
          description: ''
    patch:
      operationId: playlist_contents_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playlist content.
        required: true
      tags:
      - playlist-contents
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedPlaylistContent'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedPlaylistContent'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedPlaylistContent'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaylistContent'
          description: ''
    delete:
      operationId: playlist_contents_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playlist content.
        required: true
      tags:
      - playlist-contents
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/playlists:
    get:
      operationId: playlists_list
      tags:
      - playlists
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Playlist'
          description: ''
    post:
      operationId: playlists_create
      tags:
      - playlists
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Playlist'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Playlist'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Playlist'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Playlist'
          description: ''
  /api/v2/playlists/{id}:
    get:
      operationId: playlists_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playlist.
        required: true
      tags:
      - playlists
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Playlist'
          description: ''
    put:
      operationId: playlists_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playlist.
        required: true
      tags:
      - playlists
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Playlist'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Playlist'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Playlist'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Playlist'
          description: ''
    patch:
      operationId: playlists_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playlist.
        required: true
      tags:
      - playlists
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedPlaylist'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedPlaylist'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedPlaylist'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Playlist'
          description: ''
    delete:
      operationId: playlists_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playlist.
        required: true
      tags:
      - playlists
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/playout-history:
    get:
      operationId: playout_history_list
      tags:
      - playout-history
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PlayoutHistory'
          description: ''
    post:
      operationId: playout_history_create
      tags:
      - playout-history
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlayoutHistory'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PlayoutHistory'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PlayoutHistory'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistory'
          description: ''
  /api/v2/playout-history-metadata:
    get:
      operationId: playout_history_metadata_list
      tags:
      - playout-history-metadata
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PlayoutHistoryMetadata'
          description: ''
    post:
      operationId: playout_history_metadata_create
      tags:
      - playout-history-metadata
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryMetadata'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryMetadata'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryMetadata'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryMetadata'
          description: ''
  /api/v2/playout-history-metadata/{id}:
    get:
      operationId: playout_history_metadata_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history metadata.
        required: true
      tags:
      - playout-history-metadata
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryMetadata'
          description: ''
    put:
      operationId: playout_history_metadata_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history metadata.
        required: true
      tags:
      - playout-history-metadata
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryMetadata'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryMetadata'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryMetadata'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryMetadata'
          description: ''
    patch:
      operationId: playout_history_metadata_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history metadata.
        required: true
      tags:
      - playout-history-metadata
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistoryMetadata'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistoryMetadata'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistoryMetadata'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryMetadata'
          description: ''
    delete:
      operationId: playout_history_metadata_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history metadata.
        required: true
      tags:
      - playout-history-metadata
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/playout-history-template-fields:
    get:
      operationId: playout_history_template_fields_list
      tags:
      - playout-history-template-fields
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PlayoutHistoryTemplateField'
          description: ''
    post:
      operationId: playout_history_template_fields_create
      tags:
      - playout-history-template-fields
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplateField'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplateField'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplateField'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryTemplateField'
          description: ''
  /api/v2/playout-history-template-fields/{id}:
    get:
      operationId: playout_history_template_fields_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history template
          field.
        required: true
      tags:
      - playout-history-template-fields
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryTemplateField'
          description: ''
    put:
      operationId: playout_history_template_fields_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history template
          field.
        required: true
      tags:
      - playout-history-template-fields
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplateField'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplateField'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplateField'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryTemplateField'
          description: ''
    patch:
      operationId: playout_history_template_fields_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history template
          field.
        required: true
      tags:
      - playout-history-template-fields
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistoryTemplateField'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistoryTemplateField'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistoryTemplateField'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryTemplateField'
          description: ''
    delete:
      operationId: playout_history_template_fields_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history template
          field.
        required: true
      tags:
      - playout-history-template-fields
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/playout-history-templates:
    get:
      operationId: playout_history_templates_list
      tags:
      - playout-history-templates
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PlayoutHistoryTemplate'
          description: ''
    post:
      operationId: playout_history_templates_create
      tags:
      - playout-history-templates
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplate'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryTemplate'
          description: ''
  /api/v2/playout-history-templates/{id}:
    get:
      operationId: playout_history_templates_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history template.
        required: true
      tags:
      - playout-history-templates
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryTemplate'
          description: ''
    put:
      operationId: playout_history_templates_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history template.
        required: true
      tags:
      - playout-history-templates
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PlayoutHistoryTemplate'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryTemplate'
          description: ''
    patch:
      operationId: playout_history_templates_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history template.
        required: true
      tags:
      - playout-history-templates
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistoryTemplate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistoryTemplate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistoryTemplate'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistoryTemplate'
          description: ''
    delete:
      operationId: playout_history_templates_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history template.
        required: true
      tags:
      - playout-history-templates
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/playout-history/{id}:
    get:
      operationId: playout_history_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history.
        required: true
      tags:
      - playout-history
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistory'
          description: ''
    put:
      operationId: playout_history_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history.
        required: true
      tags:
      - playout-history
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PlayoutHistory'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PlayoutHistory'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PlayoutHistory'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistory'
          description: ''
    patch:
      operationId: playout_history_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history.
        required: true
      tags:
      - playout-history
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistory'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistory'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedPlayoutHistory'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayoutHistory'
          description: ''
    delete:
      operationId: playout_history_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this playout history.
        required: true
      tags:
      - playout-history
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/podcast-episodes:
    get:
      operationId: podcast_episodes_list
      tags:
      - podcast-episodes
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PodcastEpisode'
          description: ''
    post:
      operationId: podcast_episodes_create
      tags:
      - podcast-episodes
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PodcastEpisode'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PodcastEpisode'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PodcastEpisode'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PodcastEpisode'
          description: ''
  /api/v2/podcast-episodes/{id}:
    get:
      operationId: podcast_episodes_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this podcast episode.
        required: true
      tags:
      - podcast-episodes
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PodcastEpisode'
          description: ''
    put:
      operationId: podcast_episodes_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this podcast episode.
        required: true
      tags:
      - podcast-episodes
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PodcastEpisode'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PodcastEpisode'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PodcastEpisode'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PodcastEpisode'
          description: ''
    patch:
      operationId: podcast_episodes_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this podcast episode.
        required: true
      tags:
      - podcast-episodes
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedPodcastEpisode'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedPodcastEpisode'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedPodcastEpisode'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PodcastEpisode'
          description: ''
    delete:
      operationId: podcast_episodes_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this podcast episode.
        required: true
      tags:
      - podcast-episodes
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/podcasts:
    get:
      operationId: podcasts_list
      tags:
      - podcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Podcast'
          description: ''
    post:
      operationId: podcasts_create
      tags:
      - podcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Podcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Podcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Podcast'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Podcast'
          description: ''
  /api/v2/podcasts/{id}:
    get:
      operationId: podcasts_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this podcast.
        required: true
      tags:
      - podcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Podcast'
          description: ''
    put:
      operationId: podcasts_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this podcast.
        required: true
      tags:
      - podcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Podcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Podcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Podcast'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Podcast'
          description: ''
    patch:
      operationId: podcasts_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this podcast.
        required: true
      tags:
      - podcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedPodcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedPodcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedPodcast'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Podcast'
          description: ''
    delete:
      operationId: podcasts_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this podcast.
        required: true
      tags:
      - podcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/preferences:
    get:
      operationId: preferences_list
      tags:
      - preferences
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Preference'
          description: ''
    post:
      operationId: preferences_create
      tags:
      - preferences
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Preference'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Preference'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Preference'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Preference'
          description: ''
  /api/v2/preferences/{id}:
    get:
      operationId: preferences_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this preference.
        required: true
      tags:
      - preferences
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Preference'
          description: ''
    put:
      operationId: preferences_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this preference.
        required: true
      tags:
      - preferences
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Preference'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Preference'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Preference'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Preference'
          description: ''
    patch:
      operationId: preferences_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this preference.
        required: true
      tags:
      - preferences
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedPreference'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedPreference'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedPreference'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Preference'
          description: ''
    delete:
      operationId: preferences_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this preference.
        required: true
      tags:
      - preferences
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/schedule:
    get:
      operationId: schedule_list
      description: |-
        Overrides get_serializer_class to choose the read serializer
        for GET requests and the write serializer for POST requests.

        Set read_serializer_class and write_serializer_class attributes on a
        viewset.
      parameters:
      - in: query
        name: broadcasted
        schema:
          type: integer
      - in: query
        name: ends_after
        schema:
          type: string
          format: date-time
      - in: query
        name: ends_before
        schema:
          type: string
          format: date-time
      - in: query
        name: overbooked
        schema:
          type: boolean
      - in: query
        name: position_status
        schema:
          type: integer
      - in: query
        name: starts_after
        schema:
          type: string
          format: date-time
      - in: query
        name: starts_before
        schema:
          type: string
          format: date-time
      tags:
      - schedule
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ReadSchedule'
          description: ''
    post:
      operationId: schedule_create
      description: |-
        Overrides get_serializer_class to choose the read serializer
        for GET requests and the write serializer for POST requests.

        Set read_serializer_class and write_serializer_class attributes on a
        viewset.
      tags:
      - schedule
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WriteSchedule'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/WriteSchedule'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/WriteSchedule'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WriteSchedule'
          description: ''
  /api/v2/schedule/{id}:
    get:
      operationId: schedule_retrieve
      description: |-
        Overrides get_serializer_class to choose the read serializer
        for GET requests and the write serializer for POST requests.

        Set read_serializer_class and write_serializer_class attributes on a
        viewset.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this schedule.
        required: true
      tags:
      - schedule
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReadSchedule'
          description: ''
    put:
      operationId: schedule_update
      description: |-
        Overrides get_serializer_class to choose the read serializer
        for GET requests and the write serializer for POST requests.

        Set read_serializer_class and write_serializer_class attributes on a
        viewset.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this schedule.
        required: true
      tags:
      - schedule
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReadSchedule'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ReadSchedule'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ReadSchedule'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReadSchedule'
          description: ''
    patch:
      operationId: schedule_partial_update
      description: |-
        Overrides get_serializer_class to choose the read serializer
        for GET requests and the write serializer for POST requests.

        Set read_serializer_class and write_serializer_class attributes on a
        viewset.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this schedule.
        required: true
      tags:
      - schedule
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedReadSchedule'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedReadSchedule'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedReadSchedule'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReadSchedule'
          description: ''
    delete:
      operationId: schedule_destroy
      description: |-
        Overrides get_serializer_class to choose the read serializer
        for GET requests and the write serializer for POST requests.

        Set read_serializer_class and write_serializer_class attributes on a
        viewset.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this schedule.
        required: true
      tags:
      - schedule
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/schema:
    get:
      operationId: schema_retrieve
      description: |-
        OpenApi3 schema for this API. Format can be selected via content negotiation.

        - YAML: application/vnd.oai.openapi
        - JSON: application/vnd.oai.openapi+json
      parameters:
      - in: query
        name: format
        schema:
          type: string
          enum:
          - json
          - yaml
      - in: query
        name: lang
        schema:
          type: string
          enum:
          - af
          - ar
          - ar-dz
          - ast
          - az
          - be
          - bg
          - bn
          - br
          - bs
          - ca
          - ckb
          - cs
          - cy
          - da
          - de
          - dsb
          - el
          - en
          - en-au
          - en-gb
          - eo
          - es
          - es-ar
          - es-co
          - es-mx
          - es-ni
          - es-ve
          - et
          - eu
          - fa
          - fi
          - fr
          - fy
          - ga
          - gd
          - gl
          - he
          - hi
          - hr
          - hsb
          - hu
          - hy
          - ia
          - id
          - ig
          - io
          - is
          - it
          - ja
          - ka
          - kab
          - kk
          - km
          - kn
          - ko
          - ky
          - lb
          - lt
          - lv
          - mk
          - ml
          - mn
          - mr
          - ms
          - my
          - nb
          - ne
          - nl
          - nn
          - os
          - pa
          - pl
          - pt
          - pt-br
          - ro
          - ru
          - sk
          - sl
          - sq
          - sr
          - sr-latn
          - sv
          - sw
          - ta
          - te
          - tg
          - th
          - tk
          - tr
          - tt
          - udm
          - uk
          - ur
          - uz
          - vi
          - zh-hans
          - zh-hant
      tags:
      - schema
      security:
      - cookieAuth: []
      - basicAuth: []
      - {}
      responses:
        '200':
          content:
            application/vnd.oai.openapi:
              schema:
                type: object
                additionalProperties: {}
            application/yaml:
              schema:
                type: object
                additionalProperties: {}
            application/vnd.oai.openapi+json:
              schema:
                type: object
                additionalProperties: {}
            application/json:
              schema:
                type: object
                additionalProperties: {}
          description: ''
  /api/v2/service-registers:
    get:
      operationId: service_registers_list
      tags:
      - service-registers
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ServiceRegister'
          description: ''
    post:
      operationId: service_registers_create
      tags:
      - service-registers
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceRegister'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ServiceRegister'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ServiceRegister'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceRegister'
          description: ''
  /api/v2/service-registers/{name}:
    get:
      operationId: service_registers_retrieve
      parameters:
      - in: path
        name: name
        schema:
          type: string
        description: A unique value identifying this service register.
        required: true
      tags:
      - service-registers
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceRegister'
          description: ''
    put:
      operationId: service_registers_update
      parameters:
      - in: path
        name: name
        schema:
          type: string
        description: A unique value identifying this service register.
        required: true
      tags:
      - service-registers
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceRegister'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ServiceRegister'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ServiceRegister'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceRegister'
          description: ''
    patch:
      operationId: service_registers_partial_update
      parameters:
      - in: path
        name: name
        schema:
          type: string
        description: A unique value identifying this service register.
        required: true
      tags:
      - service-registers
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedServiceRegister'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedServiceRegister'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedServiceRegister'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceRegister'
          description: ''
    delete:
      operationId: service_registers_destroy
      parameters:
      - in: path
        name: name
        schema:
          type: string
        description: A unique value identifying this service register.
        required: true
      tags:
      - service-registers
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/show-days:
    get:
      operationId: show_days_list
      tags:
      - show-days
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShowDays'
          description: ''
    post:
      operationId: show_days_create
      tags:
      - show-days
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShowDays'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ShowDays'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ShowDays'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowDays'
          description: ''
  /api/v2/show-days/{id}:
    get:
      operationId: show_days_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show days.
        required: true
      tags:
      - show-days
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowDays'
          description: ''
    put:
      operationId: show_days_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show days.
        required: true
      tags:
      - show-days
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShowDays'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ShowDays'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ShowDays'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowDays'
          description: ''
    patch:
      operationId: show_days_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show days.
        required: true
      tags:
      - show-days
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedShowDays'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedShowDays'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedShowDays'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowDays'
          description: ''
    delete:
      operationId: show_days_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show days.
        required: true
      tags:
      - show-days
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/show-hosts:
    get:
      operationId: show_hosts_list
      tags:
      - show-hosts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShowHost'
          description: ''
    post:
      operationId: show_hosts_create
      tags:
      - show-hosts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShowHost'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ShowHost'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ShowHost'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowHost'
          description: ''
  /api/v2/show-hosts/{id}:
    get:
      operationId: show_hosts_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show host.
        required: true
      tags:
      - show-hosts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowHost'
          description: ''
    put:
      operationId: show_hosts_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show host.
        required: true
      tags:
      - show-hosts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShowHost'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ShowHost'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ShowHost'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowHost'
          description: ''
    patch:
      operationId: show_hosts_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show host.
        required: true
      tags:
      - show-hosts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedShowHost'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedShowHost'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedShowHost'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowHost'
          description: ''
    delete:
      operationId: show_hosts_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show host.
        required: true
      tags:
      - show-hosts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/show-instances:
    get:
      operationId: show_instances_list
      tags:
      - show-instances
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShowInstance'
          description: ''
    post:
      operationId: show_instances_create
      tags:
      - show-instances
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShowInstance'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ShowInstance'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ShowInstance'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowInstance'
          description: ''
  /api/v2/show-instances/{id}:
    get:
      operationId: show_instances_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show instance.
        required: true
      tags:
      - show-instances
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowInstance'
          description: ''
    put:
      operationId: show_instances_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show instance.
        required: true
      tags:
      - show-instances
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShowInstance'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ShowInstance'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ShowInstance'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowInstance'
          description: ''
    patch:
      operationId: show_instances_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show instance.
        required: true
      tags:
      - show-instances
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedShowInstance'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedShowInstance'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedShowInstance'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowInstance'
          description: ''
    delete:
      operationId: show_instances_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show instance.
        required: true
      tags:
      - show-instances
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/show-rebroadcasts:
    get:
      operationId: show_rebroadcasts_list
      tags:
      - show-rebroadcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShowRebroadcast'
          description: ''
    post:
      operationId: show_rebroadcasts_create
      tags:
      - show-rebroadcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShowRebroadcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ShowRebroadcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ShowRebroadcast'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowRebroadcast'
          description: ''
  /api/v2/show-rebroadcasts/{id}:
    get:
      operationId: show_rebroadcasts_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show rebroadcast.
        required: true
      tags:
      - show-rebroadcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowRebroadcast'
          description: ''
    put:
      operationId: show_rebroadcasts_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show rebroadcast.
        required: true
      tags:
      - show-rebroadcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShowRebroadcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ShowRebroadcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ShowRebroadcast'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowRebroadcast'
          description: ''
    patch:
      operationId: show_rebroadcasts_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show rebroadcast.
        required: true
      tags:
      - show-rebroadcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedShowRebroadcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedShowRebroadcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedShowRebroadcast'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowRebroadcast'
          description: ''
    delete:
      operationId: show_rebroadcasts_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show rebroadcast.
        required: true
      tags:
      - show-rebroadcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/shows:
    get:
      operationId: shows_list
      tags:
      - shows
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Show'
          description: ''
    post:
      operationId: shows_create
      tags:
      - shows
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Show'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Show'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Show'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Show'
          description: ''
  /api/v2/shows/{id}:
    get:
      operationId: shows_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show.
        required: true
      tags:
      - shows
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Show'
          description: ''
    put:
      operationId: shows_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show.
        required: true
      tags:
      - shows
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Show'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Show'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Show'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Show'
          description: ''
    patch:
      operationId: shows_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show.
        required: true
      tags:
      - shows
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedShow'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedShow'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedShow'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Show'
          description: ''
    delete:
      operationId: shows_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this show.
        required: true
      tags:
      - shows
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/smart-block-contents:
    get:
      operationId: smart_block_contents_list
      tags:
      - smart-block-contents
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SmartBlockContent'
          description: ''
    post:
      operationId: smart_block_contents_create
      tags:
      - smart-block-contents
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SmartBlockContent'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/SmartBlockContent'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/SmartBlockContent'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlockContent'
          description: ''
  /api/v2/smart-block-contents/{id}:
    get:
      operationId: smart_block_contents_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block content.
        required: true
      tags:
      - smart-block-contents
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlockContent'
          description: ''
    put:
      operationId: smart_block_contents_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block content.
        required: true
      tags:
      - smart-block-contents
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SmartBlockContent'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/SmartBlockContent'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/SmartBlockContent'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlockContent'
          description: ''
    patch:
      operationId: smart_block_contents_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block content.
        required: true
      tags:
      - smart-block-contents
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedSmartBlockContent'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedSmartBlockContent'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedSmartBlockContent'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlockContent'
          description: ''
    delete:
      operationId: smart_block_contents_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block content.
        required: true
      tags:
      - smart-block-contents
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/smart-block-criteria:
    get:
      operationId: smart_block_criteria_list
      tags:
      - smart-block-criteria
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SmartBlockCriteria'
          description: ''
    post:
      operationId: smart_block_criteria_create
      tags:
      - smart-block-criteria
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SmartBlockCriteria'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/SmartBlockCriteria'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/SmartBlockCriteria'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlockCriteria'
          description: ''
  /api/v2/smart-block-criteria/{id}:
    get:
      operationId: smart_block_criteria_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block criteria.
        required: true
      tags:
      - smart-block-criteria
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlockCriteria'
          description: ''
    put:
      operationId: smart_block_criteria_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block criteria.
        required: true
      tags:
      - smart-block-criteria
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SmartBlockCriteria'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/SmartBlockCriteria'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/SmartBlockCriteria'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlockCriteria'
          description: ''
    patch:
      operationId: smart_block_criteria_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block criteria.
        required: true
      tags:
      - smart-block-criteria
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedSmartBlockCriteria'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedSmartBlockCriteria'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedSmartBlockCriteria'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlockCriteria'
          description: ''
    delete:
      operationId: smart_block_criteria_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block criteria.
        required: true
      tags:
      - smart-block-criteria
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/smart-blocks:
    get:
      operationId: smart_blocks_list
      tags:
      - smart-blocks
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SmartBlock'
          description: ''
    post:
      operationId: smart_blocks_create
      tags:
      - smart-blocks
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SmartBlock'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/SmartBlock'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/SmartBlock'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlock'
          description: ''
  /api/v2/smart-blocks/{id}:
    get:
      operationId: smart_blocks_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block.
        required: true
      tags:
      - smart-blocks
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlock'
          description: ''
    put:
      operationId: smart_blocks_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block.
        required: true
      tags:
      - smart-blocks
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SmartBlock'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/SmartBlock'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/SmartBlock'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlock'
          description: ''
    patch:
      operationId: smart_blocks_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block.
        required: true
      tags:
      - smart-blocks
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedSmartBlock'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedSmartBlock'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedSmartBlock'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartBlock'
          description: ''
    delete:
      operationId: smart_blocks_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this smart block.
        required: true
      tags:
      - smart-blocks
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/station-podcasts:
    get:
      operationId: station_podcasts_list
      tags:
      - station-podcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/StationPodcast'
          description: ''
    post:
      operationId: station_podcasts_create
      tags:
      - station-podcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StationPodcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/StationPodcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/StationPodcast'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StationPodcast'
          description: ''
  /api/v2/station-podcasts/{id}:
    get:
      operationId: station_podcasts_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this station podcast.
        required: true
      tags:
      - station-podcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StationPodcast'
          description: ''
    put:
      operationId: station_podcasts_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this station podcast.
        required: true
      tags:
      - station-podcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StationPodcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/StationPodcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/StationPodcast'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StationPodcast'
          description: ''
    patch:
      operationId: station_podcasts_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this station podcast.
        required: true
      tags:
      - station-podcasts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedStationPodcast'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedStationPodcast'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedStationPodcast'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StationPodcast'
          description: ''
    delete:
      operationId: station_podcasts_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this station podcast.
        required: true
      tags:
      - station-podcasts
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/stream/preferences:
    get:
      operationId: stream_preferences_retrieve
      tags:
      - stream
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StreamPreferences'
          description: ''
  /api/v2/stream/state:
    get:
      operationId: stream_state_retrieve
      tags:
      - stream
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StreamState'
          description: ''
  /api/v2/third-party-track-references:
    get:
      operationId: third_party_track_references_list
      tags:
      - third-party-track-references
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ThirdPartyTrackReference'
          description: ''
    post:
      operationId: third_party_track_references_create
      tags:
      - third-party-track-references
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ThirdPartyTrackReference'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ThirdPartyTrackReference'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ThirdPartyTrackReference'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThirdPartyTrackReference'
          description: ''
  /api/v2/third-party-track-references/{id}:
    get:
      operationId: third_party_track_references_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this third party track reference.
        required: true
      tags:
      - third-party-track-references
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThirdPartyTrackReference'
          description: ''
    put:
      operationId: third_party_track_references_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this third party track reference.
        required: true
      tags:
      - third-party-track-references
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ThirdPartyTrackReference'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ThirdPartyTrackReference'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ThirdPartyTrackReference'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThirdPartyTrackReference'
          description: ''
    patch:
      operationId: third_party_track_references_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this third party track reference.
        required: true
      tags:
      - third-party-track-references
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedThirdPartyTrackReference'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedThirdPartyTrackReference'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedThirdPartyTrackReference'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThirdPartyTrackReference'
          description: ''
    delete:
      operationId: third_party_track_references_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this third party track reference.
        required: true
      tags:
      - third-party-track-references
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/timestamps:
    get:
      operationId: timestamps_list
      tags:
      - timestamps
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Timestamp'
          description: ''
    post:
      operationId: timestamps_create
      tags:
      - timestamps
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Timestamp'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Timestamp'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Timestamp'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Timestamp'
          description: ''
  /api/v2/timestamps/{id}:
    get:
      operationId: timestamps_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this timestamp.
        required: true
      tags:
      - timestamps
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Timestamp'
          description: ''
    put:
      operationId: timestamps_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this timestamp.
        required: true
      tags:
      - timestamps
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Timestamp'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Timestamp'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Timestamp'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Timestamp'
          description: ''
    patch:
      operationId: timestamps_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this timestamp.
        required: true
      tags:
      - timestamps
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedTimestamp'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedTimestamp'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedTimestamp'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Timestamp'
          description: ''
    delete:
      operationId: timestamps_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this timestamp.
        required: true
      tags:
      - timestamps
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/user-tokens:
    get:
      operationId: user_tokens_list
      tags:
      - user-tokens
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UserToken'
          description: ''
    post:
      operationId: user_tokens_create
      tags:
      - user-tokens
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserToken'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/UserToken'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/UserToken'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserToken'
          description: ''
  /api/v2/user-tokens/{id}:
    get:
      operationId: user_tokens_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this user token.
        required: true
      tags:
      - user-tokens
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserToken'
          description: ''
    put:
      operationId: user_tokens_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this user token.
        required: true
      tags:
      - user-tokens
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserToken'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/UserToken'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/UserToken'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserToken'
          description: ''
    patch:
      operationId: user_tokens_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this user token.
        required: true
      tags:
      - user-tokens
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedUserToken'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedUserToken'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedUserToken'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserToken'
          description: ''
    delete:
      operationId: user_tokens_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this user token.
        required: true
      tags:
      - user-tokens
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/users:
    get:
      operationId: users_list
      tags:
      - users
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/User'
          description: ''
    post:
      operationId: users_create
      tags:
      - users
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/User'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/User'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/User'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
          description: ''
  /api/v2/users/{id}:
    get:
      operationId: users_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this user.
        required: true
      tags:
      - users
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
          description: ''
    put:
      operationId: users_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this user.
        required: true
      tags:
      - users
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/User'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/User'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/User'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
          description: ''
    patch:
      operationId: users_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this user.
        required: true
      tags:
      - users
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedUser'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedUser'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedUser'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
          description: ''
    delete:
      operationId: users_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this user.
        required: true
      tags:
      - users
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/version:
    get:
      operationId: version_retrieve
      tags:
      - version
      security:
      - cookieAuth: []
      - basicAuth: []
      - {}
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Version'
          description: ''
  /api/v2/webstream-metadata:
    get:
      operationId: webstream_metadata_list
      tags:
      - webstream-metadata
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/WebstreamMetadata'
          description: ''
    post:
      operationId: webstream_metadata_create
      tags:
      - webstream-metadata
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebstreamMetadata'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/WebstreamMetadata'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/WebstreamMetadata'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebstreamMetadata'
          description: ''
  /api/v2/webstream-metadata/{id}:
    get:
      operationId: webstream_metadata_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this webstream metadata.
        required: true
      tags:
      - webstream-metadata
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebstreamMetadata'
          description: ''
    put:
      operationId: webstream_metadata_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this webstream metadata.
        required: true
      tags:
      - webstream-metadata
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebstreamMetadata'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/WebstreamMetadata'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/WebstreamMetadata'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebstreamMetadata'
          description: ''
    patch:
      operationId: webstream_metadata_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this webstream metadata.
        required: true
      tags:
      - webstream-metadata
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedWebstreamMetadata'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedWebstreamMetadata'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedWebstreamMetadata'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebstreamMetadata'
          description: ''
    delete:
      operationId: webstream_metadata_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this webstream metadata.
        required: true
      tags:
      - webstream-metadata
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
  /api/v2/webstreams:
    get:
      operationId: webstreams_list
      tags:
      - webstreams
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Webstream'
          description: ''
    post:
      operationId: webstreams_create
      tags:
      - webstreams
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Webstream'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Webstream'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Webstream'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webstream'
          description: ''
  /api/v2/webstreams/{id}:
    get:
      operationId: webstreams_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this webstream.
        required: true
      tags:
      - webstreams
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webstream'
          description: ''
    put:
      operationId: webstreams_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this webstream.
        required: true
      tags:
      - webstreams
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Webstream'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Webstream'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Webstream'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webstream'
          description: ''
    patch:
      operationId: webstreams_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this webstream.
        required: true
      tags:
      - webstreams
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedWebstream'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedWebstream'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedWebstream'
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webstream'
          description: ''
    delete:
      operationId: webstreams_destroy
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this webstream.
        required: true
      tags:
      - webstreams
      security:
      - cookieAuth: []
      - basicAuth: []
      responses:
        '204':
          description: No response body
components:
  schemas:
    BlankEnum:
      enum:
      - ''
    CeleryTask:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        task_id:
          type: string
          maxLength: 256
        name:
          type: string
          nullable: true
          maxLength: 256
        dispatch_time:
          type: string
          format: date-time
          nullable: true
        status:
          type: string
          maxLength: 256
        track_reference:
          type: integer
      required:
      - id
      - status
      - task_id
      - track_reference
    File:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        import_status:
          allOf:
          - $ref: '#/components/schemas/FileImportStatusEnum'
          minimum: -2147483648
          maximum: 2147483647
        filepath:
          type: string
          nullable: true
        size:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
        exists:
          type: boolean
          nullable: true
        mime:
          type: string
          maxLength: 255
        md5:
          type: string
          nullable: true
          maxLength: 32
        hidden:
          type: boolean
          nullable: true
        accessed:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
        scheduled:
          type: boolean
          nullable: true
        part_of_list:
          type: boolean
          nullable: true
        created_at:
          type: string
          format: date-time
          nullable: true
        updated_at:
          type: string
          format: date-time
          nullable: true
        last_played_at:
          type: string
          format: date-time
          nullable: true
        bit_rate:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        sample_rate:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        format:
          type: string
          nullable: true
          maxLength: 128
        channels:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        length:
          type: string
          nullable: true
        bpm:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        replay_gain:
          type: string
          format: decimal
          pattern: ^-?\d{0,6}(?:\.\d{0,2})?$
          nullable: true
        cue_in:
          type: string
          nullable: true
        cue_out:
          type: string
          nullable: true
        name:
          type: string
          maxLength: 255
        description:
          type: string
          nullable: true
          maxLength: 512
        artwork:
          type: string
          nullable: true
          maxLength: 512
        artist_name:
          type: string
          nullable: true
          maxLength: 512
        artist_url:
          type: string
          nullable: true
          maxLength: 512
        original_artist:
          type: string
          nullable: true
          maxLength: 512
        album_title:
          type: string
          nullable: true
          maxLength: 512
        track_title:
          type: string
          nullable: true
          maxLength: 512
        genre:
          type: string
          nullable: true
          maxLength: 64
        mood:
          type: string
          nullable: true
          maxLength: 64
        date:
          type: string
          nullable: true
          maxLength: 16
        track_number:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        disc_number:
          type: string
          nullable: true
          maxLength: 8
        comment:
          type: string
          nullable: true
        language:
          type: string
          nullable: true
          maxLength: 512
        label:
          type: string
          nullable: true
          maxLength: 512
        copyright:
          type: string
          nullable: true
          maxLength: 512
        composer:
          type: string
          nullable: true
          maxLength: 512
        conductor:
          type: string
          nullable: true
          maxLength: 512
        orchestra:
          type: string
          nullable: true
          maxLength: 512
        encoder:
          type: string
          nullable: true
          maxLength: 64
        encoded_by:
          type: string
          nullable: true
          maxLength: 255
        isrc:
          type: string
          nullable: true
          maxLength: 512
        lyrics:
          type: string
          nullable: true
        lyricist:
          type: string
          nullable: true
          maxLength: 512
        original_lyricist:
          type: string
          nullable: true
          maxLength: 512
        subject:
          type: string
          nullable: true
          maxLength: 512
        contributor:
          type: string
          nullable: true
          maxLength: 512
        rating:
          type: string
          nullable: true
          maxLength: 8
        url:
          type: string
          nullable: true
          maxLength: 1024
        info_url:
          type: string
          nullable: true
          maxLength: 512
        audio_source_url:
          type: string
          nullable: true
          maxLength: 512
        buy_this_url:
          type: string
          nullable: true
          maxLength: 512
        catalog_number:
          type: string
          nullable: true
          maxLength: 512
        radio_station_name:
          type: string
          nullable: true
          maxLength: 512
        radio_station_url:
          type: string
          nullable: true
          maxLength: 512
        report_datetime:
          type: string
          nullable: true
          maxLength: 32
        report_location:
          type: string
          nullable: true
          maxLength: 512
        report_organization:
          type: string
          nullable: true
          maxLength: 512
        library:
          type: integer
          nullable: true
        owner:
          type: integer
          nullable: true
        edited_by:
          type: integer
          nullable: true
      required:
      - accessed
      - id
      - mime
      - name
      - size
    FileImportStatusEnum:
      enum:
      - 0
      - 1
      - 2
      type: integer
      description: |-
        * `0` - Success
        * `1` - Pending
        * `2` - Failed
    ImportedPodcast:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        override_album:
          type: boolean
        auto_ingest:
          type: boolean
        auto_ingested_at:
          type: string
          format: date-time
          nullable: true
        podcast:
          type: integer
      required:
      - auto_ingest
      - id
      - override_album
      - podcast
    Info:
      type: object
      properties:
        station_name:
          type: string
          readOnly: true
      required:
      - station_name
    Library:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        name:
          type: string
          nullable: true
          maxLength: 255
        code:
          type: string
          maxLength: 16
        description:
          type: string
          nullable: true
          maxLength: 255
        enabled:
          type: boolean
        analyze_cue_points:
          type: boolean
      required:
      - code
      - id
    ListenerCount:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        listener_count:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
        timestamp:
          type: integer
        mount_name:
          type: integer
      required:
      - id
      - listener_count
      - mount_name
      - timestamp
    LiveLog:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        state:
          type: string
          maxLength: 32
        start_time:
          type: string
          format: date-time
        end_time:
          type: string
          format: date-time
          nullable: true
      required:
      - id
      - start_time
      - state
    LoginAttempt:
      type: object
      properties:
        ip:
          type: string
          maxLength: 32
        attempts:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
      required:
      - ip
    MountName:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        mount_name:
          type: string
          maxLength: 1024
      required:
      - id
      - mount_name
    NullEnum:
      enum:
      - null
    PatchedCeleryTask:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        task_id:
          type: string
          maxLength: 256
        name:
          type: string
          nullable: true
          maxLength: 256
        dispatch_time:
          type: string
          format: date-time
          nullable: true
        status:
          type: string
          maxLength: 256
        track_reference:
          type: integer
    PatchedFile:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        import_status:
          allOf:
          - $ref: '#/components/schemas/FileImportStatusEnum'
          minimum: -2147483648
          maximum: 2147483647
        filepath:
          type: string
          nullable: true
        size:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
        exists:
          type: boolean
          nullable: true
        mime:
          type: string
          maxLength: 255
        md5:
          type: string
          nullable: true
          maxLength: 32
        hidden:
          type: boolean
          nullable: true
        accessed:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
        scheduled:
          type: boolean
          nullable: true
        part_of_list:
          type: boolean
          nullable: true
        created_at:
          type: string
          format: date-time
          nullable: true
        updated_at:
          type: string
          format: date-time
          nullable: true
        last_played_at:
          type: string
          format: date-time
          nullable: true
        bit_rate:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        sample_rate:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        format:
          type: string
          nullable: true
          maxLength: 128
        channels:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        length:
          type: string
          nullable: true
        bpm:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        replay_gain:
          type: string
          format: decimal
          pattern: ^-?\d{0,6}(?:\.\d{0,2})?$
          nullable: true
        cue_in:
          type: string
          nullable: true
        cue_out:
          type: string
          nullable: true
        name:
          type: string
          maxLength: 255
        description:
          type: string
          nullable: true
          maxLength: 512
        artwork:
          type: string
          nullable: true
          maxLength: 512
        artist_name:
          type: string
          nullable: true
          maxLength: 512
        artist_url:
          type: string
          nullable: true
          maxLength: 512
        original_artist:
          type: string
          nullable: true
          maxLength: 512
        album_title:
          type: string
          nullable: true
          maxLength: 512
        track_title:
          type: string
          nullable: true
          maxLength: 512
        genre:
          type: string
          nullable: true
          maxLength: 64
        mood:
          type: string
          nullable: true
          maxLength: 64
        date:
          type: string
          nullable: true
          maxLength: 16
        track_number:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        disc_number:
          type: string
          nullable: true
          maxLength: 8
        comment:
          type: string
          nullable: true
        language:
          type: string
          nullable: true
          maxLength: 512
        label:
          type: string
          nullable: true
          maxLength: 512
        copyright:
          type: string
          nullable: true
          maxLength: 512
        composer:
          type: string
          nullable: true
          maxLength: 512
        conductor:
          type: string
          nullable: true
          maxLength: 512
        orchestra:
          type: string
          nullable: true
          maxLength: 512
        encoder:
          type: string
          nullable: true
          maxLength: 64
        encoded_by:
          type: string
          nullable: true
          maxLength: 255
        isrc:
          type: string
          nullable: true
          maxLength: 512
        lyrics:
          type: string
          nullable: true
        lyricist:
          type: string
          nullable: true
          maxLength: 512
        original_lyricist:
          type: string
          nullable: true
          maxLength: 512
        subject:
          type: string
          nullable: true
          maxLength: 512
        contributor:
          type: string
          nullable: true
          maxLength: 512
        rating:
          type: string
          nullable: true
          maxLength: 8
        url:
          type: string
          nullable: true
          maxLength: 1024
        info_url:
          type: string
          nullable: true
          maxLength: 512
        audio_source_url:
          type: string
          nullable: true
          maxLength: 512
        buy_this_url:
          type: string
          nullable: true
          maxLength: 512
        catalog_number:
          type: string
          nullable: true
          maxLength: 512
        radio_station_name:
          type: string
          nullable: true
          maxLength: 512
        radio_station_url:
          type: string
          nullable: true
          maxLength: 512
        report_datetime:
          type: string
          nullable: true
          maxLength: 32
        report_location:
          type: string
          nullable: true
          maxLength: 512
        report_organization:
          type: string
          nullable: true
          maxLength: 512
        library:
          type: integer
          nullable: true
        owner:
          type: integer
          nullable: true
        edited_by:
          type: integer
          nullable: true
    PatchedImportedPodcast:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        override_album:
          type: boolean
        auto_ingest:
          type: boolean
        auto_ingested_at:
          type: string
          format: date-time
          nullable: true
        podcast:
          type: integer
    PatchedLibrary:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        name:
          type: string
          nullable: true
          maxLength: 255
        code:
          type: string
          maxLength: 16
        description:
          type: string
          nullable: true
          maxLength: 255
        enabled:
          type: boolean
        analyze_cue_points:
          type: boolean
    PatchedListenerCount:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        listener_count:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
        timestamp:
          type: integer
        mount_name:
          type: integer
    PatchedLiveLog:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        state:
          type: string
          maxLength: 32
        start_time:
          type: string
          format: date-time
        end_time:
          type: string
          format: date-time
          nullable: true
    PatchedLoginAttempt:
      type: object
      properties:
        ip:
          type: string
          maxLength: 32
        attempts:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
    PatchedMountName:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        mount_name:
          type: string
          maxLength: 1024
    PatchedPlaylist:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        created_at:
          type: string
          format: date-time
          nullable: true
        updated_at:
          type: string
          format: date-time
          nullable: true
        name:
          type: string
          maxLength: 255
        description:
          type: string
          nullable: true
          maxLength: 512
        length:
          type: string
          nullable: true
        owner:
          type: integer
          nullable: true
    PatchedPlaylistContent:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        kind:
          allOf:
          - $ref: '#/components/schemas/PlaylistContentKindEnum'
          minimum: -32768
          maximum: 32767
        position:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        offset:
          type: number
          format: double
        length:
          type: string
          nullable: true
        cue_in:
          type: string
          nullable: true
        cue_out:
          type: string
          nullable: true
        fade_in:
          type: string
          format: time
          nullable: true
        fade_out:
          type: string
          format: time
          nullable: true
        playlist:
          type: integer
          nullable: true
        file:
          type: integer
          nullable: true
        stream:
          type: integer
          nullable: true
        block:
          type: integer
          nullable: true
    PatchedPlayoutHistory:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        starts:
          type: string
          format: date-time
        ends:
          type: string
          format: date-time
          nullable: true
        file:
          type: integer
          nullable: true
        instance:
          type: integer
          nullable: true
    PatchedPlayoutHistoryMetadata:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        key:
          type: string
          maxLength: 128
        value:
          type: string
          maxLength: 128
        history:
          type: integer
    PatchedPlayoutHistoryTemplate:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        name:
          type: string
          maxLength: 128
        type:
          type: string
          maxLength: 35
    PatchedPlayoutHistoryTemplateField:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        name:
          type: string
          maxLength: 128
        label:
          type: string
          maxLength: 128
        type:
          type: string
          maxLength: 128
        is_file_md:
          type: boolean
        position:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
        template:
          type: integer
    PatchedPodcast:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        url:
          type: string
          maxLength: 4096
        title:
          type: string
          maxLength: 4096
        creator:
          type: string
          nullable: true
          maxLength: 4096
        description:
          type: string
          nullable: true
          maxLength: 4096
        language:
          type: string
          nullable: true
          maxLength: 4096
        copyright:
          type: string
          nullable: true
          maxLength: 4096
        link:
          type: string
          nullable: true
          maxLength: 4096
        itunes_author:
          type: string
          nullable: true
          maxLength: 4096
        itunes_keywords:
          type: string
          nullable: true
          maxLength: 4096
        itunes_summary:
          type: string
          nullable: true
          maxLength: 4096
        itunes_subtitle:
          type: string
          nullable: true
          maxLength: 4096
        itunes_category:
          type: string
          nullable: true
          maxLength: 4096
        itunes_explicit:
          type: string
          nullable: true
          maxLength: 4096
        owner:
          type: integer
          nullable: true
    PatchedPodcastEpisode:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        published_at:
          type: string
          format: date-time
        download_url:
          type: string
          maxLength: 4096
        episode_guid:
          type: string
          maxLength: 4096
        episode_title:
          type: string
          maxLength: 4096
        episode_description:
          type: string
        podcast:
          type: integer
        file:
          type: integer
          nullable: true
    PatchedPreference:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        key:
          type: string
          nullable: true
          maxLength: 255
        value:
          type: string
          nullable: true
        user:
          type: integer
          nullable: true
    PatchedReadSchedule:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        cue_out:
          type: string
          readOnly: true
        ends_at:
          type: string
          format: date-time
          readOnly: true
        starts_at:
          type: string
          format: date-time
        length:
          type: string
          nullable: true
        fade_in:
          type: string
          format: time
          nullable: true
        fade_out:
          type: string
          format: time
          nullable: true
        cue_in:
          type: string
        position:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
        position_status:
          allOf:
          - $ref: '#/components/schemas/PositionStatusEnum'
          minimum: -32768
          maximum: 32767
        broadcasted:
          type: integer
          maximum: 32767
          minimum: -32768
        played:
          type: boolean
          nullable: true
        instance:
          type: integer
        file:
          type: integer
          nullable: true
        stream:
          type: integer
          nullable: true
    PatchedServiceRegister:
      type: object
      properties:
        name:
          type: string
          maxLength: 32
        ip:
          type: string
          maxLength: 45
    PatchedShow:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        name:
          type: string
          maxLength: 255
        description:
          type: string
          nullable: true
          maxLength: 8192
        genre:
          type: string
          nullable: true
          maxLength: 255
        url:
          type: string
          nullable: true
          maxLength: 255
        image:
          type: string
          nullable: true
          maxLength: 255
        foreground_color:
          type: string
          nullable: true
          maxLength: 6
        background_color:
          type: string
          nullable: true
          maxLength: 6
        live_enabled:
          type: boolean
          readOnly: true
        linked:
          type: boolean
        linkable:
          type: boolean
        auto_playlist:
          type: integer
          nullable: true
        auto_playlist_enabled:
          type: boolean
        auto_playlist_repeat:
          type: boolean
        intro_playlist:
          type: integer
          nullable: true
        override_intro_playlist:
          type: boolean
        outro_playlist:
          type: integer
          nullable: true
        override_outro_playlist:
          type: boolean
    PatchedShowDays:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        first_show_on:
          type: string
          format: date
        last_show_on:
          type: string
          format: date
          nullable: true
        start_time:
          type: string
          format: time
        timezone:
          type: string
          maxLength: 1024
        duration:
          type: string
          maxLength: 1024
        record_enabled:
          nullable: true
          minimum: -32768
          maximum: 32767
          oneOf:
          - $ref: '#/components/schemas/RecordEnabledEnum'
          - $ref: '#/components/schemas/NullEnum'
        week_day:
          nullable: true
          minimum: -32768
          maximum: 32767
          oneOf:
          - $ref: '#/components/schemas/WeekDayEnum'
          - $ref: '#/components/schemas/NullEnum'
        repeat_kind:
          allOf:
          - $ref: '#/components/schemas/RepeatKindEnum'
          minimum: -32768
          maximum: 32767
        repeat_next_on:
          type: string
          format: date
          nullable: true
        show:
          type: integer
    PatchedShowHost:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        show:
          type: integer
        user:
          type: integer
    PatchedShowInstance:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        created_at:
          type: string
          format: date-time
        starts_at:
          type: string
          format: date-time
        ends_at:
          type: string
          format: date-time
        filled_time:
          type: string
          nullable: true
        last_scheduled_at:
          type: string
          format: date-time
          nullable: true
        description:
          type: string
          nullable: true
          maxLength: 8192
        modified:
          type: boolean
        rebroadcast:
          type: integer
          maximum: 32767
          minimum: -32768
          nullable: true
        auto_playlist_built:
          type: boolean
        record_enabled:
          nullable: true
          minimum: -32768
          maximum: 32767
          oneOf:
          - $ref: '#/components/schemas/RecordEnabledEnum'
          - $ref: '#/components/schemas/NullEnum'
        show:
          type: integer
        instance:
          type: integer
          nullable: true
        record_file:
          type: integer
          nullable: true
    PatchedShowRebroadcast:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        day_offset:
          type: string
          maxLength: 1024
        start_time:
          type: string
          format: time
        show:
          type: integer
    PatchedSmartBlock:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        created_at:
          type: string
          format: date-time
          nullable: true
        updated_at:
          type: string
          format: date-time
          nullable: true
        name:
          type: string
          maxLength: 255
        description:
          type: string
          nullable: true
          maxLength: 512
        length:
          type: string
          nullable: true
        kind:
          nullable: true
          oneOf:
          - $ref: '#/components/schemas/SmartBlockKindEnum'
          - $ref: '#/components/schemas/BlankEnum'
          - $ref: '#/components/schemas/NullEnum'
        owner:
          type: integer
          nullable: true
    PatchedSmartBlockContent:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        position:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        offset:
          type: number
          format: double
        length:
          type: string
          nullable: true
        cue_in:
          type: string
          nullable: true
        cue_out:
          type: string
          nullable: true
        fade_in:
          type: string
          format: time
          nullable: true
        fade_out:
          type: string
          format: time
          nullable: true
        block:
          type: integer
          nullable: true
        file:
          type: integer
          nullable: true
    PatchedSmartBlockCriteria:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        group:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        criteria:
          type: string
          maxLength: 32
        condition:
          type: string
          maxLength: 16
        value:
          type: string
          maxLength: 512
        extra:
          type: string
          nullable: true
          maxLength: 512
        block:
          type: integer
    PatchedStationPodcast:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        podcast:
          type: integer
    PatchedThirdPartyTrackReference:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        service:
          type: string
          maxLength: 256
        foreign_id:
          type: string
          nullable: true
          maxLength: 256
        upload_time:
          type: string
          format: date-time
          nullable: true
        status:
          type: string
          nullable: true
          maxLength: 256
        file:
          type: integer
          nullable: true
    PatchedTimestamp:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        timestamp:
          type: string
          format: date-time
    PatchedUser:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        role:
          $ref: '#/components/schemas/RoleEnum'
        username:
          type: string
          maxLength: 255
        email:
          type: string
          nullable: true
          maxLength: 1024
        first_name:
          type: string
          maxLength: 255
        last_name:
          type: string
          maxLength: 255
        login_attempts:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        last_login:
          type: string
          format: date-time
          nullable: true
        last_failed_login:
          type: string
          format: date-time
          nullable: true
        skype:
          type: string
          nullable: true
          maxLength: 1024
        jabber:
          type: string
          nullable: true
          maxLength: 1024
        phone:
          type: string
          nullable: true
          maxLength: 1024
    PatchedUserToken:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        action:
          type: string
          maxLength: 255
        token:
          type: string
          maxLength: 40
        created:
          type: string
          format: date-time
        user:
          type: integer
    PatchedWebstream:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        last_played_at:
          type: string
          format: date-time
          nullable: true
        name:
          type: string
          maxLength: 255
        description:
          type: string
          maxLength: 255
        url:
          type: string
          maxLength: 512
        length:
          type: string
        mime:
          type: string
          nullable: true
          maxLength: 1024
        owner:
          type: integer
          nullable: true
    PatchedWebstreamMetadata:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        starts_at:
          type: string
          format: date-time
        data:
          type: string
          maxLength: 1024
        schedule:
          type: integer
    Playlist:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        created_at:
          type: string
          format: date-time
          nullable: true
        updated_at:
          type: string
          format: date-time
          nullable: true
        name:
          type: string
          maxLength: 255
        description:
          type: string
          nullable: true
          maxLength: 512
        length:
          type: string
          nullable: true
        owner:
          type: integer
          nullable: true
      required:
      - id
      - name
    PlaylistContent:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        kind:
          allOf:
          - $ref: '#/components/schemas/PlaylistContentKindEnum'
          minimum: -32768
          maximum: 32767
        position:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        offset:
          type: number
          format: double
        length:
          type: string
          nullable: true
        cue_in:
          type: string
          nullable: true
        cue_out:
          type: string
          nullable: true
        fade_in:
          type: string
          format: time
          nullable: true
        fade_out:
          type: string
          format: time
          nullable: true
        playlist:
          type: integer
          nullable: true
        file:
          type: integer
          nullable: true
        stream:
          type: integer
          nullable: true
        block:
          type: integer
          nullable: true
      required:
      - id
      - kind
      - offset
    PlaylistContentKindEnum:
      enum:
      - 0
      - 1
      - 2
      type: integer
      description: |-
        * `0` - File
        * `1` - Stream
        * `2` - Block
    PlayoutHistory:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        starts:
          type: string
          format: date-time
        ends:
          type: string
          format: date-time
          nullable: true
        file:
          type: integer
          nullable: true
        instance:
          type: integer
          nullable: true
      required:
      - id
      - starts
    PlayoutHistoryMetadata:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        key:
          type: string
          maxLength: 128
        value:
          type: string
          maxLength: 128
        history:
          type: integer
      required:
      - history
      - id
      - key
      - value
    PlayoutHistoryTemplate:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        name:
          type: string
          maxLength: 128
        type:
          type: string
          maxLength: 35
      required:
      - id
      - name
      - type
    PlayoutHistoryTemplateField:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        name:
          type: string
          maxLength: 128
        label:
          type: string
          maxLength: 128
        type:
          type: string
          maxLength: 128
        is_file_md:
          type: boolean
        position:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
        template:
          type: integer
      required:
      - id
      - is_file_md
      - label
      - name
      - position
      - template
      - type
    Podcast:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        url:
          type: string
          maxLength: 4096
        title:
          type: string
          maxLength: 4096
        creator:
          type: string
          nullable: true
          maxLength: 4096
        description:
          type: string
          nullable: true
          maxLength: 4096
        language:
          type: string
          nullable: true
          maxLength: 4096
        copyright:
          type: string
          nullable: true
          maxLength: 4096
        link:
          type: string
          nullable: true
          maxLength: 4096
        itunes_author:
          type: string
          nullable: true
          maxLength: 4096
        itunes_keywords:
          type: string
          nullable: true
          maxLength: 4096
        itunes_summary:
          type: string
          nullable: true
          maxLength: 4096
        itunes_subtitle:
          type: string
          nullable: true
          maxLength: 4096
        itunes_category:
          type: string
          nullable: true
          maxLength: 4096
        itunes_explicit:
          type: string
          nullable: true
          maxLength: 4096
        owner:
          type: integer
          nullable: true
      required:
      - id
      - title
      - url
    PodcastEpisode:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        published_at:
          type: string
          format: date-time
        download_url:
          type: string
          maxLength: 4096
        episode_guid:
          type: string
          maxLength: 4096
        episode_title:
          type: string
          maxLength: 4096
        episode_description:
          type: string
        podcast:
          type: integer
        file:
          type: integer
          nullable: true
      required:
      - download_url
      - episode_description
      - episode_guid
      - episode_title
      - id
      - podcast
      - published_at
    PositionStatusEnum:
      enum:
      - -1
      - 0
      - 1
      - 2
      type: integer
      description: |-
        * `-1` - Filler
        * `0` - Outside
        * `1` - Inside
        * `2` - Boundary
    Preference:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        key:
          type: string
          nullable: true
          maxLength: 255
        value:
          type: string
          nullable: true
        user:
          type: integer
          nullable: true
      required:
      - id
      - key
      - user
    ReadSchedule:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        cue_out:
          type: string
          readOnly: true
        ends_at:
          type: string
          format: date-time
          readOnly: true
        starts_at:
          type: string
          format: date-time
        length:
          type: string
          nullable: true
        fade_in:
          type: string
          format: time
          nullable: true
        fade_out:
          type: string
          format: time
          nullable: true
        cue_in:
          type: string
        position:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
        position_status:
          allOf:
          - $ref: '#/components/schemas/PositionStatusEnum'
          minimum: -32768
          maximum: 32767
        broadcasted:
          type: integer
          maximum: 32767
          minimum: -32768
        played:
          type: boolean
          nullable: true
        instance:
          type: integer
        file:
          type: integer
          nullable: true
        stream:
          type: integer
          nullable: true
      required:
      - broadcasted
      - cue_in
      - cue_out
      - ends_at
      - id
      - instance
      - position
      - starts_at
    RecordEnabledEnum:
      enum:
      - 0
      - 1
      type: integer
      description: |-
        * `0` - No
        * `1` - Yes
    RepeatKindEnum:
      enum:
      - 0
      - 1
      - 4
      - 5
      - 2
      type: integer
      description: |-
        * `0` - Every week
        * `1` - Every 2 weeks
        * `4` - Every 3 weeks
        * `5` - Every 4 weeks
        * `2` - Every month
    RoleEnum:
      enum:
      - G
      - H
      - P
      - A
      type: string
      description: |-
        * `G` - Guest
        * `H` - Host
        * `P` - Manager
        * `A` - Admin
    ServiceRegister:
      type: object
      properties:
        name:
          type: string
          maxLength: 32
        ip:
          type: string
          maxLength: 45
      required:
      - ip
      - name
    Show:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        name:
          type: string
          maxLength: 255
        description:
          type: string
          nullable: true
          maxLength: 8192
        genre:
          type: string
          nullable: true
          maxLength: 255
        url:
          type: string
          nullable: true
          maxLength: 255
        image:
          type: string
          nullable: true
          maxLength: 255
        foreground_color:
          type: string
          nullable: true
          maxLength: 6
        background_color:
          type: string
          nullable: true
          maxLength: 6
        live_enabled:
          type: boolean
          readOnly: true
        linked:
          type: boolean
        linkable:
          type: boolean
        auto_playlist:
          type: integer
          nullable: true
        auto_playlist_enabled:
          type: boolean
        auto_playlist_repeat:
          type: boolean
        intro_playlist:
          type: integer
          nullable: true
        override_intro_playlist:
          type: boolean
        outro_playlist:
          type: integer
          nullable: true
        override_outro_playlist:
          type: boolean
      required:
      - auto_playlist_enabled
      - auto_playlist_repeat
      - id
      - linkable
      - linked
      - live_enabled
      - name
      - override_intro_playlist
      - override_outro_playlist
    ShowDays:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        first_show_on:
          type: string
          format: date
        last_show_on:
          type: string
          format: date
          nullable: true
        start_time:
          type: string
          format: time
        timezone:
          type: string
          maxLength: 1024
        duration:
          type: string
          maxLength: 1024
        record_enabled:
          nullable: true
          minimum: -32768
          maximum: 32767
          oneOf:
          - $ref: '#/components/schemas/RecordEnabledEnum'
          - $ref: '#/components/schemas/NullEnum'
        week_day:
          nullable: true
          minimum: -32768
          maximum: 32767
          oneOf:
          - $ref: '#/components/schemas/WeekDayEnum'
          - $ref: '#/components/schemas/NullEnum'
        repeat_kind:
          allOf:
          - $ref: '#/components/schemas/RepeatKindEnum'
          minimum: -32768
          maximum: 32767
        repeat_next_on:
          type: string
          format: date
          nullable: true
        show:
          type: integer
      required:
      - duration
      - first_show_on
      - id
      - repeat_kind
      - show
      - start_time
      - timezone
    ShowHost:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        show:
          type: integer
        user:
          type: integer
      required:
      - id
      - show
      - user
    ShowInstance:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        created_at:
          type: string
          format: date-time
        starts_at:
          type: string
          format: date-time
        ends_at:
          type: string
          format: date-time
        filled_time:
          type: string
          nullable: true
        last_scheduled_at:
          type: string
          format: date-time
          nullable: true
        description:
          type: string
          nullable: true
          maxLength: 8192
        modified:
          type: boolean
        rebroadcast:
          type: integer
          maximum: 32767
          minimum: -32768
          nullable: true
        auto_playlist_built:
          type: boolean
        record_enabled:
          nullable: true
          minimum: -32768
          maximum: 32767
          oneOf:
          - $ref: '#/components/schemas/RecordEnabledEnum'
          - $ref: '#/components/schemas/NullEnum'
        show:
          type: integer
        instance:
          type: integer
          nullable: true
        record_file:
          type: integer
          nullable: true
      required:
      - auto_playlist_built
      - created_at
      - ends_at
      - id
      - modified
      - show
      - starts_at
    ShowRebroadcast:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        day_offset:
          type: string
          maxLength: 1024
        start_time:
          type: string
          format: time
        show:
          type: integer
      required:
      - day_offset
      - id
      - show
      - start_time
    SmartBlock:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        created_at:
          type: string
          format: date-time
          nullable: true
        updated_at:
          type: string
          format: date-time
          nullable: true
        name:
          type: string
          maxLength: 255
        description:
          type: string
          nullable: true
          maxLength: 512
        length:
          type: string
          nullable: true
        kind:
          nullable: true
          oneOf:
          - $ref: '#/components/schemas/SmartBlockKindEnum'
          - $ref: '#/components/schemas/BlankEnum'
          - $ref: '#/components/schemas/NullEnum'
        owner:
          type: integer
          nullable: true
      required:
      - id
      - name
    SmartBlockContent:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        position:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        offset:
          type: number
          format: double
        length:
          type: string
          nullable: true
        cue_in:
          type: string
          nullable: true
        cue_out:
          type: string
          nullable: true
        fade_in:
          type: string
          format: time
          nullable: true
        fade_out:
          type: string
          format: time
          nullable: true
        block:
          type: integer
          nullable: true
        file:
          type: integer
          nullable: true
      required:
      - id
      - offset
    SmartBlockCriteria:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        group:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        criteria:
          type: string
          maxLength: 32
        condition:
          type: string
          maxLength: 16
        value:
          type: string
          maxLength: 512
        extra:
          type: string
          nullable: true
          maxLength: 512
        block:
          type: integer
      required:
      - block
      - condition
      - criteria
      - id
      - value
    SmartBlockKindEnum:
      enum:
      - static
      - dynamic
      type: string
      description: |-
        * `static` - Static
        * `dynamic` - Dynamic
    StationPodcast:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        podcast:
          type: integer
      required:
      - id
      - podcast
    StreamPreferences:
      type: object
      properties:
        input_fade_transition:
          type: number
          format: double
          readOnly: true
        message_format:
          type: integer
          readOnly: true
        message_offline:
          type: string
          readOnly: true
        replay_gain_enabled:
          type: boolean
          readOnly: true
        replay_gain_offset:
          type: number
          format: double
          readOnly: true
      required:
      - input_fade_transition
      - message_format
      - message_offline
      - replay_gain_enabled
      - replay_gain_offset
    StreamState:
      type: object
      properties:
        input_main_connected:
          type: boolean
          readOnly: true
        input_main_streaming:
          type: boolean
          readOnly: true
        input_show_connected:
          type: boolean
          readOnly: true
        input_show_streaming:
          type: boolean
          readOnly: true
        schedule_streaming:
          type: boolean
          readOnly: true
      required:
      - input_main_connected
      - input_main_streaming
      - input_show_connected
      - input_show_streaming
      - schedule_streaming
    ThirdPartyTrackReference:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        service:
          type: string
          maxLength: 256
        foreign_id:
          type: string
          nullable: true
          maxLength: 256
        upload_time:
          type: string
          format: date-time
          nullable: true
        status:
          type: string
          nullable: true
          maxLength: 256
        file:
          type: integer
          nullable: true
      required:
      - id
      - service
    Timestamp:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        timestamp:
          type: string
          format: date-time
      required:
      - id
      - timestamp
    User:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        role:
          $ref: '#/components/schemas/RoleEnum'
        username:
          type: string
          maxLength: 255
        email:
          type: string
          nullable: true
          maxLength: 1024
        first_name:
          type: string
          maxLength: 255
        last_name:
          type: string
          maxLength: 255
        login_attempts:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
          nullable: true
        last_login:
          type: string
          format: date-time
          nullable: true
        last_failed_login:
          type: string
          format: date-time
          nullable: true
        skype:
          type: string
          nullable: true
          maxLength: 1024
        jabber:
          type: string
          nullable: true
          maxLength: 1024
        phone:
          type: string
          nullable: true
          maxLength: 1024
      required:
      - first_name
      - id
      - last_name
      - role
      - username
    UserToken:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        action:
          type: string
          maxLength: 255
        token:
          type: string
          maxLength: 40
        created:
          type: string
          format: date-time
        user:
          type: integer
      required:
      - action
      - created
      - id
      - token
      - user
    Version:
      type: object
      properties:
        api_version:
          type: string
          readOnly: true
      required:
      - api_version
    Webstream:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        last_played_at:
          type: string
          format: date-time
          nullable: true
        name:
          type: string
          maxLength: 255
        description:
          type: string
          maxLength: 255
        url:
          type: string
          maxLength: 512
        length:
          type: string
        mime:
          type: string
          nullable: true
          maxLength: 1024
        owner:
          type: integer
          nullable: true
      required:
      - created_at
      - description
      - id
      - length
      - name
      - updated_at
      - url
    WebstreamMetadata:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        starts_at:
          type: string
          format: date-time
        data:
          type: string
          maxLength: 1024
        schedule:
          type: integer
      required:
      - data
      - id
      - schedule
      - starts_at
    WeekDayEnum:
      enum:
      - 0
      - 1
      - 2
      - 3
      - 4
      - 5
      - 6
      type: integer
      description: |-
        * `0` - Monday
        * `1` - Tuesday
        * `2` - Wednesday
        * `3` - Thursday
        * `4` - Friday
        * `5` - Saturday
        * `6` - Sunday
    WriteSchedule:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        starts_at:
          type: string
          format: date-time
        ends_at:
          type: string
          format: date-time
        length:
          type: string
          nullable: true
        fade_in:
          type: string
          format: time
          nullable: true
        fade_out:
          type: string
          format: time
          nullable: true
        cue_in:
          type: string
        cue_out:
          type: string
        position:
          type: integer
          maximum: 2147483647
          minimum: -2147483648
        position_status:
          allOf:
          - $ref: '#/components/schemas/PositionStatusEnum'
          minimum: -32768
          maximum: 32767
        broadcasted:
          type: integer
          maximum: 32767
          minimum: -32768
        played:
          type: boolean
          nullable: true
        instance:
          type: integer
        file:
          type: integer
          nullable: true
        stream:
          type: integer
          nullable: true
      required:
      - broadcasted
      - cue_in
      - cue_out
      - ends_at
      - id
      - instance
      - position
      - starts_at
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
    cookieAuth:
      type: apiKey
      in: cookie
      name: sessionid