API overview
The Lumis API is a REST surface over the same Postgres tables the product itself reads and writes — there is no separate export format and no file-based snapshot to fall out of sync with. If you can see it in the app, you can read and change it through the API.
Base URL: https://lumis.work/api/v1
Every request is scoped to a project (project_key, and requests default to
the project tied to your credential). Pass ?project_key= on any request to
be explicit, or to act as an admin across projects if your credential allows
it. venture_key is accepted and returned as a legacy alias for project_key
— older integrations keep working unchanged, but new integrations should use
project_key.
What’s here today
The current surface covers the resources most integrations need first:
- Tickets — the work queue: list, create, read, update, delete.
- Decisions — recorded decisions, including resolving one.
- Memories — durable notes the crew and API share.
- Runbooks — read-only reference procedures.
- Webhooks — push ticket/decision events to your own URL.
- Search — semantic + graph search over a project’s ingested content.
This is a young surface — six resources, mostly CRUD, one search endpoint. If a capability you need isn’t listed above, it isn’t available yet; each resource page says so plainly rather than describing something that doesn’t exist.
Authentication
Every /api/v1/* request needs either a Bearer token or a browser session.
See Authentication for how to get a token and which
header to send.
Versioning
The surface is versioned as v1. See
Versioning & deprecation for the header contract and what
changes when something is deprecated.