Idempotency

The transactionId input parameter, a user-provided value that is required for all endpoint requests, is used by Galileo for idempotency. (In this case, "transaction" does not refer to a financial transaction but rather to the request/response pair of an API call.)

For all endpoints but one, the transactionId is a max 60-character string, preferably a UUID. For the Create Adjustment endpoint the transactionId must be a 64-bit integer that is less than 9223372036854775807.

Galileo validates that a transactionId is unique per successful API call. If the request is identical to a previous combination of transactionId + providerId + endpoint, within the last 90 days, the endpoint returns status_code: 24 (Duplicate transaction).

If an API call is unsuccessful, the transactionId can be used again in future attempts. Once successful, the transactionId cannot be used again for 90 days, which prevents duplicate successful API calls.