---
title: "Check Streaks"
method: POST
path: "/api/streaks/check"
tags: ["Streaks"]
---

# Check Streaks

`POST /api/streaks/check`

## Request

- Base URL: `https://api.earmarkiq.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.earmarkiq.app/api/streaks/check`
- Auth: HTTP bearer

Check and update the user's streak for any unchecked day(s).
Call this on app open. Handles multi-day gaps.

## Response `200`

Successful Response

- StreakCheckResponse
  - `current_streak` integer, required
  - `longest_streak` integer, required
  - `total_streak_days` integer, required
  - `streak_start_date` string, nullable, required
  - `last_checked_date` string, nullable, required
  - `next_milestone` integer, nullable, required
  - `next_milestone_xp` integer, nullable, required
  - `days_to_milestone` integer, nullable, required
  - `xp_awarded` XPAward[], required
    - `milestone` integer, required
    - `xp` integer, required

---

[API](https://skmtc.dev/earmarkiq/apis/earmark-api.md) · [All operations](https://skmtc.dev/earmarkiq/apis/earmark-api/llms.txt) · [OpenAPI document](https://skmtc.dev/earmarkiq/apis/earmark-api/revisions/4a2c41907105?raw)
