---
title: "Review a flashcard."
method: POST
path: "/v1/study/review"
---

# Review a flashcard.

`POST /v1/study/review`

## Request

- Base URL: `https://api.cortexplus.io`
- URL: `https://api.cortexplus.io/v1/study/review`
- Auth: HTTP bearer

Apply an SM-2 grade to a flashcard and return it with the new schedule. Returns 404 when the card does not exist. Requires the cortex.write scope.

## Request body

- object
  - `cardId` string, required: Flashcard memory id.
  - `grade` 'again' | 'hard' | 'good' | 'easy', required

## Response `200`

Successful response.

- object
  - `card` object, required: Full node as returned by the CortexPlus backend.
    - `relevance` object, nullable: Computed relevance (not stored): score 0-100, level, reason codes. null when no scorer applies.
      - `score` integer
      - `level` 'low' | 'normal' | 'high' | 'critical'
      - `reasons` string[]
      - `snoozedUntil` string, date, nullable
      - `aiDelta` integer

## Other responses

- `default`: Request failed.

---

[API](https://skmtc.dev/cortexplus/apis/cortexplus-rest-api.md) · [All operations](https://skmtc.dev/cortexplus/apis/cortexplus-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cortexplus/apis/cortexplus-rest-api/revisions/2d04f1593663?raw)
