API Overview

Available to: Developers (license type) Minimum plan: Free (with usage limits per plan)

TitanRDM provides a comprehensive REST API that allows you to automate reference data management tasks programmatically. The API supports reading and writing table data, managing table definitions, triggering imports and exports, and administering branches, deployments, and promotions.


Base URL

All API endpoints are available at:

https://{your-subdomain}.app.titanrdm.com/api/v1/

Replace {your-subdomain} with your account's subdomain.


API Versioning

The API is versioned via the URL path. The current version is v1. All endpoints are prefixed with /api/v1/.


Authentication

The API uses OAuth 2.0. Two grant types are supported:

Grant TypeUse Case
Client CredentialsMachine-to-machine integrations (no user context). Best for automated pipelines and ETL jobs.
Authorization CodeUser-context integrations (actions attributed to a specific user). Required for endpoints that need a user (e.g., deployments, promotions).

See Authentication for full details on obtaining and using tokens.


Request Format

  • Content-Type: application/json
  • Accept: application/json
  • Authorization: Bearer {access_token}

All request bodies must be JSON-encoded. All responses are JSON.


Response Format

Successful Responses

Single resource: json { "id": 1, "name": "Currency Codes", "description": "ISO 4217 currency codes", ... }

Collection (paginated): json { "data": [ ... ], "meta": { "page": 1, "per_page": 100, "total_count": 250, "total_pages": 3 } }

Error Responses

{
  "error": "Validation Failed",
  "errors": ["Name can't be blank", "Domain is required"]
}
HTTP StatusMeaning
200Success
201Created
204No Content (successful deletion)
400Bad Request — missing or invalid parameters
401Unauthorized — invalid or missing token
402Payment Required — account has overdue billing (write operations blocked)
403Forbidden — insufficient permissions or OAuth scope
404Not Found — resource does not exist
422Unprocessable Entity — validation failed
429Too Many Requests — API rate limit exceeded
500Internal Server Error

Pagination

Collection endpoints support pagination via query parameters:

ParameterDefaultMaxDescription
page1Page number (1-indexed)
per_page1001000Number of items per page

The response meta object contains pagination details to help you iterate through pages.


Filtering

Most collection endpoints support filtering via the q query parameter:

GET /api/v1/table_definitions?q=name:contains:currency&branch_id=5

Resource-specific filters are documented on each endpoint.


Scopes

OAuth tokens are granted specific scopes that control access:

ScopeGrants
apiFull API access (parent scope — includes all sub-scopes)
api:readRead-only access to all resources
api:writeCreate and update resources
api:deleteDelete resources
api:adminAdministrative operations (domains, users)

Scopes are hierarchical: granting api includes api:read, api:write, api:delete, and api:admin.


Rate Limiting

API calls are tracked per account and counted against your plan's allowance:

PlanAPI Calls / Month
Free1,000
Team15,000
Business30,000
EnterpriseUnlimited

When you exceed your limit, you receive a 429 Too Many Requests response. If overage billing is enabled, calls continue but are charged at the overage rate.


Billing Status

If your account has an overdue payment (past 7 days), write operations (POST, PATCH, PUT, DELETE) return 402 Payment Required. Read operations continue to work.


Available Resources

ResourceEndpoint PrefixOperations
Table Data/api/v1/table_dataQuery, create, update, delete records
Table Definitions/api/v1/table_definitionsCRUD, clone, remove
Column Definitions/api/v1/column_definitionsCRUD for table columns
Deployed Tables/api/v1/deployed_table_definitionsList deployed tables
Domains/api/v1/domainsCRUD
Branches/api/v1/branchesCRUD, set current branch
Deployments/api/v1/deploymentsCRUD, deploy, request, reject, cancel, abandon
Promotions/api/v1/promotionsCRUD, promote, request, reject, cancel, abandon
Imports/api/v1/importsCRUD, upload_complete, complete
Exports/api/v1/exportsCRUD
Users/api/v1/usersCRUD
User Groups/api/v1/user_groupsCRUD
User Group Assignments/api/v1/user_group_assignmentsCRUD
Permissions/api/v1/permissionsList
Account/api/v1/accountShow, update
Import Mappings/api/v1/import_mappingsCRUD

See API Endpoints Reference for full details on each endpoint.