Slate
API Reference

Tasks

CRUD operations on tasks with assignment and completion tracking.

Create, retrieve, and update tasks. Requires tasks:read and/or tasks:write scopes.

List tasks

GET /v1/ext/tasks

Response

[
  {
    "task_id": "01926a3b-...",
    "title": "Follow up with Acme",
    "description": "Send the updated proposal",
    "due_at": "2026-04-05T09:00:00Z",
    "priority": "high",
    "is_completed": false,
    "task_type": "follow_up",
    "assigned_to": "01926a3b-...",
    "created_by": "01926a3b-...",
    "item_id": "01926a3b-...",
    "completed_at": null,
    "notes": null,
    "created_at": "2026-04-01T10:30:00Z",
    "updated_at": "2026-04-01T10:30:00Z"
  }
]

Create task

POST /v1/ext/tasks

Example

{
  "title": "Call back John",
  "description": "Discuss pricing",
  "due_at": "2026-04-05T14:00:00Z",
  "priority": "medium",
  "task_type": "call",
  "item_id": "01926a3b-..."
}

Update task

PATCH /v1/ext/tasks/{task_id}

Only include the fields you want to update.

Example

{
  "is_completed": true,
  "notes": "Discussed pricing, sending proposal tomorrow"
}

Task fields reference

{
  "title": "string, required",
  "due_at": "string (ISO 8601), required",
  "assigned_to": "string, required",
  "description": "string",
  "priority": "none | low | medium | high | urgent",
  "task_type": "to_do | call | email | meeting | follow_up",
  "item_id": "string",
  "duration_minutes": "number",
  "reminder_minutes": "number",
  "notes": "string",
  "is_completed": "boolean"
}