← Back to Learn
Learn / Webhooks / Outbound

Setting Up Outbound Publishing Webhooks

Configure outbound webhooks to send ACS-generated content to any URL when a piece is published — Zapier, Make, custom endpoints, and more.

Updated April 8, 2026


Outbound webhooks let ACS send your published content to any URL you specify — no native integration required. When ACS publishes a content piece, it immediately delivers a signed HTTP POST request to your configured endpoint. This is how you connect platforms like Substack, Webflow, Zapier, Make, and any custom destination.

How Outbound Webhooks Work

  1. ACS generates a piece of content and marks it as published
  2. ACS sends a signed POST request to your webhook URL containing the full content payload
  3. Your endpoint receives the payload and takes whatever action you have configured (publish to a platform, log to a database, notify your team, etc.)

Delivery is handled by the ACS webhook proxy, which includes automatic retry logic for failed requests.

What Is in the Payload

Each outbound webhook delivers a JSON object with the following fields:

{
  "id": "uuid",
  "title": "Content title",
  "body": "Plain text body",
  "body_html": "<p>HTML body content</p>",
  "subject_line": "Email subject line (newsletters)",
  "preheader_text": "Email preheader (newsletters)",
  "meta_title": "SEO meta title (articles)",
  "meta_description": "SEO meta description (articles)",
  "slug": "url-slug",
  "focus_keyword": "primary keyword",
  "hashtags": ["tag1", "tag2"],
  "platform": "newsletter",
  "content_type": "newsletter",
  "published_at": "2026-04-07T12:00:00Z"
}

Fields that do not apply to a given content type will be null or omitted.

Setting Up an Outbound Webhook

Step 1: Add your destination URL

In ACS, go to Settings → Integrations. Under Outbound Webhooks, click Add Destination.

Enter:

  • Label — a name for this destination (e.g., "Substack via Zapier")
  • Destination URL — the URL that should receive the POST request

Step 2: Save and copy your HMAC signing secret

After saving, ACS generates a unique HMAC secret for this webhook endpoint. Copy and store it — you will need it to verify the authenticity of incoming requests on your receiving endpoint.

Step 3: Test the webhook

Use the Send Test button to deliver a sample payload to your URL. Confirm it arrives at your destination and that all expected fields are present.

Webhook Delivery and Retries

ACS makes up to 3 delivery attempts with exponential backoff (delays of 1s, 2s, and 4s). If all attempts fail, the delivery is marked as failed and logged. A status indicator in Settings → Integrations → Outbound Webhooks shows recent delivery history for each destination.

Signature Verification

Every outbound webhook includes an X-ACS-Signature header:

X-ACS-Signature: sha256=<hex_digest>

Your receiving endpoint can use this header to verify that the request is genuine. See Webhook Signatures and Security for implementation examples.

Multiple Destinations

You can configure multiple outbound webhook destinations simultaneously. For example, one for Zapier and one for your own logging server. All active destinations receive the same payload whenever content is published.

Disabling or Removing a Webhook

To pause or remove an outbound webhook, go to Settings → Integrations → Outbound Webhooks, find the destination, and click Disable or Delete. Disabled webhooks stop receiving payloads but retain their configuration and HMAC secret.

← Back to Learn