# List quick wins

`GET https://api.coach-platform.com/api/public/quick-wins`

List automatically detected positive moments for your trainees (new personal record, consistency streak, measurement progress, coaching milestone), newest first. Uses cursor pagination: pass the returned nextCursor to fetch the next page.

- Resource: Monitoring
- Authentication: API key in the `Authorization: Bearer cp_live_...` header
- HTML version: https://www.coach-platform.com/docs/api/reference/get-quick-wins
- OpenAPI spec: https://www.coach-platform.com/openapi.json

## Query parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `cursor` | string | No | Cursor from the previous response (nextCursor). |
| `limit` | integer | No | Items per page. Defaults to 15. Minimum: `1`. Maximum: `100`. |
| `filter` | string | No | Return wins still awaiting action, or ones already handled. Defaults to active. Allowed values: `active`, `handled`. |
| `search` | string | No | Search the trainee name. |

## Responses

| Status | Description |
|---|---|
| `200` OK |  |

### 200 OK

Content type: `application/json`

| Field | Type | Description |
|---|---|---|
| `data` | object[] |   |
| `data[].id` | string |   |
| `data[].trainee` | object |   |
| `data[].trainee.id` | string |   |
| `data[].trainee.fullName` | string |   |
| `data[].category` | string | Win category, e.g. personalRecord, streak, measurement. |
| `data[].title` | string | Short human-readable summary of the win. |
| `data[].description` | string |   |
| `data[].status` | string | active or handled. |
| `data[].createdAt` | string<date-time> |   |
| `nextCursor` | string \| null | Pass as cursor to fetch the next page. Null when there are no more results. |

Example:

```json
{
  "data": [
    {
      "id": "<string>",
      "trainee": {
        "id": "<string>",
        "fullName": "<string>"
      },
      "category": "<string>",
      "title": "<string>",
      "description": "<string>",
      "status": "<string>",
      "createdAt": "<date-time>"
    }
  ],
  "nextCursor": "<string>"
}
```

## Examples

### cURL

```bash
curl --request GET \
  --url 'https://api.coach-platform.com/api/public/quick-wins' \
  --header 'Authorization: Bearer cp_live_...'
```

### JavaScript (fetch)

```js
const response = await fetch('https://api.coach-platform.com/api/public/quick-wins', {
  method: 'GET',
  headers: {
    Authorization: 'Bearer cp_live_...',
  },
});

const data = await response.json();
```

## Related endpoints

- [Get the monitoring overview](https://www.coach-platform.com/docs/api/reference/get-monitoring-overview/index.md): `GET /api/public/monitoring/overview`. Monitoring overview: counts of trainees inactive in training, nutrition, water and weight, plus adherence graph data.
- [List trainees with no recent training](https://www.coach-platform.com/docs/api/reference/get-monitoring-training/index.md): `GET /api/public/monitoring/training`. Trainees who have not logged training within the inactivity window.
- [List trainees below their step target](https://www.coach-platform.com/docs/api/reference/get-monitoring-steps/index.md): `GET /api/public/monitoring/steps`. Trainees who logged fewer steps than their daily step target on the target day (default today).
- [List trainees with no recent nutrition logging](https://www.coach-platform.com/docs/api/reference/get-monitoring-nutrition/index.md): `GET /api/public/monitoring/nutrition`. Trainees who have not logged nutrition within the inactivity window.
- [List trainees who logged nutrition](https://www.coach-platform.com/docs/api/reference/get-monitoring-nutrition-logged-today/index.md): `GET /api/public/monitoring/nutrition/logged-today`. Trainees who logged nutrition on the target day (default today), with logged calories and protein against target.
- [List trainees who did not log nutrition](https://www.coach-platform.com/docs/api/reference/get-monitoring-nutrition-not-logged/index.md): `GET /api/public/monitoring/nutrition/not-logged`. Trainees who did NOT log nutrition on the target day (default today).
- [Get weight monitoring](https://www.coach-platform.com/docs/api/reference/get-monitoring-weight/index.md): `GET /api/public/monitoring/weight`. Weight monitoring: weight-inactive trainees, significant weight changes vs an aged baseline (with daysBetweenWeights), trend vs goal, plateaus, and broken weekly weigh-in streaks (streakBroken).
- [List trainees with no recent water logging](https://www.coach-platform.com/docs/api/reference/get-monitoring-water/index.md): `GET /api/public/monitoring/water`. Trainees who have not logged water within the inactivity window.
- [List weekly check-ins for monitoring](https://www.coach-platform.com/docs/api/reference/get-monitoring-updates/index.md): `GET /api/public/monitoring/updates`. Weekly trainee updates (check-ins) for monitoring, filterable by form/label/gender.
- [List incomplete check-ins](https://www.coach-platform.com/docs/api/reference/get-monitoring-incomplete-updates/index.md): `GET /api/public/monitoring/incomplete-updates`. Updates submitted with missing measurements or photos.
- [List stalled exercises](https://www.coach-platform.com/docs/api/reference/get-monitoring-stalled-exercises/index.md): `GET /api/public/monitoring/stalled-exercises`. Exercises where trainees stopped progressing (no improvement over the configured window).
- [Mark incomplete check-ins as read](https://www.coach-platform.com/docs/api/reference/patch-monitoring-incomplete-updates-read/index.md): `PATCH /api/public/monitoring/incomplete-updates/read`. Mark a set of incomplete updates as read.
- [Dismiss a stalled exercise](https://www.coach-platform.com/docs/api/reference/post-monitoring-stalled-exercises-dismiss/index.md): `POST /api/public/monitoring/stalled-exercises/dismiss`. Dismiss a single stalled exercise for a trainee.
- [Dismiss stalled exercises in bulk](https://www.coach-platform.com/docs/api/reference/post-monitoring-stalled-exercises-dismiss-all/index.md): `POST /api/public/monitoring/stalled-exercises/dismiss-all`. Dismiss many stalled exercises at once.
- [Undismiss a stalled exercise](https://www.coach-platform.com/docs/api/reference/post-monitoring-stalled-exercises-undismiss/index.md): `POST /api/public/monitoring/stalled-exercises/undismiss`. Undismiss a single stalled exercise for a trainee.
- [Undismiss stalled exercises in bulk](https://www.coach-platform.com/docs/api/reference/post-monitoring-stalled-exercises-undismiss-all/index.md): `POST /api/public/monitoring/stalled-exercises/undismiss-all`. Undismiss many stalled exercises at once.
- [Mark a stalled exercise as handled](https://www.coach-platform.com/docs/api/reference/post-monitoring-stalled-exercises-handle/index.md): `POST /api/public/monitoring/stalled-exercises/handle`. Mark a single stalled exercise as handled.
- [Mark stalled exercises as handled in bulk](https://www.coach-platform.com/docs/api/reference/post-monitoring-stalled-exercises-handle-all/index.md): `POST /api/public/monitoring/stalled-exercises/handle-all`. Mark many stalled exercises as handled at once.
- Previous: [Mark stalled exercises as handled in bulk](https://www.coach-platform.com/docs/api/reference/post-monitoring-stalled-exercises-handle-all/index.md): `POST /api/public/monitoring/stalled-exercises/handle-all`. Mark many stalled exercises as handled at once.
- Next: [List journeys](https://www.coach-platform.com/docs/api/reference/get-journeys/index.md): `GET /api/public/journeys`. List customer journeys (automation templates) with search and pagination, including how many trainees are actively enrolled in each.
