Overview#
The Tasks & Activities API enables you to manage tasks, log activities (calls, emails, meetings, notes), and track work across your CRM. Tasks can be assigned to team members, linked to contacts or deals, and prioritized for efficient workflow management.
Tasks#
List Tasks#
GET /v1/tasksQuery Parameters#
- assignee_id (string) — Filter by assigned user.
- status (string) — Filter:
pending,in_progress,completed,cancelled. - priority (string) — Filter:
low,medium,high,urgent. - type (string) — Filter:
todo,call,email,meeting,follow_up. - due_before (string) — ISO 8601 date. Tasks due before this date.
- due_after (string) — ISO 8601 date. Tasks due after this date.
- related_to_type (string) — Filter by related resource type:
contact,deal,project. - related_to_id (string) — Filter by related resource ID.
- sort (string) — Sort:
due_date,priority,created_at,updated_at.
Example Request#
curl -X GET "https://app.automatenexuscrm.com/functions/v1/api/tasks?status=pending&priority=high&sort=due_date&limit=25" \
-H "Authorization: Bearer YOUR_API_KEY"Example Response#
{
"success": true,
"data": [
{
"id": "task_001",
"title": "Follow up with Acme Corp",
"description": "Send proposal revision based on feedback",
"status": "pending",
"priority": "high",
"type": "follow_up",
"assignee_id": "usr_abc123",
"assignee_name": "Sarah Johnson",
"due_date": "2026-03-25T17:00:00Z",
"related_to": {
"type": "deal",
"id": "deal_xyz789",
"name": "Enterprise License - Acme Corp"
},
"created_by": "usr_def456",
"created_at": "2026-03-20T10:00:00Z",
"completed_at": null
}
],
"meta": {"total": 12, "limit": 25, "has_more": false}
}Get a Task#
GET /v1/tasks/:idCreate a Task#
POST /v1/tasksRequest Body
- title (string, required) — Task title.
- description (string) — Detailed description. Supports markdown.
- assignee_id (string) — User ID to assign the task to.
- due_date (string) — Due date in ISO 8601 format.
- priority (string) — Priority level:
low,medium,high,urgent. Default:medium. - type (string) — Task type:
todo,call,email,meeting,follow_up. Default:todo. - related_to_type (string) — Type of related resource:
contact,deal,project. - related_to_id (string) — ID of the related resource.
- reminder (object) — Reminder settings with
type(email, push) andbefore_minutes.
Example#
curl -X POST "https://app.automatenexuscrm.com/functions/v1/api/tasks" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"title": "Send contract to TechStart",
"assignee_id": "usr_abc123",
"due_date": "2026-03-28T10:00:00Z",
"priority": "high",
"type": "follow_up",
"related_to_type": "deal",
"related_to_id": "deal_xyz789",
"reminder": {"type": "email", "before_minutes": 60}
}'Update a Task#
PUT /v1/tasks/:idComplete a Task#
PUT /v1/tasks/:id/completeMarks a task as completed and records the completion timestamp.
curl -X PUT "https://app.automatenexuscrm.com/functions/v1/api/tasks/task_001/complete" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"completion_note": "Contract sent via DocuSign"}'Delete a Task#
DELETE /v1/tasks/:idActivities#
Activities represent interactions with contacts and deals — calls, emails, meetings, and notes. Unlike tasks (which are forward-looking), activities are records of things that have already happened.
List Activities#
GET /v1/activitiesQuery Parameters
- type (string) — Filter:
call,email,meeting,note,sms. - contact_id (string) — Filter by contact.
- deal_id (string) — Filter by deal.
- user_id (string) — Filter by user who logged the activity.
- date_from (string) — ISO 8601 start date.
- date_to (string) — ISO 8601 end date.
Log an Activity#
POST /v1/activitiesRequest Body
- type (string, required) — Activity type:
call,email,meeting,note,sms. - subject (string) — Activity subject line.
- description (string) — Detailed notes or body content.
- contact_id (string) — Associated contact ID.
- deal_id (string) — Associated deal ID.
- duration (integer) — Duration in minutes (for calls and meetings).
- outcome (string) — Outcome:
connected,voicemail,no_answer,busy,scheduled,completed. - occurred_at (string) — When the activity occurred. Defaults to now.
Example — Log a Call#
curl -X POST "https://app.automatenexuscrm.com/functions/v1/api/activities" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "call",
"subject": "Discovery call with Jane Smith",
"description": "Discussed requirements for Q2 rollout. Interested in enterprise plan.",
"contact_id": "con_abc123",
"deal_id": "deal_xyz789",
"duration": 30,
"outcome": "connected"
}'Example — Log a Meeting#
curl -X POST "https://app.automatenexuscrm.com/functions/v1/api/activities" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "meeting",
"subject": "Product demo for Acme Corp",
"description": "Full platform demo with technical team. Follow up with pricing.",
"contact_id": "con_def456",
"deal_id": "deal_xyz789",
"duration": 60,
"outcome": "completed",
"attendees": ["con_def456", "con_ghi789"]
}'Activity Feed#
GET /v1/activities/feedReturns a unified activity feed showing all recent interactions across your workspace, sorted by most recent first. Useful for building dashboards and activity streams.
Troubleshooting#
- Task not appearing for assignee: Verify the
assignee_idis a valid user in your workspace with active access. - Activity not linking to contact: Ensure the
contact_idexists. Activities with invalid contact IDs are created but not linked. - Reminder not firing: Reminders require the assignee to have notification preferences enabled in their profile settings.