developers · agents · integrations

BaseOS API — one REST surface, one OpenAPI file, one MCP endpoint.

The BaseOS REST API, its OpenAPI 3.0 specification, signed outbound webhooks, and the BaseOS MCP endpoint — with the jobs each one is the right tool for.

when to use it

What an agent should reach for this API to do.

Each job below names the endpoints that do it. If your job is not on this list, the API reference is the place to check before assuming it is missing.

Create or update a CRM record from a conversation

Push a lead, contact, account, or opportunity into a pipeline a human sales team already works in — including the next action and its due date.

  • POST /api/v1/leads
  • POST /api/v1/contacts
  • POST /api/v1/opportunities
  • POST /api/v1/activities

Read the state of client work

Answer questions about projects, their tasks and their delivery dates without scraping a UI.

  • GET /api/v1/projects
  • GET /api/v1/projects/{projectId}/tasks
  • GET /api/v1/clients

Open or advance a support ticket

File a ticket into the right department, add a reply, and move it along the NEW → OPEN → RESOLVED state machine.

  • GET /api/v1/tickets
  • POST /api/v1/tickets
  • POST /api/v1/tickets/{id}/messages

Quote, bill, and reconcile

Build a quote from catalog items, then read the financial accounts and double-entry transactions it turns into.

  • GET /api/v1/quotes
  • POST /api/v1/quotes
  • GET /api/v1/items
  • GET /api/v1/financial/transactions

Reconstruct what happened to a record

Read the cross-module activity timeline instead of stitching one together from each resource's list endpoint.

  • GET /api/v1/timeline
  • GET /api/v1/activities

React to something happening in BaseOS

Subscribe to outbound webhooks instead of polling. Every delivery is a JSON POST signed with HMAC-SHA256 using the endpoint's secret.

  • Settings → Webhooks (/home/settings/webhooks)

Work as a tool-using agent inside one organization

Speak Model Context Protocol against a single tenant, with the same module gating a human member has. Needs an API key carrying the `mcp:use` scope — no existing key inherits it.

  • POST /api/v1/mcp

when not to

Four things this API will not do for you.

  • —Reading data across organizations. Every API key is scoped to exactly one organization; there is no tenant-wide or cross-tenant read.
  • —Reaching a resource whose module the organization has not activated. That returns 403, and retrying with a different key will not change it.
  • —Anonymous access. There is no public read API — every /api/v1 request needs `Authorization: Bearer <api_key>`.
  • —Bulk export as a substitute for the product's own export. List endpoints paginate and an out-of-range `limit` is rejected with 400, never clamped.

first call

Get a key, then read the spec.

  1. 01Ask an organization admin for an API key from Settings → API Keys (`/home/settings/api-keys`).
  2. 02Send it on every request: `Authorization: Bearer <api_key>`.
  3. 03Read `/api/docs/swagger.json` for the exact request and response shape of the endpoint you want.
  4. 04Paginate with `page` and `limit`; read the `pagination` object in the response rather than guessing when to stop.
  5. 05Treat `401` as a bad key, `403` as a module the organization has not bought, and `400` as a request you should fix rather than retry.
GET /api/v1/clients?page=1&limit=25 HTTP/1.1
Host: baseos.dev
Authorization: Bearer <api_key>
Accept: application/json

401 means the key is wrong. 403 means the key is right and the organization has not activated the module that owns the resource.

every resource, at a stable url

The documentation, the spec, and the machine-readable index.

BaseOS API reference

HTML

Interactive Swagger UI for every REST endpoint, with request and response schemas and a try-it console.

/docs/api

BaseOS OpenAPI 3.0 specification

JSON

The machine-readable contract the reference is generated from. Import it into Postman, Insomnia, or an SDK generator.

/api/docs/swagger.json

BaseOS llms.txt

Markdown

Every endpoint, webhook event, and authentication rule as one markdown file, written to be read in a single request.

/llms.txt

BaseOS MCP server

HTTP

Model Context Protocol endpoint. Point an MCP-capable agent at it with an API key to read and write BaseOS records as tools.

/api/v1/mcp · sign in required

BaseOS API keys

HTML

Where an organization admin mints and revokes the bearer tokens every /api/v1 request needs. Requires a signed-in admin.

/home/settings/api-keys · sign in required

BaseOS webhook endpoints

HTML

Register outbound webhook URLs, read the signing secret, and send a signed test delivery. Requires a signed-in admin.

/home/settings/webhooks · sign in required

Read the spec, then mint a key.

The OpenAPI file is public and needs no account. Keys are minted by an organization admin, and creating an organization is free.

Open the API referencellms.txt↗Ask about an integration›
BaseOS

O sistema operacional para a sua operação inteira: gestão, projetos, CRM, suporte e marketing, com IA do seu lado.

Produto
  • Módulos
  • Casos de uso
  • Agentes de IA
  • Preços
Empresa
  • Sobre
  • Contato
  • Desenvolvedores
  • Segurança
  • Entrar
Legal
  • Termos
  • Privacidade

© BaseOS. Todos os direitos reservados.

baseos · v3

A beta fundadora está abertaA beta fundadora está aberta — entre cedo e ajude a moldar o BaseOS

Começar›
BaseOS
Parceiros
EntrarComeçar grátis