Create a task
Request
- Base URL: https://api.onplana.com/api
- URL: https://api.onplana.com/api/tasks
- Auth: one of:
- HTTP bearer
- API key in header Authorization
Headers
UUID of the active organization. Sets org context for all scoped operations.
Request body
Planned duration in working minutes. With a startDate and no dueDate, the dueDate is derived from it
Best case in working minutes; at most the duration the task is created with, or 400 OPTIMISTIC_ABOVE_DURATION
Worst case in working minutes; at least the duration, or 400 PESSIMISTIC_BELOW_DURATION (PESSIMISTIC_BELOW_OPTIMISTIC when below the optimistic value)
Parent task UUID for subtasks
Response
Task created
Planned duration in working minutes; a day is the project calendar hoursPerDay x 60 (default 480)
Working minutes left; 0 when DONE
Day work began (YYYY-MM-DD)
For a task with subtasks: true keeps its own dates, false takes its start and due dates from its subtasks, null follows the project's parentDatesFromSubtasks. Read only while the server switch parent_date_rollup_enabled is on.
True when this task's start and due dates come from its subtasks right now (it has subtasks, is not a milestone or held by a live Planner sync, and its isManual or its project's default says so); a change to its dates, durations or constraint is then refused with PARENT_DATES_FROM_SUBTASKS. False whenever the server switch parent_date_rollup_enabled is off. On GET /tasks, /tasks/mine, /tasks/delegated-to-agents and /projects/{id}/tasks; the same flag the MCP task tools return.
Three-point estimate, best case, in working minutes. At most the task's duration (the remaining duration once started) when written; used by schedule risk runs. Null: the run's default range applies
Three-point estimate, worst case, in working minutes. At least the task's duration (the remaining duration once started) when written
GET /tasks/mine only: present on a row the caller collaborates on but does not hold. Such a row also carries assignee; a row the caller holds carries neither.
Changes
No recorded changes to this operation across all 1 revision of this API.