Connect Substack via Webhook
Set up ACS to send newsletter content directly to your Substack publication using outbound webhooks — no direct API required.
Updated April 8, 2026
Substack does not offer a public API for programmatic publishing, but you can use ACS outbound webhooks combined with Zapier as a bridge to automatically deliver ACS-generated newsletters to your Substack publication.
Overview
The workflow is:
ACS publishes content → Outbound webhook fires → Zapier receives payload → Email delivered to Substack import address → Substack draft created
This guide covers the full setup end-to-end.
What You Will Need
- An ACS account with the Newsletter channel configured
- A Zapier account (free tier is sufficient for this workflow)
- Your Substack publication's import email address
Step 1: Find Your Substack Import Email Address
Substack provides a unique email address for each publication. Emails sent to this address are automatically created as draft posts.
- Log into Substack and open your publication's Dashboard
- Go to Settings → Import
- Copy your import email address
Step 2: Set Up an Outbound Webhook in ACS
- Go to Settings → Integrations → Outbound Webhooks → Add Destination
- Label it "Substack"
- Leave the URL blank for now — you will fill it in after creating the Zap
- Click Save
Step 3: Create a Zapier Catch Hook Trigger
- In Zapier, click Create Zap
- For the trigger, select Webhooks by Zapier → Catch Hook
- Copy the webhook URL Zapier provides
- Click Continue
Step 4: Update the Destination URL in ACS
- Return to Settings → Integrations → Outbound Webhooks in ACS
- Edit your Substack destination
- Paste the Zapier webhook URL into the Destination URL field
- Save
Step 5: Load the Sample Payload
Click Send Test next to your Substack destination in ACS to fire a test payload to Zapier. In Zapier, click Test trigger — it should detect the ACS payload and display all available fields including subject_line, body_html, preheader_text, and title.
Step 6: Add the Email Action
- In your Zap, click + to add an action
- Search for and select Email by Zapier
- Choose Send Outbound Email as the event
- Configure the email:
- To: Your Substack import email address
- Subject: Map to
subject_linefrom the ACS payload - Body: Map to
body_html - Body Type: Select HTML
- Click Test action to send a test email to Substack
- Check your Substack drafts — the newsletter should appear as a new draft post
Step 7: Activate the Zap
Click Publish Zap. From this point on, every time ACS publishes a newsletter, it will automatically appear as a draft in your Substack dashboard ready for review and sending.
Tips
- Use
subject_lineas the email subject — it is specifically written for newsletters - Use
body_htmlfor the email body to preserve formatting - Substack import creates drafts only — you will still need to review and send from your Substack dashboard, which serves as a useful quality checkpoint before it goes to subscribers
- If you prefer full automation, consider using Make (formerly Integromat) which offers more advanced email formatting controls
Troubleshooting
Draft not appearing in Substack Confirm the import email address is correct by sending a manual test email to it from your regular email client.
Subject line is blank
Map subject_line (not title) to the email subject field. For newsletters, subject_line contains the formatted email subject.
Formatting looks broken in Substack
Try switching to the body (plain text) field instead of body_html if Substack's import processor is stripping or mangling the HTML.