Activities

Log and track interactions — calls, emails, meetings, and tasks — linked to leads or accounts.

GET/activities

List activities for a specific lead or account.

Query Parameters

ParamTypeDescription
entityTypestringRequired: "lead" or "account"
entityIduuidRequired: ID of the lead or account
pageintPage number (default: 1)
pageSizeintItems per page (default: 50)
Request
curl -X GET "https://kashew.ai/api/v1/activities?entityType=lead&entityId=a1b2c3d4-..." \
  -H "Authorization: Bearer kshw_xxxxxxxx_xxxxx..."
200Response
{
  "activities": [
    {
      "id": "uuid",
      "type": "Call",
      "subject": "Discovery call with CTO",
      "description": "Discussed pain points around pipeline visibility",
      "status": "completed",
      "due_date": "2026-05-20T14:00:00Z",
      "created_at": "2026-05-19T10:30:00Z"
    }
  ],
  "totalCount": 12,
  "page": 1,
  "pageSize": 50
}
POST/activities

Log a new activity.

Request Body
{
  "type": "Call",
  "subject": "Follow-up call",
  "description": "Discussed pricing and next steps",
  "dueDate": "2026-05-22T10:00:00Z",
  "entityType": "lead",
  "entityId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}

Activity Types

TypeDescription
CallPhone call (discovery, follow-up, demo)
EmailEmail sent or received
MeetingIn-person or video meeting
TaskInternal task (prepare proposal, send contract)
PUT/activities/:id

Update an activity (mark as completed, change due date, etc.).

curl -X PUT "https://kashew.ai/api/v1/activities/uuid-..." \
  -H "Authorization: Bearer kshw_xxxxxxxx_xxxxx..." \
  -H "Content-Type: application/json" \
  -d '{"status": "completed", "description": "Call completed — moving to proposal stage"}'
DELETE/activities/:id

Delete an activity.