Instagram Profile API: public profile data and posts as JSON

Look up public Instagram profiles, their posts and profile search results through one API key, without building, proxying and maintaining your own Instagram scraper.

Buy credits

Use cases

Endpoints and cost

EndpointWhat it returnsCredits/callUSD/call (Freelance plan)
/v1/instagram/userProfile1$0.0017
/v1/instagram/basic_profileBasic Profile1$0.0017
/v1/instagram/user_post_countProfile Post Count1$0.0017
/v1/instagram/user_embedEmbed HTML1$0.0017
/v1/instagram/search_profilesSearch Instagram Profiles1$0.0017

Endpoint details

/v1/instagram/user

Profile 1,000 calls = 1,000 credits = $1.67 on the Freelance plan.

ParameterTypeRequiredDescription
handlestringyesInstagram handle
trimbooleannoSet to true to get a trimmed response
cache_max_agestringnoIf we have a response in the cache that is this many days old or newer, return the cached response (0 credits, with "cached": true and a "cached_at" timestamp).

Sample response (trimmed):

{
 "data": {
  "user": {
   "biography": "Building .com | The easiest way to get public social media data at scale",
   "bio_links": [
    {
     "title": "",
     "lynx_url": "https://l.instagram.com/?u=https%3A%2F%2Fx.com%2Fadrian_horning_&e=AT0KAd0qSCzNTxgxhgbcBgpBfjdbmbmY2tBez0k8r-ykg_husVDislRpwV7hphrBf5oKxgE2JMWF43ZAkx4abc9zz8...",
     "url": "https://x.com/adrian_horning_",
     "link_type": "external"
    }
   ],
   "biography_with_entities": {
    "raw_text": "Building .com | The easiest way to get public social media data at scale",
    "entities": []
   },
   "external_url": "https://x.com/adrian_horning_",
   "edge_followed_by": {
    "count": 24555
   },
   "fbid": "17841402777077586",
   "edge_follow": {
    "count": 110
   },
   "full_name": "Adrian Horning",
   "id": "2700692569",
   "is_business_account": true,
   "is_professional_account": true,
   "business_address_json": {
    "city_name": "Austin, Texas",
    "city_id": 106224666074625,
    "latitude": 30.26759,
    "longitude": -97.74299,
    "street_address": null,
    "zip_code": null
   },
   "category_name": "Entrepreneur",
   "is_private": false,
   "is_verified": false,
   "profile_pic_url": "https://scontent-lga3-1.cdninstagram.com/v/t51.2885-19/430086429_362220943449758_2621012714660517106_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_ht=scontent-lga3-1.cd...",
   "profile_pic_url_hd": "https://scontent-lga3

/v1/instagram/basic_profile

Basic Profile 1,000 calls = 1,000 credits = $1.67 on the Freelance plan.

ParameterTypeRequiredDescription
user_idstringnoInstagram user id
cache_max_agestringnoIf we have a response in the cache that is this many days old or newer, return the cached response (0 credits, with "cached": true and a "cached_at" timestamp).

/v1/instagram/user_post_count

Profile Post Count 1,000 calls = 1,000 credits = $1.67 on the Freelance plan.

ParameterTypeRequiredDescription
handlestringyesInstagram handle
allow_estimatedbooleannoSet to true to return scaled estimates when Instagram abbreviates counts for profiles with more than 10,000 posts. Defaults to false; false or omitted returns a

/v1/instagram/user_embed

Embed HTML 1,000 calls = 1,000 credits = $1.67 on the Freelance plan.

ParameterTypeRequiredDescription
handlestringyesInstagram handle

/v1/instagram/search_profiles

Search Instagram Profiles 1,000 calls = 1,000 credits = $1.67 on the Freelance plan.

ParameterTypeRequiredDescription
querystringyesThe profile name or username to search for.

Example: curl

curl -H "X-Scapi-Key: $SCAPI_KEY" "https://api.scrapall.bipsport.com/scapi/v1/instagram/user"

Example: Python

import os, requests
r = requests.get("https://api.scrapall.bipsport.com/scapi/v1/instagram/user",
    headers={"X-Scapi-Key": os.environ["SCAPI_KEY"]})
print(r.json())

FAQ

What if Instagram blocks my own scraper?

You call our REST endpoint instead of hitting Instagram from your server, so you do not manage proxies, sessions or logins yourself.

Do I need an Instagram account?

No. One Scrapall API key header is enough; no Instagram login or cookie is used on your side.

How do I pay and get my API key?

Open the Buy page, pick the Freelance plan and pay in USDT on TRC20 or ERC20. The key is shown once, right after the payment is confirmed on-chain.

How many credits does one call use?

The cost table on this page lists credits per call for each endpoint. The Freelance plan is $45 for 27,000 credits per 30 days.

Get an API key and credits

Full reference: all instagram endpoints.