3 November: a documented public API, with the spec checked on every deploy
ZeroLog now has a public API reference at /docs/api and a machine-readable specification at /openapi.json. Both cover the endpoints you can call from your own code, and nothing else.
Adds a public API reference at /docs/api and /openapi.json for the model, token and webhook endpoints; nothing changes for people who do not script against ZeroLog.
You could already call ZeroLog models from your own scripts with the token that ZeroLog Code uses. It was never written down. Now it is, at /docs/api.
The reference covers five endpoints. Two are OpenAI-compatible: a model list and chat completions, so OpenAI client libraries work once you point them at the ZeroLog base URL. One returns your client token while you are signed in. Two are inbound webhooks: one starts a goal run, the other drops an event into a container.
The page has a quickstart, the two ways to send your token, every error status with what to do about it, the limits that apply, and copyable examples in curl, JavaScript and Python. The same content is in /openapi.json for Postman, Insomnia or a code generator. There is no try-it button, because every call costs credit and there is no sandbox account yet.
The rest of the server stays private. Endpoints are public only when they are named on an allowlist; an endpoint that is not on it cannot reach the page or the file. Every deploy now sends the documented requests to the real server code and stops if the answers no longer match.