# Course outline

`GET https://api.tentary.com/v1/courses/{course_id}`

Source: https://tentary.com/de/help/api/get-course-outline/
Area: Kurse
MCP tool: `get_course_outline`. Reads only. Changes nothing in the account.

---

The settings of a course and its modules and lessons in order. Each item has its draft and free preview flags and its release rule: days or hours after the purchase, a date, or after another lesson.

- Release days and dates unlock at `drip_release_hour` in its `time_zone`. That is the time zone of the account, not UTC.
- The number of participants counts buyers and people with granted access, each email address once.
- The answer also lists the products that sell the course.

For the content of a lesson, call [`GET /v1/lessons/{lesson_id}`](https://tentary.com/de/help/api/get-lesson/). The fields have the same names and formats as in [`PATCH /v1/courses/{course_id}`](https://tentary.com/de/help/api/update-course/), [`PATCH /v1/modules/{module_id}`](https://tentary.com/de/help/api/update-module/) and [`PATCH /v1/lessons/{lesson_id}`](https://tentary.com/de/help/api/update-lesson/).

## Authorization

`Authorization: Bearer <API key>`

A personal API key (tnt_...). Create it in the Tentary app on the page AI & API.

## Path parameters

- `course_id` (integer, required, path): The id from list_courses. Limits: min 1.

## Response

- `id` (integer): The ID.
- `name` (string): The name.
- `description_html` (string): Shows only with layout cards.
- `cover_image_url` (string, can be null): Course banner.
- `layout` (string): How buyers see the course: classic, fullscreen, fokus or cards. Allowed values: `classic`, `fullscreen`, `fokus`, `cards`.
- `tracks_progress` (boolean): true = buyers can mark lessons as done.
- `lessons` (integer): Lessons, drafts included.
- `participants` (integer): Buyers and people with granted access, each e-mail address once.
- `drip_release_hour` (object): Lessons with release days or a date unlock at this hour, in this time zone (not UTC).
  - `hour` (integer): 0 to 23.
  - `time_zone` (string, can be null): The seller's time zone, like Europe/Berlin.
- `products` (array of object): Products that sell the course.
  - `id` (integer): The ID.
  - `name` (string): The name.
  - `status` (string): The status. Allowed values: `live`, `draft`, `archived`.
- `items` (array of object): Modules and lessons in order.
  - `id` (integer): The ID.
  - `kind` (string): module or lesson. Allowed values: `module`, `lesson`.
  - `title` (string): The title.
  - `cover_image_url` (string, can be missing, can be null): Modules only.
  - `position` (integer): Place in its module or among the main items, 1 = first.
  - `draft` (boolean): A draft module hides all items in it.
  - `free_preview` (boolean): true = everyone can open it as a free preview, also without a purchase.
  - `release` (object, can be null): When buyers get the item. null = at once.
    - One of:
      - Variant type: days_after_purchase:
        - `type` (string): The rule type. Allowed values: `days_after_purchase`.
        - `days` (integer): Days after the purchase.
      - Variant type: hours_after_purchase:
        - `type` (string): The rule type. Allowed values: `hours_after_purchase`.
        - `hours` (integer): Hours after the purchase.
      - Variant type: date:
        - `type` (string): The rule type. Allowed values: `date`.
        - `date` (string<date>): Like 2026-01-31.
      - Variant type: after_lesson:
        - `type` (string): The rule type. Allowed values: `after_lesson`.
        - `lesson_id` (integer): The lesson that the buyer must finish first.
        - `lesson_title` (string, can be null): The title of that lesson.
        - `enforced` (boolean): false = the course does not track progress, so the rule has no effect.
  - `items` (array of object): The items of a module, in order (modules and lessons). Empty for a lesson.
    - Same fields as the items one level up (schema `CourseItem`), nested.
- `admin_url` (string<uri>): The page in the Tentary app.

## Example request

```bash
curl "https://api.tentary.com/v1/courses/201" \
  -H "Authorization: Bearer $TENTARY_API_KEY"
```

## Example response

```json
{
  "id": 201,
  "name": "Morning Yoga in 30 Days",
  "description_html": "<p>Ten minutes every morning.</p>",
  "cover_image_url": "https://img.tentary.com/demo-course-banner.jpg",
  "layout": "classic",
  "tracks_progress": true,
  "lessons": 3,
  "participants": 1,
  "drip_release_hour": {
    "hour": 7,
    "time_zone": "Europe/Berlin"
  },
  "products": [
    {
      "id": 102,
      "name": "Morning Yoga in 30 Days",
      "status": "live"
    },
    {
      "id": 104,
      "name": "Retreat Bundle",
      "status": "draft"
    }
  ],
  "items": [
    {
      "id": 301,
      "kind": "module",
      "title": "Week 1: Arrive",
      "cover_image_url": null,
      "position": 1,
      "draft": false,
      "free_preview": false,
      "release": null,
      "items": [
        {
          "id": 302,
          "kind": "lesson",
          "title": "Welcome and setup",
          "position": 1,
          "draft": false,
          "free_preview": true,
          "release": null,
          "items": []
        },
        {
          "id": 303,
          "kind": "lesson",
          "title": "Sun salutation",
          "position": 2,
          "draft": false,
          "free_preview": false,
          "release": {
            "type": "days_after_purchase",
            "days": 1
          },
          "items": []
        }
      ]
    },
    {
      "id": 304,
      "kind": "module",
      "title": "Week 2: Balance",
      "cover_image_url": null,
      "position": 2,
      "draft": false,
      "free_preview": false,
      "release": null,
      "items": [
        {
          "id": 306,
          "kind": "module",
          "title": "Standing poses",
          "cover_image_url": null,
          "position": 1,
          "draft": false,
          "free_preview": false,
          "release": null,
          "items": [
            {
              "id": 307,
              "kind": "module",
              "title": "Day 8",
              "cover_image_url": null,
              "position": 1,
              "draft": false,
              "free_preview": false,
              "release": null,
              "items": [
                {
                  "id": 305,
                  "kind": "lesson",
                  "title": "Tree pose",
                  "position": 1,
                  "draft": false,
                  "free_preview": false,
                  "release": {
                    "type": "after_lesson",
                    "lesson_id": 303,
                    "lesson_title": "Sun salutation",
                    "enforced": true
                  },
                  "items": []
                }
              ]
            }
          ]
        }
      ]
    }
  ],
  "admin_url": "https://app.tentary.com/courses/edit/201"
}
```
