Skip to main content
Are you an AI agent? Everything you need is machine-readable:

Two ways in

Or paste this into your agent (Claude Code, Codex, Cursor, OpenCode or any harness):

Explore the full API

The complete API is described by an OpenAPI 3.1 spec. Browse it interactively or hand the raw spec to your client or agent.

OpenAPI spec

The full machine-readable spec (openapi.json). Import it into your client or pass it to an agent.

Swagger UI

Navigate and try every endpoint interactively.

Base URL

The Invent API is built on REST principles. We enforce HTTPS in every request to improve data security, integrity, and privacy. The API does not support HTTP. All requests contain the following base URL:

Authentication

To authenticate, you need to add an Authorization header with the contents being Bearer YOUR_API_KEY.
Go to the API Keys page and create a new API key.

Permissions and scope

A key is not a master credential. Three boundaries decide what it can reach: Permissions are named resource:action: a resource such as contacts, inbox, assistants or tables, at read or write level. Every endpoint requires the one it needs, and a call that lacks it answers 403 with "message": "ORGS/PERMISSION_REQUIRED" and the missing permission in "details" (for example "Requires permission: contacts:read"). The current set lives in the role editor and the permissions matrix in your workspace; custom roles explains both. Keys cannot be narrowed to a subset of permissions today: a custom role on the person who created the key does not limit it.

Organization-scoped routes

Resources are under /orgs/... (for example GET https://api.useinvent.com/orgs/assistants). The API key already names its organization, so the path omits the org id. To act inside a sub-organization with a parent key, put the sub-org’s id after /orgs/: GET https://api.useinvent.com/orgs/SUB_ORG_ID/assistants. See sub-organizations in API Keys.

Response codes

Invent uses standard HTTP codes to indicate the success or failure of your requests. In general, 2xx HTTP codes correspond to success, 4xx codes are for user-related failures, and 5xx codes are for infrastructure issues.

Rate limits

Invent enforces rate limits to ensure fair usage of the API. If you exceed a rate limit, you will receive a 429 status code. Limits are applied per endpoint and keyed per caller (your API key’s owner, or IP address). They vary by action: write-heavy endpoints are capped much tighter than reads — for example, creating an assistant is limited to 10 per hour. Expect 429s on those well below any general per-minute ceiling, and back off when you receive one. A broad edge limit of roughly 500 requests per minute per IP may also apply at the gateway.