Skip to main content

When to Use This

You’re building a production integration and need to:
  • Retry transient errors (429, 500, 503) with exponential backoff and jitter
  • Distinguish between retryable and non-retryable errors
  • Show appropriate messages to end users (don’t expose internal details)
  • Log errors in a structured way for debugging and support
  • Handle credits (402), auth (401), and validation (400) without retries

Error Categories: Retry vs Don’t Retry


Centralized Error Handler (Python)

A reusable wrapper that parses Mavera errors, decides whether to retry, and surfaces structured data for logging and user messages.

Centralized Error Handler (JavaScript/TypeScript)


REST API Error Handling (Non-SDK)

For Mave, Focus Groups, Video Analysis, etc., you’re using raw HTTP. Parse the JSON error body and branch on status code.

Structured Logging for Support

When contacting support, include structured error data. Never log full API keys — only the prefix (e.g. mvra_live_abcd...).

Circuit Breaker (Advanced)

For high-volume systems, consider a circuit breaker: after N consecutive failures, stop calling the API for a cooldown period to avoid cascading failures.

See Also

Error Handling Guide

Error format, status codes, and error types

Rate Limits

Rate limit headers and Retry-After

Credits

Handling 402 and credit exhaustion

Rate Limits in Production

Proactive throttling and queuing