> ## Documentation Index
> Fetch the complete documentation index at: https://docs.whirl.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Endpoint reference

> Every API route, grouped by what it does.

## Workspaces

| Endpoint | What it does |
| - | - |
| [List workspaces](/api/reference/list_workspaces)<br />`GET /api/v1/workspaces` | The workspaces this connection can open. |
| [List workspace members](/api/reference/list_workspace_members)<br />`GET /api/v1/workspaces/{workspaceId}/members` | The people in a workspace. |
| [List task statuses](/api/reference/list_workspace_statuses)<br />`GET /api/v1/workspaces/{workspaceId}/statuses` | The columns on a workspace's task board. |
| [Create workspace](/api/reference/create_workspace)<br />`POST /api/v1/workspaces` | Create a workspace, with its own agent. |
| [Rename workspace](/api/reference/rename_workspace)<br />`PATCH /api/v1/workspaces/{workspaceId}` | Change a workspace's name. |
| [Archive workspace](/api/reference/archive_workspace)<br />`POST /api/v1/workspaces/{workspaceId}/archive` | Hide a workspace and pause its agents and automations. |

## Tasks

| Endpoint | What it does |
| - | - |
| [List tasks](/api/reference/list_tasks)<br />`GET /api/v1/workspaces/{workspaceId}/tasks` | Tasks in one column of a workspace. |
| [Search tasks](/api/reference/search_tasks)<br />`GET /api/v1/workspaces/{workspaceId}/tasks/search` | Find tasks by words in the title or description. |
| [Get task](/api/reference/get_task)<br />`GET /api/v1/tasks/{taskId}` | A task's status, people, tags, due date and notes. |
| [List task activity](/api/reference/list_task_events)<br />`GET /api/v1/tasks/{taskId}/events` | What has happened on a task. |
| [List task chat](/api/reference/list_task_messages)<br />`GET /api/v1/tasks/{taskId}/messages` | The chat with the agent on a task. |
| [List source conversation](/api/reference/list_task_conversation_messages)<br />`GET /api/v1/tasks/{taskId}/conversation` | The email or chat thread a task came from. |
| [Update task](/api/reference/update_task)<br />`PATCH /api/v1/tasks/{taskId}` | Change a task's title, status or due date. |
| [Mark task done](/api/reference/complete_task)<br />`POST /api/v1/tasks/{taskId}/complete` | Mark a task done. |
| [Assign task](/api/reference/assign_task)<br />`POST /api/v1/tasks/{taskId}/assignees` | Choose who a task is assigned to. |
| [Set task tags](/api/reference/set_task_tags)<br />`POST /api/v1/tasks/{taskId}/tags` | Set the tags on a task. |
| [Add note](/api/reference/add_task_note)<br />`POST /api/v1/tasks/{taskId}/notes` | Add a note the team and the agent can see. |
| [Delete task](/api/reference/delete_task)<br />`DELETE /api/v1/tasks/{taskId}` | Delete a task that is already done. |

## Agents

| Endpoint | What it does |
| - | - |
| [List agents](/api/reference/list_agents)<br />`GET /api/v1/agents` | The agents in your workspaces. |
| [Give an agent a task](/api/reference/submit_task)<br />`POST /api/v1/agents/{agentId}/tasks` | Create a task and have an agent start on it. |
| [Message the agent on a task](/api/reference/send_task_message)<br />`POST /api/v1/tasks/{taskId}/messages` | Send the agent a follow-up on a task. |
| [List agent runs on a task](/api/reference/list_task_runs)<br />`GET /api/v1/tasks/{taskId}/runs` | Each time an agent worked on a task. |
| [Get agent run](/api/reference/get_run)<br />`GET /api/v1/runs/{runId}` | What an agent run produced, and the actions it proposed. |

## Approvals

| Endpoint | What it does |
| - | - |
| [List pending actions](/api/reference/list_pending_actions)<br />`GET /api/v1/tasks/{taskId}/pending-actions` | Actions an agent is waiting for someone to decide on. |
| [Get pending action](/api/reference/get_pending_action)<br />`GET /api/v1/pending-actions/{actionId}` | The full draft of one proposed action. |
| [Approve pending action](/api/reference/approve_pending_action)<br />`POST /api/v1/pending-actions/{actionId}/approve` | Let Whirl carry out a proposed action, such as sending a message. |
| [Reject pending action](/api/reference/reject_pending_action)<br />`POST /api/v1/pending-actions/{actionId}/reject` | Stop a proposed action, a task for a person, or a question. |
| [Edit pending action](/api/reference/update_pending_action)<br />`PATCH /api/v1/pending-actions/{actionId}` | Change a draft before it is approved. |
| [Complete human task](/api/reference/complete_human_task)<br />`POST /api/v1/pending-actions/{actionId}/complete` | Mark done something an agent asked a person to do. |
| [Answer agent question](/api/reference/answer_agent_question)<br />`POST /api/v1/pending-actions/{actionId}/answer` | Reply to a question an agent asked. |

## Reminders

| Endpoint | What it does |
| - | - |
| [List reminders](/api/reference/list_reminders)<br />`GET /api/v1/tasks/{taskId}/reminders` | Reminders set on a task. |
| [Set reminder](/api/reference/create_reminder)<br />`POST /api/v1/tasks/{taskId}/reminders` | Wake the agent on a task at a set time. |
| [Change reminder](/api/reference/update_reminder)<br />`PATCH /api/v1/reminders/{reminderId}` | Change a reminder's message or time. |
| [Cancel reminder](/api/reference/cancel_reminder)<br />`DELETE /api/v1/reminders/{reminderId}` | Cancel a reminder. |

## Handbook

| Endpoint | What it does |
| - | - |
| [List an agent's handbook](/api/reference/list_agent_instructions)<br />`GET /api/v1/agents/{agentId}/instructions` | The entries in an agent's handbook. |
| [Read a handbook entry](/api/reference/read_agent_instruction_section)<br />`GET /api/v1/agent-instructions/{sectionId}` | The full text of one handbook entry. |
| [Edit a handbook entry](/api/reference/update_agent_instruction_section)<br />`PATCH /api/v1/agent-instructions/{sectionId}` | Edit an entry in an agent's handbook. |
| [Reorder an agent's handbook](/api/reference/reorder_agent_instruction_sections)<br />`POST /api/v1/agents/{agentId}/instructions/reorder` | Change the order of an agent's handbook. |
| [List the company handbook](/api/reference/list_company_handbook_sections)<br />`GET /api/v1/company-handbook` | The handbook every agent in the organization follows. |
| [Read a company handbook entry](/api/reference/read_company_handbook_section)<br />`GET /api/v1/company-handbook/{sectionId}` | The full text of one company handbook entry. |
| [Edit a company handbook entry](/api/reference/update_company_handbook_section)<br />`PATCH /api/v1/company-handbook/{sectionId}` | Edit an entry that applies to every agent. |
| [Reorder the company handbook](/api/reference/reorder_company_handbook_sections)<br />`POST /api/v1/company-handbook/reorder` | Change the order of the company handbook. |

## Knowledge

| Endpoint | What it does |
| - | - |
| [List knowledge sources](/api/reference/list_knowledge_sources)<br />`GET /api/v1/knowledge-sources` | Links and files an agent can consult. |
| [Read a knowledge source](/api/reference/read_knowledge_source)<br />`GET /api/v1/knowledge-sources/{sourceId}` | Details of one knowledge source. |
| [Add a knowledge link](/api/reference/add_knowledge_link)<br />`POST /api/v1/knowledge-sources` | Add a web page an agent can read. |
| [Update a knowledge source](/api/reference/update_knowledge_source)<br />`PATCH /api/v1/knowledge-sources/{sourceId}` | Change a knowledge source's name, note or address. |
| [Remove a knowledge source](/api/reference/remove_knowledge_source)<br />`DELETE /api/v1/knowledge-sources/{sourceId}` | Remove a link or file from an agent's knowledge. |

## Scheduled tasks

| Endpoint | What it does |
| - | - |
| [List scheduled tasks](/api/reference/list_scheduled_tasks)<br />`GET /api/v1/scheduled-tasks` | Prompts an agent runs on a schedule. |
| [Get scheduled task](/api/reference/get_scheduled_task)<br />`GET /api/v1/scheduled-tasks/{scheduledTaskId}` | A scheduled task's prompt, schedule and next run. |
| [List scheduled task runs](/api/reference/list_scheduled_task_runs)<br />`GET /api/v1/scheduled-tasks/{scheduledTaskId}/runs` | Past runs of a scheduled task. |
| [Create scheduled task](/api/reference/create_scheduled_task)<br />`POST /api/v1/scheduled-tasks` | Have an agent run a prompt on a repeating schedule. |
| [Update scheduled task](/api/reference/update_scheduled_task)<br />`PATCH /api/v1/scheduled-tasks/{scheduledTaskId}` | Change a scheduled task's prompt, schedule or agent. |
| [Pause scheduled task](/api/reference/pause_scheduled_task)<br />`POST /api/v1/scheduled-tasks/{scheduledTaskId}/pause` | Stop a scheduled task until it is resumed. |
| [Resume scheduled task](/api/reference/resume_scheduled_task)<br />`POST /api/v1/scheduled-tasks/{scheduledTaskId}/resume` | Start a paused scheduled task again. |
| [Delete scheduled task](/api/reference/delete_scheduled_task)<br />`DELETE /api/v1/scheduled-tasks/{scheduledTaskId}` | Delete a scheduled task. Earlier runs stay. |
| [Run scheduled task now](/api/reference/run_scheduled_task_now)<br />`POST /api/v1/scheduled-tasks/{scheduledTaskId}/run` | Run a scheduled task once, outside its schedule. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.