---
title: "Api Learning Daily Practice Streak"
method: GET
path: "/api/learning/daily-practice/streak"
tags: ["Education"]
---

# Api Learning Daily Practice Streak

`GET /api/learning/daily-practice/streak`

## Request

- Base URL: `https://www.oxfordledge.com` (the document declares no server; this is the origin it was published from)
- URL: `https://www.oxfordledge.com/api/learning/daily-practice/streak`
- Auth: none declared

Return current streak + longest streak + 7-day ring for the
dashboard panel. Called on every panel mount to show status
without submitting a practice session.

## Response `200`

Successful Response

- DailyPracticeStreakResponse: `GET /api/learning/daily-practice/streak` — read-only streak snapshot for the dashboard panel mount. Includes the Thaler- framed motivation message ("Strong week — 4 of 7 days. You're building the habit.") so the FE doesn't reimplement the copy.
  - `current_streak` integer, required: Current daily streak count.
  - `longest_streak` integer, required: All-time longest streak.
  - `last_practice_date` string, required: ISO date of last practice; '' when never practiced.
  - `seven_day_ring` SevenDayRingDay[], required: Rolling 7-day practiced-vs-not ring.
    - `date` string, required: ISO date (YYYY-MM-DD).
    - `practiced` boolean, required: True if the user logged ≥1 question that day.
  - `days_this_week` integer, required: Count of practiced days in the 7-day ring.
  - `message` string, required: Thaler-framed encouragement copy (server-supplied).

---

[API](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api.md) · [All operations](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api/llms.txt) · [OpenAPI document](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api/revisions/e832a1260f0b?raw)
