Make your first request
Create a key and run a working request in cURL, Node.js, or Python.
Download the OpenAPI reference
Use the complete schema in your API client or code generator.
Choose the right endpoint
There are two response styles. Both use the same base URL, authentication, billing, errors, and outer response envelope.
Start with the normalized endpoints. Move to a
TikTok or Instagram operation only when the normalized
resource does not contain the data you need.
Normalized resources
Supported platform path values are
tiktok, instagram, youtube, facebook,
snapchat, twitter for X, and linkedin.
Platform-specific operations
The focused TikTok and Instagram surface adds 44 operations for resources such as favorites, reposts, stories, followers, sounds, hashtags, playlists, search, trends, comments, transcripts, ads, reels, audio, and highlights. Every operation has a clean, descriptive path under the same API:profile-details and post-details. They
are separate because their response schemas are intentionally more detailed than the
normalized schemas. TikTok audience sampling stays on the single normalized audience
route because its extra request controls do not require a second response contract.
One request model
Every endpoint is aPOST with a JSON body and a scraper key in x-api-key:
request_id in your logs. It is the identifier support uses to trace a request.
Core behavior
- A completed lookup is billed even when the platform confirms that the resource does not exist. Validation, authentication, balance, payload-size, and account-rate-limit rejections are free.
- Each listing page is a separate request and charge. Treat cursors as opaque and pass them back exactly as returned.
- Media URLs can expire within hours. Download media you need to retain.
- The default account limit is 120 requests per minute across all endpoints. Successful
responses and
429errors include rate-limit headers. - Scraper keys begin with
scrape_live_and are separate from SideShift Platform and Connect credentials.
Status
Live health, 90-day uptime and incidents for the Scraper API are published at app.sideshift.app/status/scraper, with the same data as public JSON at app.sideshift.app/api/status/scraper. The page tracks the Scraper API itself, the upstream data provider, and each platform: TikTok, Instagram, YouTube and Facebook each have a row, and X, Snapchat and LinkedIn share one. Platform rows come from real API traffic over the last 15 minutes. A platform reads as degraded or unavailable when its requests fail well above their normal rate across more than one caller. A failure that affects only your own targets, such as a deleted post, does not change the page. When there are too few requests to measure, a row keeps its last state. Checks run every two minutes. Check the page before you file a ticket, and poll the JSON from your own monitoring if you want alerts.Continue
Quickstart
Authentication, cURL, Node.js, Python, and a pagination loop.
Responses and data
Envelopes, field behavior, media URLs, transcripts, comments, and cursors.
Billing, errors, and limits
Credit costs, purchase rates, refunds, retries, and rate-limit handling.
Platforms and optional parameters
Platform behavior and the exact flags supported by normalized endpoints.
Download the OpenAPI document
Use the complete OpenAPI 3.0 document for code generation or your own API
tooling.