Public profiles and posts

Instagram API

Read a public profile, its posts and reels, and the comments under a post. A username is enough to start.

Capabilities

Profiles, posts, and comments

For directories and social research. A username opens the profile. Posts and comments are separate calls.

Finding an account

Search resolves a name, a hashtag, or a place to an account you can open. See examples

The profile

A username returns the name, the bio, and the follower and following counts. Enough to start a directory or a brief. See examples

Posts and reels

The grid, the reels, and a single post are separate from the profile. Open them when you need the picture or the caption. See examples

Followers

Follower and following lists can be large, so they are their own call. See examples

Comments and likes

Comments are the conversation under a post. Likes are the accounts that marked it. See examples

Highlights

Highlights are the stories an account chose to keep. They sit beside the grid and are requested on their own. See examples

Shortened examples

Sample responses

The samples below are trimmed objects from the body of a response. A live call also includes a meta object, and the figures are examples.


{
  "id": "17841405822304914",
  "username": "natgeo",
  "full_name": "National Geographic",
  "profile_picture_url": "https://instagram.fdfw1-1.fna.fbcdn.net/v/t51.2885-19/11826035_167876430151828_1430798092_a.jpg",
  "followers_count": 196000000,
  "following_count": 0,
  "media_count": 10000,
  "bio": "Explore the world through the lens of National Geographic photographers.",
  "is_verified": true,
  "website": "https://www.nationalgeographic.com"
"..."
}

{
  "id": "1234567890123456789",
  "media_type": "IMAGE",
  "media_url": "https://instagram.fdfw1-1.fna.fbcdn.net/v/t51.2885-15/11826035_167876430151828_1430798092_n.jpg",
  "thumbnail_url": "https://instagram.fdfw1-1.fna.fbcdn.net/v/t51.2885-15/11826035_167876430151828_1430798092_n.jpg",
  "caption": "Morning coffee with a view of the Eiffel Tower.",
  "timestamp": "2025-09-28T08:00:00Z"
"..."
}

{
  "post_id": "2591023561234567890",
  "hashtags": [
    "#GrandCanyon",
    "#Sunset",
    "#TravelPhotography",
    "#NatureLovers"
  ]
}

{
  "id": "2591023561234567890",
  "media_type": "IMAGE",
  "media_url": "https://instagram.fdfw1-1.fna.fbcdn.net/v/t51.2885-15/11826035_167876430151828_1430798092_n.jpg",
  "thumbnail_url": "https://instagram.fdfw1-1.fna.fbcdn.net/v/t51.2885-15/11826035_167876430151828_1430798092_n.jpg",
  "caption": "A breathtaking view of the Grand Canyon at sunset.",
  "like_count": 150000,
  "comments_count": 1200,
  "timestamp": "2025-09-28T12:00:00Z"
"..."
}

{
  "post_id": "2591023561234567890",
  "comments": [
    {
      "id": "17896450831234567",
      "username": "john_doe",
      "text": "Absolutely stunning view! 😍",
      "timestamp": "2025-09-28T12:15:00Z",
      "like_count": 45
    },
    {
      "id": "17896450831234568",
      "username": "travel_addict",
      "text": "Adding this to my bucket list! 🌄",
      "timestamp": "2025-09-28T12:30:00Z",
      "like_count": 32
    }
  ]
}

{
  "post_id": "2591023561234567890",
  "likes": [
    {
      "username": "nature_lover99",
      "user_id": "17891234567890123"
    },
    {
      "username": "adventure_seeker",
      "user_id": "17891234567890124"
    },
    {
      "username": "world_explorer",
      "user_id": "17891234567890125"
    }
  ],
  "total_likes": 150000
}

How a call usually goes

Search or a username returns the profile. Posts, followers, and comments are further calls.

Documentation

The Instagram docs show a profile, a post, and comments in Shell, JavaScript, PHP, and Python.

Code samples

A sample for each endpoint, in Shell, JavaScript, PHP, and Python.

View documentation

Why SteadyAPI

A public account as JSON

Name, posts, and comments are separate calls. A username is enough to start.

The profile is enough to start

Name, bio, and counts identify an account. The posts can wait until you know it is the right one.

Just the JSON

You get JSON for a public account. The docs show the call in Shell, JavaScript, PHP, and Python.

Open a post on purpose

Followers and comments are requested for the account or the post you name. A search does not drag them along.

Shared with the rest of the account

Instagram uses the same SteadyAPI key, and the same monthly plan, as the other APIs.

Pricing

Same plans, whole catalog

Plans cover the whole SteadyAPI catalog, not only this API. The monthly allowance is on the table. For a larger volume, email [email protected].

Starter
$14.95
$19.95
per month
Developer Popular
$39.95
$59.95
per month
Business
$89.95
$99.95
per month
Enterprise
$299.95
$499.95
per month
Start 7-Day TrialStart 7-Day TrialStart 7-Day TrialStart 7-Day Trial
Requests per month10,000250,0002,500,000
Stock Market API
Options Data API
Crypto Data API
AliExpress API
Reddit API
Booking.com API
Real Estate API
Baseball (MLB) API
Hockey API
Football API
Amazon API
eBay API
Walmart API
Instagram API
Twitter / X API
TikTok API
YouTube API
AutoHub API
ScrapeFlow
Commercial Use
Optional overage rate*$1.50 per 1,000 requests$0.50 per 1,000 requests$0.09 per 1,000 requests
Overage capup to 50,000 extraup to 1,250,000 extraup to 12,500,000 extra
Starter
$11.96
$14.35
per month$143.52 billed yearly
Developer Popular
$31.96
$40.00
per month$383.52 billed yearly
Business
$71.96
$90.00
per month$863.52 billed yearly
Enterprise
$320.83
$400.00
per month$3,849.95 billed yearly
Start 7-Day TrialStart 7-Day TrialStart 7-Day TrialStart 7-Day Trial
Requests per month10,000250,0002,500,000
Stock Market API
Options Data API
Crypto Data API
AliExpress API
Reddit API
Booking.com API
Real Estate API
Baseball (MLB) API
Hockey API
Football API
Amazon API
eBay API
Walmart API
Instagram API
Twitter / X API
TikTok API
YouTube API
AutoHub API
ScrapeFlow
Commercial Use
Optional overage rate*$1.50 per 1,000 requests$0.50 per 1,000 requests$0.09 per 1,000 requests
Overage capup to 50,000 extraup to 1,250,000 extraup to 12,500,000 extra

* Overage stays off until you turn it on in Billing, and only for Stripe card subscriptions. Usage is counted in monthly periods that start on your billing day, yearly plans included. Requests past the included limit are billed after the period ends, up to the cap. If you switch plans during a period, the limit and overage rate of the plan you are on when that period ends apply to the whole period.

Also on the blog

From the blog

These posts come from across SteadyAPI, so the one at the top may be about a different API. The reference for this page is the documentation above.

How to Read TikTok Video Comments Using SteadyAPIOct 05, 2026

How to Read TikTok Video Comments Using SteadyAPI

Read TikTok comments 20 at a time. Video 7106594312292453675 has 1269 comments. The next cursor is the string 20.

READ MORE
How to Search Rental Listings Using SteadyAPIOct 14, 2026

How to Search Rental Listings Using SteadyAPI

Search rental listings by location. Show price.display, and move to the next page with offset.

READ MORE
How to Get a Property Estimate Using SteadyAPIOct 14, 2026

How to Get a Property Estimate Using SteadyAPI

Current and historical value for one property id. The optional bounds are calendar dates, not year counts.

READ MORE
How to Read a Tweet Using SteadyAPIOct 13, 2026

How to Read a Tweet Using SteadyAPI

Read one tweet by id. The text and counts are on legacy. meta.reply_count is how many replies were included.

READ MORE