Update Log Drain
Authorizations
Primary scheme: Authorization: Key <key_id>:<secret>.
Path Parameters
The drain's id (drain_<uuid>).
Body
New label; omitted means unchanged.
1 - 100New destination; omitted means unchanged.
1 - 8192New wire format; omitted means unchanged.
ndjson, otlp Rotates the signing secret. No conditional applies here: the drain may already hold one. Switching format to ndjson on a drain with no stored secret requires supplying one in the same request.
64 - 4096Replaces the full header set; {} clears it. Omitted means unchanged.
Pause (false) or resume (true) the drain; omitted means unchanged. Re-enabling clears the auto-disable failure count.
New maximum log lines per post; omitted means unchanged.
1 <= x <= 5000Response
Successful Response
The drain's id (drain_<uuid>).
Human-readable label.
The destination endpoint.
Wire encoding for one log drain endpoint's HTTP posts.
ndjson, otlp Whether the drain receives batches.
Maximum log lines per post.
Failed batches since the last success; the drain auto-disables when it crosses the failure threshold.
ISO-8601 instant the drain was created.
ISO-8601 instant the config last changed.
Names of the configured extra headers. Values are write-only and never echoed back.
ISO-8601 instant of the last delivered batch.
ISO-8601 instant of the last failed batch.
HTTP status of the last failed batch; null when it never got a response.
Why the most recent batch delivery failed, in the same error envelope GET /jobs/{job_id} returns for a failed job: a stable code from the shared error vocabulary, a fixed operator-facing message, and retryable. Null while no batch has failed, and cleared on the next success. Destination URLs, headers, credentials, response bodies, and internal exception text are never included. Nor is your drain URL written to Hedra's own logs, since it may carry authentication in its query string. retryable describes the condition, not what Hedra did: every failed batch is requeued until the drain auto-disables, so it answers whether fixing the destination and re-enabling is likely to help. Drains that last failed before this field became structured report UNKNOWN.
Why the drain is off (consecutive_failures for auto-disable, disabled_by_user); null while enabled.
The API key that last changed the config.