MemoryOS returns structured JSON errors:
HTTP status codes
Error codes
Current public and semi-public API surfaces emit the following codes.
Current releases do not emit VAL_* codes. Validation failures are returned as REQ_422.
Consent and universal memory note
Memory Passport and Universal Memory are frozen in private beta and disabled by default. Their entry points return 404 FEATURE_404 with memory_passport_not_available unless explicitly enabled.
Some Memory Passport flows are intentionally not error-driven:
POST /v1/universal/memories/retrieve returns an empty list with permission_status: "no_grant" when a user has not granted this agent access
- revocation therefore looks like a clean empty retrieve result, not a
403
This behavior is deliberate so an agent cannot use error differences to infer more than the user granted.