Error Codes

Elydora uses structured error responses with consistent error codes. All errors return the following JSON format:

{ "error": { "code": "ERROR_CODE", "message": "Human-readable description." } }

All Error Codes (14)

INVALID_SIGNATURE400

The Ed25519 signature on the submitted EOR does not match the agent's registered public key. Verify that the correct private key is being used and that the canonical form is computed correctly.

UNKNOWN_AGENT404

The agent_id in the request does not match any registered agent in the organization. Register the agent first via POST /v1/agents/register.

KEY_REVOKED403

The agent's signing key has been permanently revoked. A new agent must be registered with a new key pair. This action is irreversible.

AGENT_FROZEN403

The agent is temporarily frozen and cannot submit operations. Contact a security_admin to unfreeze the agent.

TTL_EXPIRED400

The operation's issued_at timestamp plus ttl_ms has elapsed before the server received the request. Increase the ttl_ms value or reduce submission latency.

REPLAY_DETECTED409

The nonce has already been used by this agent. Each operation must include a unique nonce value.

PREV_HASH_MISMATCH409

The prev_chain_hash does not match the server's expected value for this agent's chain. This usually indicates a concurrency issue or a missed operation.

PAYLOAD_TOO_LARGE413

The operation payload exceeds the maximum allowed size. Reduce the payload size or store large data externally and reference it by hash.

RATE_LIMITED429

The organization has exceeded the request rate limit. Implement exponential backoff and retry after the period indicated in the Retry-After header.

INTERNAL_ERROR500

An unexpected server error occurred. The operation may or may not have been processed. Retry with the same operation_id to ensure idempotency.

UNAUTHORIZED401

The request is missing a valid Authorization header or the JWT token has expired. Obtain a new token via POST /v1/auth/login or POST /v1/auth/refresh.

FORBIDDEN403

The authenticated user does not have the required role to access this endpoint. Check the RBAC documentation for the minimum required role.

NOT_FOUND404

The requested resource does not exist. Verify the ID in the URL path is correct.

VALIDATION_ERROR400

The request body failed schema validation. Check that all required fields are present and correctly typed.