Skip to main content
Infino Cloud activates databases on demand and adds capacity as load grows. You don’t run or size anything yourself, and idle databases scale down so you don’t pay for capacity you aren’t using. The one thing to know as a client: the first request to a database that is idle or brand-new can briefly return a transient error while that database starts up. This is expected, and it clears on a retry. This page explains which errors are transient, how to retry them, and which errors are not worth retrying.

Transient errors: retry these

A transient error means the request did not run. It is always safe to retry, including writes. No data was appended, updated, or deleted.
HTTP 503 (Service Unavailable). The database’s workers are still starting. You will see this on the first request after an idle period (a cold start), on the first request right after create_database, and occasionally while the service is adding capacity under a burst. The response carries a Retry-After header telling you how many seconds to wait. A cold start typically clears within a few seconds, on your first retry. Network and timeout errors. A dropped connection or a timeout may mean the request never reached the service. Retrying with a short backoff is safe.

How to retry

If you use the SDK, wrap the call in a short retry with exponential backoff. The SDK does not retry automatically, and it does not surface the Retry-After value, so use your own backoff. A transient unavailability surfaces as an error whose message contains server returned 503, so you can retry only that and let everything else propagate.
If you call the REST API directly, read the Retry-After response header on a 503, wait that many seconds, then resend the same request. See the API Reference for each endpoint’s request shape; every data endpoint documents its 503 as transient.

Errors you should not retry

These will not clear on a repeat. Fix the request instead. The table shows how each surfaces through the SDK. There is one conditional case. A write can return 412 (Conflict) when a concurrent write to the same table wins the race (surfaced as ConflictError in Python). That is not a transient availability error: re-read the current state and reissue the change only if you still want it, rather than blindly retrying.
The REST API Reference is generated from the live service spec, so each endpoint lists its exact response codes, including the transient 503.

See also

  • Quickstart — connect to Infino Cloud and run your first search.
  • Authentication — API keys and the Authorization header.
  • FAQ — other common questions about the hosted service.
Last modified on August 18, 2026