API reference
Server
Identity and health. Public, so a client can find a server before it has a session.
Paths are relative to /api/v1 on your server.
/assistants#Alexa and Google Home: whether the server listens, and who is linked
P6-48, docs/18. While the assistants.enabled setting is on and the server is claimed by a Collectoh account, it asks collectoh.com for what Alexa and Google Home were told and carries it out on the owner’s own players. links are the assistants linked to it on collectoh.com, as the account service says; empty when it can’t be asked.
- Authorisation
- Bearer token or API key · Session cookie
- 200Success.
application/json·object - 401
UNAUTHENTICATED: no session, or the access token expired.application/json·ErrorEnvelope - 403
FORBIDDEN: the account lackssettings:manage, or the library, label, age or schedule scope refuses it.application/json·ErrorEnvelope
/docs#The API reference
A self-contained reader for this document — one page, no outside resources.
- Authorisation
- None
- 200Success.
text/html·string
/openapi.json#This document
The OpenAPI 3.1 description of the API, generated from the running server. Public and readable cross-origin.
- Authorisation
- None
- 200Success.
application/json·object
/server/connections#Where an app can reach this server
For a signed-in app (P6-21, docs/15 §3): the addresses at home, then the public address, then Collectoh Relay when it is switched on. An app asks them all at once, keeps only an answer from this server (id), and uses the relay only when nothing direct answers — chooseConnection in the client SDK does exactly that.
- Authorisation
- Bearer token or API key · Session cookie
- 200Success.
application/json·ServerConnections - 401
UNAUTHENTICATED: no session, or the access token expired.application/json·ErrorEnvelope - 403
FORBIDDEN: the account may not do this.application/json·ErrorEnvelope
/server/health#Report health
Always 200; status is degraded when a dependency is down, because restarting the container would not fix it.
- Authorisation
- None
- 200Success.
application/json·HealthReport
/server/info#Identify the server
Public and readable cross-origin: a client lists the servers on its network by asking each of them this. Nothing here is secret.
- Authorisation
- None
- 200Success.
application/json·ServerInfo - 503
SERVICE_STARTING: the database cannot be reached, sosetupCompletecannot be knownapplication/json·ErrorEnvelope
No endpoint here matches. Try another word, or look in another area.