API

The Boost.space REST API gives you programmatic access to your whole data model — modules, spaces, records, and fields — on one base URL per tenant, with Bearer authentication.

Is the raw API the right surface for you?

All three developer surfaces reach the same data with the same permissions. They differ in who is holding the wheel:

Use When
REST API — you are here You are writing code in a language without an SDK, or you want the exact wire format: raw HTTP, no client in the way
SDK You are writing code in TypeScript or Python. Same API, plus typed models, retries, pagination you can iterate, and bulk helpers that chunk for you. Prefer this over hand-rolling HTTP
MCP An AI agent is doing the work and deciding what to do next, rather than you writing the steps out in advance

The dividing line is not capability, it is authorship. Write the steps yourself and you want the SDK. Describe the outcome and let an agent find the steps, and you want MCP. Reach for the raw API when neither fits.

Quickstart

  1. Create an API token in your profile.
  2. Call the API — base URL https://{system}.boost.space/api, Bearer auth:
curl https://{system}.boost.space/api/space \
  -H "Authorization: Bearer $BS_TOKEN"

{system} is your system name (e.g. acmeacme.boost.space).

What's inside

Resource What's inside
Interactive reference Every public endpoint, with schemas and copy-paste code samples
SDKs Typed clients generated from this same spec
Changelog What changed in the API, version by version

Conventions

  • Base URL is per-tenant: https://{system}.boost.space/api.
  • Authentication is a Bearer API token; a token can never exceed its user's permissions, and its scopes are set per module and per operation.
  • Filtering uses one grammar everywhere: filter=field operator value, conditions joined with ;/& (AND) or | (OR) — see the filtering guide for the full operator set with tested examples.
  • Pagination is offset/limit with the total in the X-BoostSpace-FoundRecords header; ordering is order=field;ASC|DESC.
  • Versioning — every release is pinned and diffable at /<version>.json; the current spec is always /latest.json. See the Changelog.

Machine-readable

Built for agents as much as for people: