Tasks & Activities API

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/tasks

Query 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/:id

Create a Task

POST /v1/tasks

Request 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) and before_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/:id

Complete a Task

PUT /v1/tasks/:id/complete

Marks 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/:id

Activities

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/activities

Query 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/activities

Request 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/feed

Returns 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_id is a valid user in your workspace with active access.
  • Activity not linking to contact: Ensure the contact_id exists. 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.

Was this article helpful?