Post performance metrics
Returns a paginated list of individual posts with their performance metrics.
What is included per post:
- Post metadata (ID, date, content type, content URL, image URL)
- Creator profile information
- Organic engagement metrics (engagements, impressions, engagement rate, estimated value, CPE, CPM)
- Paid media metrics (paid engagements, impressions, engagement rate, paid CPE, paid CPM)
All posts within the requested date range are returned, including those with zero metric values.
Pagination
Results are paginated. Use pageSize (default: 50, max: 100) and pageNumber (1-indexed) to navigate pages. The response includes a pagination object with page, pageSize, totalPages, and totalItems.
Sorting
Use sortProperty to sort by one of the supported fields and sortDirection (ASC or DESC, default: DESC) to control the order.
Supported sortProperty values: engagements, impressions, engagementRate, estimatedValueGenerated, cpe, cpm, postDate, paidEngagements, paidImpressions, paidEngagementRate, paidCpe, paidCpm
Metric naming
- Organic metrics use their plain name (e.g.
engagements,impressions,cpm) - Paid metrics are prefixed with
paid(e.g.paidEngagements,paidImpressions,paidCpm) - Tracking link metrics are prefixed with
trackingLinks(e.g.trackingLinksClicks,trackingLinksConversions) - Affiliate link metrics are prefixed with
affiliateLinks(e.g.affiliateLinksClicks,affiliateLinksSales,affiliateLinksRoi) - All metric fields are nullable —
nullindicates the metric is not available for the given data
- Type: stringFormat: date-time
start Date requiredStart of the reporting period (inclusive). Format:
YYYY-MM-DD. - Type: stringFormat: date-time
end Date requiredEnd of the reporting period (inclusive). Format:
YYYY-MM-DD. - Type: array string[]
instance Ids One or more instance IDs to limit the query scope. If not provided, the query includes all instances accessible with the API credentials.
Supported array formats:
param=a,b,c(comma-separated),param=a¶m=b(repeated key), orparam[]=a¶m[]=b(bracket syntax). - Type: array number[] …50
campaign 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[]enum
platform 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).valuesinstagram tiktok facebook youtube twitter
- Type: array string[]enum
content 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).valuesinstagram _post instagram _reel instagram _story facebook _post facebook _live
- Type: stringenum
date 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.valuespost _date performance _date
- Type: number
page Size min:1max:100Number of items per page.
- Type: number
page Number min:1max:500Page number (1-indexed).
- Type: string
sort Property Metric or field name to sort results by.
- Type: stringenum
sort Direction Sort direction.
valuesA S C D E S C
- application/json
- application/json
- application/json
curl 'https://reporting.api.later.com/v2/posts/performance?startDate=2024-01-01&endDate=2024-12-31&instanceIds=instance_abc&instanceIds=instance_def&campaignIds=49761&campaignIds=49802&platform=instagram&platform=tiktok&contentType=instagram_reel&contentType=tiktok&dateBasis=post_date&pageSize=50&pageNumber=1&sortProperty=impressions&sortDirection=DESC' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN'
{
"data": [
{
"campaignId": 49761,
"contentImageUrl": "https://example.com/posts/abc123.jpg",
"contentType": "instagram_post",
"contentUrl": "https://www.instagram.com/p/ABC123/",
"cpe": 0.24,
"cpm": 35.29,
"creatorId": 12345,
"creatorProfile": {
"contentType": "instagram_post",
"fullName": "Jane Smith",
"handleName": "janesmith",
"profileImage": "https://example.com/profiles/jane_ig.jpg",
"profileLink": "https://instagram.com/janesmith"
},
"engagementRate": 14.59,
"engagements": 1240,
"estimatedValueGenerated": 3200,
"impressions": 8500,
"instanceId": "instance_abc",
"paidCpe": 0.79,
"paidCpm": 57.69,
"paidEngagementRate": 7.31,
"paidEngagements": 380,
"paidImpressions": 5200,
"postDate": "2024-07-15T14:30:00.000Z",
"postId": 1234
}
],
"pagination": {
"page": 1,
"pageSize": 50,
"totalItems": 142,
"totalPages": 3
}
}