Get Instagram profile engagement audit Get Instagram profile engagement audit
GET /v1/instagram/profiles/{handle}/engagement
x-api-key* string header
API key (`sfk_...`)
handle* string required path
Instagram handle to look up, with or without a leading @.
min 1 chars · max 64 chars
Response fields 65 Expand all Collapse all Collapse all Endpoint-specific response payload.
Whether the profile was resolved. Engagement cannot be calculated for private or not-found profiles.
one of: found, private, not_found
data . canCalculateEngagement
boolean
data . profile . handle
string
data . profile . displayName
string nullable
data . profile . bio
string nullable
data . profile . avatarUrl
string nullable
data . profile . verified
boolean
data . profile . profileUrl
string
data . profile . privateAccount
boolean
data . profile . categoryName
string nullable
data . metrics . followers
number nullable
data . metrics . averageEngagementRatePercent
number nullable
data . metrics . medianEngagementRatePercent
number nullable
data . metrics . averageLikesPerPost
number nullable
data . metrics . averageCommentsPerPost
number nullable
data . metrics . commentToLikeRatio
number nullable
data . metrics . engagementVolatilityPercent
number nullable
data . metrics . bestPostShortcode
string nullable
data . metrics . worstPostShortcode
string nullable
data . metrics . qualityLabel
string nullable
Rough directional band by follower size — not an industry benchmark.
one of: excellent, strong, moderate, low, directional, null
data . metrics . qualityLabelNote
string nullable
data . posts [] . shortcode
string
data . posts [] . mediaType
string
one of: video, image, sidecar, unknown
data . posts [] . takenAt
number
data . posts [] . likeCount
number nullable
data . posts [] . commentCount
number nullable
data . posts [] . videoViewCount
number nullable
data . posts [] . engagementRatePercent
number nullable
(likes + comments) / followers * 100.
data . posts [] . isOutlierHigh
boolean
data . posts [] . isOutlierLow
boolean
data . posts [] . skipReason
string nullable
data . posts [] . postUrl
string
data . contentSegments [] . mediaType
string
one of: video, image, sidecar, unknown
data . contentSegments [] . postCount
integer
data . contentSegments [] . averageEngagementRatePercent
number nullable
How many of the recent posts had usable engagement counts.
data . sampleCoverage . totalRecentPosts
integer
data . sampleCoverage . usablePosts
integer
data . sampleCoverage . skippedPosts
integer
data . sampleCoverage . skippedReasons object
data . sampleCoverage . skippedReasons . missingLikes
integer
data . sampleCoverage . skippedReasons . missingComments
integer
data . sampleCoverage . skippedReasons . missingBoth
integer
data . formulaDescription
string
data . dataFreshnessNote
string nullable
Best-effort AI-generated narrative over the audit. Null when generation was unavailable or failed — never blocks or fails the request.
data . insight . headlineInsight
string
data . insight . engagementAssessment
string
data . insight . contentPatternObservations array
data . insight . contentPatternObservations []
string optional
data . insight . risksAndCaveats array
data . insight . risksAndCaveats []
string optional
data . insight . recommendedExperiments array
data . insight . recommendedExperiments []
string optional
data . insight . apiUseCaseTeaser
string
Metadata describing the request and billing outcome.
Unique request identifier for tracing this API call.
meta . creditsCharged
integer
Credits charged for this request.
Public API version that served the response.
meta . cached
boolean optional
True when served from shared response cache. Credits still apply (full endpoint price); Age header may be present.