Create task
Create a Task on a customer's timeline for an Inbox or an Agent.
POST https://cotlet.dev/api/v1/gladly/customers/{customer_id}/tasks
write Confirm
Uses the Task Composer. The owner sees the Task in My Customers if they are assigned to that Inbox. Gladly cannot delete a Task after it is created, so check get_customer for an existing one first. Returns the Task ID. By default you confirm each call; you can switch that off for this tool.
Parameters
| Name | Type | Description |
|---|---|---|
| customer_id string required | string | Customer ID from search_customers or list_my_customers. |
| body string required | string | What the Task asks for. |
| assignee_inbox_id string | string | Inbox ID from list_assignees. |
| assignee_agent_id string | string | Agent ID from list_assignees. |
| due_at datetime required | datetime | Due date and time in ISO 8601. |
Request
curl -X POST https://cotlet.dev/api/v1/gladly/customers/o2sg-TMTSD2rTwMuxzewbA/tasks \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"body":"Confirm refund went out","assignee_inbox_id":"vZgCEQlDR6aQz_0HeWZ9_Q","due_at":"2026-10-23T17:00:00Z"}' result = client.call("gladly", "create_task", {"customer_id":"o2sg-TMTSD2rTwMuxzewbA","body":"Confirm refund went out","assignee_inbox_id":"vZgCEQlDR6aQz_0HeWZ9_Q","due_at":"2026-10-23T17:00:00Z"}) const result = await cotlet.call('gladly', 'create_task', {"customer_id":"o2sg-TMTSD2rTwMuxzewbA","body":"Confirm refund went out","assignee_inbox_id":"vZgCEQlDR6aQz_0HeWZ9_Q","due_at":"2026-10-23T17:00:00Z"}); cotlet call gladly create_task --data '{"customer_id":"o2sg-TMTSD2rTwMuxzewbA","body":"Confirm refund went out","assignee_inbox_id":"vZgCEQlDR6aQz_0HeWZ9_Q","due_at":"2026-10-23T17:00:00Z"}' Example response
{
"task_id": "pOVVdzweSumI4bFxjlT8LA",
"customer_id": "o2sg-TMTSD2rTwMuxzewbA",
"owner": "Billing inbox",
"due_at": "2026-10-23T17:00:00Z"
}