---
title: "POST /api/v1/user/quests/{quest_id}/claim"
method: POST
path: "/api/v1/user/quests/{quest_id}/claim"
tags: ["User"]
---

# POST /api/v1/user/quests/{quest_id}/claim

`POST /api/v1/user/quests/{quest_id}/claim`

## Request

- Base URL: `https://api.ekiden.fi`
- URL: `https://api.ekiden.fi/api/v1/user/quests/{quest_id}/claim`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/ekidenfi/apis/ekiden-gateway/docs/api/v1/user/quests/:quest_id/claim/post.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `quest_id` string, required

## Response `200`

Quest claimed

- ClaimQuestResponse: `POST /user/quests/{quest_id}/claim` response (spec §10): the credited reward. Repeat/inactive/ineligible claims are 400s, not bodies.
  - `day` string, nullable: UTC day the claim is scoped to (daily quests only).
  - `quest_id` string, required
  - `reward_xp` string, required: XP credited by this claim.

## Other responses

- `400`: Repeat, inactive, or ineligible claim
- `404`: Unknown quest

## Changes

- **2026-09-10** `fad9eecaba2e`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ekidenfi/apis/ekiden-gateway/changes/api/v1/user/quests/:quest_id/claim/post.md)

---

[API](https://skmtc.dev/ekidenfi/apis/ekiden-gateway.md) - [All operations](https://skmtc.dev/ekidenfi/apis/ekiden-gateway/llms.txt) - [OpenAPI document](https://skmtc.dev/ekidenfi/apis/ekiden-gateway/revisions/fad9eecaba2e?raw)
