Kumospace MusicTrack API

The MusicTrack API from Kumospace — 2 operation(s) for musictrack.

OpenAPI Specification

kumospace-musictrack-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: '@kumo/api Account MusicTrack API'
  contact: {}
servers:
- url: /
tags:
- name: MusicTrack
paths:
  /v1/musicTracks:
    post:
      operationId: CreateMusicTrack
      responses:
        '201':
          description: Created
      description: Creates a new music track. Can only be called by kumospace admins.
      summary: Adds a new music track to the available tracks collection.
      tags:
      - MusicTrack
      security:
      - firebase: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApiCreateMusicTrackRequest'
  /v1/musicTracks/{id}:
    put:
      operationId: UpdateMusicTrack
      responses:
        '204':
          description: No content
      description: Updates an existing music track. Can only be called by kumospace admins.
      summary: Updates the provided fields on an existing music track. Fields omitted are untouched.
      tags:
      - MusicTrack
      security:
      - firebase: []
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApiUpdateMusicTrackRequest'
components:
  schemas:
    ApiCreateMusicTrackRequest:
      properties:
        category:
          $ref: '#/components/schemas/MusicTrackCategory'
          description: A categorical type for the track. e.g. piano music, dance music, general.
        volumeModifier:
          type: number
          format: double
          description: 'Normalizes the volume level for tracks. This is to keep some tracks from playing

            either too quiet or too loud.'
        url:
          type: string
          description: CDN URL for the track audio file.
        name:
          type: string
          description: User-visible name of the track.
      required:
      - category
      - volumeModifier
      - url
      - name
      type: object
    MusicTrackCategory:
      enum:
      - piano
      - dance
      - general
      type: string
    ApiUpdateMusicTrackRequest:
      properties:
        category:
          $ref: '#/components/schemas/MusicTrackCategory'
          description: A categorical type for the track. e.g. piano music, dance music, general.
        volumeModifier:
          type: number
          format: double
          description: 'Normalizes the volume level for tracks. This is to keep some tracks from playing

            either too quiet or too loud.'
        url:
          type: string
          description: CDN URL for the track audio file.
        name:
          type: string
          description: User-visible name of the track.
      type: object
  securitySchemes:
    firebase:
      type: http
      scheme: bearer
      bearerFormat: JWT