curl --location --request POST 'https://api.wordsmith.ai/api/v1/tasks' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"priority": "high",
"assigned_to": "11111111-2222-3333-4444-555555555555",
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
]
}'
const response = await fetch("https://api.wordsmith.ai/api/v1/tasks", {
method: "POST",
headers: {
Authorization: "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"priority": "high",
"assigned_to": "11111111-2222-3333-4444-555555555555",
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
]
}),
});
const data = await response.json();
console.log(data);
import requests
url = "https://api.wordsmith.ai/api/v1/tasks"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
}
payload = {
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"priority": "high",
"assigned_to": "11111111-2222-3333-4444-555555555555",
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
]
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
{
"id": "9f8e7d6c-5b4a-3210-9876-543210fedcba",
"display_id": "#12",
"task_number": 12,
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"additional_context": "Counterparty has pushed back twice on liability caps.",
"status": "in_progress",
"priority": "high",
"team": {
"id": "1a2b3c4d-5e6f-7081-9200-aabbccddeeff",
"name": "Legal"
},
"creator": {
"id": "11111111-2222-3333-4444-555555555555",
"name": "Jane Doe",
"email": "jane@example.com"
},
"assigned_to": {
"id": "11111111-2222-3333-4444-555555555555",
"name": "Jane Doe",
"email": "jane@example.com"
},
"assigned_agent": null,
"assigned_team": null,
"matter": null,
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
],
"visibility": "customer",
"archived": false,
"draft": false,
"involved_people": [
{
"id": "11111111-2222-3333-4444-555555555555",
"name": "Jane Doe",
"email": "jane@example.com",
"role": "assignee",
"access_level": "write"
}
],
"shared_teams": [],
"linked_items": [],
"input_files": [],
"output_files": [],
"created_at": "2025-12-31T00:00:00Z",
"updated_at": "2025-12-31T01:00:00Z"
}
Tasks
Create Task
Create a task, optionally assigned to a person, an agent or a team.
POST
/
api
/
v1
/
tasks
curl --location --request POST 'https://api.wordsmith.ai/api/v1/tasks' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"priority": "high",
"assigned_to": "11111111-2222-3333-4444-555555555555",
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
]
}'
const response = await fetch("https://api.wordsmith.ai/api/v1/tasks", {
method: "POST",
headers: {
Authorization: "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"priority": "high",
"assigned_to": "11111111-2222-3333-4444-555555555555",
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
]
}),
});
const data = await response.json();
console.log(data);
import requests
url = "https://api.wordsmith.ai/api/v1/tasks"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
}
payload = {
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"priority": "high",
"assigned_to": "11111111-2222-3333-4444-555555555555",
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
]
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
{
"id": "9f8e7d6c-5b4a-3210-9876-543210fedcba",
"display_id": "#12",
"task_number": 12,
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"additional_context": "Counterparty has pushed back twice on liability caps.",
"status": "in_progress",
"priority": "high",
"team": {
"id": "1a2b3c4d-5e6f-7081-9200-aabbccddeeff",
"name": "Legal"
},
"creator": {
"id": "11111111-2222-3333-4444-555555555555",
"name": "Jane Doe",
"email": "jane@example.com"
},
"assigned_to": {
"id": "11111111-2222-3333-4444-555555555555",
"name": "Jane Doe",
"email": "jane@example.com"
},
"assigned_agent": null,
"assigned_team": null,
"matter": null,
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
],
"visibility": "customer",
"archived": false,
"draft": false,
"involved_people": [
{
"id": "11111111-2222-3333-4444-555555555555",
"name": "Jane Doe",
"email": "jane@example.com",
"role": "assignee",
"access_level": "write"
}
],
"shared_teams": [],
"linked_items": [],
"input_files": [],
"output_files": [],
"created_at": "2025-12-31T00:00:00Z",
"updated_at": "2025-12-31T01:00:00Z"
}
assigned_to and assigned_agent are independent — a task can carry both a human owner and an executing agent. Set draft: true to stage a task for review; accept it later by patching draft to false.
Tasks are created in your organization’s default task team. Choosing a different team, and creating a task as private, are not supported in v1.
Body parameters
string
required
Short summary of the work to be done.
string
The primary instruction for whoever picks the task up.
string (uuid)
Create this task as a subtask of another task.
string (uuid)
Person responsible for the task.
string (uuid)
Agent that should execute the task. Independent of assigned_to — a task may have both.
string (uuid)
Team the task is assigned to. Grants that team editor access.
string (uuid)
Matter to file the task under.
enum
Initial status. Defaults to the team’s first status.
enum
Task priority.
string
Due date as an ISO 8601 timestamp, e.g. “2026-03-22T17:00:00Z”.
array
Free-form labels.
array
Chats, reviews, reports or other tasks to link.
boolean
Create as a draft rather than a committed work item. Accept later with a PATCH of draft=false.
curl --location --request POST 'https://api.wordsmith.ai/api/v1/tasks' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"priority": "high",
"assigned_to": "11111111-2222-3333-4444-555555555555",
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
]
}'
const response = await fetch("https://api.wordsmith.ai/api/v1/tasks", {
method: "POST",
headers: {
Authorization: "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"priority": "high",
"assigned_to": "11111111-2222-3333-4444-555555555555",
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
]
}),
});
const data = await response.json();
console.log(data);
import requests
url = "https://api.wordsmith.ai/api/v1/tasks"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
}
payload = {
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"priority": "high",
"assigned_to": "11111111-2222-3333-4444-555555555555",
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
]
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
{
"id": "9f8e7d6c-5b4a-3210-9876-543210fedcba",
"display_id": "#12",
"task_number": 12,
"title": "Review the Acme NDA",
"description": "Check the indemnity and termination clauses.",
"additional_context": "Counterparty has pushed back twice on liability caps.",
"status": "in_progress",
"priority": "high",
"team": {
"id": "1a2b3c4d-5e6f-7081-9200-aabbccddeeff",
"name": "Legal"
},
"creator": {
"id": "11111111-2222-3333-4444-555555555555",
"name": "Jane Doe",
"email": "jane@example.com"
},
"assigned_to": {
"id": "11111111-2222-3333-4444-555555555555",
"name": "Jane Doe",
"email": "jane@example.com"
},
"assigned_agent": null,
"assigned_team": null,
"matter": null,
"complete_by": "2026-01-01T00:00:00Z",
"tags": [
"nda",
"urgent"
],
"visibility": "customer",
"archived": false,
"draft": false,
"involved_people": [
{
"id": "11111111-2222-3333-4444-555555555555",
"name": "Jane Doe",
"email": "jane@example.com",
"role": "assignee",
"access_level": "write"
}
],
"shared_teams": [],
"linked_items": [],
"input_files": [],
"output_files": [],
"created_at": "2025-12-31T00:00:00Z",
"updated_at": "2025-12-31T01:00:00Z"
}
⌘I