Revelator Logo API

Rights

With Rights Management, you define which formats are permitted for your release before distributing it to DSPs. These settings determine which services are available in the distribution queue.

Default Behavior

By default, all rights are set to true. If you want your release to be available for streaming, downloading, and UGC on all platforms without restriction, no action is required on these endpoints.

Rights Types

Right TypeDescription
StreamingAllows listeners to stream this content on consumer platforms (Spotify, Apple Music, etc.).
DownloadAllows listeners to purchase or permanently download this content (iTunes, Amazon).
UGCAllows distribution to User-Generated Content platforms (YouTube, TikTok, Facebook) for fingerprinting and monetization.

Configuration Rules

1. Release vs. Asset Level

  • Asset Level (Tracks and Videos): You can control all three rights (streaming, download, ugc) individually per asset.
  • Release Level: You can only control download rights.
    • Reasoning: A “Release” entity cannot be streamed (only its assets can) and does not contain audio for UGC fingerprinting.
    • Impact: If you set download: false at the Release level, the album cannot be purchased as a whole entity. However, individual assets may still be available for download if their specific asset-level rights are enabled.

Release-level responses report each contained asset with its assetType, which is track or video depending on what the release holds.

2. UGC Consistency (All or Nothing)

Validation Rule: You cannot set different UGC rights per track. Either all tracks must have ugc: true or all tracks must have ugc: false. Mixing these settings will prevent distribution.

3. Distribution Impact

Setting a right to false removes eligible stores from the distribution process.

  • If ugc is false, calls to add the release to the queue for YouTube Content ID, Facebook, or TikTok will fail.
  • For hybrid stores (e.g., Apple Music / iTunes), disabling download while keeping streaming means the release will be delivered for streaming but will not be available for purchase on the iTunes Store.

4. Identifying the Asset

Rights are addressed by assetId, not by trackId, videoId, or releaseId. Every endpoint below takes the universal asset ID of the object whose rights you are reading or setting.

The read endpoints additionally accept the entity ID as an alternative, and each one notes the path below. Writes accept assetId only—there is no PUT /catalog/v1/tracks/{trackId}/rights equivalent. Retrieving an object through its regular catalog endpoint returns the assetId you need. See Understanding Assets & IDs.


Get Track Rights

Also available by track ID. GET /catalog/v1/tracks/{trackId}/rights returns this exact payload, keyed by the track’s trackId instead of its assetId. This alternative exists for reads only.

GET /catalog/v1/assets/tracks/{assetId}/rights

Retrieves the current rights configuration for a specific track.

Path Parameters

Parameter Description
assetId * integer

-

Responses

object
assetRightType AssetRightTypes
Allowed values: streaming, download, ugc
value boolean
GET /catalog/v1/assets/tracks/{assetId}/rights
curl -X GET "https://platform.revelator.com/catalog/v1/assets/tracks/4419835/rights" -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Example response 200
{
  "rights": [
      {
          "assetRightType": "streaming",
          "value": true
      },
      {
          "assetRightType": "download",
          "value": true
      },
      {
          "assetRightType": "ugc",
          "value": true
      }
  ]
}

Set Track Rights

PUT /catalog/v1/assets/tracks/{assetId}/rights

Updates the rights configuration for a specific track.

Path Parameters

Parameter Description
assetId * integer

The Asset ID of the Track.

Request Body *

object
assetRightType AssetRightTypes
The type of right being set.
value boolean

Responses

object
assetRightType AssetRightTypes
Allowed values: streaming, download, ugc
value boolean
PUT /catalog/v1/assets/tracks/{assetId}/rights
curl -X PUT "https://platform.revelator.com/catalog/v1/assets/tracks/4419835/rights" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
  "rights": [
      {
          "assetRightType": "streaming",
          "value": false
      },
      {
          "assetRightType": "download",
          "value": true
      },
      {
          "assetRightType": "ugc",
          "value": false
      }
  ]
}'
Example response 200
{
  "rights": [
      {
          "assetRightType": "streaming",
          "value": false
      },
      {
          "assetRightType": "download",
          "value": true
      },
      {
          "assetRightType": "ugc",
          "value": false
      }
  ]
}

Get Release Rights

Also available by release ID. GET /catalog/v1/releases/{releaseId}/rights returns this exact payload, keyed by the release’s releaseId instead of its assetId. This alternative exists for reads only.

GET /catalog/v1/assets/releases/{assetId}/rights

Retrieves the current rights configuration for a specific release and its assets.

Path Parameters

Parameter Description
assetId * integer

-

Responses

object
assetRightType AssetRightTypes
Always returns 'download'.
value boolean
assetId integer
assetType AssetTypes
Type of the contained asset: 'track' or 'video'.
assetRightType AssetRightTypes
Allowed values: streaming, download, ugc
value boolean
GET /catalog/v1/assets/releases/{assetId}/rights
curl -X GET "https://platform.revelator.com/catalog/v1/assets/releases/4509643/rights" -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Example response 200
{
  "assetRights": [
      {
          "assetId": 4419835,
          "assetType": "track",
          "rights": [
              {
                  "assetRightType": "streaming",
                  "value": true
              },
              {
                  "assetRightType": "download",
                  "value": true
              },
              {
                  "assetRightType": "ugc",
                  "value": true
              }
          ]
      }
  ],
  "rights": [
      {
          "assetRightType": "download",
          "value": true
      }
  ]
}

Set Release Rights

PUT /catalog/v1/assets/releases/{assetId}/rights

Updates rights for the release (Download only) and all its contained assets.

Path Parameters

Parameter Description
assetId * integer

The Asset ID of the Release.

Request Body *

object
assetRightType AssetRightTypes
Must be 'download'.
value boolean
assetId integer
assetType AssetTypes
Type of the contained asset: 'track' or 'video'.
assetRightType AssetRightTypes
The type of right being set.
value boolean

Responses

object
assetRightType AssetRightTypes
Always returns 'download'.
value boolean
assetId integer
assetType AssetTypes
Type of the contained asset: 'track' or 'video'.
assetRightType AssetRightTypes
Allowed values: streaming, download, ugc
value boolean
PUT /catalog/v1/assets/releases/{assetId}/rights
curl -X PUT "https://platform.revelator.com/catalog/v1/assets/releases/4509643/rights" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
  "assetRights": [
      {
          "assetId": 4419835,
          "assetType": "track",
          "rights": [
              {
                  "assetRightType": "streaming",
                  "value": true
              },
              {
                  "assetRightType": "download",
                  "value": false
              },
              {
                  "assetRightType": "ugc",
                  "value": true
              }
          ]
      }
  ],
  "rights": [
      {
          "assetRightType": "download",
          "value": true
      }
  ]
}'
Example response 200
{
  "assetRights": [
      {
          "assetId": 4419835,
          "assetType": "track",
          "rights": [
              {
                  "assetRightType": "streaming",
                  "value": true
              },
              {
                  "assetRightType": "download",
                  "value": false
              },
              {
                  "assetRightType": "ugc",
                  "value": true
              }
          ]
      }
  ],
  "rights": [
      {
          "assetRightType": "download",
          "value": true
      }
  ]
}