This guide explains how to retrieve campaign analytics and recipient engagement data using the Snov.io API.
The Analytics and Reporting API in Snov.io provides access to your outreach performance data. Retrieve campaign progress, engagement metrics, and recipient activity across email and LinkedIn campaigns through API requests.
1) Monitor campaign results throughout email and LinkedIn
2) Sync recipient engagement to your CRM
3) Build internal dashboards and reports
4) Coordinate workflows based on replies, opens, or clicks
Check campaigns & progress
View all campaigns
Retrieve a list of all campaigns in your Snov.io account, including their IDs and basic details.
Use this method to get campaign IDs needed to request data in other methods.
What data it provides:
- Campaign ID
- Campaign name
- Campaign status
- Creation date
View campaign progress
Check the current status and completion progress of a specific campaign.
Use this method to monitor whether a campaign is running, completed, paused, or requires attention.
Required parameter:
campaign_id— the campaign ID
What data it provides:
status: Current campaign status (active, paused, completed, archived)progress: Shows the percentage of prospects who reached the last sequence step, and the percentage for whom the campaign ended early due to bounce, reply, autoreply, unsubscribe, deletion, or manual removalunfinished: Number of recipients scheduled to receive upcoming sequence steps
Campaign statistics & reports
Use the following methods to retrieve campaign engagement and performance metrics.
Get campaign analytics
Retrieve aggregated performance statistics across your campaigns.
Use this method to build reports, monitor outreach KPIs, and sync campaign stats to external dashboards or analytics tools.
Required parameters:
Specify the date range for which you want to retrieve statistics.
date_from— start date of the reporting period (YYYY-MM-DD)date_to— end date of the reporting period (YYYY-MM-DD)
Optional parameters act as filters to narrow the scope of returned data.
campaign_id— retrieve analytics for a specific campaigncampaign_owner— retrieve analytics for a specific team membersender_email— retrieve analytics for a specific sender email accountsender_linkedin— retrieve analytics for a specific LinkedIn profile
What data it provides:
The response contains aggregated performance data across both email and LinkedIn channels:
- General outreach metrics: Total prospects reached, scheduled emails, emails sent, and total bounces detected
- Email engagement metrics: Opens, clicks, replies, unsubscribes, open rate, click rate, and reply rate
- LinkedIn activity metrics: Connection requests sent, connections accepted, messages sent, and replies received
Get campaign recipients' activity
Retrieve detailed engagement data for all recipients in a campaign, including email and LinkedIn interactions.
Use this method to sync engagement data to your CRM, analytics platform, or reporting tools.
Required parameter:
campaign_id— the campaign ID
What data it provides:
- Prospect details: name, email address
- Per-recipient email activity: emails sent, opened, clicked, replied, bounced
- Per-recipient LinkedIn activity: connection requests sent and accepted, messages sent, and replies received
- Timestamps for each engagement event
Get replies from a campaign
Retrieve email replies received in a specific campaign.
Use this method to pull reply data into your CRM or automation workflows when you need email replies only, without LinkedIn reply data. To get LinkedIn replies (connection request, direct message, InMail), use the Get all campaign replies method.
Required parameter:
campaign_id— the campaign ID
What data it provides:
- Prospect details: name, email address
- Email subject and message body
- Sequence step that triggered the reply (
step_number) - AI-detected sentiment of the reply (
mood) - Reply timestamp
Get all campaign replies
Retrieve all replies received in a specific campaign, across both email and LinkedIn channels.
Use this method to monitor prospect responses and feed reply data into your CRM or automation workflows.
Required parameter:
campaign_id— the campaign ID
What data it provides:
- Prospect details: name, email address
- Reply type: email reply or LinkedIn reply
- Email subject and message body
- LinkedIn reply content
- Sequence step that triggered the reply (
step_number) - AI-detected sentiment of the reply (
mood) - Reply timestamp
Get email opens
Retrieve data about recipients who opened emails in a campaign.
Use this method to monitor email engagement and measure open rates.
Required parameter:
campaign_id— the campaign ID
What data it provides:
- Prospect details: name, email address
- Number of times the email was opened
- Timestamp of the first open and the most recent open
Get link clicks
Retrieve data about recipients who clicked links in campaign emails.
Use this method to track click-through engagement and content performance.
Required parameter:
campaign_id— the campaign ID
What data it provides:
- Prospect details: name, email address
- URL that was clicked
- Number of clicks per recipient
- Click timestamp
Get sent emails
Retrieve a list of emails sent within a campaign.
Use this method to validate delivery records and track sending activity.
Required parameter:
campaign_id— the campaign ID
What data it provides:
- Prospect details: name, email address
- Sender account used
- Email subject
- Sequence step number
- Send timestamp
Get completed prospects
Retrieve prospects who have completed all steps in a campaign sequence.
Use this data to identify recipients who finished the sequence and may need follow-up or enrollment in another campaign.
Required parameter:
campaign_id— the campaign ID
What data it provides:
- Prospect details: name, email address
- Date the prospect completed the sequence
- Final sequence step reached
Sorry about that 😢
How can we improve it?