400 | The request conflicts with the resource’s current state. | Correct the action or refresh the resource before retrying. |
401 | API key or bearer token is missing, invalid, expired, or mismatched. | Re-authenticate the member and verify both credentials belong to the same church. |
403 | A permission, resource context, or church plan prevents the action. | Inspect the error code and plan metadata before asking an administrator to review access. |
404 | The resource does not exist in the authenticated church. | Refresh local state and stop retrying the same identifier. |
422 | One or more inputs failed validation. | Display safe field-level validation messages. |
429 | The rate limit was exceeded. | Back off and retry after the server’s retry window. |
500 | An unexpected server error occurred. | Retry read-only requests with bounded exponential backoff; avoid automatically repeating mutations. |