User actively consents to data collection and processing of specific fields. Publishes consent grant event for auditing. Reference: GDPR Art 7 (Conditions for consent).
Errors is a list of field-level validation errors (extension field)
Follows Web API standard practices, each error contains field name and error message
i18n_args
object
No
I18nArgs are internationalization parameters
Used to dynamically fill translation templates
i18n_key
string
No
I18nKey is the internationalization key
Used for client-side localization of error messages
Example: "error.user_not_found"
instance
string
No
Instance is the specific URI reference where the problem occurred
Usually the request URL, may include query parameters
Example: "/api/v1/users?limit=invalid"
request_id
string
No
RequestID is the unique request identifier
Used for log correlation and issue tracking
Example: "req_550e8400-e29b-41d4-a716-446655440000"
retry_after
integer
No
RetryAfter is used for 429 Too Many Requests responses
Indicates how many seconds the client should wait before retrying (RFC 6585)
service
string
No
Service is the service name
Used in microservice architectures to locate the error source
Example: "auth-service"
span_id
string
No
SpanID is the current span identifier
Used to precisely locate the current node in a distributed trace
status
integer
No
Status is the HTTP status code generated
Used by clients to distinguish problem types, does not change with Accept-Language
Example: 400, 401, 403, 404, 500
timestamp
string
No
Timestamp is the error occurrence time
ISO 8601 format
Example: "2026-04-03T12:00:00Z"
title
string
No
Title is a short, human-readable summary of the problem type
The same Type should always have the same Title (does not change per instance)
Example: "Invalid Request Parameters"
trace_id
string
No
TraceID is the distributed tracing identifier
Follows W3C Trace Context standard
Example: "00-0af7651916cd43dd8448eb211c80319c-b7ad6b7169203331-01"
type
string
No
Type is a URI reference that identifies the problem type
When dereferenced, should provide human-readable documentation
Example: "https://api.example.com/errors/invalid-request"