Developer Docs
Matching Errors & Limits
Troubleshoot matching API failures and understand quotas, 429 behavior, and plan limits for Professional and Enterprise.
Production integrations fail in predictable ways. This page explains limits, error codes, and how to recover safely without creating noisy retry storms.
Rate limits and quotas
- Minute-level protection: 10 requests/minute
- Professional plan: 30 calls/day
- Enterprise plan: 500 calls/day
Status code reference
Error matrix
| Status | Likely cause | How to fix | Retry? |
|---|---|---|---|
| 400 | Malformed request body or invalid endpoint usage context | Validate payload assembly and endpoint path | no |
| 401 | Missing or invalid bearer token | Fix auth header and token source | no |
| 403 | Tier restriction or policy gate | Use eligible account tier and org context | no |
| 422 | Schema validation failed | Correct fields/ranges/types before re-sending | no |
| 429 | Minute-level throttle or daily quota exceeded | Apply backoff and queue lower priority jobs | depends |
| 500 | Unexpected backend failure | Retry with backoff and capture diagnostics | yes |
Retry and queueing strategy
if (status === 429 || status >= 500) {
retryWithExponentialBackoff();
} else {
failFastAndFixPayloadOrAuth();
}Daily quota handling
- Prioritize urgent client-facing jobs first
- Queue non-urgent matching requests
- Surface clear user messaging on quota exhaustion
Avoid retry storms
Never blindly retry all failures. Treat 4xx as corrective actions and 429/5xx as controlled retry paths.
Production reliability checklist
- Log request IDs and response status codes
- Track 429 volume over time
- Implement backoff with jitter for retriable failures
- Add quota-aware queueing in automation workflows