# stale_snapshot

The draft changed since it was last read. What causes the BioFlow API's stale_snapshot error (HTTP 409) and how to fix it.

HTTP 409 · `application/problem+json` · The draft changed since it was last read.

## What causes it

- The draft changed between your read and your write — the `expected_updated_at` you sent no longer matches (optimistic concurrency).

## How to fix it

- Re-read the resource, take the fresh `updated_at`, re-apply your change, and retry with the new value.

## Example response body

```json
{
  "type": "https://getbioflow.com/docs/api/errors/stale-snapshot",
  "title": "The draft changed since it was last read",
  "status": 409,
  "instance": "urn:request:req_01abc",
  "code": "stale_snapshot",
  "request_id": "req_01abc"
}
```

Branch on the stable `code` field — `title` and `detail` are for humans and may
change. `type` (`https://getbioflow.com/docs/api/errors/stale-snapshot`) always resolves to this page. Quote
`request_id` when contacting support. Full code registry on the
[API docs hub](/docs/api#errors); the complete surface is in the
[interactive reference](/docs/api-reference).
