Docs

List stable-id migrations

Append-only ledger of merged and deleted card ids, ordered by `(performed_at, old_id)`. A merge names its replacement; a delete has `new_id: null`. Responses use `no-store` so an edge cache cannot delay newly recorded migrations.

Append-only ledger of merged and deleted card ids, ordered by (performed_at, old_id). A merge names its replacement; a delete has new_id: null. Responses use no-store so an edge cache cannot delay newly recorded migrations.

Authorization

ApiKey
headerAuthorizationBearer <rar_live_*>

Send Authorization: Bearer rar_live_..., or use rar_test_... for a test key. Both lanes currently read the same catalogue. Without a key you stay in the anonymous lane: 30 requests/minute and 1,000/day, against 60/minute per key and 2,000/day per organization with one on the Free plan. Sending a key that is malformed, revoked or unknown is a 401; sending none is not.

Query Parameters

cursor?string

Opaque cursor returned in next_cursor. Do not build it by hand.

Lengthlength <= 512
limit?integer

Items per page. Safe integers are clamped to 1-100, not rejected.

Range-9007199254740991 <= value <= 9007199254740991
Default20

Response Body

A page of id migrations.

application/json
  1. response

An append-only page ordered by (performed_at, old_id).

object*string
data*array<>
has_more*boolean

The only end-of-pagination signal.

next_cursor*|

Checkpoint after the last returned migration, including on the terminal page. It remains unchanged when no newer migration exists. It is null only before the ledger has established a position.

Example Request
cURL
curl -X GET 'https://api.rarity.dev/v1/migrations' \  -A 'my-app/1.0 (you@example.com)'
Example Response
{  "object": "list",  "data": [    {      "old_id": "string",      "performed_at": "2019-08-24T14:15:22Z",      "note": "string",      "strategy": "merge",      "new_id": "string"    }  ],  "has_more": true,  "next_cursor": "string"}