Webhooks API for Developers

Real-time notifications for post delivery, engagement milestones, and account events. Never poll for status again.

No credit card required · Full API access

Features

Everything you need

Delivery Confirmations

Receive an instant webhook when a post is successfully published on each platform. Includes the live URL, platform-specific post ID, and final rendered content.

Engagement Alerts

Get notified when posts hit engagement milestones — 100 likes, 1K impressions, first comment, or custom thresholds you define. React to viral content in real time.

Failure Notifications

Know immediately when a post fails to publish, with detailed error codes, failure reasons, and whether a retry is scheduled. Build alerts or fallback flows without delay.

Account Events

Monitor account-level changes — token expirations, permission changes, rate limit warnings, and disconnections. Stay ahead of issues before they affect your users.

Configurable Retry Logic

Failed webhook deliveries are retried up to 5 times over 24 hours with exponential backoff. View delivery attempts, response codes, and timing in the webhook logs.

Webhook Signing & Verification

Every webhook payload is signed with HMAC-SHA256 using your endpoint's secret key. Verify signatures server-side to ensure payloads are authentic and untampered.

Event Filtering

Subscribe to exactly the events you care about. Filter by event type, platform, workspace, or post tags. Reduce noise and processing overhead with precise subscriptions.

Batch Events

For high-volume use cases, enable batch mode to receive multiple events in a single webhook delivery. Reduce HTTP overhead and simplify processing for busy integrations.

Up and running in minutes

1

Get your API key

Sign up and generate your credentials in seconds.

2

Connect social accounts

Link platforms via OAuth with our guided setup flow.

3

Start building

Use the API to publish, manage, and track content everywhere.

Why developers choose RelayAPI

One Webhook, Every Platform

Building a reliable polling system across 21 platforms is fragile and expensive. RelayAPI pushes events to you the moment they happen, replacing thousands of polling requests with a single webhook endpoint.

Enterprise-Grade Reliability

Webhooks are delivered with 99.9% reliability backed by automatic retries, dead-letter queues, and delivery logging. Every event is stored for 30 days so you can replay missed deliveries at any time.

Developer-First Experience

Test webhooks locally with our CLI tunnel, inspect payloads in the dashboard, replay past events with one click, and use our SDKs for signature verification. Debugging webhooks has never been easier.

Quick start

Start building in minutes

cURL — Register Webhook
curl -X POST https:"color:#857f73">//api.relayapi.dev/v1/webhooks \
  -H "Authorization: Bearer rlay_live_xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https:">//yourapp.com/webhooks/relayapi",
    "events": [
      "post.published",
      "post.failed",
      "post.engagement_milestone",
      "account.disconnected"
    ],
    "secret": "whsec_your_signing_secret_here"
  }'

"color:#857f73"># Response:
"color:#857f73"># {
"color:#857f73">#   "id": "wh_m3n4o5p6q7",
"color:#857f73">#   "url": "https://yourapp.com/webhooks/relayapi",
"color:#857f73">#   "events": ["post.published", "post.failed", "post.engagement_milestone", "account.disconnected"],
"color:#857f73">#   "status": "active",
"color:#857f73">#   "created_at": "2026-03-20T10:30:00Z"
"color:#857f73"># }

Frequently asked questions

What event types are available?

Core events: post.published, post.failed, post.scheduled, post.deleted, post.engagement_milestone. Account events: account.connected, account.disconnected, account.token_expiring, account.rate_limited. Media events: media.processed, media.failed. You can subscribe to specific events or use wildcards like 'post.*' to receive all post-related events.

What happens if my endpoint is down when a webhook is sent?

Failed deliveries are retried up to 5 times over 24 hours with exponential backoff (30s, 5m, 30m, 2h, 12h). If all retries fail, the event is moved to a dead-letter queue visible in your dashboard. You can replay any event from the last 30 days with a single API call or button click.

How do I verify that a webhook is really from RelayAPI?

Every webhook includes an X-RelayAPI-Signature header containing an HMAC-SHA256 hash of the payload using your endpoint's secret key. Verify the signature server-side before processing. Our TypeScript and Python SDKs include a verifySignature() helper that handles this for you, including timing-safe comparison.

Are webhook deliveries guaranteed?

RelayAPI guarantees at-least-once delivery. In rare cases (network partitions, retries), you may receive the same event more than once. Each event has a unique id field — use it to deduplicate on your end. Events are delivered in approximate chronological order but strict ordering is not guaranteed.

Can I test webhooks during development?

Yes. Use the RelayAPI CLI to create a local tunnel: 'relayapi webhooks listen --port 3000'. This forwards live webhook events to your local dev server. You can also use the dashboard to send test events to any registered endpoint, or replay historical events to debug your handler.

Is there a way to receive multiple events in one request?

Yes. Enable batch mode on your webhook endpoint to receive up to 100 events per delivery. Events are grouped by type and delivered every 5 seconds or when the batch reaches 100 events, whichever comes first. This is ideal for high-volume integrations that want to reduce HTTP overhead.

Ready to start building?

Get your API key and publish across 21 platforms in minutes.