Skip to main content

List Artists

Returns a paginated list of root artists for a project. Artists are extracted from contract documents and de-duplicated via merging.

Request

GET /v1/artists

Query Parameters

ParameterTypeRequiredDefaultDescription
projectIdUUIDYesThe project to list artists for
pageintegerNo1Page number (1-indexed)
perPageintegerNo20Items per page (1–100)
includeMergedstringNofalseSet to true to include merged artists for each root artist

Headers

HeaderRequiredDescription
AuthorizationYesBearer <token> — must be scoped to the requested project

Response

{
  "data": [
    {
      "id": "artist-1",
      "name": "Adele",
      "project_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "merged": [
        { "id": "artist-2", "name": "Adele Adkins" }
      ]
    }
  ]
}
The merged array only appears when includeMerged=true.

Errors

StatusDescription
400Missing projectId or invalid query parameters
403Token is not scoped to the requested project

Example

curl "https://api.royaltyport.com/v1/artists?projectId=a1b2c3d4-...&page=1&perPage=50" \
  -H "Authorization: Bearer rp_your_token_here"

Get Artist

Returns a single artist by ID.

Request

GET /v1/artists/{artist_id}

Path Parameters

ParameterTypeRequiredDescription
artist_idstringYesThe artist ID

Query Parameters

ParameterTypeRequiredDefaultDescription
projectIdUUIDYesThe project the artist belongs to
includeMergedstringNofalseSet to true to include merged artists

Headers

HeaderRequiredDescription
AuthorizationYesBearer <token> — must be scoped to the requested project

Response

{
  "data": {
    "id": "artist-1",
    "name": "Adele",
    "project_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "merged": [
      { "id": "artist-2", "name": "Adele Adkins" }
    ]
  }
}

Errors

StatusDescription
400Missing projectId
403Token is not scoped to the requested project
404Artist not found

Example

curl "https://api.royaltyport.com/v1/artists/artist-1?projectId=a1b2c3d4-..." \
  -H "Authorization: Bearer rp_your_token_here"