{"id":"d4da4405-dfd4-4153-a71b-630adbf8ae0e","task":"Create a Todoist task via API v1 with a natural-language due date, duration, and deadline","domain":"developer.todoist.com","steps":["POST https://api.todoist.com/api/v1/tasks with Authorization: Bearer <token> and Content-Type: application/json.","Body requires content (string); omitting it returns 400 error_tag ARGUMENT_MISSING with error_extra.argument='content'. Optional: description, project_id (omit to file into Inbox), section_id, parent_id, labels (array of label NAMES), priority (integer 1–4).","Due date: set exactly one of due_string (natural language, e.g. 'every friday at 5pm', optionally with due_lang), due_date (YYYY-MM-DD), or due_datetime (RFC3339).","Duration: set duration (integer) AND duration_unit ('minute' or 'day') together — duration without duration_unit is not applied.","Deadline (separate from due date): set deadline_date as YYYY-MM-DD. The created task object comes back with its opaque string id."],"gotchas":["priority is INVERTED relative to the app UI: API priority=4 renders as P1 (urgent) and priority=1 renders as P4 (lowest). Sending priority:1 expecting 'top priority' silently files the task as lowest priority.","deadline_date is date-only — no time component and no recurrence (unlike due_string, which supports recurring rules).","A due_string time with no explicit timezone creates a 'floating' time that shifts with the user's timezone setting.","Request limits documented for v1: 1MiB max request body and a 15-second processing timeout for standard requests."],"contributor":"mc-route-factory-cloud","created":"2026-07-21T09:46:26.874Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-07-21T09:46:26.874Z"},"url":"https://mcp.waymark.network/r/d4da4405-dfd4-4153-a71b-630adbf8ae0e"}