AISalesAgent

List AI Sales Agent lead activity

Changed on

Get per-lead event history (emails sent, opens, replies, clicks, bounces, opportunity status) for all campaigns of the AI Sales Agent. Leads are ordered by email ascending and paginated with a cursor. When start_date and end_date are omitted, the response covers all-time data.

Requires one of the following scopes: ai_sdr:read, ai_sdr:all, all:read, all:all

get/api/v2/ai-agents/sales/{id}/leads/activity

Request

  • Base URL
    https://api.instantly.ai
  • URL
    https://api.instantly.ai/api/v2/ai-agents/sales/{id}/leads/activity
  • Auth
    HTTP bearer

Path parameters

idstring uuid required
Example:01a19e6f-7b46-75a1-8341-548c7c2668b7

AI Sales Agent ID

Query parameters

start_datestring date-time
Example:2026-11-02T22:44:28.614Z

Start date filter (ISO 8601). When omitted, results are not bounded by a start date (all-time data up to end_date).

end_datestring date-time
Example:2026-11-02T22:44:28.614Z

End date filter (ISO 8601). When omitted, results run up to the present.

filter'replied' | 'has_opportunity'
Example:replied

Optional filter for the lead set.

limitinteger
Example:100

Number of leads to return (default 100)

starting_afterstring
Example:lead@example.com

The email of the last lead in the previous page - used for pagination. You can use the value of the next_starting_after field from the previous response.

Response

Per-lead activity data with cursor pagination

totalinteger required

Total number of distinct leads with activity (after the filter is applied)

next_starting_afterstring

The filter for getting the next leads after this one. Omitted when there are no more leads.

Example response

{
  "items": [
    {
      "email": "lead@example.com",
      "emails_sent": 3,
      "open_count": 5,
      "replied": true,
      "reply_count": 1,
      "click_count": 2,
      "has_opportunity": true,
      "lt_interest_status": 1
    }
  ],
  "total": 250,
  "next_starting_after": "lead@example.com"
}

Changes