Skip to main content
The Terminus Hub Public API is a RESTful HTTP API that gives you programmatic access to your Terminus Hub data. All requests and responses use JSON, every endpoint is versioned under /api/v1/, and the API is designed to be predictable: consistent resource structures, a unified error envelope, and standard pagination across every list endpoint.

Base URL

Every endpoint lives under this base URL:

Authentication

Every request to the Public API must include a valid API key in the Authorization header using the Bearer scheme:
API keys are prefixed with thub_ so they are easy to identify. To create a key, see API keys. For code samples and authentication errors, see Authentication.
Never embed your API key in client-side code or commit it to a public repository. Treat it like a password.

Request Format

Every endpoint is a GET request with no request body. Responses are returned as JSON.

Rate Limiting

Each API key may make up to 100 requests per minute. When you exceed the limit, the API returns 429 with a rate_limit_error and a Retry-After header telling you how long to wait. See Rate limiting for the headers.

Example Request

The following example fetches the list of Workspaces your API key has access to. It is a good first request to verify that your key is working correctly.
A successful response returns a paginated envelope with a list of workspace objects:

Available Resources

The Public API exposes four resource groups. It is read-only: every endpoint is a GET, and you cannot create or change data through it. To create submissions, use the Terminus Hub app.

Workspaces

List and retrieve workspaces, the containers that group your submissions and records.

Governance Models

List and retrieve the governance models in your account, with their names and descriptions.

Submissions

List the submissions in a workspace.

Records

List and retrieve records, optionally narrowed to a workspace or taxonomy, with their status, governance model revision, and every field value.