Browse documentation
API

API overview

The shape of the BoostEcom API surface: what is public, what is authenticated, and which door to take for which job.

The platform exposes 388 route handlers under /api. That number is derived from the repository at build time, not maintained by hand: if it is wrong here, the build fails.

Most of those are internal to the dashboard. What follows is the part you would integrate against.

Three doors, three jobs

| Door | For | Auth | |---|---|---| | Remote MCP server | Giving an AI client tool access to a store. | OAuth 2.1 PKCE, or a bst_mcp_ bearer. | | Intelligence API | Reading store-intelligence records programmatically. | bei_ key, read-only. | | Webhooks | Receiving events from Stripe, Shopify and Resend. | Signature verification, per provider. |

Pick by what you are building. An AI client that should act on a store takes the MCP server. A script that should read intelligence takes the Intelligence API. There is no general-purpose REST API for store mutation — that surface is the MCP server, deliberately, because every tool there carries a scope check.

Versioning — read this before you build

Being precise, because this page previously was not:

  • There is no API version header. Nothing in the platform reads one. Do not send one and do not build around one.
  • The MCP endpoint has two paths. The original /api/mcp/<storeId> shipped unversioned and installed clients hold it in their config, so it stays exactly as it is, indefinitely. New connections should use /api/mcp/v1/<storeId>.
  • Those two paths are one endpoint with two names: the same handlers, and a token minted through either works on either.
  • There is no published deprecation window, because nothing has been deprecated yet. When something is, the policy will be written here before the deprecation, not after.

Rate limits

Limits are counted per credential rather than per IP address, which matters if you are calling from a serverless platform where the address changes between invocations.

Errors

| Code | Means | |---|---| | 401 | Missing, malformed or revoked credential. | | 402 | Estimated cost exceeds the organisation's credit balance. | | 403 | Authenticated, but the scope or membership does not allow it. | | 404 | Also returned when a resource exists but is not yours. |

That last row is intentional: a tenant-scoped miss answers 404, not 403, so the API never confirms that someone else's resource exists.

Next

Built on these docs?

Drop into the forum if something's unclear or wrong. Docs improve faster when readers flag the gaps.

Open the forum