Poll Search
Early access. Tell us what you're building and we'll set you up. Contact us
Use the search_metadata.json_endpoint returned by create-search responses.
curl -sS "https://api.lempile.com/searches/{search_id}.json" \
-H "X-API-KEY: your-api-key"Processing Response#
Queued or running searches return 202 Accepted.
{
"search_metadata": {
"id": "search_id",
"status": "Processing",
"status_detail": "Running",
"started_at": "2026-06-01T08:01:00Z",
"lease_expires_at": "2026-06-01T08:03:00Z"
}
}Keep polling until search_metadata.status is not Processing.
Success Response#
Successful searches return 200 OK.
{
"search_metadata": {
"id": "search_id",
"status": "Success",
"processed_at": "2026-06-01T08:02:00Z"
},
"organic_results": []
}Error Response#
Failed searches return 200 OK with status: "Error" and a clear error message.
{
"error": "Google returned a block or consent challenge page.",
"search_metadata": {
"id": "search_id",
"status": "Error",
"status_detail": "google_search_failed"
}
}Polling Guidance#
- Poll every 3-5 seconds for normal requests.
- Treat
Processingas normal while the queue or browser runner is working. - Use
status_detailfor dashboard/debug display only; client state machines should rely onsearch_metadata.status.
Was this page helpful?