# Status and error codes

Use the HTTP status together with the endpoint's response body to decide the next action. A successful HTTP status does not establish that an asynchronous resource has reached its terminal state.

| Status | Check first |
| --- | --- |
| `400` | Request fields, incompatible credentials, and endpoint-specific validation. |
| `401` | Credential value, header name, and current environment. |
| `403` | Model visibility, workspace membership, role, and resource permissions. |
| `404` | Complete base URL, product prefix, and resource ID from the current environment. |
| `429` / `5xx` | Bounded retry suitability and diagnostic context. |
