Introduction
ScrapingBot provides a powerful web scraping API that handles both static and dynamic websites with ease. Our API supports JavaScript rendering, stealth proxies, AI-powered data extraction, and much more.
API Endpoint
https://scrapingbot.io/api/v1/scrape
Authentication
All API requests require an API key passed in the x-api-key
header.
curl "https://scrapingbot.io/api/v1/scrape?url=https://example.com" \ -H "x-api-key: YOUR_API_KEY"
Quick Start
Get started with a simple scraping request in seconds. Choose your preferred language below.
curl "https://scrapingbot.io/api/v1/scrape?url=https://example.com&render_js=true" \ -H "x-api-key: YOUR_API_KEY"
Response
{ "success": true, "url": "https://example.com", "html": "<!DOCTYPE html>...", "statusCode": 200, "creditsUsed": 5, "credits": 245000, "duration": "2.34", "requestHeaders": { ... }, "responseHeaders": { ... } }
URL *
The target URL to scrape. Must be a valid HTTP or HTTPS URL.
Parameter | url |
Type | String (URL-encoded) |
Required | Yes |
curl "https://scrapingbot.io/api/v1/scrape?url=https://example.com" \ -H "x-api-key: YOUR_API_KEY"
Render JavaScript
Use a headless browser to render JavaScript and capture dynamic content. Perfect for modern web applications built with React, Vue, or Angular.
Parameter | render_js |
Type | Boolean |
Default | true |
Cost | 5 credits (vs 1 credit for HTTP) |
curl "https://scrapingbot.io/api/v1/scrape?url=https://example.com&render_js=true" \ -H "x-api-key: YOUR_API_KEY"
Stealth Proxy
Use residential proxies with advanced stealth techniques to bypass bot detection on difficult websites. Recommended for sites with aggressive anti-scraping measures.
Parameter | stealth_proxy |
Type | Boolean |
Default | false |
Cost | 75 credits |
curl "https://scrapingbot.io/api/v1/scrape?url=https://difficult-site.com&stealth_proxy=true" \ -H "x-api-key: YOUR_API_KEY"
Screenshot
Capture a screenshot of the page. Requires render_js=true
.
Parameter | screenshot |
Type | String |
Values | visible_page | full_page |
Default | None (no screenshot) |
Example: Full Page Screenshot
curl "https://scrapingbot.io/api/v1/scrape?url=https://example.com&screenshot=full_page" \ -H "x-api-key: YOUR_API_KEY"
Response: The screenshot is returned as a base64-encoded PNG in the screenshot
field. You can save it to a file or display it directly.
JS Scenario (Browser Automation)
Automate complex browser interactions before scraping. Define a sequence of actions like clicking, scrolling, filling forms, and more.
Browser-only - requires render_js=true
.
Parameter | js_scenario |
Type | JSON Array |
Required | No |
Supported Actions
evaluate
Execute custom JavaScript code in the browser
{"evaluate": "document.title"}
click
Click an element by CSS selector
{"click": "#submit-button"}
wait
Wait for a fixed duration (milliseconds)
{"wait": 2000}
wait_for
Wait for an element to appear
{"wait_for": "#dynamic-content"}
wait_for_and_click
Wait for an element then click it
{"wait_for_and_click": "#load-more"}
scroll_x / scroll_y
Scroll horizontally or vertically (pixels)
{"scroll_y": 1000}
infinite_scroll
Automatically scroll to load dynamic content
{"infinite_scroll": {"max_count": 5, "delay": 1500, "end_click": {"selector": "#load-more"}}}
Example: Login and Scrape
curl -X POST "https://scrapingbot.io/api/v1/scrape" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "url": "https://example.com/login", "render_js": true, "js_scenario": [ {"fill": ["#username", "myuser"]}, {"fill": ["#password", "mypass"]}, {"click": "#login-button"}, {"wait_for": ".dashboard"}, {"scroll_y": 500} ] }'
Example: Infinite Scroll
curl -X POST "https://scrapingbot.io/api/v1/scrape" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "url": "https://example.com/feed", "render_js": true, "js_scenario": [ {"wait_for": ".post"}, {"infinite_scroll": { "max_count": 10, "delay": 2000 }} ] }'
💡 Tips
- Actions execute sequentially in order
- Failed steps don't stop execution - check the response for errors
- Use
wait_for
before interacting with dynamic elements - Combine with
screenshot
to debug scenarios visually - Infinite scroll with
max_count: 0
runs until no more content loads
AI Extraction
Use AI to extract specific data from the scraped HTML. Simply describe what you want to extract in natural language.
Parameter | ai_query |
Type | String |
Cost | +5 credits (in addition to scraping cost) |
Example: Extract Product Information
curl "https://scrapingbot.io/api/v1/scrape?url=https://store.com/product&ai_query=product%20price%20and%20title" \ -H "x-api-key: YOUR_API_KEY"
Response: Extracted data is returned in the ai_result
field as structured JSON.
{ "success": true, "ai_result": { "product_price": "$29.99", "title": "Premium Widget" }, "ai_query": "product price and title" }
Wait Options
Control how the browser waits for content to load. Only applies when render_js=true
.
Wait for Selector
Wait for a specific CSS selector to appear before capturing the page.
Parameter | wait_for |
Example | .product, #content, h1 |
curl "https://scrapingbot.io/api/v1/scrape?url=https://example.com&wait_for=%23content" \ -H "x-api-key: YOUR_API_KEY"
Additional Wait Time
Wait for additional milliseconds after page load. Useful for animations or delayed content.
Parameter | wait |
Type | Integer (milliseconds) |
Example | 2000 (wait 2 seconds) |
curl "https://scrapingbot.io/api/v1/scrape?url=https://example.com&wait=3000" \ -H "x-api-key: YOUR_API_KEY"
Wait for Browser Event
Choose what browser event to wait for before capturing content.
Parameter | wait_browser |
Values |
load - Full page loaddomcontentloaded - DOM ready (default)networkidle0 - No network connectionsnetworkidle2 - Max 2 connections |
curl "https://scrapingbot.io/api/v1/scrape?url=https://example.com&wait_browser=networkidle0" \ -H "x-api-key: YOUR_API_KEY"
Block Resources
Improve performance by blocking unnecessary resources. Only applies when render_js=true
.
Parameters | block_ads, block_resources |
Effect |
block_ads - Blocks known ad networks (default: false)block_resources - Blocks images, CSS, fonts (default: true) |
Default | block_resources: true block_ads: false |
Benefit | Faster scraping, lower bandwidth usage |
Example: Disable Blocking to Load All Assets
curl "https://scrapingbot.io/api/v1/scrape?url=https://example.com&block_resources=false&block_ads=false" \ -H "x-api-key: YOUR_API_KEY"
Viewport Size
Set custom browser viewport dimensions. Only applies when render_js=true
.
Parameters | window_width, window_height |
Type | Integer (pixels) |
Default | 1920 × 1080 |
curl "https://scrapingbot.io/api/v1/scrape?url=https://example.com&window_width=1280&window_height=720" \ -H "x-api-key: YOUR_API_KEY"
Timeout
Maximum time to wait for the page to load (in milliseconds).
Parameter | timeout |
Type | Integer (milliseconds) |
Default | 45000 (45 seconds) |
Maximum | 45000 (45 seconds) |
curl "https://scrapingbot.io/api/v1/scrape?url=https://slow-site.com&timeout=15000" \ -H "x-api-key: YOUR_API_KEY"
Response Format
All successful responses return JSON with the following structure:
{ "success": true, "url": "https://example.com", "html": "<!DOCTYPE html><html>...", "statusCode": 200, "creditsUsed": 5, "duration": "2.34", "requestHeaders": { ... }, "responseHeaders": { ... }, "screenshot": "base64-encoded-png...", "ai_result": { ... }, "ai_query": "product price" }
Error Handling
Errors return JSON with success: false
and an error message.
{ "success": false, "error": "Insufficient credits. This request requires 5 credits.", "timestamp": "2025-01-01T12:00:00.000Z" }
Common HTTP Status Codes
Code | Meaning |
---|---|
200 | Success |
400 | Bad Request (missing URL) |
402 | Payment Required (insufficient credits) |
429 | Rate Limit Exceeded (concurrency) |
500 | Internal Server Error |
Pricing
Credit costs vary based on the features you use:
Feature | Credits |
---|---|
HTTP Scraping (static pages) | 1 credit |
Browser Scraping (JavaScript rendering) | 5 credits |
Stealth Proxy | 75 credits |
AI Extraction | +5 credits |
Note: Costs are cumulative. For example, browser scraping with stealth proxy costs 75 credits (stealth proxy includes browser rendering).
Concurrency Limits
Rate limits are based on your subscription plan:
Plan | Monthly Credits | Concurrent Requests |
---|---|---|
Free | 100 | 1 |
Starter | 250,000 | 10 |
Startup | 1,000,000 | 50 |
Pro | 3,000,000 | 100 |
Business | 8,000,000 | 200 |
Business+ | 14,000,000 | 200 |
Best Practices
✓ Use Browser Mode for Dynamic Sites
If the website uses JavaScript to load content, enable render_js=true
to get the fully rendered page.
✓ Use Wait Options for Slow Sites
Combine wait_for
and wait_browser
to ensure content is fully loaded before scraping.
✓ Block Resources by Default
Images, CSS, and fonts are blocked by default for faster scraping. If you need them, set block_resources=false
. Ads are not blocked by default.
✓ Use AI Extraction for Structured Data
Instead of parsing HTML yourself, use AI extraction to get clean, structured data with natural language queries.
ChatGPT API - Introduction
Access ChatGPT (GPT-5) for AI-powered text generation, content creation, and natural language processing. Fast, reliable, and affordable at just 10 credits per request.
Endpoint: POST https://scrapingbot.io/api/v1/chatgpt
Cost: 10 credits per request • Model: GPT-5
Key Features
- Latest GPT-5 model for highest quality responses
- Fast response times (average <2 seconds)
- No rate limits - send as many requests as you have credits
- Supports any language and use case
- Simple JSON request/response format
Authentication
All ChatGPT API requests require authentication using your API key. Include your API key in the request headers or as a query parameter.
curl -X POST "https://scrapingbot.io/api/v1/chatgpt" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"prompt": "Your prompt here"}'
Get your API key from your dashboard.
Quick Start
Basic Request
curl -X POST "https://scrapingbot.io/api/v1/chatgpt" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "Explain quantum computing in simple terms" }'
Response
{ "success": true, "response": "Quantum computing uses quantum mechanics...", "duration": "1.45" }
Content Generation
Use ChatGPT to generate blog posts, product descriptions, social media content, email copy, and more.
Example: Product Description
{ "prompt": "Write a compelling product description for eco-friendly bamboo toothbrushes" }
Example: Blog Outline
{ "prompt": "Create a blog post outline about the future of renewable energy" }
Example: Social Media Captions
{ "prompt": "Generate 5 Instagram captions for a coffee shop posting a latte art photo" }
Text Analysis & Summarization
Summarize articles, extract key points, analyze sentiment, and process large amounts of text.
Example: Article Summarization
{ "prompt": "Summarize this article in 3 bullet points: [article text]" }
Example: Key Points Extraction
{ "prompt": "Extract the main takeaways from this customer review: [review text]" }
Code Generation
Generate code snippets, fix bugs, explain code, and get programming assistance.
Example: Generate Python Function
{ "prompt": "Write a Python function to validate email addresses using regex" }
Example: Debug Code
{ "prompt": "Explain what's wrong with this code and how to fix it: [code snippet]" }
Translation
Translate text between languages with context awareness and natural phrasing.
Example: Translate to Spanish
{ "prompt": "Translate this to Spanish: 'Welcome to our website. We offer premium products at affordable prices.'" }
Example: Multi-language Translation
{ "prompt": "Translate 'Thank you for your purchase' into French, German, and Japanese" }
Response Format
All successful ChatGPT API requests return a JSON object with the following structure:
{ "success": true, // Request succeeded "response": "...", // ChatGPT's text response "duration": "1.23" // Response time in seconds }
Field Descriptions
Field | Type | Description |
---|---|---|
success | boolean | Whether the request was successful |
response | string | ChatGPT's generated text response |
duration | string | Response time in seconds |
Pricing
10 Credits
per ChatGPT request
Free tier includes 1,000 credits = 100 ChatGPT requests per month. View all plans →
Google Search API - Introduction
Search Google programmatically and get organic results, rankings, snippets, related searches, and "People Also Ask" questions. No CAPTCHA solving required, no IP blocks.
Endpoint: POST https://scrapingbot.io/api/v1/google
Cost: 10 credits per request
Key Features
- Get organic search results with titles, links, and snippets
- Extract rankings and positions
- Access "People Also Ask" questions and answers
- Get related searches for SEO research
- Support for country and language targeting
- Pagination support for deep results
Authentication
Authentication works the same as other ScrapingBot APIs - include your API key in the x-api-key
header.
-H "x-api-key: YOUR_API_KEY"
Quick Start
Basic Search Request
curl -X POST "https://scrapingbot.io/api/v1/google" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/search", "params": { "q": "best web scraping tools 2025" } }'
Response
{ "success": true, "searchParameters": {...}, "organic": [...], "relatedSearches": [...], "peopleAlsoAsk": [...] }
Search Query (q)
The q
parameter is required and specifies your search query.
"params": { "q": "best restaurants in New York" }
Tips: Use natural language queries just like you would in Google. Special operators like quotes, site:, and intitle: are supported.
Country & Language
Target specific countries and languages for localized search results.
Country Code (gl)
"params": { "q": "best pizza", "gl": "us" // United States }
Language (hl)
"params": { "q": "mejores restaurantes", "hl": "es" // Spanish }
Common country codes: us
, uk
, ca
, au
, de
, fr
Pagination
Control the number of results and pagination to get deep search results.
Number of Results (num)
"params": { "q": "web development", "num": 20 // Get 20 results (default: 10) }
Page Number (page)
"params": { "q": "web development", "page": 2 // Get page 2 of results }
Response Format
{ "success": true, "searchParameters": { "q": "best web scraping tools", "gl": "us", "hl": "en" }, "organic": [ { "position": 1, "title": "Top 10 Web Scraping Tools for 2025", "link": "https://example.com/scraping-tools", "snippet": "Discover the best web scraping tools...", "displayedLink": "example.com › scraping-tools" } ], "relatedSearches": [ "python web scraping", "beautiful soup tutorial" ], "peopleAlsoAsk": [ { "question": "What is web scraping?", "answer": "Web scraping is the process of..." } ], "duration": "0.85" }
Pricing
10 Credits
per search request
Free tier includes 1,000 credits = 100 Google searches per month. View all plans →
TikTok API - Introduction
Extract TikTok videos, user profiles, posts, and comments programmatically. No authentication or login required. Get video metadata, download links, user stats, and more.
Endpoint: POST https://scrapingbot.io/api/v1/tiktok
Cost: 1 credit per request
Available Endpoints
/
Video information & download links
/user/info
User profile & statistics
/user/posts
User's recent videos
/comment/list
Video comments
Authentication
Include your API key in the x-api-key
header with every request.
-H "x-api-key: YOUR_API_KEY"
Quick Start
Get Video Information
curl -X POST "https://scrapingbot.io/api/v1/tiktok" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/", "params": { "url": "https://www.tiktok.com/@user/video/1234567890" } }'
Video Information
Get complete video metadata including title, description, statistics, author info, and download links.
Endpoint
"endpoint": "/"
Parameters
Parameter | Required | Description |
---|---|---|
url | Yes | Full TikTok video URL |
hd | No | Set to "1" for HD download link |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/tiktok" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/", "params": { "url": "https://www.tiktok.com/@nike/video/7123456789012345678", "hd": "1" } }'
Response Data
Returns: video title, description, play count, like count, comment count, share count, author info, download links (SD and HD), music info, and more.
User Profile
Get detailed TikTok user profile information including follower count, following count, total likes, bio, and avatar.
Endpoint
"endpoint": "/user/info"
Parameters
unique_id | Yes | TikTok username (without @) |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/tiktok" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/user/info", "params": { "unique_id": "nike" } }'
User Videos
Retrieve a user's recent TikTok videos with metadata, statistics, and download links.
Endpoint
"endpoint": "/user/posts"
Parameters
unique_id | Yes | TikTok username (without @) |
count | No | Number of videos to return (default: 30) |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/tiktok" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/user/posts", "params": { "unique_id": "nike", "count": 10 } }'
Search Users
Search for TikTok users by keyword and get profile information for matching accounts.
Endpoint
"endpoint": "/user/search"
Parameters
keyword | Yes | Search keyword for usernames |
count | No | Number of results (default: 10) |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/tiktok" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/user/search", "params": { "keyword": "dancer" } }'
Search Videos
Search for TikTok videos by keyword and get video metadata, statistics, and download links.
Endpoint
"endpoint": "/feed/search"
Parameters
keyword | Yes | Search keyword for videos |
count | No | Number of results (default: 10) |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/tiktok" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/feed/search", "params": { "keyword": "dance challenge" } }'
Music Info
Get TikTok music/sound information including title, author, duration, and play count.
Endpoint
"endpoint": "/music/info"
Parameters
music_id | Yes | TikTok music/sound ID |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/tiktok" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/music/info", "params": { "music_id": "7123456789012345678" } }'
Music Posts
Get all TikTok videos that use a specific music/sound track.
Endpoint
"endpoint": "/music/posts"
Parameters
music_id | Yes | TikTok music/sound ID |
count | No | Number of videos (default: 10) |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/tiktok" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/music/posts", "params": { "music_id": "7123456789012345678" } }'
Video Comments
Extract comments from any TikTok video including comment text, author, likes, and timestamps.
Endpoint
"endpoint": "/comment/list"
Parameters
aweme_id | Yes | Video ID (from video URL or video info response) |
count | No | Number of comments (default: 20) |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/tiktok" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/comment/list", "params": { "aweme_id": "7123456789012345678" } }'
Response Format
TikTok API responses follow this structure:
{ "success": true, "data": { // Endpoint-specific data // (video info, user info, posts, or comments) }, "processed_time": 1.23, "duration": "1.23" }
Pricing
1 Credit
per TikTok request
Free tier includes 1,000 credits = 1,000 TikTok requests per month. View all plans →
Instagram API - Introduction
Extract Instagram user profiles, posts, reels, stories, and media information. No Instagram login required. Access public data from any Instagram account or post.
Endpoint: POST https://scrapingbot.io/api/v1/instagram
Cost: 5 credits per request
User Endpoints
/user/by_id
User profile by ID
/user/by_username
Full user profile
/medias/by_user_id
User's posts
/medias/tagged_by_user_id
Tagged posts
/reels/by_user_id
User's reels
Media Endpoints
/media/by_url
Post by URL
/media/by_shortcode
Post by shortcode
/comments/media_comments_by_id
Media comments
Search Endpoints
/search/users_by_keyword
Search users
/search/hashtags_by_keyword
Search hashtags
/search/places_by_keyword
Search places
Authentication
Include your API key in the x-api-key
header.
-H "x-api-key: YOUR_API_KEY"
Quick Start
Get User Profile
curl -X POST "https://scrapingbot.io/api/v1/instagram" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/user/by_username", "params": { "username": "instagram" } }'
User by ID
Get user profile information using Instagram user ID.
Endpoint
"endpoint": "/user/by_id"
Parameters
user_id | Yes | Instagram user ID |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/instagram" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/user/by_id", "params": { "user_id": "25025320" } }'
User by Username
Get comprehensive user profile data including follower count, following count, bio, profile picture, and verification status.
Endpoint
"endpoint": "/user/by_username"
Parameters
username | Yes | Instagram username (without @) |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/instagram" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/user/by_username", "params": { "username": "nike" } }'
User Posts
Retrieve a user's recent Instagram posts with captions, likes, comments, images, and videos.
Endpoint
"endpoint": "/medias/by_user_id"
Parameters
user_id | Yes | Instagram user ID (from user profile response) |
count | No | Number of posts (default: 12) |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/instagram" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/medias/by_user_id", "params": { "user_id": "25025320" } }'
User Reels
Extract a user's Instagram Reels with video links, view counts, and engagement metrics.
Endpoint
"endpoint": "/reels/by_user_id"
Parameters
user_id | Yes | Instagram user ID |
count | No | Number of reels (default: 12) |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/instagram" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/reels/by_user_id", "params": { "user_id": "25025320" } }'
Tagged Posts
Get posts where a user is tagged, including photos and videos from other accounts.
Endpoint
"endpoint": "/medias/tagged_by_user_id"
Parameters
user_id | Yes | Instagram user ID |
count | No | Number of posts (default: 12) |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/instagram" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/medias/tagged_by_user_id", "params": { "user_id": "25025320" } }'
Media by URL
Get full post information from any Instagram post URL including images, videos, captions, likes, and comments.
Endpoint
"endpoint": "/media/by_url"
Parameters
url | Yes | Full Instagram post URL |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/instagram" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/media/by_url", "params": { "url": "https://www.instagram.com/p/ABC123xyz/" } }'
Media by Shortcode
Get post information using Instagram shortcode (the code in /p/SHORTCODE/).
Endpoint
"endpoint": "/media/by_shortcode"
Parameters
shortcode | Yes | Instagram post shortcode |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/instagram" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/media/by_shortcode", "params": { "shortcode": "ABC123xyz" } }'
Media Comments
Extract comments from any Instagram post including comment text, author, likes, and timestamps.
Endpoint
"endpoint": "/comments/media_comments_by_id"
Parameters
media_id | Yes | Instagram media ID |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/instagram" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/comments/media_comments_by_id", "params": { "media_id": "1234567890123456789" } }'
Search Users
Search for Instagram users by keyword and get matching profiles.
Endpoint
"endpoint": "/search/users_by_keyword"
Parameters
keyword | Yes | Search keyword |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/instagram" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/search/users_by_keyword", "params": { "keyword": "photographer" } }'
Search Places
Search for Instagram locations/places by keyword.
Endpoint
"endpoint": "/search/places_by_keyword"
Parameters
keyword | Yes | Location name to search |
Example Request
curl -X POST "https://scrapingbot.io/api/v1/instagram" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": "/search/places_by_keyword", "params": { "keyword": "New York" } }'
Response Format
Instagram API responses return data in this format:
{ "success": true, "data": { // Endpoint-specific data // (user profile, posts, reels, or media info) }, "duration": "1.23" }
Pricing
5 Credits
per Instagram request
Free tier includes 1,000 credits = 200 Instagram requests per month. View all plans →
Need help? Have questions?
Create Free Account →