Cosmere TrackerCosmere Tracker
Docs navigation

Cosmere Tracker API Docs

Welcome! This site documents the Cosmere Tracker API and links each endpoint to a focused page.

Base Path

All API endpoints live under:

/api

Quickstart

curl https://www.cosmeretracker.com/api
{
  "characters": "/api/characters",
  "books": "/api/books",
  "worlds": "/api/worlds"
}

Authentication

This API is currently public and does not require authentication.

Conventions

  • All URLs are returned as relative paths (e.g. /api/characters/3d2586bc-07b6-5c5f-9edb-00a66e0c68aa).
  • Timestamps are ISO-8601 strings when present (e.g. 2026-02-19T12:34:56Z).
  • Use include=relations on list endpoints to request related resource URLs.

Response Shape

Collection endpoints return a paged response:

{
  "count": null,
  "next": "/api/characters?pageSize=10&cursor=...",
  "previous": null,
  "results": []
}
  • count is not calculated yet (always null).
  • next is a relative URL when more results are available.
  • previous is always null for forward-only paging.

Pagination

Use cursor-based pagination for collection endpoints:

  • Start with a request that omits cursor.
  • If next is provided, pass its cursor value on the next request.

Example:

GET /api/characters?pageSize=10
GET /api/characters?pageSize=10&cursor=...

Errors

Errors are returned as RFC 7807 problem details.

{
  "type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
  "title": "One or more validation errors occurred.",
  "status": 400,
  "detail": "Please refer to the errors property for additional details.",
  "errors": {
    "cursor": ["Invalid cursor."],
    "sort": ["Invalid sort option."]
  }
}

Common status codes:

  • 400 Bad Request: invalid query parameters.
  • 404 Not Found: resource does not exist.

Contents

EndpointDocsNotes
GET /apiAPI IndexEntry point for resource URLs.
GET /api/charactersCharactersList + get-by-id.
GET /api/booksBooksList + get-by-id.
GET /api/worldsWorldsList + get-by-id.

Coming Soon

More resource endpoints as they come online.