Campaign performance metrics
Returns a list of campaigns with their performance metrics.
What is included per campaign:
- Campaign metadata (title, description, date range, platforms used)
- Metrics requested via the
metricsquery parameter
- Type: stringFormat: date-timestart
Date requiredStart of the reporting period (inclusive). Format:
YYYY-MM-DD. - Type: stringFormat: date-timeend
Date requiredEnd of the reporting period (inclusive). Format:
YYYY-MM-DD. - Type: array string[]metricsrequired
Specify one or more metric names to include in the response. Only the selected metrics will be returned within the
metricsobject for each result item.Supported values:
likes,comments,shares,clicks,saves,impressions,reach,engagements,views,totalInteractions,replies,reposts,potentialReach,videoViewTotalTime,crosspostedViews,crosspostedFacebookOnlyViews,engagementRate,postsCount,influencersCount,impressionsPerPost,estimatedValueGenerated,estimatedContentCost,estimatedRoi,cpe,cpm,paidLikes,paidComments,paidShares,paidClicks,paidImpressions,paidEngagements,paidEngagementRate,paidViews,paidReach,paidSaves,paidCpe,paidCpm,paidPostsCount,paidInfluencersCount,paidAdSpend,paidReturnOnAdSpend,paidInitialPlays,paidCost,trackingLinksClicks,trackingLinksConversions,trackingLinksConversionValue,affiliateLinksClicks,affiliateLinksConversions,affiliateLinksConversionRate,affiliateLinksSales,affiliateLinksCommissionEarned,affiliateLinksRoiMetric availability depends on the applied
platformorcontentTypefilters. Some metrics are restricted to specific content types (for example,crosspostedFacebookOnlyViewsis only available for Instagram Reels). Requesting unsupported metrics will result in a400error, along with a list of valid metrics for the current filters.Supported array formats:
param=a,b,c(comma-separated),param=a¶m=b(repeated key), orparam[]=a¶m[]=b(bracket syntax). - Type: array string[]instance
Ids Filter results to specific instances. When omitted, the request is evaluated against every instance associated with your OAuth client; supply one or more values to narrow the response to a subset. Values must be drawn from the set bound to your client credentials — requesting an instance outside that set returns
403withtype: ANL_00403.Supported array formats:
param=a,b,c(comma-separated),param=a¶m=b(repeated key), orparam[]=a¶m[]=b(bracket syntax). - Type: array number[] …50campaign
Ids Filter results to specific campaigns. When omitted, all campaigns are included.
Supported array formats:
param=a,b,c(comma-separated),param=a¶m=b(repeated key), orparam[]=a¶m[]=b(bracket syntax). - Type: array string[]enumplatform
Filter by top-level platform. Selecting a platform includes all its content types (e.g.
instagramincludesinstagram_post,instagram_reel,instagram_story).Cannot be combined with
contentType— provide only one of the two.When omitted (and
contentTypeis also omitted), all platforms are included.Supported array formats:
param=a,b,c(comma-separated),param=a¶m=b(repeated key), orparam[]=a¶m[]=b(bracket syntax).values- instagram
- tiktok
- facebook
- youtube
- twitter
- Type: array string[]enumcontent
Type Filter by specific content type for granular filtering beyond top-level platforms.
instagram_post,instagram_reel,instagram_story— specific Instagram content formatsfacebook_post,facebook_live,facebook_group,facebook_reel— specific Facebook content formatstiktok,youtube_video,youtube_shorts— platform-specific types
Cannot be combined with
platform— provide only one of the two.When omitted (and
platformis also omitted), all content types are included.Supported array formats:
param=a,b,c(comma-separated),param=a¶m=b(repeated key), orparam[]=a¶m[]=b(bracket syntax).values- instagram
_post - instagram
_reel - instagram
_story - facebook
_post - facebook
_live
- Type: stringenumdate
Basis Controls which date dimension is used for filtering.
post_date(default): filters by the date the content was originally published. Best for analyzing content output and creator activity over time.performance_date: returns metrics recorded within the requested date range, regardless of when the content was originally published. Best for understanding how campaigns performed during a specific reporting window.
Example: a post published on Jan 5 that receives engagement on Feb 10 will appear in a Feb 1–28 query with
performance_date, but in a Jan 1–31 query withpost_date.values- post
_date - performance
_date
- Type: numberlimitmin:1max:100
Maximum number of items to return per page. Choose any value on the first request, then keep it unchanged on every subsequent request that passes a
nextCursorfrom this endpoint. To change the page size, start a new walk by omittingnextCursor. - Type: string | nullnext
Cursor Opaque cursor returned by the previous page. Omit on the first request. Cursors are tied to the query parameters of the request that produced them; to paginate, keep every parameter identical across requests and only vary
nextCursor. To change filters, sort, orlimit, start a new walk by omittingnextCursor. - Type: stringsort
Property Metric or field name to sort results by. Use
sortDirection(ASCorDESC, default:DESC) to control the order.Supported values:
likes,comments,shares,clicks,saves,impressions,reach,engagements,views,totalInteractions,replies,reposts,potentialReach,videoViewTotalTime,crosspostedViews,crosspostedFacebookOnlyViews,engagementRate,postsCount,influencersCount,impressionsPerPost,estimatedValueGenerated,estimatedContentCost,estimatedRoi,cpe,cpm,paidLikes,paidComments,paidShares,paidClicks,paidImpressions,paidEngagements,paidEngagementRate,paidViews,paidReach,paidSaves,paidCpe,paidCpm,paidPostsCount,paidInfluencersCount,paidAdSpend,paidReturnOnAdSpend,paidInitialPlays,paidCost,trackingLinksClicks,trackingLinksConversions,trackingLinksConversionValue,affiliateLinksClicks,affiliateLinksConversions,affiliateLinksConversionRate,affiliateLinksSales,affiliateLinksCommissionEarned,affiliateLinksRoi,firstPostDate,lastPostDateNote: When
platformorcontentTypefilters are applied, only metrics supported by the selected content types are accepted as sort properties. The API returns an error with the valid list when an unsupported sort property is used with a filter. - Type: stringenumsort
Direction Sort direction.
values- A
S C - D
E S C
- application/json
- application/problem+json
- application/problem+json
- application/problem+json
- application/problem+json
curl 'https://reporting.api.later.com/v2/campaigns/performance?startDate=2025-01-01&endDate=2025-12-31&metrics=&instanceIds=&campaignIds=1&platform=instagram&contentType=instagram_post&dateBasis=post_date&limit=50&nextCursor=null&sortProperty=&sortDirection=DESC' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN'
{
"data": [
{
"campaignId": 49761,
"campaignName": "Summer Collection 2024",
"instanceId": "instance_abc",
"description": "Seasonal product launch",
"firstPostDate": "2024-06-01T00:00:00.000Z",
"lastPostDate": "2024-08-15T00:00:00.000Z",
"uniqueContentTypes": [
"instagram_post",
"tiktok"
],
"metrics": {
"impressions": 45200,
"engagements": 3200,
"reach": 38000,
"engagementRate": 7.08,
"clicks": 1500,
"postsCount": 42,
"influencersCount": 12,
"impressionsPerPost": 1076.19,
"estimatedValueGenerated": 28000,
"estimatedContentCost": 5000,
"estimatedRoi": 5.6,
"cpe": 1.56,
"cpm": 110.62,
"paidImpressions": 12800,
"paidEngagements": 1100,
"paidEngagementRate": 8.59,
"paidClicks": 420,
"paidPostsCount": 8,
"paidInfluencersCount": 4,
"paidCpe": 3.12,
"paidCpm": 265.63,
"paidAdSpend": 3400,
"paidReturnOnAdSpend": 2.8,
"trackingLinksClicks": 850,
"trackingLinksConversions": 42,
"trackingLinksConversionValue": 12600,
"affiliateLinksClicks": 1200,
"affiliateLinksConversions": 68,
"affiliateLinksConversionRate": 5.67,
"affiliateLinksSales": 5400,
"affiliateLinksCommissionEarned": 540,
"affiliateLinksRoi": 9
}
}
],
"nextCursor": "eyJ2ZXJzaW9uIjoxfQ"
}