Instagram Comments API reference
A page of public comments on an Instagram post or reel, with a cursor. Takes a public URL, returns a cursor page, 8 credits a call.
This named API keeps Instagram fields in Instagram's own vocabulary. For a higher-level product page, see Instagram Comments API.
Endpoint
GET /v1/instagram/comments
Authorization: Bearer sv_live_... `POST` is also accepted with the same parameters in the request body. Send the key in the `Authorization` header, never in the query string.
Parameters
| Name | Type | Required | Notes |
|---|---|---|---|
url | string | yes | Public Instagram URL matching this API's input. |
cursor | string | no | Cursor returned by the previous page. |
limit | integer | no | Maximum items to return, up to 50. |
Sample Request
This is a copyable request shape. Replace the sample values with the public Instagram target or parameters your workflow uses.
curl -G 'https://api.sourcevine.io/v1/instagram/comments' \
-H 'Authorization: Bearer sv_live_...' \
--data-urlencode 'url=https://www.instagram.com/p/Dcn5O64y3xi/' \
--data-urlencode 'limit=20' Sample Response
A response this API returned, against the target above. Your values depend on the resource you ask about and when you ask.
{
"data": {
"url": "https://www.instagram.com/p/Dcn5O64y3xi/",
"cached": false,
"comments": [
{
"text": "OMG INSTAGRAM POSTING HIS VIDEO???",
"author": "cariba2904",
"commentId": "18082937354306739",
"likeCount": 4216,
"replyCount": 6,
"publishedAt": "2026-08-29T12:19:53Z"
},
{
"text": "so this is the other angle of that video when someone saw him in nyc street 😂",
"author": "alliana.jean",
"commentId": "18122494565509045",
"likeCount": 198,
"replyCount": 2,
"publishedAt": "2026-08-29T12:33:56Z"
},
{
"text": "I think Instagram is also moa 😂",
"author": "_.ah.098._",
"commentId": "17905366998490474",
"likeCount": 2325,
"replyCount": 3,
"publishedAt": "2026-08-29T12:27:41Z"
}
],
"fetchedAt": "2026-09-02T07:25:23Z",
"shortcode": "Dcn5O64y3xi",
"nextCursor": "{\"cached_comments_cursor\":\"18063984248772936\",\"bifilter_token\":\"GgYYiQEAIkUyP7FhQAATCTo1I5w_ALPEf_FVPkAAtWcFE1BiQABqnYQf1pw_AOL-tui7ZkAAgzrnByBnQABN7x-tuWFAAKwV1cbRcUEAihEOlajnPwA6Tpcpq50_ANn3hKW5sD8AU2rOZ5JeQACszza0GlNAAN2RTQaPoD8A5blDOG9pQADW8j0IYsM_AAA=\"}",
"commentCount": 15,
"cacheAgeSeconds": null,
"sourceTimestamp": null
},
"success": true,
"available": true
} Fields
| Field | Type | Notes |
|---|---|---|
shortcode | string | The public post or video id. |
comments | array | Public comments returned for the requested post. |
comments[].commentId | string | Platform comment or reply id. |
comments[].author | string | null | Public username only. No profile bio or contact fields. |
comments[].likeCount | integer | null | Public like count when the platform reports it. |
comments[].replyCount | integer | null | Reply count when Instagram reports it; null means unknown, not zero. Comment order can differ between pages fetched at different times. |
nextCursor | string | null | Pass as cursor to request the next page. |
fetchedAt | ISO datetime | When Sourcevine read the public page. |
sourceTimestamp | ISO datetime | null | The platform timestamp when it is available. |
cached | boolean | True when this answer repeats an identical request made moments earlier. |
cacheAgeSeconds | integer | Seconds since the reading was taken. |
Availability States
| Status | Charged | Client behavior |
|---|---|---|
available | yes for live reads | Use data. |
not_found | yes | Store the state and stop polling. |
private | yes | Store the state and stop polling. |
unsupported | no | Fix the URL or call the matching API. |
upstream_unavailable | no | Retry later with backoff. |
Unavailable resources return `success: true`, `available: false`, `availability`, and `data: null`. API or authentication failures return `success: false` with an `error` object.
Billing
A call costs 8 credits. A deleted, private or empty resource is charged like any lookup and says so. An unsupported URL or a read we could not complete is not charged. The `X-Credits-Charged` response header is the source of truth for what happened on that request.
Successful responses include `fetchedAt`, the time we read the platform.
What This API Does Not Return
- No contact or bio fields: Bios, email addresses, phone numbers, postal addresses and messenger handles are outside the response contract.
- No private data: Private accounts, restricted content and unavailable resources return typed availability instead of guessed data.
- No comments or downloads: List APIs return recent public post metadata and metrics. They do not return comment bodies, media files or hidden analytics.
Related
- Instagram API hub
- Instagram Comments API product page
- Quickstart
- Credits and billing
- Instagram Post Stats API reference
- Instagram Profile API reference
- Instagram Channel Posts API reference
- Instagram Search API reference
Last updated 1 September 2026