Papalily
we provide AI-powered web data extraction. Customers send a URL and a plain-English prompt via REST API and receive structured JSON data in return
Papalily endpoints
| Method | Endpoint | Description |
|---|---|---|
| Scraping | ||
| POST |
scrapeUrl /scrape |
Loads the URL in a real Chromium browser, waits for JavaScript to finish rendering, takes a full-page screenshot, and uses Gemini AI vision to extract exactly the data described… |
| Interactive | ||
| POST |
interact /interact |
Execute interactive steps on a real browser page — type into forms, click buttons, paginate through results, and extract data, all in one request. Accepts either: - **task**… |
| Sessions | ||
| POST |
sessionStart /session/start |
Opens a real Chromium browser context that stays alive between API calls. Returns a `session_id` to use with subsequent `/session/:id/step` calls. Sessions are ideal for… |
| GET |
sessionState /session/{id}/state |
Returns the current URL, page title, step count, TTL remaining, and a base64 JPEG screenshot of the live page. Useful for debugging or verifying page state between steps. |
| POST |
sessionStep /session/{id}/step |
Execute one interactive step on a live session page, or pass a `task` string to let the AI plan and execute multiple steps automatically. The browser context (cookies,… |
| DELETE |
sessionDelete /session/{id} |
Closes the browser context and frees all associated resources immediately. Always call this when your workflow is complete — do not rely solely on the 10-minute TTL expiry. |
| Account | ||
| GET |
getUsage /usage |
Returns your current plan, requests used this billing period, and remaining quota. |
| GET |
getRequestStatus /status/{requestId} |
Retrieve details of a past /scrape or /interact request by its ID. |
| System | ||
| GET |
healthCheck /health |
Returns API status and cache stats. No authentication required. |
| Other endpoints | ||
| GET |
getUsage /usage |
Returns your current plan, requests used, and remaining quota for the billing period. |
| POST |
scrapeUrl /scrape |
Renders the target page in a real Chromium browser (handles JavaScript, React, Vue, Next.js), takes a full-page screenshot, then uses Gemini AI to extract exactly what you ask… |
| GET |
healthCheck /health |
Returns API status and cache statistics. No authentication required. |
| GET |
healthCheck /health |
Returns API status. No authentication required. |
| GET |
getUsage /usage |
Returns current usage statistics — plan, requests used, remaining quota, and monthly reset date. |
| GET |
getRequestStatus /status/{requestId} |
Look up a past scrape request by its ID. **Important:** The `requestId` must be a real `request_id` value returned from a previous `POST /scrape` or `POST /batch` call. The… |
| POST |
scrapeUrl /scrape |
Renders the target URL in a real Chromium browser (full JavaScript execution), then uses Gemini AI to extract the data you describe in plain English. Returns structured JSON.… |
| POST |
batchScrape /batch |
Scrape up to 5 URLs in parallel in a single API call. Each URL uses a separate browser instance and AI extraction. Returns an array of results in the same order as the input.… |
Papalily pricing
| Plan | Price | Rate limit | Quotas |
|---|---|---|---|
| BASIC | Free | — |
|
| PRO | $20 / month | 10 / minute |
|
| ULTRA | $100 / month | 15 / minute |
|
| MEGA | $300 / month | — |
|