Webhooks
Send event data to external services—Slack, Discord, Zapier, or your own endpoints. Webhooks let your automations communicate with the outside world.
Setting up webhooks
Configure webhooks in your account settings. Each webhook has:
-
Name — a friendly identifier you'll use in your code (e.g.,
slack,discord) - URL — the endpoint that receives the POST request
- Headers — optional HTTP headers (e.g., for authentication)
Using webhooks in code
Call webhooks from your automation code using
context.webhooks:
// Send a simple message to Slack context.webhooks.slack.post({ text: "Buy Box lost on " + event.asin }); // Send structured data to your own endpoint const buyBoxPrice = event.Payload.AnyOfferChangedNotification.Summary.BuyBoxPrices[0].ListingPrice.Amount; context.webhooks.analytics.post({ event: event.type, asin: event.asin, price: buyBoxPrice, timestamp: event.timestamp });
Common integrations
Slack
Use a Slack Incoming Webhook URL. The payload should include a
text field:
// buyBoxPrice is a decimal number in the marketplace's major currency unit, as Amazon sent it
const buyBoxPrice = event.Payload.AnyOfferChangedNotification.Summary.BuyBoxPrices[0].ListingPrice.Amount;
context.webhooks.slack.post({ text: "🏆 Won Buy Box on " + event.asin + " at $" + buyBoxPrice });
Discord
Use a Discord Webhook URL. The payload should include a
content field:
context.webhooks.discord.post({ content: "Price changed on " + event.asin });
Zapier
Use a Zapier Webhook (Catch Hook) URL. Send any JSON payload—Zapier will parse it automatically.
Error handling
Webhook delivery is asynchronous — your automation does not wait for the endpoint to respond. Transient failures
(timeouts, 429, and 5xx responses) are retried automatically; permanent 4xx
responses are not. See Reliability, testing, and logs below for retry details and the activity log.
Reliability, testing, and logs
-
Automatic retries — failed deliveries (timeouts,
429, and5xxresponses) retry with exponential backoff, up to 5 attempts. Each attempt carries a stableX-Pulsify-Delivery-Idheader so your endpoint can dedupe repeats. Permanent4xxresponses are not retried. - Send test — each webhook's page has a "Send test" button that delivers a sample payload immediately, so you can verify your setup before wiring it into an automation.
- Activity log — the "Logs" link on each webhook shows every delivery: status, response, and any error, newest first.