---
title: "409 Idempotency key reuse"
description: "You used a key QuotaStack has seen before, with a different body. Nothing changed."
---

# 409 Idempotency key reuse

`https://api.quotastack.io/errors/idempotency-key-reuse`

You used a key QuotaStack has seen before, with a different body. Nothing changed.

## Why it happened

- A key was reused for a second, different charge. A fixed string such as `consume` does this.
- The consume call spotted the repeat a day later, once the saved reply had gone.

## How to fix it

1. Give every different request its own key. Build it from the business event, such as `consume:{message_id}`.
2. Send the exact same body when you mean a retry. QuotaStack then replays the first reply.
3. The same clash inside 24 hours comes back as `conflict` instead. Two pages, one failure.

### Example response 409

```json
{
  "type": "https://api.quotastack.io/errors/idempotency-key-reuse",
  "title": "Conflict",
  "status": 409,
  "detail": "Idempotency-Key has already been used with a different request body."
}
```

## Which calls return this

- [`POST /v1/entitlements/consume`](/docs/api/entitlements#consumeEntitlement)

## See also

- [Idempotency](/docs/concepts/idempotency)
- [Conflict](/docs/api/errors/conflict)
