English EN
API Reference
API Reference

Courses

Update module

PATCH / v1 / modules / {module_id}

Changes the fields that you send.

  • parent_module_id and position move the module. parent_module_id null makes it a main module.
  • The fields have the same names and formats as the items of GET /v1/courses/{course_id}.

To delete a module, use POST /v1/delete.

Changes at once MCP tool update_module

Authorization

  • Authorization string header required

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

Path parameters

  • module_id integer required

    The id of a module from get_course_outline.

    min 1 Example: 308

Body application/json

  • parent_module_id integer can be null

    Move it into this module. null = main module.

    min 1

  • title string

    Title that buyers see.

    min length 1 max length 255

  • position integer

    Place among the items of the same module: 1 = first. Default: last.

    min 1

  • draft boolean

    true = buyers do not see it. New items are drafts unless draft is false. draft true removes the release rule.

  • release object can be null

    When buyers get the item. null = at once (also left out on create; left out on update = no change). One rule: days or hours after purchase, a date, or after another lesson is done (only if the course tracks progress). Days and dates unlock at drip_release_hour of get_course_outline. Needs draft false. The answers add lesson_title and enforced to after_lesson (read only; enforced false = the course does not track progress, so the rule has no effect).

    Show 5 fields Hide fields
    • type string required

      Allowed values: days_after_purchasehours_after_purchasedateafter_lesson

    • days integer

      min 1 max 9999

    • hours integer

      min 1 max 9999

    • date string

      Like 2026-12-01.

      pattern ^[0-9]{4}-[0-9]{2}-[0-9]{2}$

    • lesson_id integer

      after_lesson: a lesson of the same course.

      min 1

  • cover_image_url string can be null

    Module image: the image_url from finish_image, or a public image URL that Tentary copies. Buyers see it only with course layout cards, on the card of a main module (16:9). null removes it.

    max length 2048

Response

Fields of the answer with status 200. Errors always have the same format, see Errors.

  • id integer

    The ID.

  • course_id integer

    The course ID.

  • parent_module_id integer can be null

    null = a main module.

  • title string

    The title.

  • cover_image_url string can be null

    Module image. Shows only with course layout cards.

  • position integer

    Place in its module or among the main items, 1 = first.

  • draft boolean

    true = buyers see nothing of the module and the items in it.

  • release object can be null

    When buyers get the item. null = at once.

    One of these variants:

    type: days_after_purchase · 2 fields
    • type string

      The rule type.

      Allowed values: days_after_purchase

    • days integer

      Days after the purchase.

    type: hours_after_purchase · 2 fields
    • type string

      The rule type.

      Allowed values: hours_after_purchase

    • hours integer

      Hours after the purchase.

    type: date · 2 fields
    • type string

      The rule type.

      Allowed values: date

    • date string<date>

      Like 2026-01-31.

    type: after_lesson · 4 fields
    • 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.

  • admin_url string<uri>

    The page in the Tentary app.

Start typing to search.