POST
Every service has its own endpoint: POST /v1/reddit/subreddit.posts, POST /v1/linkedin/profile.info, POST /v1/googlemaps/place.search. The path names what you want. The body carries the inputs. Which offer serves it is the router’s job unless you pin one. The call is synchronous: the response is already completed or failed. This page documents the shared contract. For the concrete services, one page per platform lists every endpoint with its accepted inputs, its options, its offers and the fields it returns: LinkedIn, Instagram, X, Reddit, Facebook, TikTok, YouTube, Pinterest, Bluesky, Snapchat, Google Maps.
string
required
One of: linkedin, instagram, x, reddit, facebook, tiktok, youtube, pinterest, bluesky, snapchat, googlemaps.
string
required
A service of that platform, e.g. profile.info, subreddit.posts, place.search. See GET /v1/services for the live list. An unknown service returns 404 with a did-you-mean and the platform’s available services.
string[]
Inputs of a url-kind service. Required for those services, as urls (array) or url (single string).Every URL must match one of the shapes the service declares in accepts[]. Mismatches return 400 invalid_input_format before any routing or billing. Scheme-less URLs that otherwise match are normalized (https:// is prepended).
string
Single-input form of urls.
string[]
Inputs of a query-kind service (place.search, video.search, post.search). Required for those services, as queries (array) or query (single string). Sending urls to a query service, or the reverse, returns a 400 naming the field the service actually takes.
string
Single-input form of queries.
string
Pin one offer, as source/name, e.g. apify/harshmaur or brightdata/reddit. Omit it (the default) to let the router walk the failover chain.Pinning disables failover: the run succeeds or fails on that offer alone. An offer that doesn’t serve this service returns 400 unknown_offer with available_offers.
number
default:"100"
Maximum number of records to return. Integer, 1-250. The cap is sized to fit one offer attempt inside its 120-second deadline. Larger pulls belong to the async API (coming).
object
Typed options declared by the service. See options[] on GET /v1/services/{platform}/{service}. Each option has a type and, for enums, an allowed set.Validation is strict: an unknown key, a wrong type, or an out-of-enum value returns a corrective 400 listing the valid options. Nothing is silently dropped. Options are declared per service, not per offer, so a request stays valid across failover. An offer that doesn’t implement one ignores it.