List songs
The band’s song library. Title and artist only; anything more (key, tempo, variant, charts) is the band’s own custom fields. A song being made for a request is here too, in production, until its track is complete.
Query Parameters
- Type: integerlimitmin:0max:200
Page size, 50 by default, 200 at most.
- Type: integeroffsetmin:0
Records to skip.
- Type: stringsort
Comma-separated fields; prefix with
-for descending. Sortable: title, artist, status, producer_id, track_completed_at, created_time, last_edited_time, id. Default: title,artist. - Type: stringfields
Comma-separated subset of fields to return.
idis always included. - filter[title]
Shorthand
filter[title]=valuemeans equals. Operators: equals, does_not_equal, contains, does_not_contain, starts_with, ends_with, is_empty, is_not_empty.- Type: string
Shorthand
filter[title]=valuemeans equals. Operators: equals, does_not_equal, contains, does_not_contain, starts_with, ends_with, is_empty, is_not_empty.
- filter[artist]
Shorthand
filter[artist]=valuemeans equals. Operators: equals, does_not_equal, contains, does_not_contain, starts_with, ends_with, is_empty, is_not_empty.- Type: string
Shorthand
filter[artist]=valuemeans equals. Operators: equals, does_not_equal, contains, does_not_contain, starts_with, ends_with, is_empty, is_not_empty.
- filter[status]
Shorthand
filter[status]=valuemeans equals. Operators: equals, does_not_equal, is_empty, is_not_empty.- Type: "in_production" or "active" or "inactive"enum
Shorthand
filter[status]=valuemeans equals. Operators: equals, does_not_equal, is_empty, is_not_empty.
- filter[producer
_id] Shorthand
filter[producer_id]=valuemeans equals. Operators: equals, does_not_equal, is_empty, is_not_empty.- Type: stringFormat: uuid
Shorthand
filter[producer_id]=valuemeans equals. Operators: equals, does_not_equal, is_empty, is_not_empty.
- filter[track
_completed _at] Shorthand
filter[track_completed_at]=valuemeans equals. Operators: equals, does_not_equal, contains, does_not_contain, starts_with, ends_with, is_empty, is_not_empty.- Type: string
Shorthand
filter[track_completed_at]=valuemeans equals. Operators: equals, does_not_equal, contains, does_not_contain, starts_with, ends_with, is_empty, is_not_empty.
- filter[created
_time] Shorthand
filter[created_time]=valuemeans equals. Operators: equals, before, after, on_or_before, on_or_after, is_empty, is_not_empty.- Type: stringFormat: date-time
Shorthand
filter[created_time]=valuemeans equals. Operators: equals, before, after, on_or_before, on_or_after, is_empty, is_not_empty.
- filter[last
_edited _time] Shorthand
filter[last_edited_time]=valuemeans equals. Operators: equals, before, after, on_or_before, on_or_after, is_empty, is_not_empty.- Type: stringFormat: date-time
Shorthand
filter[last_edited_time]=valuemeans equals. Operators: equals, before, after, on_or_before, on_or_after, is_empty, is_not_empty.
Responses
- application/json
- application/json
- application/json
- application/json
curl 'https://api.weddingoperatingsystems.com/api/v1/songs?limit=50&offset=0&sort=title%2Cartist' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN'
{
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"title": null,
"artist": null,
"status": "in_production",
"producer_id": null,
"track_completed_at": null,
"created_time": "2026-10-05T17:38:27.325Z",
"last_edited_time": "2026-10-05T17:38:27.325Z"
}
],
"meta": {
"total": 1,
"limit": 1,
"offset": 1
}
}