Docs
Instagram

Insights

Analytics and normalized metrics for Instagram media.

Fetch media analytics for a published Instagram destination. Metrics are mapped into the shared Onepostly insights shape used across platforms.

Requires instagram_business_manage_insights.

Request

curl "https://api.onepostly.com/v1/posts/POST_ID/insights" \
  -H "x-api-key: op_YOUR_KEY"

Optional: ?refresh=1 (or refresh=true) to bypass cache and refetch from Instagram.

Response includes one entry per destination under insights.destinations.

Normalized fields

FieldNotes
impressionsImpressions or views, depending on product
reachReach when available
likesLike count
commentsComment count
sharesShare count
savesSaves
playsViews / plays (useful for Reels)
engagementTotal interactions, or sum of likes + comments + shares + saves (null if all inputs are null)

Missing values are null (not 0), unless a composite field deliberately sums available siblings.

Available metrics vary by product (feed, Reels, Stories). Stories typically have a shorter-lived / sparser set.

Example response shape

{
  "insights": {
    "postId": "…",
    "status": "ready",
    "destinations": [
      {
        "destinationId": "…",
        "platform": "instagram",
        "status": "ready",
        "metrics": {
          "impressions": 4200,
          "reach": 3100,
          "likes": 180,
          "comments": 12,
          "shares": 9,
          "saves": 44,
          "plays": 4200,
          "engagement": 245
        }
      }
    ]
  }
}

Destination-level statuses may also be pending, failed, or unavailable (e.g. not published yet).

Errors / statuses

Code / statusMeaning
NOT_PUBLISHEDDestination not published yet
INSIGHTS_PERMISSIONMissing insights scope → reconnect
INSIGHTS_PENDINGMetrics not ready yet — retry later
INSIGHTS_FAILEDHard failure fetching metrics
MISSING_EXTERNAL_IDNo media id on the destination

Tips

  • Calling shortly after publish may return pending — Instagram needs time to aggregate
  • Prefer ?refresh=1 only when you need fresh numbers; otherwise cached snapshots are returned
  • For Stories, expect a shorter-lived / sparser metric set than feed or Reels

See also