Instagram Location posts API
List public Instagram posts tagged at a location, ranked or most recent, with cursor pagination.
$1.20/1k req, pay per request, no subscription.
{"id": "3495710238412098765","shortcode": "C9zQ1kRoXaB","url": "https://www.instagram.com/p/C9zQ1kRoXaB/","author": "marcus.eats.nyc","authorVerified": false,"avatarUrl": "https://cdninstagram.com/marcus-profile.jpg","caption": "Sunday brunch with a view of the water, best table in the city","likes": 812,... 27 more fields}
Pricing
Instagram Location posts API pricing
Try it
Get Instagram location posts in one request
This sample shows 34 of 46 fields. See every field
{
"found": true,
"data": {
"nextCursor": "QVFDcXlkbG9jYXRpb25GZWVkQ3Vyc29y",
"posts": [
{
"id": "3495710238412098765",
"shortcode": "C9zQ1kRoXaB",
"url": "https://www.instagram.com/p/C9zQ1kRoXaB/",
"author": "marcus.eats.nyc",
"authorVerified": false,
"avatarUrl": "https://cdninstagram.com/marcus-profile.jpg",
"caption": "Sunday brunch with a view of the water, best table in the city",
"likes": 812,
"comments": 24,
"createdUtc": 1727654400,
"image": "https://cdninstagram.com/bk-bridge-park.jpg",
"mediaType": "photo",
"locationName": "Brooklyn Bridge Park"
},
{
"id": "3495710238412098912",
"shortcode": "C9zQ2mVoYcD",
"url": "https://www.instagram.com/p/C9zQ2mVoYcD/",
"author": "the.wandering.lens",
"authorId": "60293841284",
"authorVerified": true,
"authorPrivate": false,
"avatarUrl": "https://scontent.cdninstagram.com/v/t51.2885-19/wandering-lens-profile.jpg",
"caption": "Golden hour never disappoints at this spot",
"captionEdited": false,
"likes": 5340,
"comments": 112,
"createdUtc": 1727568000,
"image": "https://scontent.cdninstagram.com/v/t51.29350-15/brooklyn-bridge-park-golden-hour.jpg",
"videoUrl": "https://scontent.cdninstagram.com/v/t50.16885-16/brooklyn-bridge-park-golden-hour.mp4",
"mediaType": "video",
"productType": "clips",
"width": 1080,
"height": 1920,
"hasAudio": true,
"paidPartnership": false,
"countsHidden": false,
"locationId": "103912118089363",
"locationName": "Brooklyn Bridge Park",
"locationLat": 40.7024,
"locationLng": -73.9967,
"coauthors": [
{
"username": "nyc.skylines",
"userId": "60293841390",
"avatarUrl": "https://scontent.cdninstagram.com/v/t51.2885-19/nyc-skylines-profile.jpg"
}
]
}
]
}
}Full parameter and response reference - every field, type, and example for this endpoint.
Reference
One request, one response shape.
Every field you send and every field you get back, each with a real example.
Last verified 2026-10-24 · uptime and latency measured over 30d
Request body
JSON, posted to this endpoint.
- locationIdstring
103912118089363
Instagram location id, as returned by instagram.search_locations.
- cursorstring
Pagination cursor from a previous response's nextCursor.
- sortenum
recent
Order the posts by Instagram's top ranking or by newest first. Defaults to ranked.
Response
JSON, one example value per field.
- nextCursorstring
QVFDcXlkbG9jYXRpb25GZWVkQ3Vyc29y
Opaque cursor for the next page of posts, or null when there are no more. Pass it back as cursor to continue.
Public posts tagged at the location. Populated whenever the provider has data for the entity.
- altTextstring
Instagram's generated accessibility description of the media.
- audioIdstring
Instagram audio id of the sound; pass it to instagram.audio_reels as audioId to list reels that use it. Absent when the post has no sound.
- authorstring
marcus.eats.nyc
Username of the account that posted it, without the leading @. Populated whenever the provider has data for the entity.
- authorIdstring
The author's numeric Instagram account id, as a string.
- authorPrivateboolean
Whether the author's account is private.
- authorVerifiedboolean
false
Whether the author carries Instagram's verified badge.
- avatarUrlstring
https://cdninstagram.com/marcus-profile.jpg
Author's profile picture URL, as Instagram's CDN serves it.
- captionstring
Sunday brunch with a view of the water, best table in the city
Post caption text.
- captionEditedboolean
Whether the caption has been edited since posting.
- carouselCountinteger
Number of slides, present on carousel posts only.
- commentsinteger
24
Number of comments on the post.
- countsHiddenboolean
Whether the author has hidden the like and view counts.
- createdUtcnumber
1727654400
UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.
- hasAudioboolean
Whether the video carries an audio track.
- hashtagsstring[]
Hashtags carried in the caption, each including its leading #. Populated whenever the provider has data for the entity.
- heightinteger
Media height in pixels.
- idstring
3495710238412098765
The post's numeric Instagram media ID, as a string. Populated whenever the provider has data for the entity.
- imagestring
https://cdninstagram.com/bk-bridge-park.jpg
Post image or video thumbnail URL, as Instagram's CDN serves it. Populated whenever the provider has data for the entity.
- likesinteger
812
Number of likes on the post.
- locationIdstring
Instagram location id the post is tagged at.
- locationLatnumber
Latitude of the tagged location, in decimal degrees.
- locationLngnumber
Longitude of the tagged location, in decimal degrees.
- locationNamestring
Brooklyn Bridge Park
Name of the location the post is tagged at.
- mediaTypestring
photo
What the post is: photo, video or carousel.
- mentionsstring[]
Accounts @mentioned in the caption, each including its leading @.
- paidPartnershipboolean
Whether the post is tagged as a paid partnership.
- productTypestring
Instagram's own surface label for the post, such as feed, clips or carousel_container.
- shortcodestring
C9zQ1kRoXaB
The post's short code, the segment Instagram puts in its URL.
- soundAuthorstring
Credited artist of a licensed track, or the username of the account whose original audio it is. Absent when the post has no sound.
- soundTitlestring
Name of the sound. "Original audio" means the creator's own audio rather than a licensed track. Absent when the post has no sound.
- urlstring
https://www.instagram.com/p/C9zQ1kRoXaB/
Canonical URL of the post. Populated whenever the provider has data for the entity.
- videoUrlstring
Direct video file URL, present on video posts and reels only.
- widthinteger
Media width in pixels.
Accounts listed as coauthors of the post.
- avatarUrlstring
Coauthor's profile picture URL, as Instagram's CDN serves it.
- userIdstring
Instagram's numeric account id, as a string.
- usernamestring
Instagram username without the leading @.
Accounts tagged in the media.
- displayNamestring
Account display name.
- userIdstring
Instagram's numeric account id, as a string.
- usernamestring
Instagram username without the leading @.
- foundboolean
true
- reason"not_found"
Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.
FAQ
About the Instagram Location posts API
The AnyAPI Instagram Location posts API returns Instagram location posts data as normalized JSON from one POST call to /v1/run/instagram.location_posts. List public Instagram posts tagged at a location, ranked or most recent, with cursor pagination. AnyAPI returns one normalized schema whichever source serves it. It costs from $1.20 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 94.1% of Instagram location posts calls through AnyAPI succeeded, with a median response time of 3.7 seconds across 305 measured calls.
