---
title: "What changed since a cursor"
method: GET
path: "/v1/changes"
tags: ["changes"]
---

# What changed since a cursor

`GET /v1/changes`

## Request

- Base URL: `https://www.pendingyou.com`
- URL: `https://www.pendingyou.com/v1/changes`
- Auth: OAuth 2 (authorization code, authorization URL `https://www.pendingyou.com/oauth/authorize`, token URL `https://www.pendingyou.com/oauth/token`, scopes: `cards:read`)

Ids and types only, in commit order, kept to the reach. Without `after`: from now. With `wait` (up to 25 seconds) it waits for the first change. Read GET /v1/cards again on start and every 10 minutes too: a card that comes into reach makes no change.

## Query parameters

- `after` string
- `wait` integer
- `limit` integer

## Headers

- `Pending-You-Version` '2026-10-05'
- `Pending-You-Client` string
- `DPoP` string
- `If-None-Match` string

## Response `200`

What changed since a cursor

- ChangeList
  - `changes` Change[], required
    - `type` union, required
      - 'card.created' | 'card.answered' | 'card.changed' | 'card.closed'
      - string
    - `cardId` string, required
    - `at` string, date-time, required
  - `cursor` string, required
  - `more` boolean, required

## Other responses

- `304`: Not modified: If-None-Match named this answer’s ETag.
- `400`: invalid
- `401`: invalid_token, invalid_dpop_proof or use_dpop_nonce (OAuth, with WWW-Authenticate)
- `403`: app_not_available; insufficient_scope (OAuth, with WWW-Authenticate naming the scope)
- `429`: rate_limited
- `500`: server_error
- `503`: unavailable

---

[API](https://skmtc.dev/pendingyou/apis/pending-you-person-api.md) · [All operations](https://skmtc.dev/pendingyou/apis/pending-you-person-api/llms.txt) · [OpenAPI document](https://skmtc.dev/pendingyou/apis/pending-you-person-api/revisions/4c0d997495a6?raw)
