> ## Documentation Index
> Fetch the complete documentation index at: https://docs.shakesco.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Has Claimed Event

> Check whether a customer has already claimed a specific event

<span style={{display:"none"}}>For the complete documentation index, see [llms.txt](/llms.txt).</span>

Use this before calling [`/claim-tokens`](/api-reference/tokens/rewards/claim-tokens) for one-time events (events configured with `should_not_claim_twice: true`). Lets you avoid the `409 Event already claimed` response.

### Query Parameters

<ParamField query="customer_ref" type="string" required>
  Your unique identifier for this customer
</ParamField>

<ParamField query="event_name" type="string" required>
  The event identifier you want to check
</ParamField>

### Response

<ResponseField name="has_claimed" type="boolean">
  `true` if the customer has already claimed this event
</ResponseField>

```javascript theme={null}
const res = await fetch(
  "https://tokens.shakesco.com/has-claimed-event?customer_ref=customer-123&event_name=signup",
  { headers: { Authorization: `Bearer ${API_KEY}` } }
);
const { has_claimed } = await res.json();
```

<ResponseExample>
  ```json 200 OK theme={null}
  { "has_claimed": true }
  ```
</ResponseExample>
