Skip to content

Tasks

Tasks let you create follow-up reminders and action items linked to contacts.


List Contact Tasks

GET /contacts/{contact_id}/tasks

Returns tasks linked to a specific contact.

Query Parameters

ParameterTypeDefaultDescription
statusstringFilter by status (open, completed, overdue)

Example

Terminal window
curl "https://be.graph8.com/api/v1/contacts/12345/tasks?status=open" \
-H "Authorization: Bearer $API_KEY"

Response

{
"data": [
{
"id": "task-abc",
"title": "Send proposal",
"description": "Draft and send the enterprise proposal.",
"status": "open",
"priority": 2,
"due_date": "2026-03-05T00:00:00Z",
"assignee_id": "user-123",
"entity_type": "contact",
"entity_id": "12345",
"created_at": "2026-02-25T10:00:00Z",
"updated_at": "2026-02-25T10:00:00Z"
}
]
}

List All Tasks

GET /tasks

Returns all tasks across the organization, with optional filters.

Query Parameters

ParameterTypeDefaultDescription
statusstringFilter by status
priorityintegerFilter by priority (0=none, 1=urgent, 2=high, 3=normal, 4=low)
assignee_idstringFilter by assignee
searchstringSearch in title and description

Create Task

POST /contacts/{contact_id}/tasks

Request Body

FieldTypeRequiredDescription
titlestringYesTask title
descriptionstringNoTask details
due_datestringNoISO 8601 due date
assignee_idstringNoUser ID to assign
priorityintegerNo0=none, 1=urgent, 2=high, 3=normal, 4=low

Example

Terminal window
curl -X POST "https://be.graph8.com/api/v1/contacts/12345/tasks" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"title": "Send proposal", "due_date": "2026-03-05", "priority": 2}'

Update Task

PATCH /tasks/{task_id}

Supports partial updates. Send only the fields you want to change.


Delete Task

DELETE /tasks/{task_id}

Returns 204 No Content on success.