Song Collection

Description

A collection (or list) of resources.

Properties

Property Description
items

A collection of resources returned in the current result set.

Property Description
artist read-only

Artist name.

duration read-only

Duration of the song, in seconds.

id

An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string.

instruments read-only

The instruments featured in the song.

isInstrumental read-only

Whether the track is an instrumental or vocal track.

lyrics read-only

The lyrics for this song.

media

The media URLs for the different streams and files.

Property Description
artistThumbnailUrl read-only
fullStreamUrl read-only
sampleStreamUrl read-only
moods read-only

The moods describing the song.

styles read-only

The styles describing the song.

tempo read-only

Tempo of the song.

themes read-only

The themes describing the song.

title read-only

Song title.

type

The type of resource represented.

links required read-only

Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name.

meta read-only

Metadata describing the current result set.

Property Description
currentPage

The current page of results returned.

rows

The number of rows returned per page for the current result set.

totalItems

The total number of items in the result set. This may be affected by active search/filter parameters.

totalPages

The total number of pages in the result set. This is affected by the rows parameter (totalItems / rows == totalPages).

type

The type of resource represented.

OpenAPI Schema

The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.

{
  "description": "A collection (or list) of resources.",
  "properties": {
    "items": {
      "description": "A collection of resources returned in the current result set.",
      "items": {
        "properties": {
          "artist": {
            "description": "Artist name.",
            "readOnly": true,
            "type": "string"
          },
          "duration": {
            "description": "Duration of the song, in seconds.",
            "readOnly": true,
            "type": "integer"
          },
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "instruments": {
            "description": "The instruments featured in the song.",
            "items": {
              "type": "string"
            },
            "readOnly": true,
            "type": "array"
          },
          "isInstrumental": {
            "description": "Whether the track is an instrumental or vocal track.",
            "readOnly": true,
            "type": "boolean"
          },
          "lyrics": {
            "description": "The lyrics for this song.",
            "readOnly": true,
            "type": "string"
          },
          "media": {
            "description": "The media URLs for the different streams and files.",
            "properties": {
              "artistThumbnailUrl": {
                "format": "uri",
                "readOnly": true,
                "type": "string"
              },
              "fullStreamUrl": {
                "format": "uri",
                "readOnly": true,
                "type": "string"
              },
              "sampleStreamUrl": {
                "format": "uri",
                "readOnly": true,
                "type": "string"
              }
            },
            "type": "object"
          },
          "moods": {
            "description": "The moods describing the song.",
            "items": {
              "type": "string"
            },
            "readOnly": true,
            "type": "array"
          },
          "styles": {
            "description": "The styles describing the song.",
            "items": {
              "type": "string"
            },
            "readOnly": true,
            "type": "array"
          },
          "tempo": {
            "description": "Tempo of the song.",
            "enum": [
              "fast",
              "medium",
              "slow"
            ],
            "readOnly": true,
            "type": "string"
          },
          "themes": {
            "description": "The themes describing the song.",
            "items": {
              "type": "string"
            },
            "readOnly": true,
            "type": "array"
          },
          "title": {
            "description": "Song title.",
            "readOnly": true,
            "type": "string"
          },
          "type": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Type"
              },
              {
                "enum": [
                  "song"
                ]
              }
            ]
          }
        },
        "title": "Song",
        "type": "object"
      },
      "title": "Song",
      "type": "array"
    },
    "links": {
      "$ref": "#/components/schemas/Links"
    },
    "meta": {
      "description": "Metadata describing the current result set.",
      "properties": {
        "currentPage": {
          "description": "The current page of results returned.",
          "type": "integer"
        },
        "rows": {
          "description": "The number of rows returned per page for the current result set.",
          "type": "integer"
        },
        "totalItems": {
          "description": "The total number of items in the result set. This may be\naffected by active search/filter parameters.",
          "type": "integer"
        },
        "totalPages": {
          "description": "The total number of pages in the result set. This is affected by\nthe `rows` parameter (`totalItems / rows == totalPages`).",
          "type": "integer"
        }
      },
      "readOnly": true,
      "type": "object"
    },
    "type": {
      "description": "The type of resource represented.",
      "enum": [
        "song-collection"
      ],
      "example": "resource-type",
      "title": "Resource Type",
      "type": "string"
    }
  },
  "required": [
    "type",
    "items"
  ],
  "title": "Collection of songs",
  "type": "object"
}