All docsNextGuides & Examples
Guide / Webhooks
Webhooks & live scrapers
Watch a URL or a marketplace product on a schedule, and get a signed webhook the moment something changes.
Create a monitor
Monitors run a scrape on an interval and diff the result. Configure them in Dashboard → Monitors or via the API.
curl -X POST https://api.arrowcrawl.com/v1/monitors \
-H "Authorization: Bearer $AC_KEY" \
-d '{
"url": "https://amazon.in/dp/B0...",
"interval": "1h",
"watch": ["price", "in_stock"],
"webhook": "https://your-app.com/hooks/arrowcrawl"
}'Webhook payload
Deliveries are signed with an HMAC header so you can verify authenticity.
POST /hooks/arrowcrawl
X-ArrowCrawl-Signature: sha256=...
{
"event": "change.detected",
"monitor_id": "mon_8821",
"changes": { "price": { "from": 1499, "to": 1299 } },
"at": "2026-07-06T10:00:00Z"
}Verifying the signature
import hmac, hashlib
def verify(body: bytes, header: str, secret: str) -> bool:
digest = hmac.new(secret.encode(), body, hashlib.sha256).hexdigest()
return hmac.compare_digest(f"sha256={digest}", header)Failed deliveries are retried with exponential backoff. Manage endpoints in Dashboard → Webhooks.