Typed handling
Clients branch on HTTP status,
code, and fieldErrors, not free-form
strings.Traceable failures
requestId stays with the failure so beta users and operators can debug
the same event.Error envelope
Errors use:Problem details base fields
Problem details base fields
type, title, status, detail, and instance when useful.AlphaEngine extensions
AlphaEngine extensions
code, family, requestId, and fieldErrors when relevant.Validation failures
Public request bodies are strict in v1 unless a field is explicitly modeled as an open record. Unsupported top-level or nested request fields return400 with:
Validation failures use
code = REQUEST_VALIDATION_FAILED.fieldErrors to point users to invalid or unsupported fields.
Client rule
Clients should never parse arbitrary strings for control flow.Status
Use the HTTP status class for broad handling.
Code
Use
code for stable AlphaEngine-specific branching.Field errors
Use
fieldErrors to highlight invalid request fields.Request id
Keep
requestId in client logs and support messages.Common statuses
400 request validation failed
400 request validation failed
The request shape, field value, or unsupported property violated the public
v1 contract.
401 missing or invalid API key
401 missing or invalid API key
The request did not include a usable
x-api-key value.403 inactive key or insufficient scope
403 inactive key or insufficient scope
The key exists but is inactive or does not carry the scope required for the
route.
429 compute or concurrency limit rejected
429 compute or concurrency limit rejected
The key exceeded its compute-unit budget or in-flight request cap.
503 auth or upstream unavailable
503 auth or upstream unavailable
Related pages
Authentication
Scopes, compute budget, and rate-limit behavior.
API overview
The implemented public route surface.
