Local Admin Login
POST/auth/local-admin/login
IP-allowlisted local credential login. On success, sets the same
halo_session cookie a real OIDC login sets -- everything downstream
(require_permission, get_current_user, /auth/me, /auth/logout) treats it
identically, distinguished only by the session's own auth_method.
Request
Responses
- 200
- 400
- 422
- 429
- 500
Successful Response
Response Headers
true when this response was replayed from the idempotency cache for a repeated Idempotency-Key instead of re-executing.
Current tenant quota state (draft-ietf-httpapi-ratelimit-headers structured field): "tenant";r=<remaining>;t=<seconds-to-reset>. Emitted on every response when per-tenant rate limiting is enabled (ARMOR_TENANT_RATE_LIMIT_PER_MIN > 0; off by default).
The quota policy the RateLimit header reports against: "tenant";q=<limit>;w=<window-seconds>.
Request correlation id — present on every response; quote it when reporting an issue. Error bodies carry the same value as correlation_id.
Malformed request body.
Response Headers
Current tenant quota state (draft-ietf-httpapi-ratelimit-headers structured field): "tenant";r=<remaining>;t=<seconds-to-reset>. Emitted on every response when per-tenant rate limiting is enabled (ARMOR_TENANT_RATE_LIMIT_PER_MIN > 0; off by default).
The quota policy the RateLimit header reports against: "tenant";q=<limit>;w=<window-seconds>.
Request correlation id — present on every response; quote it when reporting an issue. Error bodies carry the same value as correlation_id.
Request validation failed.
Response Headers
Current tenant quota state (draft-ietf-httpapi-ratelimit-headers structured field): "tenant";r=<remaining>;t=<seconds-to-reset>. Emitted on every response when per-tenant rate limiting is enabled (ARMOR_TENANT_RATE_LIMIT_PER_MIN > 0; off by default).
The quota policy the RateLimit header reports against: "tenant";q=<limit>;w=<window-seconds>.
Request correlation id — present on every response; quote it when reporting an issue. Error bodies carry the same value as correlation_id.
Rate limit exceeded.
Response Headers
Current tenant quota state (draft-ietf-httpapi-ratelimit-headers structured field): "tenant";r=<remaining>;t=<seconds-to-reset>. Emitted on every response when per-tenant rate limiting is enabled (ARMOR_TENANT_RATE_LIMIT_PER_MIN > 0; off by default).
The quota policy the RateLimit header reports against: "tenant";q=<limit>;w=<window-seconds>.
Seconds to wait before retrying (on 429 responses).
Request correlation id — present on every response; quote it when reporting an issue. Error bodies carry the same value as correlation_id.
Unhandled server error.
Response Headers
Current tenant quota state (draft-ietf-httpapi-ratelimit-headers structured field): "tenant";r=<remaining>;t=<seconds-to-reset>. Emitted on every response when per-tenant rate limiting is enabled (ARMOR_TENANT_RATE_LIMIT_PER_MIN > 0; off by default).
The quota policy the RateLimit header reports against: "tenant";q=<limit>;w=<window-seconds>.
Request correlation id — present on every response; quote it when reporting an issue. Error bodies carry the same value as correlation_id.
Optional comments unlock after a short time on this docs site.
Ask the docs
Tier-scoped answers from this portal corpus (extractive; no external LLM).
Comments
Loading comments…
Suggest an edit
Propose a correction. Staff review every suggestion and open a draft PR; nothing publishes without CI.