IG Hashtag Top Media
Updated: Aug 12, 2026
Copy for LLM
Represents a collection of the most popular photo and video IG Media objects that have been tagged with a hashtag.
Popularity is determined by a mix of views and viewer interaction using the same methodology that determines the top posts when searching for a hashtag on www.instagram.com.
Available for the Instagram API with Facebook Login.
Creating
This operation is not supported.
Reading
Returns the most popular photo and video IG Media objects that have been tagged with the hashtag.
The
media_url field is omitted for video media that contains copyrighted or licensed audio, including audio added from the Instagram audio library, or that has been flagged for a copyright violation. This applies to all video media, including media the app user owns. It is also omitted for reels whose owner has turned off reel downloads, on requests that read another user’s media: business discovery, tags, mentions, hashtag search, and collaborative media. That condition is evaluated against the reel’s owner, so it can apply to a reel the app user co-authored. All other fields are returned as normal. See IG Media for details.Requirements
| Type | Description |
|---|---|
instagram_basicIf the token is from a User whose Page role was granted via the Business Manager, one of the following permissions is also required: ads_management, business_management, or pages_read_engagement. | |
A User access token of a Facebook User who has been approved for tasks on the connected Facebook Page. |
Limitations
- This edge only returns public photos and videos.
- Will not return promoted/boosted/ads media.
- Responses are paginated with a maximum
limitof 50 results per page. - You can query a maximum of 30 unique hashtags within a 7 day period.
- You cannot request the
usernamefield on returned media objects. - This endpoint only returns an
aftercursor for paginated results; abeforecursor will not be included. In addition, theaftercursor value will always be the same for each page, but it can still be used to get the next page of results in the result set.
Syntax
GET /<IG_HASHTAG_ID>/top_media?user_id=<IG_USER_ID>&fields=<LIST_OF_FIELDS>Query String Parameters
<IG_USER_ID>(required) — The ID of the Instagram Business or Creator Account performing the query.<LIST_OF_FIELDS>— A comma-separated list of fields you want returned. See Returnable Fields.
Response
An array of IG Media objects. Excess results will be paginated.
Returnable Fields
You can use the
fields parameter to request the following fields on returned media objects:captionchildren(only returned for Album IG Media)comments_countidlike_count– field will be omitted if media owner has hidden like counts in it.)media_typemedia_url(not returned for Album IG Media)permalinktimestamp
Example Request
GET graph.facebook.com/17873440459141021/top_media
?user_id=17841405309211844
&fields=id,media_type,comments_count,like_count
Sample Response
{
"data": [
{
"id": "17880997618081620",
"media_type": "IMAGE",
"comments_count": 84,
"like_count": 177
},
{
"id": "17871527143187462"
"media_type": "IMAGE",
"comments_count": 24,
"like_count": 57
},
{
"id": "17896450804038745"
"media_type": "IMAGE",
"comments_count": 19,
"like_count": 36
},
... // Results truncated for clarity
],
"paging":
{
"cursors":
{
"after": "NTAyYmE4..."
},
"next": "https://graph.facebook.com/..."
}
}
Updating
This operation is not supported.
Deleting
This operation is not supported.