> ## Documentation Index
> Fetch the complete documentation index at: https://docs.useinvent.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

> Understand general concepts, response codes, and authentication strategies.

<Note>
  **Building with an AI agent?** Point it at these and it can integrate on its own:

  * **OpenAPI spec:** `https://api.useinvent.com/openapi.json`
  * **Interactive reference:** [api.useinvent.com/docs](https://api.useinvent.com/docs)
  * **Machine-readable index:** [docs.useinvent.com/llms.txt](https://docs.useinvent.com/llms.txt) and [llms-full.txt](https://docs.useinvent.com/llms-full.txt)
  * **Any page as Markdown:** add `.md` to its URL (for example [introduction.md](https://docs.useinvent.com/api-reference/getting-started/introduction.md))

  Create a key on the [API Keys page](https://useinvent.com/o/settings/api-keys), authenticate with `Authorization: Bearer YOUR_API_KEY`, then hand the agent the OpenAPI spec and let it go.
</Note>

Or just hand your agent the prompt (Cursor, Claude Code, Codex, OpenCode, or harness of choice):

```text theme={"system"}
Connect my Invent account and help me manage my AI support assistants.
Read https://useinvent.com/llms.txt and follow it.
```

## 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.

<CardGroup cols={2}>
  <Card title="OpenAPI spec" icon="code" href="https://api.useinvent.com/openapi.json">
    The full machine-readable spec (`openapi.json`). Import it into your client or pass it to an agent.
  </Card>

  <Card title="Swagger UI" icon="compass" href="https://api.useinvent.com/docs">
    Navigate and try every endpoint interactively.
  </Card>
</CardGroup>

### 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:

```
https://api.useinvent.com
```

### Authentication

To authenticate, you need to add an Authorization header with the contents being `Bearer YOUR_API_KEY`.

```
Authorization: Bearer YOUR_API_KEY
```

Go to the [API Keys page](https://useinvent.com/o/settings/api-keys) and create a new API key.

### Organization-scoped routes

Resources are under `/orgs/{org_id}/...` (for example `GET /orgs/{org_id}/assistants`).

* **`{org_id}` = `c`**: with **Bearer API key** auth, `c` is always the org the key was **issued for** (e.g. the parent if the key was created on the parent). Example: `GET https://api.useinvent.com/orgs/c/assistants`.
* **Explicit `org_id`**: use the real organization id for any other workspace, including a **sub-organization** when the key is a **parent** key. **`c` does not** refer to a sub-org, so you must pass the sub-org’s id in the path. See [sub-organizations in API Keys](/workspace-management/api-keys#parent-organization-keys-and-sub-organizations).

### 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.

| Status | Description                             |
| ------ | --------------------------------------- |
| `200`  | Successful request.                     |
| `400`  | Check that the parameters were correct. |
| `401`  | Check that the API key is correct.      |
| `404`  | The resource was not found.             |
| `429`  | The rate limit was exceeded.            |
| `5xx`  | Indicates an error with Invent servers. |

### Rate limits

Invent enforces rate limits to ensure fair usage of the API. If you exceed the rate limit, you will receive a `429` status code.

The rate limit is set at **500 requests per minute per IP address**.
