Use casesWebhooks
Signed webhooks for everything that changes
Instead of polling, give Siar an HTTPS endpoint and the events you care about. Each delivery is signed so you can trust it, retried when your endpoint is down, and visible in a delivery log.
- 16 event types across posts, comments, teams, accounts, credit and conversations.
- HMAC-SHA256 over
timestamp.rawBody, in thex-siar-signatureheader. - Retries with backoff from one minute up to a day.
- Inspect deliveries, resend one, send a test, rotate the secret.
Create an endpoint
Organization owners and admins register endpoints from the dashboard (API keys cannot manage webhooks). You can have up to 5 per organization, and the response includes the signing secret once; store it.
# Webhooks are managed by organization owners and admins from the dashboard.
# API keys cannot create or change them. The underlying request is:
POST https://api.siaran.my/api/v1/webhook
{
"url": "https://yourapp.example/webhooks/siar",
"events": ["post.published", "comment.received", "social-account.updated"]
}
# → { "id": "...", "url": "...", "events": [...], "active": true, "secret": "..." }
# The secret is returned once. It signs every delivery. Verify, then act
Compute the HMAC over the raw body exactly as received and compare in constant time. Reject timestamps that are far from now to stop replays. The webhook guide has complete Node.js and Python verifiers.
Built for flaky receivers
A non-2xx response or a timeout schedules a retry. Deliveries have a stable id in x-siar-delivery, so make your handler idempotent and return 200 quickly.
Works with every supported network
Frequently asked questions
Which events exist?
post.published, comment.published, team.created, team.updated, team.deleted, social-account.created, social-account.updated, social-account.deleted, credit.low-balance, credit.exhausted, comment.received, conversation.created, conversation.updated, conversation.message.created, conversation.message.updated, conversation.read.updated.
What if my endpoint is down?
Siar retries after 1 minute, 5 minutes, 30 minutes, 2, 6, 12 and 24 hours, then marks the delivery failed. You can resend any delivery from the API.
Can I test without publishing a real post?
Yes. Send a test event to your endpoint from the dashboard, or with POST /webhook/{id}/test from a signed-in owner or admin session.
Keep reading
Your first post isone request away.
The Free plan includes 20 posts and 200 uploads a month across 3 teams. No card needed.