Partner API: Errors
All API errors return JSON, including requests without an Accept header. Follow docs_url to the matching code below.
{"error":{"code":"key_missing","message":"An Authorization bearer key is required.","docs_url":"https://scorsync.com/developers/partner-api/errors#key_missing"}}
Validation errors also include error.fields, a map of field names to message arrays. Rate-limit errors preserve Retry-After and X-RateLimit-* headers.
| Code | HTTP | Action |
|---|---|---|
key_missing | 401 | Send the Authorization: Bearer header. |
key_invalid | 401 | Check the exact key and Bearer header format; partner keys are required. |
key_revoked | 401 | The key is revoked or expired, or its owner was deleted. Create a replacement key if eligible. |
key_in_query | 400 | Remove key, api_key and token from the query string. Use the Authorization header. |
project_pending | 403 | Wait for admin approval. |
project_suspended | 403 | The project was suspended, rejected or revoked. Contact support. |
subscription_inactive | 403 | Renew the project owner’s entitlement; allow up to five minutes for access to resume. |
scope_missing | 403 | Use a key with the required scope. Request a project scope review if needed. |
meet_not_allowed | 403 | Choose a meet allowed by the key. |
meet_context_required | 400 | Add ?meet=ID_OR_SLUG for locked-key athlete requests. |
rate_limited | 429 | Wait for Retry-After seconds, then retry with backoff. |
cursor_expired | 410 | Reload the snapshot and restart incremental polling; see the live data guide. |
socket_limit | 429 | Close unused sockets and retry with backoff. Reuse one socket for multiple meet subscriptions. |
not_found | 404 | Check the identifier. Private, hidden, future-visible and deleted meets are unavailable; locked-key athletes must be on a non-scratched start list. |
method_not_allowed | 405 | Use GET for snapshot endpoints. |
validation_failed | 422 | Correct the query parameters listed in error.fields. |
partner_api_disabled | 503 | Partner access is temporarily disabled. Pause requests and check with support. |
server_error | 500 | Retry with backoff. Contact support if the failure persists; do not send your key. |