Docs examples target https://api.scrapy.infralyon.com (not production https://api.scrapy.io).
Skip to main content

Find a scraper

A scraper is a marketplace tool identified by publisher and slug, the same pair as in the Store URL. Apify identifies an Actor as username~actor-name. Here the pair is {publisher}/{slug}.

You call the tool on the publisher host, not on api.scrapy.infralyon.com. After you have the pair, follow Run a scraper.

Search the catalog​

curl -s "https://api.scrapy.infralyon.com/v1/tools?q=instagram+profile&limit=5" \
-H "x-api-key: $SCRAPYIO_API_KEY"

Each item includes publisher, slug, and name. You can also open the tool in the Store and copy those two values from the page URL. Input fields are on GET https://api.scrapy.infralyon.com/v1/tools/{publisher}/{slug} (inputSchema). The full list API is Tools.

Endpoint shape​

Send x-api-key: sc_... and a JSON body whose fields come from that tool’s inputSchema.

Sync returns one JSON result in the HTTP response:

POST https://{publisher}.p.scrapy.infralyon.com/{slug}/v1/api

Async returns a run id. Download rows from GET https://api.scrapy.infralyon.com/v1/runs/{runId}/dataset/items:

POST https://{publisher}.p.scrapy.infralyon.com/{slug}/v1/scraper

Async uses the same host and slug as sync, with /v1/scraper instead of /v1/api.

Sample​

This calls the Instagram profile scraper the same way Apify’s docs call one Actor (apify~web-scraper) instead of listing the store. Swap datadoping and instagram-profile-scraper for the publisher and slug you found above.

curl -s -X POST \
"https://datadoping.p.scrapy.infralyon.com/instagram-profile-scraper/v1/api" \
-H "x-api-key: $SCRAPYIO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"username":"nasa"}'

For a batch, post the same tool to /v1/scraper and keep the run id from the response. The next page walks through both modes: Run a scraper.