# API common rules

This section covers client practices shared by Genesis Model API and Product API. It does not replace the authentication, parameter, and response reference for either API.

Before calling an API, identify the service endpoint and environment, configure its authentication and workspace scope, choose the correct request and response parser, and implement pagination, asynchronous-task polling, idempotency, error handling, and bounded retries as required.

```{toctree}
:hidden:
:maxdepth: 1

Service endpoints and environments <service-endpoints-environments>
Authentication <authentication>
Request and response formats <request-response-formats>
Pagination, asynchronous tasks, and idempotency <pagination-async-idempotency>
Status and error codes <status-error-codes>
Rate limits and retries <rate-limits-retries>
Versions and compatibility <versions-compatibility>
```
