PublicApiGetCampaignAnalytics
curl --request GET \
--url https://sandbox.api.app.firstsales.io/api/v1/organizations/{orgId}/workspaces/{wsId}/campaigns/{campaignId}/analytics \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://sandbox.api.app.firstsales.io/api/v1/organizations/{orgId}/workspaces/{wsId}/campaigns/{campaignId}/analytics', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"campaignId": "<string>",
"startedAt": "<string>",
"lastUpdatedAt": "<string>",
"windowStart": "<string>",
"windowEnd": "<string>",
"totalContacts": 4503599627370495,
"goalKpis": {
"goalsAchieved": 4503599627370495,
"goalRate": 0.5,
"avgDaysToGoal": 123,
"byType": {
"demo": 4503599627370495,
"download": 4503599627370495,
"order": 4503599627370495,
"meeting": 4503599627370495
},
"revenue": {
"total": 123,
"currency": "<string>",
"orderCount": 123,
"otherCurrencies": [
{
"currency": "<string>",
"total": 123,
"orderCount": 123
}
]
}
},
"engagementKpis": {
"sent": 4503599627370495,
"delivered": 4503599627370495,
"opened": 4503599627370495,
"clicked": 4503599627370495,
"replied": 4503599627370495,
"bounced": 4503599627370495,
"unsubscribed": 4503599627370495,
"openRate": 0.5,
"clickRate": 0.5,
"replyRate": 0.5,
"bounceRate": 0.5,
"unsubscribeRate": 0.5
},
"contactPipeline": {
"attachedListContacts": 4503599627370495,
"attachedListActive": 4503599627370495,
"attachedListInactive": 4503599627370495,
"importedContacts": 4503599627370495,
"journeyStarted": 4503599627370495,
"journeyNotStarted": 4503599627370495,
"journeyCompleted": 4503599627370495,
"completedWithGoal": 4503599627370495,
"journeyBounced": 4503599627370495,
"journeyUnsubscribed": 4503599627370495,
"journeyInProgress": 4503599627370495
},
"upcomingPipeline": {
"next7Days": [
{
"date": "<string>",
"firstTouch": 4503599627370495,
"followup": 4503599627370495,
"total": 4503599627370495
}
],
"pendingBacklog": {
"pendingContacts": 4503599627370495,
"awaitingSchedule": 4503599627370495,
"draftJobsOpen": 4503599627370495,
"total": 4503599627370495
}
},
"outcomeProjection": {
"asOf": "<string>",
"denominator": "<string>",
"delivered": 4503599627370495,
"safelyWaiting": 4503599627370495,
"exhausted": 4503599627370495,
"unexplained": 4503599627370495,
"total": 4503599627370495,
"safelyWaitingCohorts": [
{
"count": 4503599627370495,
"reason": "<string>",
"retryable": true,
"nextAction": "<string>",
"nextReevaluation": "<string>"
}
],
"exhaustedCohorts": [
{
"count": 4503599627370495,
"reason": "<string>",
"retryable": true,
"nextAction": "<string>",
"nextReevaluation": "<string>"
}
]
},
"funnel": [
{
"count": 4503599627370495,
"pctOfSent": 0.5,
"dropoffPct": 0.5
}
],
"timeseries": [
{
"date": "<string>",
"sent": 4503599627370495,
"delivered": 4503599627370495,
"opened": 4503599627370495,
"replied": 4503599627370495,
"goals": 4503599627370495
}
],
"perStep": [
{
"stepId": 4503599627370496,
"stepName": "<string>",
"sent": 4503599627370495,
"opens": 4503599627370495,
"clicks": 4503599627370495,
"replies": 4503599627370495,
"goals": 4503599627370495,
"replyRate": 0.5,
"goalRate": 0.5,
"avgGoalRate": 0.5,
"variants": [
{
"templateId": "<string>",
"sent": 4503599627370495,
"opens": 4503599627370495,
"clicks": 4503599627370495,
"replies": 4503599627370495,
"goals": 4503599627370495,
"replyRate": 0.5,
"goalRate": 0.5
}
],
"promotion": {
"winnerTemplateId": "<string>",
"confidence": 0.5,
"promotedAt": "<string>"
}
}
],
"perSender": [
{
"connectorId": "<string>",
"email": "<string>",
"sent": 4503599627370495,
"bounced": 4503599627370495,
"bounceRate": 0.5,
"globalWarmupScore": 50
}
],
"abTest": {
"enabled": true,
"confidence": 0.5,
"lockedAt": "<string>",
"groups": {
"A": {
"sent": 4503599627370495,
"opens": 4503599627370495,
"openRate": 0.5
},
"B": {
"sent": 4503599627370495,
"opens": 4503599627370495,
"openRate": 0.5
}
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}Campaigns
PublicApiGetCampaignAnalytics
GET /api/v1/organizations//workspaces//campaigns//analytics
GET
/
api
/
v1
/
organizations
/
{orgId}
/
workspaces
/
{wsId}
/
campaigns
/
{campaignId}
/
analytics
PublicApiGetCampaignAnalytics
curl --request GET \
--url https://sandbox.api.app.firstsales.io/api/v1/organizations/{orgId}/workspaces/{wsId}/campaigns/{campaignId}/analytics \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://sandbox.api.app.firstsales.io/api/v1/organizations/{orgId}/workspaces/{wsId}/campaigns/{campaignId}/analytics', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"campaignId": "<string>",
"startedAt": "<string>",
"lastUpdatedAt": "<string>",
"windowStart": "<string>",
"windowEnd": "<string>",
"totalContacts": 4503599627370495,
"goalKpis": {
"goalsAchieved": 4503599627370495,
"goalRate": 0.5,
"avgDaysToGoal": 123,
"byType": {
"demo": 4503599627370495,
"download": 4503599627370495,
"order": 4503599627370495,
"meeting": 4503599627370495
},
"revenue": {
"total": 123,
"currency": "<string>",
"orderCount": 123,
"otherCurrencies": [
{
"currency": "<string>",
"total": 123,
"orderCount": 123
}
]
}
},
"engagementKpis": {
"sent": 4503599627370495,
"delivered": 4503599627370495,
"opened": 4503599627370495,
"clicked": 4503599627370495,
"replied": 4503599627370495,
"bounced": 4503599627370495,
"unsubscribed": 4503599627370495,
"openRate": 0.5,
"clickRate": 0.5,
"replyRate": 0.5,
"bounceRate": 0.5,
"unsubscribeRate": 0.5
},
"contactPipeline": {
"attachedListContacts": 4503599627370495,
"attachedListActive": 4503599627370495,
"attachedListInactive": 4503599627370495,
"importedContacts": 4503599627370495,
"journeyStarted": 4503599627370495,
"journeyNotStarted": 4503599627370495,
"journeyCompleted": 4503599627370495,
"completedWithGoal": 4503599627370495,
"journeyBounced": 4503599627370495,
"journeyUnsubscribed": 4503599627370495,
"journeyInProgress": 4503599627370495
},
"upcomingPipeline": {
"next7Days": [
{
"date": "<string>",
"firstTouch": 4503599627370495,
"followup": 4503599627370495,
"total": 4503599627370495
}
],
"pendingBacklog": {
"pendingContacts": 4503599627370495,
"awaitingSchedule": 4503599627370495,
"draftJobsOpen": 4503599627370495,
"total": 4503599627370495
}
},
"outcomeProjection": {
"asOf": "<string>",
"denominator": "<string>",
"delivered": 4503599627370495,
"safelyWaiting": 4503599627370495,
"exhausted": 4503599627370495,
"unexplained": 4503599627370495,
"total": 4503599627370495,
"safelyWaitingCohorts": [
{
"count": 4503599627370495,
"reason": "<string>",
"retryable": true,
"nextAction": "<string>",
"nextReevaluation": "<string>"
}
],
"exhaustedCohorts": [
{
"count": 4503599627370495,
"reason": "<string>",
"retryable": true,
"nextAction": "<string>",
"nextReevaluation": "<string>"
}
]
},
"funnel": [
{
"count": 4503599627370495,
"pctOfSent": 0.5,
"dropoffPct": 0.5
}
],
"timeseries": [
{
"date": "<string>",
"sent": 4503599627370495,
"delivered": 4503599627370495,
"opened": 4503599627370495,
"replied": 4503599627370495,
"goals": 4503599627370495
}
],
"perStep": [
{
"stepId": 4503599627370496,
"stepName": "<string>",
"sent": 4503599627370495,
"opens": 4503599627370495,
"clicks": 4503599627370495,
"replies": 4503599627370495,
"goals": 4503599627370495,
"replyRate": 0.5,
"goalRate": 0.5,
"avgGoalRate": 0.5,
"variants": [
{
"templateId": "<string>",
"sent": 4503599627370495,
"opens": 4503599627370495,
"clicks": 4503599627370495,
"replies": 4503599627370495,
"goals": 4503599627370495,
"replyRate": 0.5,
"goalRate": 0.5
}
],
"promotion": {
"winnerTemplateId": "<string>",
"confidence": 0.5,
"promotedAt": "<string>"
}
}
],
"perSender": [
{
"connectorId": "<string>",
"email": "<string>",
"sent": 4503599627370495,
"bounced": 4503599627370495,
"bounceRate": 0.5,
"globalWarmupScore": 50
}
],
"abTest": {
"enabled": true,
"confidence": 0.5,
"lockedAt": "<string>",
"groups": {
"A": {
"sent": 4503599627370495,
"opens": 4503599627370495,
"openRate": 0.5
},
"B": {
"sent": 4503599627370495,
"opens": 4503599627370495,
"openRate": 0.5
}
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>",
"details": {}
}
}Use this endpoint through the Developer API or the matching
firstsales CLI command when available. Responses use the stable FirstSales public error envelope.Authorizations
FirstSales developer API key bearer token (fs-key-*).
Path Parameters
Pattern:
^[0-9a-fA-F]{24}$Query Parameters
Available options:
7d, 30d, all Response
Successful response
Available options:
meeting, demo, download, order, reply, custom, default Required range:
0 <= x <= 9007199254740991Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
⌘I