Base URL

The base URL of all API requests is:


Authentication against the API is performed by means of the Authorization header. The authorization scheme should be of type OmnyToken. The value should be the token exactly as it appears on the API Keys settings page in Omny Studio.

For example if your API key token is "SampleAPIKeyToken" all your requests would include the header:

Authorization: OmnyToken SampleAPIKeyToken

You may also supply the API key token as part of the request URL, using the apikey query parameter. For example: /test/ping?apikey=SampleAPIKeyToken

Rate limits

The API is rate limited to ensure service reliability and performance. Rate limits are applied organization-wide across all API keys. You can find the organization's rate limit in the API Keys settings page in Omny Studio. If you require a higher API limit, please contact support with a technical reason for the increase.

If you exceed the rate limit, the server will respond with an error and a status code of 429. Each response will also include information about the rate limits in the HTTP headers:

  • X-RateLimit-Limit - the number of requests allowed during the rate limit window
  • X-RateLimit-Remaining - the number of requests remaining allowed during the current rate limit window
  • X-RateLimit-Reset - the number of seconds until the rate limit window resets

Generating clients

The API provides a Swagger compatible specification available at /api-spec/v0. Check this list of tools and editor to generate an API client library for your programming environment.


Further guidance can be found in the developer help documentation. Recent improvements and changes in behavior are documented in the API changelog.

Data format

Name Format


A specific time on a specific date in UTC timezone


e.g. 2016-07-06T07:44:34.888Z


A unique identifier


e.g. 21EC2020-3AEA-4069-A2DD-08002B30309D

Consumer API

If you need to use an API to integrate your published audio and metadata in an app or website, consider the consumer API instead which does not allow edits or require an API key.


Some API calls initiate an asynchronous operation to calculate a response. For these calls, the API returns an OperationResult that contains a UUID, the status of the operation, and the result of the operation. If the operation status is not complete, you must poll the operations endpoint to retrieve the status and result of the operation.

The valid status codes include:

  • Busy - Indicates the Operation is currently queued or being processed
  • Success - Indicates the Operation has completed Successfully and the result of the Operation is included in the result field
  • Failed - Indicates the Operation has failed. You can try re-performing the operation again.

The response for any API call that initiates an operation will contain a Location header containing a URL that can be polled to retrieve the status and result of the operation. You can also use the id property in the API response to poll the operation endpoint.

Try the API