REST API
Briefs
Calls for submissions you own, and what came in.
A brief is a call for submissions: an opportunity you publish, invite people
to, and receive tracks against. Both endpoints need scope read:briefs. For
the other direction, where a track of yours was submitted, see
Track submissions.
List briefs
GET /api/v1/briefsUp to 200 briefs you own, newest first.
{
"data": [
{
"id": "cm4a…",
"name": "Indie ad campaign Q4",
"status": "open",
"deadline": "2026-10-01T00:00:00.000Z",
"active": true,
"priority": "high",
"tags": ["indie", "advertising"],
"contactEmail": "supervisor@agency.example",
"createdAt": "…",
"submissionCount": 34,
"requestCount": 12
}
]
}requestCount is the number of email invites sent; submissionCount is the
number of tracks or links received.
Brief submissions
GET /api/v1/briefs/{briefId}/submissions{
"brief": { "id": "cm4a…", "name": "Indie ad campaign Q4", "status": "open", "deadline": "…" },
"submissions": [
{
"id": "…",
"type": "track",
"message": "Instrumental mix attached",
"link": null,
"createdAt": "…",
"track": { "id": "cm1x…", "name": "Night Drive", "artist": "…" },
"viaRequestEmail": "producer@example.com"
},
{
"id": "…",
"type": "link",
"message": "Private SoundCloud",
"link": "https://soundcloud.com/…",
"createdAt": "…",
"track": null,
"viaRequestEmail": null
}
]
}Returns { "ok": false, "error": "BRIEF_NOT_FOUND" } for a brief you do not
own.