Squiddy API reference
The public contract of Squiddy is the protobuf package squiddy.v1. This reference is generated from it: the procedures, the messages, the field constraints and the prose all come out of the contract itself, so a page can never describe a service the server does not serve.
Channels
| Channel | What it is |
|---|---|
| AdminService | the authenticated control plane: what a customer's own dashboard, scripts and automation drive to manage projects, environments, configurations, members and keys |
| ConfigService | the data plane: the procedure installed clients call to resolve their configuration, and the reason an integrator reads this reference at all |
How a call is shaped
Every procedure is an HTTP POST to /<package>.<Service>/<Procedure> — for instance /squiddy.v1.ConfigService/GetRemoteConfiguration. The service speaks the Connect protocol, so the same path accepts a plain JSON body (Content-Type: application/json) as well as gRPC and gRPC-Web, and no client library is required to call it: an HTTP client and JSON are enough.
The host is the one your installation is served on; the paths below are relative to it.
Errors
A failure is a Connect error: a status code plus a message, never a success response carrying a status field. Each procedure lists the codes it can answer with — the ones the contract states for that procedure, plus the ones every procedure of its channel can return. Data-plane failures additionally carry a typed ErrorDetail payload, so a client can react to the application code without parsing prose.
Reading the field tables
| Column | Meaning |
|---|---|
| # | The field number. It is the field's identity on the wire and never changes. |
| Field | The name in the contract, which is also the name on the gRPC transport. |
| JSON | The name on the HTTP/JSON transport — what a JSON client sends and reads. |
| Presence | singular: always on the wire, zero value when unset. optional: absence is distinguishable from the zero value. repeated: a list. map: a dictionary. |
| Constraints | Checked at the wire boundary before any handler runs; a violation is answered with invalid_argument. |