List Courses

List course generation requests with optional filtering and pagination.

GET /v1/platform/courses

Returns a paginated list of course generation requests for the authenticated workspace.

Query Parameters

ParameterTypeDefaultDescription
statusstring-Filter by status: PENDING, PROCESSING, COMPLETED, or FAILED
limitnumber20Number of results per page (1-100)
offsetnumber0Number of results to skip

Example Request

curl "https://api.tutorflow.io/v1/platform/courses?status=COMPLETED&limit=10" \
  -H "Authorization: Bearer tf_platform_..."

Response

FieldTypeDescription
itemsarrayArray of course request objects
totalnumberTotal number of matching records

Each item in the items array contains a subset of the full course response fields: id, status, courseId, title, description, level, language, subject, slug, tier, mode, hasQuiz, hasPractice, lessonCount, priceSnapshot, previewUrl, publicUrl, isTerminal, createdAt, and completedAt. List items do not include chapters or lessons — call GET /v1/platform/courses/:id to retrieve the full curriculum.

The list-mode previewUrl points at the share-token landing page (/{locale}/platform/courses/{shareToken}), which auto-resolves the latest edit token and redirects into the editor. Single-course endpoints return a direct edit link instead. See Create Course.

Example Response

{
  "items": [
    {
      "id": "a1c2d3e4-f5g6-7h8i-9j0k-l1m2n3o4p5q6",
      "status": "COMPLETED",
      "courseId": "c7d8e9f0-1a2b-3c4d-5e6f-7g8h9i0j1k2l",
      "title": "Python for Beginners",
      "description": "A beginner-friendly Python course.",
      "level": "beginner",
      "language": "en",
      "subject": null,
      "slug": "python-for-beginners-2e5ad6",
      "tier": "standard",
      "mode": "sync",
      "hasQuiz": true,
      "hasPractice": true,
      "lessonCount": 6,
      "priceSnapshot": {
        "category": "course",
        "catalogKey": "course.standard",
        "tier": "standard",
        "amountUsd": 0.19,
        "unit": "course",
        "currency": "USD",
        "source": "platform_pricing_catalog_v1"
      },
      "previewUrl": "https://tutorflow.io/en/platform/courses/b018172542f9...",
      "publicUrl": "https://tutorflow.io/en/platform/courses/b018172542f9.../lessons/1",
      "isTerminal": true,
      "createdAt": "2026-03-24T12:00:00.000Z",
      "completedAt": "2026-03-24T12:00:15.000Z"
    }
  ],
  "total": 1
}