AI agent instructions
AI agent instructions
429 both for rate-window exhaustion and for maximum-active-resource limits. See the API rate-limit reference for the X-Error-Class values that distinguish them.
Identify the limit
A PythonNotteAPIError exposes status_code and the parsed response body in error. It does not expose the response headers. If your integration needs X-Error-Class, use an HTTP client that preserves the response headers instead of parsing message text.
For NotteApiMaxActiveResourcesError, stop resources you no longer need or reduce concurrency. Retrying without releasing resources does not address the limit.
For NotteApiRateLimitExceededError, use a bounded number of retries with exponential backoff and jitter. These 429 responses do not include Retry-After; the API uses that header for 529 capacity responses.
Retry only the rejected operation
Do not wrap an entire automation in a retry loop. Repeating navigation, form submission, or a Function invocation can duplicate work that already succeeded. Retry only when you know the rejected operation is safe to repeat, and let the final exception reach your caller after the retry budget is exhausted. The SDK already retries selected transient transport and capacity failures. See NotteClient configuration formax_retries; avoid stacking another unrestricted retry loop around it.