400 | product_required | product is missing | Add product |
400 | unknown_product | product is not a product key | Use a value from whoami |
400 | invalid_parameter | A parameter has an unknown value or the wrong format | Fix the parameter; the message names it |
400 | invalid_cursor | The cursor is malformed, or belongs to a request with different parameters | Resend the original parameters, or drop the cursor |
400 | credentials_in_query | A key was sent in the query string | Send it in a header |
400 | updated_since_out_of_range | updated_since is older than the product’s history window | Run a snapshot without updated_since |
401 | missing_api_key, wrong_key_type, invalid_api_key, revoked_api_key, expired_api_key | The key is missing or not usable | See Authentication |
403 | org_inactive | The organization’s subscription is paused or has ended | Contact the organization’s admin |
403 | invalid_scope | The key’s stored scope can’t be read | Edit the key in the dashboard |
403 | product_not_granted | The key’s scope doesn’t include this product. For /controls and /frameworks, the key lacks the finding types the controls are built from | Edit the key’s scope, or skip the product |
403 | users_not_granted | The key isn’t granted User details, which /users needs | Edit the key’s scope to include User details |
403 | product_not_entitled | The organization’s plan doesn’t include this product, or none of the key’s finding types for it | Skip the product; whoami shows readable: false |
404 | not_found | No such finding or endpoint within the key’s scope | Drop the id from your copy |
409 | cursor_stale | The key’s scope or the organization’s plan changed while paging | Restart without a cursor |
429 | rate_limited | Too many requests. See Rate limits | Wait Retry-After seconds |
500 | internal_error | An unexpected failure | Retry with backoff; contact support with the request_id if it persists |
503 | ledger_initializing | A ledger product’s first history build hasn’t finished | Wait Retry-After seconds; see Ledger products |
503 | gate_unavailable, scope_unavailable | A temporary failure checking the key or loading its scope | Retry after Retry-After seconds, or with backoff if the header is absent |