curl --request POST \
--url https://api.royalti.io/defaultsettings/{entityType}/{entityId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"category": "content",
"settings": {
"content": {
"type": "Audio",
"format": "Album",
"mainGenre": [
"Rock",
"Alternative"
],
"explicit": "clean",
"language": "en"
}
},
"priority": 0
}
'{
"success": true,
"message": "Default setting created successfully",
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"TenantId": 123,
"entityType": "tenant",
"category": "content",
"settings": {
"content": {
"type": "Audio",
"format": "Single",
"version": "<string>",
"explicit": "explicit",
"language": "<string>",
"mainGenre": [
"<string>"
],
"subGenre": [
"<string>"
],
"contributors": {}
},
"business": {
"label": "<string>",
"copyright": "<string>",
"publisher": "<string>",
"copyrightOwner": "<string>",
"distribution": "<string>",
"status": "Live"
},
"ddex": {
"enableDDEX": true,
"labelName": "<string>",
"resourceReference": "<string>",
"grid": "<string>",
"icpn": "<string>"
},
"validation": {
"requireGenre": true,
"requireLyrics": true,
"requireDescription": true,
"minimumTrackCount": 1,
"maximumTrackCount": 2
}
},
"entityId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"isActive": true,
"priority": 0,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
}POST /defaultsettings//
curl --request POST \
--url https://api.royalti.io/defaultsettings/{entityType}/{entityId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"category": "content",
"settings": {
"content": {
"type": "Audio",
"format": "Album",
"mainGenre": [
"Rock",
"Alternative"
],
"explicit": "clean",
"language": "en"
}
},
"priority": 0
}
'{
"success": true,
"message": "Default setting created successfully",
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"TenantId": 123,
"entityType": "tenant",
"category": "content",
"settings": {
"content": {
"type": "Audio",
"format": "Single",
"version": "<string>",
"explicit": "explicit",
"language": "<string>",
"mainGenre": [
"<string>"
],
"subGenre": [
"<string>"
],
"contributors": {}
},
"business": {
"label": "<string>",
"copyright": "<string>",
"publisher": "<string>",
"copyrightOwner": "<string>",
"distribution": "<string>",
"status": "Live"
},
"ddex": {
"enableDDEX": true,
"labelName": "<string>",
"resourceReference": "<string>",
"grid": "<string>",
"icpn": "<string>"
},
"validation": {
"requireGenre": true,
"requireLyrics": true,
"requireDescription": true,
"minimumTrackCount": 1,
"maximumTrackCount": 2
}
},
"entityId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"isActive": true,
"priority": 0,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
}label - Label-specific defaults (entityId required)artist - Artist-specific defaults (entityId required)user - User-specific defaults (entityId required)POST /defaultsettings/{entityType} endpoint instead (without entityId).
Validation:
POST
Path Parameters:
| Parameter | Type | Description | Required |
|---|---|---|---|
| entityType | string | Type of entity (label, artist, or user) | Yes |
| entityId | uuid | Entity ID | Yes |
| Parameter | Type | Description | Required |
|---|---|---|---|
| category | string | Settings category (content, business, ddex, validation) | Yes |
| settings | object | Settings data matching the category schema | Yes |
| priority | integer | Priority for conflict resolution (default: 0) | No |
const response = await fetch('https://api.royalti.io/defaultsettings/example-id/example-id', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
"category": "sample-category",
"priority": 1
})
});
const data = await response.json();
console.log(data);
JWT Authorization header using the Bearer scheme. Format: "Bearer {token}"
Type of entity (label, artist, or user only)
label, artist, user Entity ID