# EXPOSURE_TICKET_EXPIRED

- Surface: API
- HTTP status: 410
- Details: `{ exposureId: string, issuedAt: string }`

## Cause

The Exposure Ticket's `issued_at` is older than the 24-hour redemption TTL.

## Fix

Call `evaluate-all` again. Revalidation replaces stale tickets long before this TTL; an expired ticket means the client held a payload past its redeem window.

## Related

- [EXPOSURE_TICKET_INVALID](https://splitch.dev/docs/error/EXPOSURE_TICKET_INVALID)
- [VALIDATION_ERROR](https://splitch.dev/docs/error/VALIDATION_ERROR)

Source: https://splitch.dev/docs/error/EXPOSURE_TICKET_EXPIRED