DOCS

Search the developer hub

Jump to a page or an endpoint.

How CREW25 fits together

The pieces you can integrate with, and the one concept everything hangs off.

Organisations

Every account in CREW25 belongs to one or more organisations. An organisation is a trades business: its people, its customers, its jobs and its money. All data is scoped to a single organisation. An API key belongs to one organisation, and GET /api/v1/organisation returns its public id (org_a1b2c3d4e5f6a7b8), which webhook payloads also carry. An app connected to the MCP server also works in one organisation, chosen when the person approves it.

The surfaces

Surface What it is Integrate by
API Your organisation's records, read from your server (beta, small so far) API keys
Webhooks Events about people, jobs, quotes and invoices, pushed as they happen Webhooks
MCP server CREW25's agent tools, for Claude, ChatGPT, Cursor or your own automation MCP
Office workspace Where the organisation runs jobs, quotes, the schedule, hours and margin Not publicly integrable
Mobile apps What crews use on site, on iPhone and Android Not publicly integrable

Environments

There is one production environment. There is no sandbox yet — if you are building something that changes real records, ask us to set up a test organisation rather than working in a live one.

Running the monorepo locally, the API is at http://localhost:5500.

A note on stability

Everything documented here is declared in a manifest in the codebase, and a test asserts that each documented route still exists. If a page says an endpoint is stable, breaking it requires a deprecation window and a changelog entry. Endpoints not listed on this hub carry no promise at all, however reachable they look.