API Reference
The Smart EPD v2 API is documented endpoint-by-endpoint in the sidebar — pick a tag (Workspaces, Projects, EPDs, Themes, etc.) to drill into request and response schemas, try out calls, and copy code samples.
If you'd rather work from the raw specification — for example to import into Postman, generate a typed client with OpenAPI Generator, or feed it into your own tooling — you can download the spec directly:
What is not in the spec
The published specification covers the integration surface — everything an API key or a customer's JWT can reach. Some v2 routers are deliberately excluded:
| Router | Why it is absent |
|---|---|
/crm/ | Staff-internal sales tooling over Smart EPD's own commercial record (deals, contacts, account sales attributes). Every route is staff-gated and returns 404 to anyone else, so there is nothing here an integrator can call. See CRM for the domain model. |
/quickbooks/ | Staff-internal billing operations against Smart EPD's own books. |
Absence from the spec is enforced rather than incidental: v2 operations are opt-in, and one that is not explicitly published is hidden. If you are looking for a CRM or billing endpoint and cannot find it, it is not undocumented — it is not yours to call.
Conventions
Two cross-cutting conventions apply to every endpoint:
- Pagination — list endpoints use opaque cursors (
data/next_cursor/has_more). - Errors — every non-2xx response shares one
errorenvelope (code/message/details).
For AI agents
These docs are published in agent-ready formats: a curated index at /llms.txt, the full corpus at /llms-full.txt, and a raw-Markdown mirror of every page (append .md to its path). See the AI Agent Integration guide for how to ground an agent on the API, including a copy-paste context block.