---
title: "Create a Task"
method: POST
path: "/v1/tasks/"
tags: ["Tasks"]
---

# Create a Task

`POST /v1/tasks/`

Creates a new task.

Tasks can be associated with an account (via `account_id`) and/or an opportunity (via `opportunity_id`). If no `assignee_id` is provided, the task is assigned to the caller.

## Request body

- TaskCreateRequest — Request body for creating a task via POST.
  - `title` string, required — Title of the task
  - `description` string, nullable — Detailed description of the task
  - `account_id` string, uuid, nullable — ID of the account to associate the task with
  - `opportunity_id` string, uuid, nullable — ID of the opportunity to associate the task with
  - `task_type` string, nullable — Type of task. One of GENERAL_ACTION_ITEM, EMAIL.
  - `assignee_id` string, uuid, nullable — User ID to assign the task to. Defaults to the caller if not provided.
  - `due_at` string, date-time, nullable — Due date and time for the task
  - `message_draft` MessageDraft — Draft message contents stored on a task with `task_type=EMAIL`.
    - `recipients` EmailRecipient[], required — Primary recipients (To) of the email
      - `name` string, required — Display name of the recipient
      - `email` string, required — Email address of the recipient
    - `cc` EmailRecipient[], nullable — Carbon-copy recipients of the email
      - `name` string, required — Display name of the recipient
      - `email` string, required — Email address of the recipient
    - `subject` string, required — Subject line of the email
    - `body` string, required — Body of the email (plain text or HTML)
    - `sent_at` string, nullable — ISO timestamp the email was sent (read-only; ignored on write).

## Response `200`

Successful Response

- PublicItemResponseTaskResponse
  - `data` TaskResponse, required
    - `id` string, required — Unique identifier for the task
    - `account_id` string, nullable — ID of the associated account
    - `opportunity_id` string, nullable — ID of the associated opportunity
    - `title` string, nullable — Title of the task
    - `description` string, nullable — Detailed description of the task
    - `task_type` string, nullable — Type of task
    - `assignee` OwnerInfo
      - `id` string, required — Unique identifier of the user
      - `first_name` string, nullable — First name of the user
      - `last_name` string, nullable — Last name of the user
    - `status` string, nullable — Current status of the task
    - `due_at` string, date-time, nullable — Due date and time for the task
    - `completed_at` string, date-time, nullable — Date and time the task was completed
    - `created_at` string, date-time, required — Date and time the task was created
    - `updated_at` string, date-time, required — Date and time the task was last updated
    - `message_draft` MessageDraft — Draft message contents stored on a task with `task_type=EMAIL`.
      - `recipients` EmailRecipient[], required — Primary recipients (To) of the email
        - `name` string, required — Display name of the recipient
        - `email` string, required — Email address of the recipient
      - `cc` EmailRecipient[], nullable — Carbon-copy recipients of the email
        - `name` string, required — Display name of the recipient
        - `email` string, required — Email address of the recipient
      - `subject` string, required — Subject line of the email
      - `body` string, required — Body of the email (plain text or HTML)
      - `sent_at` string, nullable — ISO timestamp the email was sent (read-only; ignored on write).
  - `meta` ResponseMeta
    - `timestamp` string, date-time — Server timestamp of the response

## Other responses

- `4XX` — Client error

---

[API](https://skmtc.dev/monaco/apis/monaco-public-api.md) · [All operations](https://skmtc.dev/monaco/apis/monaco-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/monaco/monaco-public-api/revisions/ec4d9b2b035b/schema)
