ThrustLab

Idempotency

Every mutating request to /v1/ (POST, PATCH, DELETE) accepts an Idempotency-Key header. Replays of the same key within 24 hours return the original response; the side effect happens at most once.

The official Python SDK auto-generates a UUID v4 idempotency key on every mutating request. To override (e.g. when retrying from your own job queue):

client.simulations.create(
  project_id="proj_xxx",
  motor="comp_motor_xxx",
  propeller="comp_prop_xxx",
  battery="comp_batt_xxx",
  idempotency_key="job-42-attempt-3",
)

If the same key is replayed with a different request body, the API returns HTTP 409 with type idempotency_error and code idempotency_key_reused_with_different_body. Choose keys that uniquely identify the logical operation.

Keys longer than 255 characters are rejected with HTTP 400 and code idempotency_key_too_long.

We use cookies and analytics tools to understand how you use ThrustLab and improve the experience. Privacy Policy

Idempotency · ThrustLab API