Mixpeek returns a consistent JSON error envelope for API errors and structured codes for WebSocket failures. This guide shows common error types, how to diagnose them, and recommended fixes.
Canonical error envelope
success
: always false on errorsstatus
: HTTP status codeerror.type
: stable, machine‑readable error classerror.details
: optional context for debugging
Common API errors
400 BadRequestError
Malformed input, unsupported parameters, invalid state transitions
422 ValidationError
Pydantic validation failed; check field names and types
404 NotFoundError
Resource or route not found (IDs, names, or paths)
409 AlreadyExistsError
Unique constraint conflict (e.g., duplicate names per namespace)
429 TooManyRequestsError
Rate limit exceeded; back off and retry later
403 UnauthorizedError
Missing/invalid permissions, tier/credit checks, or auth failures
500 InternalServerError
Unexpected server error; retry, then contact support if persistent
503 InferenceServiceUnavailableError
Inference backend unavailable; retry with backoff or failover
Domain‑specific errors
- ProcessingError · FeatureExtractionError · SchemaValidationError
- StorageError · S3StorageError
- QdrantError · MongoDBError
- NotEnabledError · NotImplementedError · UnavailableError
- RaySubmissionError · TimeoutError (408)
message
and may include details
to pinpoint the failing phase (extraction, storage, database, engine dispatch).
WebSocket errors
- 4001: Authentication failure
- 4004: Referenced task not found/expired
- 4000: Generic internal WebSocket error
Quick diagnosis
1
Check headers
Ensure
Authorization
and X-Namespace
are set where required2
Validate inputs
Compare body against API reference schemas; fix types/paths
3
Confirm resource IDs
Verify namespace, collection/retriever/taxonomy IDs or names
4
Review limits
For 429, see rate limits and backoff strategies
5
Inspect logs
Correlate request IDs across API/Engine; check recent exceptions
Examples
Validation error (422)
Rate limit exceeded (429)
Not found (404)
Resolution tips
- 400/422: Recheck body shape and field paths; align with OpenAPI
- 403: Confirm API key permissions and account tier/credits
- 404: Verify identifiers and namespace context; ensure resources exist
- 408/429: Exponential backoff and retries; reduce request rate/size
- 5xx: Retry with jitter; if persistent, capture request ID and contact support