Everything the dashboard does, it does through a REST API, and you can use the same one.
The reference is generated from the API's own routes and validation rules, so it describes what's running, not what someone remembered to write down.
Log in for an access token, then send it as a bearer token:
curl -s https://api.runalf.com/api/v1/auth/login \
-H 'content-type: application/json' \
-d '{"email":"you@example.com","password":"…"}'
curl -s https://api.runalf.com/api/v1/auth/me \
-H "authorization: Bearer $ACCESS_TOKEN"
The access token is valid for 15 minutes. POST /api/v1/auth/refresh trades the refresh token for a new pair (the old refresh token stops working).
svc_…, prj_…, srv_…: the prefix says what it is.{ "error": { "code", "message", "details" } }. A 422 says which fields are wrong.{ "data": [...] }.Agents don't use this API. They use the MCP endpoint at https://api.runalf.com/mcp, with an agent token or by signing in: the same abilities, as tools, with limits and approvals. See Coding agents.