Skip to main content
The Scraper API gives you social data from TikTok, Instagram, YouTube, Facebook, Snapchat, X, and LinkedIn through one authenticated HTTP API.

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:
Rich resources have explicit names such as 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 a POST with a JSON body and a scraper key in x-api-key:
Every successful request uses the same outer envelope:
Keep 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 429 errors 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. Three components are tracked: the Scraper API itself, scrape execution measured from real traffic, and the upstream data provider. Probes run every two minutes. Check it before filing 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.