Hanzo

Logs

Logs — 3 operations on https://api.hanzo.ai.

The REST reference for Logs — 3 operations, generated from the OpenAPI document.

Base URLhttps://api.hanzo.ai
Operations3
AuthAuthorization: Bearer $HANZO_API_KEY

logs

GET /v1/logs/health

How many log records this deployment holds for your org

Reports the native log store's live state for the calling tenant: the subsystem version and records, the count actually held right now rather than a constant. Not a dependency probe — the store is in-process, so this answers 200 whenever the process is up.

The tenant is the gateway-minted X-Org-Id header, falling back to the deployment brand and then default.

GET /v1/logs/query

Search your org's logs by label, time and substring

Answers {count, records}, newest first. match is the same k=v,k2=v2 superset label matcher the metrics query uses; contains is a case-insensitive substring test against the record body; start and end are nanosecond bounds.

A bound that is absent, empty or unparseable becomes 0, which means UNBOUNDED — a malformed start widens the search rather than failing it. limit caps the page and defaults to 100 when absent or non-positive, so an unfiltered read is never the whole ring.

The tenant is the gateway-minted X-Org-Id header, falling back to the deployment brand and then default, so a search can only reach the org the edge asserted.

POST /v1/logs/write

Append structured log records for your org

Takes {records:[{t, level, body, labels}]}, appends each one, and answers {written}. Bodies are stored verbatim; labels are the indexed dimensions a query filters on, so what you do not label you can only find by substring.

t is NANOSECONDS since the Unix epoch. A record sent without one is stored at 0 and then falls outside any query carrying a lower bound — the usual reason a successful write does not read back. Retention is a bounded ring, 1048576 records per org, oldest evicted first. No record is validated or rejected, so written is the number of records SENT; only a body that does not decode at all is 400.

The tenant is the gateway-minted X-Org-Id header, falling back to the deployment brand and then default; each org's records live in its own WAL-durable store.


All Hanzo APIs · Interactive reference

How is this guide?

On this page