latestOpenAPI 3.1.02026-08-211061591.1 MB

69a962f1578f

Tasks

Quick Add

Add a new task using Quick Add with natural language processing.

Quick Add allows creating tasks with rich metadata using natural language text. This endpoint uses the same parsing engine as Todoist's official clients, supporting dates, projects, labels, priorities, assignees, and more in a single text string.

Basic Syntax Overview

  • Due dates: Natural language like today, tomorrow at 5pm, next Monday
  • Projects: #ProjectName (use #My\\ Project for names with spaces)
  • Sections: /SectionName (requires a project to be specified)
  • Labels: @labelname (multiple labels supported)
  • Priority: p1 to p4, P1 to P4, or !!1 to !!4
  • Assignees: +Name (requires a project to be specified)
  • Deadlines: {date expression} (e.g., {tomorrow}, {in 3 days})
  • Reminders: !30m (30 min before), !1h (1 hour before), !0mb (at due time), !14:00 (absolute time), !30 min before (verbose, English only)
  • Descriptions: // description text (must be at the end)

Examples

  • "Buy milk today at 5pm #Shopping @groceries p1"
  • "Team meeting next Monday at 10am #Work +JohnDoe !30m"
  • "Review PR {Friday} // Check the new authentication flow"
  • "Submit report tomorrow #Work /Urgent @important // Include Q3 metrics"

Important Notes

  • Natural language date parsing supports multiple languages based on account settings
  • If parsing fails for any element, the task is still created (with unparsed text remaining in the content)
  • Use the meta parameter to see detailed parsing results for debugging

For comprehensive documentation including all supported date formats, language support, and advanced syntax, see the Quick Add help article.

post/api/v1/tasks/quick

Request body

textstring required

The text of the task to parse using Quick Add syntax. See the endpoint description for supported syntax elements.

notestring nullable

A note to attach to the task. The note content is added as a comment on the created task. If the user's plan does not support comments, this parameter is ignored.

reminderstring nullable

A reminder date in natural language format, similar to due date parsing. If the user's plan does not support reminders, this parameter is ignored. If the reminder text cannot be parsed, it is silently ignored.

auto_reminderboolean

When enabled, the default reminder will be added to the new item if it has a due date with time set. See also the auto_reminder user option for more info about the default reminder.

metaboolean

When enabled, the response includes a meta object containing the detailed parsing results. This shows exactly how the Quick Add text was interpreted, including which project, labels, due date, priority, etc. were detected. Useful for debugging parsing behavior or building integrations that need to understand how text was parsed.

Example request

{
  "text": "Buy milk today #Shopping @groceries p1",
  "note": "Remember to check the expiration date",
  "reminder": "tomorrow at 9am"
}

Response

Successful Response

object required