Webhooks & Integrations
Automrktr can send real-time notifications to external systems via webhooks whenever key events occur — posts published, emails sent, conversions tracked, and more.
What Are Webhooks?
A webhook is an HTTP POST request that Automrktr sends to a URL you specify whenever a specific event happens. This lets you connect Automrktr to:
- Your own internal tools
- CRM systems
- Zapier, Make (formerly Integromat), or n8n automation workflows
- Slack or other messaging apps
- Data warehouses and analytics tools
Creating a Webhook
1. Go to Hooks in the sidebar (or Settings → Webhooks).
2. Click New Webhook.
3. Enter:
- Name — a label for this hook (e.g., "Notify Slack on post publish")
- URL — the endpoint that will receive the webhook
- Events — which events should trigger this webhook
- Secret — a shared secret for verifying webhook authenticity (optional but recommended)
4. Click Create.
Available Webhook Events
| Event | Trigger |
|---|---|
post.published | A post is successfully published to a social platform |
post.failed | A post fails after all retry attempts |
post.scheduled | A post is scheduled for a future date |
campaign.created | A new campaign is created |
campaign.completed | A campaign reaches its end date or is manually completed |
email.sent | An email campaign finishes sending |
email.bounced | An email hard-bounces |
email.unsubscribed | A subscriber unsubscribes |
pixel.conversion | A conversion event fires on your pixel |
subscriber.created | A new email subscriber is added |
approval.requested | A post is submitted for approval |
approval.approved | A post is approved |
automation.plan.created | A new automation plan is generated |
Webhook Payload
All webhook payloads are JSON. Here's an example for post.published:
{
"event": "post.published",
"timestamp": "2026-04-01T10:00:00Z",
"org_id": "org_abc123",
"data": {
"post_id": "post_xyz789",
"platform": "instagram",
"content_text": "Check out our new product! #launch",
"published_at": "2026-04-01T10:00:00Z",
"platform_post_id": "17923847234",
"campaign_id": "camp_def456"
}
}
Verifying Webhook Authenticity
When you set a Secret on a webhook, Automrktr signs each request using HMAC-SHA256. The signature is included in the X-Automrktr-Signature header.
To verify the request came from Automrktr:
const crypto = require('crypto');
function verifyWebhook(body, signature, secret) {
const computed = crypto
.createHmac('sha256', secret)
.update(body, 'utf8')
.digest('hex');
return `sha256=${computed}` === signature;
}
// In your webhook handler:
const sig = req.headers['x-automrktr-signature'];
const rawBody = req.rawBody; // unparsed JSON string
const isValid = verifyWebhook(rawBody, sig, 'your_secret');
Always verify signatures in production to protect against forged webhook calls.
Retry Behavior
If your endpoint returns a non-2xx HTTP status code or times out, Automrktr retries the webhook:
- After 1 minute
- After 5 minutes
- After 30 minutes
- After 2 hours
After 4 failed attempts, the delivery is marked as Failed and no further retries occur.
Your endpoint should return a 200 OK as quickly as possible. If you need to do heavy processing, queue the work and respond 200 immediately.
Viewing Webhook Executions
1. Go to Hooks.
2. Click on a webhook to open it.
3. Click the Executions tab.
You'll see every recent delivery with:
- Timestamp
- Event type
- HTTP status code returned by your endpoint
- Response body (first 500 characters)
- Whether it succeeded or failed
Click Retry on any failed execution to trigger a one-time manual retry.
Editing and Deleting Webhooks
Editing: Click the webhook name, make your changes, and click Save.
Pausing: Toggle the Active switch off to temporarily stop deliveries without deleting the webhook.
Deleting: Click the menu (⋯) and select Delete. Execution history is also deleted.
Automation Rules
Beyond webhooks (which are outbound), Automrktr also has Automation Plans — AI-driven suggestions for improving your campaigns.
Go to Hooks → Automation to see:
- Pending Plans — AI-generated recommendations waiting for your approval
- Approved Plans — changes that have been applied
- Rejected Plans — changes you chose not to apply
Each plan includes:
- What change is proposed (e.g., "Increase posting frequency from 3x to 5x per week based on engagement data")
- The data that led to this recommendation
- The projected impact
- Options to Approve or Reject
Approved plans are applied automatically. Every automated change is logged in the Adjustment Log with full before/after details.
Common Integration Examples
Zapier
1. Create a new Zap with Webhook by Zapier as the trigger.
2. Copy the Zapier webhook URL.
3. Create a webhook in Automrktr pointing to that URL.
4. Test the connection by publishing a test post.
5. Build your Zap actions (e.g., add a row to Google Sheets, send a Slack message).
Slack Notifications
1. Create a Slack Incoming Webhook in your Slack workspace.
2. Create an Automrktr webhook pointing to the Slack URL.
3. Select the events you want (e.g., post.published, post.failed).
4. Posts now send a notification to your Slack channel automatically.
Google Sheets
Use Zapier or Make.com to route post.published events into a Google Sheet — useful for content reporting and client transparency.
Need more help?
Our support team is available to answer your questions.