---
title: "Preview Template"
method: GET
path: "/api/v1/templates/{template_id}/preview"
tags: ["Templates"]
---

# Preview Template

`GET /api/v1/templates/{template_id}/preview`

## Request

- Base URL: `https://api.todoist.com`
- URL: `https://api.todoist.com/api/v1/templates/{template_id}/preview`
- Auth: none declared

Preview a project or setup template without importing it.

Curated templates support anonymous access and use a valid `data:read` actor when available.
Any `UT_` ID requires `data:read` and the saved template's existing visibility permissions.
Raw date strings are supported only for project templates.

## Path parameters

- `template_id` string, required: Curated template slug or saved template ID with a `UT_` prefix.

## Query parameters

- `locale` string: Locale for curated template content, with the template's English fallback.
- `for_workspace` boolean: Preview a setup as workspace projects and folders, rather than personal projects.
- `resolve_dates` boolean: Resolve date strings to concrete dates. Set to false to preserve raw due, deadline and absolute-reminder date strings when editing a project template.

## Response `200`

Successful Response

- union
  - ProjectTemplatePreviewResponse
    - `template_type` 'project' | 'setup', required: Template type: project or setup.
    - `projects` union[], required: Projects in the template's sync-style graph.
      - union
        - PersonalProjectSyncView: A representation of a Personal Project Sync View, extending the base ProjectSync View, to be returned to clients in a sync (or sync-like) response.
          - `id` string, required: String ID of the project.
          - `can_assign_tasks` boolean, required: Whether the current user can assign tasks in the project.
          - `can_comment` boolean, required: Whether the current user can comment in the project.
          - `child_order` integer, required: Position of the project among sibling projects.
          - `order_key` string, nullable, required: Fractional-indexing order key among sibling projects, or `null` until assigned (backfill in progress). Always `null` for workspace projects, which are ordered via folders instead.
          - `is_collapsed` boolean, required: Whether the project is collapsed in the user's view.
          - `color` string, required: Project color name.
          - `icon` string, nullable: Project icon name, or `null` for the default icon. More icons will be added over time, so clients should fall back to the default icon for names they don't recognize.
          - `creator_uid` string, nullable, required: String ID of the user who created the project.
          - `created_at` string, date-time, nullable, required: Date and time when the project was created, or `null` if unknown.
          - `is_archived` boolean, required: Whether the project is archived.
          - `is_deleted` boolean, required: Whether the project is deleted.
          - `is_favorite` boolean, required: Whether the project is marked as a favorite.
          - `is_frozen` boolean, required: Whether the project is frozen and cannot be modified.
          - `name` string, required: Project name.
          - `is_shared` boolean, required: Whether the project is shared with other users.
          - `updated_at` string, date-time, nullable, required: Date and time when the project was last updated, or `null` if unknown.
          - `view_style` string, required: Project view style.
          - `default_order` integer, required: Default order of the project in team views.
          - `default_order_key` string, nullable, required: Fractional-indexing key for the workspace's shared default-ordering scope (folders and workspace projects together). `null` for personal projects, and for workspace projects not yet assigned one (backfill pending).
          - `description` string, required: Project description.
          - `public_key` string, required: Public access key for the project, or an empty string when public access is disabled.
          - `access` ProjectAccessView, required: Contains the details on who can view a project.
            - `visibility` 'restricted' | 'team' | 'public', required: Indicates who can see a project
            - `configuration` union, required: Configuration for the selected visibility level.
              - …
          - `role` string, nullable, required: Current user's role in the project.
          - `parent_id` string, nullable, required: String ID of the parent project, or `null` for root projects.
          - `inbox_project` boolean, required: Whether this project is the user's Inbox project.
        - WorkspaceProjectSyncView: A representation of a Workspace Project Sync View, extending the base ProjectSync View, to be returned to clients in a sync (or sync-like) response.
          - `id` string, required: String ID of the project.
          - `can_assign_tasks` boolean, required: Whether the current user can assign tasks in the project.
          - `can_comment` boolean, required: Whether the current user can comment in the project.
          - `child_order` integer, required: Position of the project among sibling projects.
          - `order_key` string, nullable, required: Fractional-indexing order key among sibling projects, or `null` until assigned (backfill in progress). Always `null` for workspace projects, which are ordered via folders instead.
          - `is_collapsed` boolean, required: Whether the project is collapsed in the user's view.
          - `color` string, required: Project color name.
          - `icon` string, nullable: Project icon name, or `null` for the default icon. More icons will be added over time, so clients should fall back to the default icon for names they don't recognize.
          - `creator_uid` string, nullable, required: String ID of the user who created the project.
          - `created_at` string, date-time, nullable, required: Date and time when the project was created, or `null` if unknown.
          - `is_archived` boolean, required: Whether the project is archived.
          - `is_deleted` boolean, required: Whether the project is deleted.
          - `is_favorite` boolean, required: Whether the project is marked as a favorite.
          - `is_frozen` boolean, required: Whether the project is frozen and cannot be modified.
          - `name` string, required: Project name.
          - `is_shared` boolean, required: Whether the project is shared with other users.
          - `updated_at` string, date-time, nullable, required: Date and time when the project was last updated, or `null` if unknown.
          - `view_style` string, required: Project view style.
          - `default_order` integer, required: Default order of the project in team views.
          - `default_order_key` string, nullable, required: Fractional-indexing key for the workspace's shared default-ordering scope (folders and workspace projects together). `null` for personal projects, and for workspace projects not yet assigned one (backfill pending).
          - `description` string, required: Project description.
          - `public_key` string, required: Public access key for the project, or an empty string when public access is disabled.
          - `access` ProjectAccessView, required: Contains the details on who can view a project.
            - `visibility` 'restricted' | 'team' | 'public', required: Indicates who can see a project
            - `configuration` union, required: Configuration for the selected visibility level.
              - …
          - `role` string, nullable, required: Current user's role in the project.
          - `collaborator_role_default` string, required: Default collaborator role for the workspace project.
          - `folder_id` string, nullable, required: String ID of the folder that contains the project, or `null`.
          - `is_invite_only` boolean, nullable, required: Whether joining the workspace project requires an invitation.
          - `is_link_sharing_enabled` boolean, required: Whether invitation links are enabled for the project.
          - `status` 'PLANNED' | 'IN_PROGRESS' | 'PAUSED' | 'COMPLETED' | 'CANCELED', required: Project status. At the moment, this is for workspace projects only.
          - `workspace_id` string, required: String ID of the workspace that contains the project.
          - `is_pending_default_collaborator_invites` boolean, required: Whether default collaborator invitations are still being created in the background.
          - `is_project_insights_enabled` boolean, required: Whether project insights are enabled for the project.
          - `parent_id` unknown
    - `sections` SectionSyncView[], required: Sections in the template's sync-style graph.
      - `id` string, required: String ID of the section.
      - `user_id` string, required: String ID of the user who owns the section.
      - `project_id` string, required: String ID of the project that contains the section.
      - `added_at` string, date-time, required: Date and time when the section was created.
      - `updated_at` string, date-time, nullable, required: Date and time when the section was last updated, or `null` if unknown.
      - `archived_at` string, date-time, nullable, required: Date and time when the section was archived, or `null` if it is active.
      - `name` string, required: Section name.
      - `description` string, nullable, required: Section description, or `null` if it has none.
      - `section_order` integer, required: Position of the section in the project.
      - `order_key` string, nullable, required: Fractional-indexing order key: sections sort by comparing keys lexicographically within a project. May be `null` for projects not yet migrated.
      - `is_collapsed` boolean, required: Whether the section is collapsed in the user's view.
      - `is_archived` boolean, required: Whether the section is archived.
      - `is_deleted` boolean, required: Whether the section is deleted.
    - `items` ItemSyncView[], required: Tasks in the graph. Uses the existing sync-style `items` name.
      - `user_id` string, required: String ID of the user who owns the task.
      - `id` string, required: String ID of the task.
      - `project_id` string, required: String ID of the project that contains the task.
      - `section_id` string, nullable, required: String ID of the section that contains the task, or `null` if the task is not in a section.
      - `parent_id` string, nullable, required: String ID of the parent task, or `null` if this is a top-level task.
      - `added_by_uid` string, nullable, required: String ID of the user who created the task, or `null` if unknown.
      - `assigned_by_uid` string, nullable, required: String ID of the user who assigned the task, or `null` if unassigned.
      - `responsible_uid` string, nullable, required: String ID of the user responsible for the task, or `null` if unassigned.
      - `labels` string[], required: Names of labels attached to the task.
      - `deadline` object, nullable, required: Deadline details for the task, or `null` when the task has no deadline.
      - `duration` object, nullable, required: Task duration details, or `null` when the task has no duration.
      - `is_collapsed` boolean, required: Whether the task is collapsed in the user's view.
      - `checked` boolean, required: Whether the task is completed.
      - `is_deleted` boolean, required: Whether the task is deleted.
      - `added_at` string, date-time, nullable, required: Date and time when the task was created, or `null` if unknown.
      - `completed_at` string, date-time, nullable, required: Date and time when the task was completed, or `null` if active.
      - `completed_by_uid` string, nullable, required: String ID of the user who completed the task, or `null` if active.
      - `updated_at` string, date-time, nullable, required: Date and time when the task was last updated, or `null` if unknown.
      - `due` object, nullable, required: Due date details for the task, or `null` when the task has no due date.
      - `priority` integer, required: Task priority from 1 (normal) to 4 (urgent).
      - `child_order` integer, required: Position of the task among sibling tasks.
      - `order_key` string, nullable, required: Fractional-indexing order key: tasks sort by comparing keys lexicographically among siblings sharing the same project, section and parent task. May be `null` for tasks not yet migrated.
      - `content` string, required: Task content.
      - `description` string, required: Task description.
      - `note_count` integer, required: **Deprecated**: only returns 0 and is marked for removal.
      - `day_order` integer, required: Task order for day-based views.
      - `completed_count` integer, required: Number of times the task has been marked as completed. Increments on every completion, including recurring occurrences and re-completions of a previously reopened task. Decremented when a recurring completion is undone.
      - `postponed_count` integer, required: Number of times the task's due date has been rescheduled by the user. Increments on any due-date change between two set dates (forward or backward); recurring completions and undos are not counted.
    - `notes` ItemNoteSyncView[], required: Task comments in the graph. Uses the existing sync-style `notes` name.
      - `id` string, required: String ID of the comment.
      - `posted_uid` string, nullable, required: String ID of the user who posted the comment.
      - `content` string: Comment content.
      - `file_attachment` object, nullable, required: File attachment metadata, or `null` when the comment has no attachment.
      - `uids_to_notify` string[], nullable, required: String IDs of users notified by the comment.
      - `is_deleted` boolean, required: Whether the comment is deleted.
      - `posted_at` string, date-time, nullable, required: Date and time when the comment was posted, or `null` if unknown.
      - `reactions` object, nullable, required: Reaction emoji mapped to user IDs that reacted.
      - `item_id` string, nullable, required
    - `project_notes` ProjectNoteSyncView[], required: Project comments in the graph.
      - `id` string, required: String ID of the comment.
      - `posted_uid` string, nullable, required: String ID of the user who posted the comment.
      - `content` string: Comment content.
      - `file_attachment` object, nullable, required: File attachment metadata, or `null` when the comment has no attachment.
      - `uids_to_notify` string[], nullable, required: String IDs of users notified by the comment.
      - `is_deleted` boolean, required: Whether the comment is deleted.
      - `posted_at` string, date-time, nullable, required: Date and time when the comment was posted, or `null` if unknown.
      - `reactions` object, nullable, required: Reaction emoji mapped to user IDs that reacted.
      - `project_id` string, nullable, required
    - `project_view_options_defaults` TemplateProjectViewOptionsDefaultsSnapshot[], required: Calendar settings stored by the project template, implicitly associated with its sole project.
      - `calendar_settings` TemplateCalendarSettings, required: Calendar settings representable by a persisted project template.
        - `layout` 'WEEK' | 'MONTH'
        - `visible_day_count` 1 | 3 | 7, nullable: Number of consecutive days shown in the week calendar layout.
        - `color` 'PRIORITY' | 'LABEL' | 'PROJECT'
    - `workspace_id` string, nullable, required: Workspace associated with a saved template, otherwise null.
    - `reminders` NotificationSyncView[], required: Always empty: templates don't carry reminders.
      - `id` string, required: String ID of the reminder.
      - `item_id` string, required: String ID of the task that owns the reminder.
      - `notify_uid` string, required: String ID of the user who receives the reminder.
      - `is_deleted` boolean, required: Whether the reminder is deleted.
      - `is_urgent` boolean, required: Whether the reminder should be delivered urgently.
      - `type` string, required: Reminder type.
      - `minute_offset` integer, nullable, required: Minutes before the task due time for relative reminders.
      - `due` object, nullable, required: Datetime when the reminder fires, or `null` if unset.
  - SetupTemplatePreviewResponse
    - `template_type` 'project' | 'setup', required: Template type: project or setup.
    - `projects` union[], required: Projects in the template's sync-style graph.
      - union
        - PersonalProjectSyncView: A representation of a Personal Project Sync View, extending the base ProjectSync View, to be returned to clients in a sync (or sync-like) response.
          - `id` string, required: String ID of the project.
          - `can_assign_tasks` boolean, required: Whether the current user can assign tasks in the project.
          - `can_comment` boolean, required: Whether the current user can comment in the project.
          - `child_order` integer, required: Position of the project among sibling projects.
          - `order_key` string, nullable, required: Fractional-indexing order key among sibling projects, or `null` until assigned (backfill in progress). Always `null` for workspace projects, which are ordered via folders instead.
          - `is_collapsed` boolean, required: Whether the project is collapsed in the user's view.
          - `color` string, required: Project color name.
          - `icon` string, nullable: Project icon name, or `null` for the default icon. More icons will be added over time, so clients should fall back to the default icon for names they don't recognize.
          - `creator_uid` string, nullable, required: String ID of the user who created the project.
          - `created_at` string, date-time, nullable, required: Date and time when the project was created, or `null` if unknown.
          - `is_archived` boolean, required: Whether the project is archived.
          - `is_deleted` boolean, required: Whether the project is deleted.
          - `is_favorite` boolean, required: Whether the project is marked as a favorite.
          - `is_frozen` boolean, required: Whether the project is frozen and cannot be modified.
          - `name` string, required: Project name.
          - `is_shared` boolean, required: Whether the project is shared with other users.
          - `updated_at` string, date-time, nullable, required: Date and time when the project was last updated, or `null` if unknown.
          - `view_style` string, required: Project view style.
          - `default_order` integer, required: Default order of the project in team views.
          - `default_order_key` string, nullable, required: Fractional-indexing key for the workspace's shared default-ordering scope (folders and workspace projects together). `null` for personal projects, and for workspace projects not yet assigned one (backfill pending).
          - `description` string, required: Project description.
          - `public_key` string, required: Public access key for the project, or an empty string when public access is disabled.
          - `access` ProjectAccessView, required: Contains the details on who can view a project.
            - `visibility` 'restricted' | 'team' | 'public', required: Indicates who can see a project
            - `configuration` union, required: Configuration for the selected visibility level.
              - …
          - `role` string, nullable, required: Current user's role in the project.
          - `parent_id` string, nullable, required: String ID of the parent project, or `null` for root projects.
          - `inbox_project` boolean, required: Whether this project is the user's Inbox project.
        - WorkspaceProjectSyncView: A representation of a Workspace Project Sync View, extending the base ProjectSync View, to be returned to clients in a sync (or sync-like) response.
          - `id` string, required: String ID of the project.
          - `can_assign_tasks` boolean, required: Whether the current user can assign tasks in the project.
          - `can_comment` boolean, required: Whether the current user can comment in the project.
          - `child_order` integer, required: Position of the project among sibling projects.
          - `order_key` string, nullable, required: Fractional-indexing order key among sibling projects, or `null` until assigned (backfill in progress). Always `null` for workspace projects, which are ordered via folders instead.
          - `is_collapsed` boolean, required: Whether the project is collapsed in the user's view.
          - `color` string, required: Project color name.
          - `icon` string, nullable: Project icon name, or `null` for the default icon. More icons will be added over time, so clients should fall back to the default icon for names they don't recognize.
          - `creator_uid` string, nullable, required: String ID of the user who created the project.
          - `created_at` string, date-time, nullable, required: Date and time when the project was created, or `null` if unknown.
          - `is_archived` boolean, required: Whether the project is archived.
          - `is_deleted` boolean, required: Whether the project is deleted.
          - `is_favorite` boolean, required: Whether the project is marked as a favorite.
          - `is_frozen` boolean, required: Whether the project is frozen and cannot be modified.
          - `name` string, required: Project name.
          - `is_shared` boolean, required: Whether the project is shared with other users.
          - `updated_at` string, date-time, nullable, required: Date and time when the project was last updated, or `null` if unknown.
          - `view_style` string, required: Project view style.
          - `default_order` integer, required: Default order of the project in team views.
          - `default_order_key` string, nullable, required: Fractional-indexing key for the workspace's shared default-ordering scope (folders and workspace projects together). `null` for personal projects, and for workspace projects not yet assigned one (backfill pending).
          - `description` string, required: Project description.
          - `public_key` string, required: Public access key for the project, or an empty string when public access is disabled.
          - `access` ProjectAccessView, required: Contains the details on who can view a project.
            - `visibility` 'restricted' | 'team' | 'public', required: Indicates who can see a project
            - `configuration` union, required: Configuration for the selected visibility level.
              - …
          - `role` string, nullable, required: Current user's role in the project.
          - `collaborator_role_default` string, required: Default collaborator role for the workspace project.
          - `folder_id` string, nullable, required: String ID of the folder that contains the project, or `null`.
          - `is_invite_only` boolean, nullable, required: Whether joining the workspace project requires an invitation.
          - `is_link_sharing_enabled` boolean, required: Whether invitation links are enabled for the project.
          - `status` 'PLANNED' | 'IN_PROGRESS' | 'PAUSED' | 'COMPLETED' | 'CANCELED', required: Project status. At the moment, this is for workspace projects only.
          - `workspace_id` string, required: String ID of the workspace that contains the project.
          - `is_pending_default_collaborator_invites` boolean, required: Whether default collaborator invitations are still being created in the background.
          - `is_project_insights_enabled` boolean, required: Whether project insights are enabled for the project.
          - `parent_id` unknown
    - `sections` SectionSyncView[], required: Sections in the template's sync-style graph.
      - `id` string, required: String ID of the section.
      - `user_id` string, required: String ID of the user who owns the section.
      - `project_id` string, required: String ID of the project that contains the section.
      - `added_at` string, date-time, required: Date and time when the section was created.
      - `updated_at` string, date-time, nullable, required: Date and time when the section was last updated, or `null` if unknown.
      - `archived_at` string, date-time, nullable, required: Date and time when the section was archived, or `null` if it is active.
      - `name` string, required: Section name.
      - `description` string, nullable, required: Section description, or `null` if it has none.
      - `section_order` integer, required: Position of the section in the project.
      - `order_key` string, nullable, required: Fractional-indexing order key: sections sort by comparing keys lexicographically within a project. May be `null` for projects not yet migrated.
      - `is_collapsed` boolean, required: Whether the section is collapsed in the user's view.
      - `is_archived` boolean, required: Whether the section is archived.
      - `is_deleted` boolean, required: Whether the section is deleted.
    - `items` ItemSyncView[], required: Tasks in the graph. Uses the existing sync-style `items` name.
      - `user_id` string, required: String ID of the user who owns the task.
      - `id` string, required: String ID of the task.
      - `project_id` string, required: String ID of the project that contains the task.
      - `section_id` string, nullable, required: String ID of the section that contains the task, or `null` if the task is not in a section.
      - `parent_id` string, nullable, required: String ID of the parent task, or `null` if this is a top-level task.
      - `added_by_uid` string, nullable, required: String ID of the user who created the task, or `null` if unknown.
      - `assigned_by_uid` string, nullable, required: String ID of the user who assigned the task, or `null` if unassigned.
      - `responsible_uid` string, nullable, required: String ID of the user responsible for the task, or `null` if unassigned.
      - `labels` string[], required: Names of labels attached to the task.
      - `deadline` object, nullable, required: Deadline details for the task, or `null` when the task has no deadline.
      - `duration` object, nullable, required: Task duration details, or `null` when the task has no duration.
      - `is_collapsed` boolean, required: Whether the task is collapsed in the user's view.
      - `checked` boolean, required: Whether the task is completed.
      - `is_deleted` boolean, required: Whether the task is deleted.
      - `added_at` string, date-time, nullable, required: Date and time when the task was created, or `null` if unknown.
      - `completed_at` string, date-time, nullable, required: Date and time when the task was completed, or `null` if active.
      - `completed_by_uid` string, nullable, required: String ID of the user who completed the task, or `null` if active.
      - `updated_at` string, date-time, nullable, required: Date and time when the task was last updated, or `null` if unknown.
      - `due` object, nullable, required: Due date details for the task, or `null` when the task has no due date.
      - `priority` integer, required: Task priority from 1 (normal) to 4 (urgent).
      - `child_order` integer, required: Position of the task among sibling tasks.
      - `order_key` string, nullable, required: Fractional-indexing order key: tasks sort by comparing keys lexicographically among siblings sharing the same project, section and parent task. May be `null` for tasks not yet migrated.
      - `content` string, required: Task content.
      - `description` string, required: Task description.
      - `note_count` integer, required: **Deprecated**: only returns 0 and is marked for removal.
      - `day_order` integer, required: Task order for day-based views.
      - `completed_count` integer, required: Number of times the task has been marked as completed. Increments on every completion, including recurring occurrences and re-completions of a previously reopened task. Decremented when a recurring completion is undone.
      - `postponed_count` integer, required: Number of times the task's due date has been rescheduled by the user. Increments on any due-date change between two set dates (forward or backward); recurring completions and undos are not counted.
    - `notes` ItemNoteSyncView[], required: Task comments in the graph. Uses the existing sync-style `notes` name.
      - `id` string, required: String ID of the comment.
      - `posted_uid` string, nullable, required: String ID of the user who posted the comment.
      - `content` string: Comment content.
      - `file_attachment` object, nullable, required: File attachment metadata, or `null` when the comment has no attachment.
      - `uids_to_notify` string[], nullable, required: String IDs of users notified by the comment.
      - `is_deleted` boolean, required: Whether the comment is deleted.
      - `posted_at` string, date-time, nullable, required: Date and time when the comment was posted, or `null` if unknown.
      - `reactions` object, nullable, required: Reaction emoji mapped to user IDs that reacted.
      - `item_id` string, nullable, required
    - `project_notes` ProjectNoteSyncView[], required: Project comments in the graph.
      - `id` string, required: String ID of the comment.
      - `posted_uid` string, nullable, required: String ID of the user who posted the comment.
      - `content` string: Comment content.
      - `file_attachment` object, nullable, required: File attachment metadata, or `null` when the comment has no attachment.
      - `uids_to_notify` string[], nullable, required: String IDs of users notified by the comment.
      - `is_deleted` boolean, required: Whether the comment is deleted.
      - `posted_at` string, date-time, nullable, required: Date and time when the comment was posted, or `null` if unknown.
      - `reactions` object, nullable, required: Reaction emoji mapped to user IDs that reacted.
      - `project_id` string, nullable, required
    - `labels` LabelSyncView[], required: Labels in a setup, or an empty list for project use.
      - `id` string, required
      - `name` string, required
      - `color` string, required
      - `item_order` integer, required
      - `order_key` string, nullable, required
      - `is_favorite` boolean, required
      - `is_deleted` boolean, required
    - `filters` Filter[], required: Filters in a setup, or an empty list for project use.
      - `id` string, required
      - `name` string, required
      - `query` string, required
      - `description` string, required
      - `item_order` integer, required
      - `order_key` string, nullable, required
      - `is_deleted` boolean, required
      - `color` string, required
      - `is_favorite` boolean, required
      - `is_frozen` boolean, required
    - `view_options` UserViewOptionsSyncView[], required: User view options in the template graph.
      - `id` string, required: String ID of the view options.
      - `view_type` 'FILTER' | 'LABEL' | 'PROJECT' | 'TODAY' | 'UPCOMING' | 'WORKSPACE_FILTER' | 'ASSIGNED_TO_ME', required
      - `object_id` string, nullable, required: String ID of the object the options apply to (a project, label, or filter ID, depending on `view_type`), or `null` for the TODAY, UPCOMING, and ASSIGNED_TO_ME views.
      - `filtered_by` string, nullable, required: Filter query applied to the view.
      - `grouped_by` 'ASSIGNEE' | 'ADDED_DATE' | 'DUE_DATE' | 'LABEL' | 'PRIORITY' | 'PROJECT' | 'WORKSPACE' | 'DEADLINE', required
      - `sorted_by` 'ALPHABETICALLY' | 'ASSIGNEE' | 'ADDED_DATE' | 'DUE_DATE' | 'LABEL' | 'PRIORITY' | 'PROJECT' | 'WORKSPACE' | 'MANUAL' | 'DEADLINE', required
      - `sort_order` 'ASC' | 'DESC', required
      - `is_deleted` false: Whether the view options are deleted.
      - `view_mode` 'LIST' | 'BOARD' | 'CALENDAR' | 'TABLE', required
      - `show_completed_tasks` boolean, required: Whether completed tasks are shown in the view.
      - `calendar_settings` CalendarSettings, required
        - `layout` 'WEEK' | 'MONTH'
        - `visible_day_count` 1 | 3 | 7, nullable: Number of consecutive days shown in the week calendar layout.
        - `color` 'PRIORITY' | 'LABEL' | 'PROJECT'
      - `property_settings` PropertySettings, required: How views show task properties, such as the due date or labels, holding only what the user changed. Every layout reads the same settings: `width` applies where a layout shows the property in a column. Property IDs are opaque strings, so clients can add properties, like custom fields, without a backend change, and keep the ones they don't know, as well as keys and attributes the backend doesn't know.
        - `order` string[], nullable: Property IDs in display order.
        - `properties` object, nullable: How each property shows, by property ID.
    - `workspace_id` string, nullable, required: Workspace associated with a saved template, otherwise null.
    - `folders` FolderView[], required: Folders in the setup preview.
      - `workspace_id` string, required: String ID of the workspace that contains the folder.
      - `name` string: Folder name.
      - `is_deleted` boolean: Whether the folder is deleted.
      - `id` string: String ID of the folder.
      - `default_order` integer: Default position of the folder in the workspace.
      - `default_order_key` string, nullable: Fractional-indexing key for the workspace's shared default-ordering scope (folders and workspace projects together). `null` until assigned (backfill pending).
      - `child_order` integer: User-specific position of the folder.
    - `reminders` NotificationSyncView[], required: Always empty: templates don't carry reminders.
      - `id` string, required: String ID of the reminder.
      - `item_id` string, required: String ID of the task that owns the reminder.
      - `notify_uid` string, required: String ID of the user who receives the reminder.
      - `is_deleted` boolean, required: Whether the reminder is deleted.
      - `is_urgent` boolean, required: Whether the reminder should be delivered urgently.
      - `type` string, required: Reminder type.
      - `minute_offset` integer, nullable, required: Minutes before the task due time for relative reminders.
      - `due` object, nullable, required: Datetime when the reminder fires, or `null` if unset.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `429`: Request rate limit exceeded
- `503`: Rate limiter temporarily unavailable

## Changes

- **2026-10-29** `7c004345eb57`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/todoist/apis/todoist-api/changes/api/v1/templates/:template_id/preview/get.md)

---

[API](https://skmtc.dev/todoist/apis/todoist-api.md) - [All operations](https://skmtc.dev/todoist/apis/todoist-api/llms.txt) - [OpenAPI document](https://skmtc.dev/todoist/apis/todoist-api/revisions/3c8cae93e5cc?raw)
