API REFERENCE
Create Artist
On this page
/api/artistsCreate a new artist account. When spotify_artist_id is provided and a canonical artist already exists for it, the existing artist is linked to the account instead of creating a duplicate. The artist can optionally be linked to an organization.
Authentication
See the authentication guide for API key and account access requirements.
Request
curl --request POST \
--url 'https://api.recoupable.dev/api/artists' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"name": "string"
}'Request body required
Artist creation parameters
application/json
namestringrequiredThe name of the artist to create
minLength: 1
spotify_artist_idstringOptional Spotify artist id. When provided, the endpoint resolves-or-creates the canonical artist for that id: if an artist already carries it, that artist is linked to the account and returned (200) instead of creating a duplicate; otherwise the artist is created with its Spotify profile attached (201).
account_idstringUUID of the account to create the artist for. Only applicable when the authenticated account has access to multiple accounts via organization membership. If not provided, the artist is created for the API key's own account.
format: uuid
organization_idstringOptional organization ID to link the new artist to
format: uuid
Responses
200Existing canonical artist for the given spotify_artist_id linked to the account (no new artist created)+
application/json
artistobjectrequiredProperties for artist
idstringUUID of the created artist account
format: uuid
account_idstringUUID of the artist account (same as id)
format: uuid
namestringName of the artist
created_atstringnullableISO timestamp of when the artist was created
format: date-time
updated_atstringnullableISO timestamp of when the artist was last updated
format: date-time
imagestringnullableArtist profile image URL
instructionstringnullableCustom AI instruction for this artist
knowledgesarray<string>nullableKnowledge base references for this artist
Item properties for knowledges
string
labelstringnullableRecord label name
organizationstringnullableOrganization name
company_namestringnullableCompany name
job_titlestringnullableJob title
role_typestringnullableRole type
onboarding_statusstringnullableOnboarding status
onboarding_dataanynullableOnboarding data
account_infoarray<any>Account info records
account_socialsarray<any>Linked social media accounts
201Artist created successfully+
application/json
artistobjectrequiredProperties for artist
idstringUUID of the created artist account
format: uuid
account_idstringUUID of the artist account (same as id)
format: uuid
namestringName of the artist
created_atstringnullableISO timestamp of when the artist was created
format: date-time
updated_atstringnullableISO timestamp of when the artist was last updated
format: date-time
imagestringnullableArtist profile image URL
instructionstringnullableCustom AI instruction for this artist
knowledgesarray<string>nullableKnowledge base references for this artist
Item properties for knowledges
string
labelstringnullableRecord label name
organizationstringnullableOrganization name
company_namestringnullableCompany name
job_titlestringnullableJob title
role_typestringnullableRole type
onboarding_statusstringnullableOnboarding status
onboarding_dataanynullableOnboarding data
account_infoarray<any>Account info records
account_socialsarray<any>Linked social media accounts
400Bad request - validation error or invalid JSON+
application/json
statusstring · enumStatus of the request
Values: "error"
missing_fieldsarray<string>List of missing or invalid field names
Item properties for missing_fields
string
errorstringError message describing the validation failure
messagestringError message (for invalid JSON or other errors)
500Internal server error+
application/json
errorintegerrequiredformat: int32
messagestringrequiredFull specification
Download the OpenAPI file for complete schemas, constraints, and examples.
Download releases.jsonView operation source
{
"description": "Create a new artist account. When spotify_artist_id is provided and a canonical artist already exists for it, the existing artist is linked to the account instead of creating a duplicate. The artist can optionally be linked to an organization.",
"requestBody": {
"description": "Artist creation parameters",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateArtistRequest"
}
}
}
},
"responses": {
"200": {
"description": "Existing canonical artist for the given spotify_artist_id linked to the account (no new artist created)",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateArtistResponse"
}
}
}
},
"201": {
"description": "Artist created successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateArtistResponse"
}
}
}
},
"400": {
"description": "Bad request - validation error or invalid JSON",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateArtistError"
}
}
}
},
"500": {
"description": "Internal server error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}