← All tools
instagram · catalog · accountsolari:read

solari catalog instagram account posts

Posts from an Instagram account.

MCP tool
solari_catalog_instagram_account_posts
CLI
solari catalog instagram account posts
Access
solari:read
Plans
  • Free Trial
  • Plus
  • Pro
  • Enterprise
Credit
1

Overview

List an Instagram account's posts with media, tags, and likes. You can filter by date or format.

When to use it — When you need more posts than the profile preview, or a date range or format.

What comes back — Posts, including carousel slides and tagged accounts or hashtags.

Parameters

account_idstringoptional
Pass account_id or username.uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
usernamestringoptional
Instagram username. Ignored when account_id is set.≤ 64 chars
limitintegeroptional
How many posts per page.default 121–200
offsetintegeroptional
How many posts to skip.default 0≥ 0
sincestringoptional
Only posts on or after this UTC date (YYYY-MM-DD).pattern ^\d{4}-\d{2}-\d{2}$
untilstringoptional
Only posts on or before this UTC date (YYYY-MM-DD).pattern ^\d{4}-\d{2}-\d{2}$
post_typeenumoptional
Limit to reel, video, photo, or carousel.Valuesreelvideophotocarousel

Response

Response

foundboolean
false if the username is not on Instagram.
account_id / usernamestring
The resolved account.
totalinteger
Number of posts matching the filters.
has_moreboolean
Whether there is another page.
itemsobject[]
Posts, newest first.
fetched_on_demandboolean
true when only the most recent posts are available so far.
collected_attimestamp
When the profile was last collected from Instagram (UTC).
posts_collected_attimestamp
How far the stored posts reach (UTC). Later posts are not in the catalog yet.
refreshes_regularlyboolean
Whether the account is re-collected on a schedule.
stored_post_count / profile_post_countinteger
Posts stored in the catalog vs. the post count shown on the profile. A much lower stored count means collection is incomplete.
refreshedboolean
true if a stored copy older than a day was re-collected for this call.
notestring | null
Why the result may be incomplete, or why found is false (the handle was renamed or deleted).

items[]

post_iduuid
SOLARI post id.
slugstring
Instagram shortcode.
urlstring
Public permalink.
post_typestring
reel, video, photo, or carousel.
posted_attimestamp
Published at (UTC).
textstring
Caption.
like_count / comment_count / play_countinteger
Engagement.
media_countinteger
Number of media items.
is_paid_partnershipboolean | null
Instagram paid-partnership label.
mediasobject[]
Every media in carousel order.
medias[].tagsobject[]
Accounts and hashtags tagged on the media.
thumbnail_urlstring
Thumbnail.
assetsobject[]
Media files in order. Each has asset_url, media_type, and video_duration.
assets[].asset_urlstring | null
Direct download link to the full-size image or video. Null when no file is stored.

Example

Request

$ solari catalog instagram account posts username=innisfreeofficial limit=2

Response · Long strings and repeated array entries are trimmed for readability.

{
  "found": true,
  "account_id": "018cabce-14cc-7544-8890-7811ec33ef74",
  "username": "innisfreeofficial",
  "fetched_on_demand": false,
  "total": 4196,
  "has_more": true,
  "items": [
    {
      "post_id": "01a06275-d974-7fda-98ee-dd3ee15b4dcf",
      "slug": "DcyMAmUh6FZ",
      "url": "https://www.instagram.com/p/DcyMAmUh6FZ/",
      "post_type": "reel",
      "posted_at": "2026-09-02T12:00:06+00:00",
      "text": "Deeply hydrated skin—NO OFF HOURS. 💚\nwherever the day takes MINGYU (@min9yu_k)—his hydration stays SUPERCHARGED ⚡️\n\nGreen Tea Ceramide Milk: Lightweight milky toner that won‘t clog your pores\nGreen Tea Ceramide Mist: Tou …",
      "like_count": 3224,
      "comment_count": 57,
      "play_count": 22467,
      "likes_hidden": false,
      "media_count": 1,
      "is_paid_partnership": false,
      "medias": [
        {
          "media_type": "video",
          "media_url": "https://smr-images-b.bzine.co/users/018cabce-14cc-7544-8890-7811ec33ef74/posts/01a06275-d974-7fda-98ee-dd3ee15b4dcf/medias/01a06275-db2b-77f7-a020-b4beb744771f.mp4",
          "thumbnail_url": "https://bzine.co/cdn-cgi/media/width=480,mode=frame,time=0ms/https://smr-images.bzine.co/users/018cabce-14cc-7544-8890-7811ec33ef74/posts/01a06275-d974-7fda-98ee-dd3ee15b4dcf/medias/01a06275-db2b-77f7-a020-b4beb744771f.m …",
          "video_duration": 23.868000030517578,
          "tags": []
        }
      ],
      "thumbnail_url": "https://bzine.co/cdn-cgi/media/width=480,mode=frame,time=0ms/https://smr-images.bzine.co/users/018cabce-14cc-7544-8890-7811ec33ef74/posts/01a06275-d974-7fda-98ee-dd3ee15b4dcf/medias/01a06275-db2b-77f7-a020-b4beb744771f.m …"
    },
    "… 1 more"
  ]
}

As an MCP call

{
  "name": "solari_catalog_instagram_account_posts",
  "arguments": {
    "username": "innisfreeofficial",
    "limit": 2
  }
}

Notes

  • since and until are UTC dates, and both ends are included.
  • post_type=reel is short-form video. video is a non-reel video.
  • The catalog can be sparse or stale. Run solari fetch instagram posts username=… (type=reels for views) to collect live and get the posts back directly.
  • When the requested dates run past posts_collected_at, an empty result does not mean the account posted nothing. Run solari fetch instagram posts username=… to collect the latest posts live.
  • When likes_hidden is true, do not use like_count. The author hid likes, so it is null or may not be the real count.

Machine-readable: /docs/tools/catalog-instagram-account-posts.md