Your project's own API documentation

Every project has live, interactive API docs for its own entities and the platform endpoints. Find them in the dashboard, try requests and fetch the spec.

Last updated

Every project documents its own API for you. The documentation is generated from your data model, so an entity you created a minute ago is already in it, with its fields, types and example values. It also covers a selection of the platform's own endpoints. You can read it in the Anythink dashboard, send real requests from it, or fetch the underlying specification to use in other tools.

What you get#

The documentation comes in two parts.

Part What it documents
Data model One section for each entity you've created. Each has five operations: list, get one, create, update and delete. Every entity's schema lists its fields with their types, descriptions and example values, and marks required fields.
Platform ("module") A curated set of platform endpoints, shown as the Anythink API. It covers areas such as sign-in, files, entities and fields, workflows, search, dashboards, imports, charts and integrations.

Both parts are OpenAPI 3 documents, the standard format that tools such as Swagger UI, Postman and client generators read. The data model document covers the entity endpoints only. Endpoints such as bulk create, import, delete-many, record locking and the public record endpoints aren't in it. They're all described in REST API reference.

Open the docs in the dashboard#

In the Anythink dashboard

  1. Select API Docs in the sidebar.
  2. The Data Model API tab opens first. Each of your entities is a group of operations: expand one to see its parameters, request body and responses.
  3. Select the Anythink API tab for the platform endpoints.
  4. Use the filter box at the top of a tab to find an endpoint or an entity by name.

The page loads the documentation once, when you open it. After you add an entity or field, reload the page to see the change.

With the CLI

The CLI doesn't have a viewer, but it can print the documentation. This prints the full response, which includes both parts:

bash
anythink fetch /docs

anythink docs is something different: it prints the CLI's own command reference, not your project's API documentation.

With an AI assistant (MCP)

text
Which endpoints does my project have for the orders entity?

The assistant uses the cli tool to run fetch /docs and reads the entity's operations from the data model part. See Connect an AI assistant.

Try a request from the dashboard#

The documentation page is interactive. Every operation has a Try it out button.

  1. Expand an operation, for example GET /entities/orders/items.
  2. Select Try it out, fill in any parameters or the request body, then select Execute.
  3. The page shows the request it sent, the response status and body, and how long the call took.

The page signs each request with the session you're already signed in with, so you don't have to paste a token. The request runs as you: your role's permissions and any row-level security apply, exactly as they would in your own app. These are real calls. Create, update and delete change your data.

An API key doesn't work in the Try it out panel, because the page always sends your session. To test a key, send the request yourself:

bash
curl https://api.my.anythink.cloud/org/{project_id}/entities/orders/items \
  -H "x-api-key: ak_your_key_here"

See API keys to create one, and Sign in users for tokens.

Get the specification#

The dashboard reads its documentation from one endpoint. You can call it too.

http
GET /org/{project_id}/docs
x-api-key: ak_your_key_here

You can authenticate with a user access token (Authorization: Bearer <access_token>) or an API key. The caller needs the anythink_documentation:read permission. A caller without it gets 403 Forbidden.

The response is a JSON object with two properties:

json
{
  "data_model_documentation": { "openapi": "3.0.3", "info": { "title": "Data Model API" }, "paths": { }, "components": { }, "tags": [ ] },
  "module_documentation": {
    "anythink": { "openapi": "3.0.4", "paths": { } }
  }
}
Property Contents
data_model_documentation One OpenAPI document for all your entities. It has a tag, a schema and two paths per entity: /entities/{entity}/items and /entities/{entity}/items/{id}.
module_documentation An object with one OpenAPI document for each platform module. At the moment there's one, anythink, which is the Anythink API tab.

Each document lists your project's address as its server, with paths that already contain your project ID, so you can load one straight into a tool.

In the Anythink dashboard

The dashboard has no download button. Use the CLI or an HTTP call below to save the specification.

With the CLI

bash
anythink fetch /docs

Use this to read the specification in your terminal. To save it as a file, use curl as shown below.

With an AI assistant (MCP)

text
Fetch my project's API documentation and tell me which entities have a required email field.

Save a document as a file#

Use curl with an API key, then pull out the part you want with jq:

bash
curl -s https://api.my.anythink.cloud/org/{project_id}/docs \
  -H "x-api-key: ak_your_key_here" > docs.json

jq '.data_model_documentation' docs.json > data-model.openapi.json
jq '.module_documentation.anythink' docs.json > anythink.openapi.json

Use the specification in other tools#

Because each document is OpenAPI 3, you can import it into an API client such as Postman or Insomnia, view it in Swagger UI or Redoc, or give it to an OpenAPI client generator to produce typed code for the five operations it describes.

Two things to know before you generate a client:

  • The document declares a bearer token as its only security scheme, so a generated client signs in with an access token. If you use an API key, add the x-api-key header yourself.
  • Paging, filters, fields and relationship expansion are described in REST API reference. Treat that page as the reference for list requests and for the endpoints the document leaves out.

Generate a new copy whenever your data model changes. The specification is built when you request it, so it's never out of date, but a client you generated earlier is.

What's included, and who can see it#

  • Entities. The data model document lists the entities you created. Each entity's schema has all of its fields except id, created_at and updated_at, which Anythink sets for you.
  • Field types. Each field is shown with the matching OpenAPI type. Relationship fields appear as the ID or IDs of the related records. A secret field is shown as a password-format string with a masked example.
  • Examples. Example values are sample data for the field type, not your own records.
  • Permissions. The documentation shows the shape of your API to anyone who can read it. It doesn't change what each caller may do. A user who can read the docs but lacks orders:read sees the orders operations and gets 403 Forbidden when they try one. Give anythink_documentation:read only to roles that should see your data model. See Roles and permissions.
  • Data. The documentation never contains your records, only the shape of the API.
  • Changes to the data model. The specification is generated on each request. Add an entity or a field, rename one or delete one, and the next request reflects it. In the dashboard, reload the page.

Limits#

Limit Detail
Operations per entity Five: list, get, create, update and delete.
Platform endpoints A curated selection, not every endpoint. The full set of record endpoints is in REST API reference.
Security schemes The data model document declares a bearer token only.
Try it out Always signed in as you, with your session. It can't use an API key.
Download The dashboard has no download button. Use GET /docs.
Permission anythink_documentation:read is needed for the dashboard page and for GET /docs.

Next steps#