Get Course

Retrieve the status and details of a course generation request.

GET /v1/platform/courses/:id

Returns the current status and details of a course generation request. Use this endpoint to poll for completion when using async mode.

Path Parameters

ParameterTypeDescription
idstringThe course request ID returned by the create endpoint

Example Request

curl https://api.tutorflow.io/v1/platform/courses/a1c2d3e4-f5g6-7h8i-9j0k-l1m2n3o4p5q6 \
  -H "Authorization: Bearer tf_platform_..."

Response

Returns the same CourseResDto structure as the create endpoint. See Create Course for the full list of response fields.

When the course generation is still in progress, isTerminal will be false and pollAfterMs will indicate how long to wait before polling again.

Example Response (Completed)

{
  "id": "a1c2d3e4-f5g6-7h8i-9j0k-l1m2n3o4p5q6",
  "status": "COMPLETED",
  "courseId": "c7d8e9f0-1a2b-3c4d-5e6f-7g8h9i0j1k2l",
  "title": "Python for Beginners",
  "editUrl": "https://tutorflow.io/en/platform/courses/edit/51d9b322e680...",
  "previewUrl": "https://tutorflow.io/en/platform/courses/b018172542f9...",
  "chapters": [
    { "title": "Getting Started with Python", "sequence": 1, "lessonCount": 2 },
    { "title": "Control Flow and Functions", "sequence": 2, "lessonCount": 3 }
  ],
  "isTerminal": true,
  "createdAt": "2025-03-24T12:00:00.000Z",
  "completedAt": "2025-03-24T12:00:15.000Z"
}

Example Response (Pending)

{
  "id": "a1c2d3e4-f5g6-7h8i-9j0k-l1m2n3o4p5q6",
  "status": "PROCESSING",
  "isTerminal": false,
  "pollAfterMs": 3000,
  "createdAt": "2025-03-24T12:00:00.000Z"
}