
How to integrate Unify with Mailchimp
To integrate Unify with Mailchimp, send a Play webhook to an authenticated receiver that your team configures. The receiver calls Mailchimp, manages its credentials, and tracks the result. Use this connection to maintain a Mailchimp audience member from selected prospect data.[1][2][3]
- Connection
- Via intermediary
- Customer engagement
- Tool
- Mailchimp
- Custom receiver, then Mailchimp
- Data flow
- Unify → Your receiver → Mailchimp
- JSON payload
At a glance
- Via intermediary: your receiver calls Mailchimp
- POST request with an explicit JSON contract and destination authentication
- Test scenario: Preserve an unsubscribe
When this workflow makes sense
Start with the decision your team needs to make, then choose the connection that supports it.
Audience maintenance is useful when a contact already belongs in an agreed marketing process. Decide which audience owns that relationship and which system supplies consent. Keeping those decisions outside the generic prospect payload prevents sales context from changing marketing eligibility accidentally.
A good fit when
Teams that want to maintain a Mailchimp audience member from selected prospect data and have an owner for the receiving process. A developer or automation owner must maintain the receiver and its credentials.
Reconsider the plan when
There is no owner for the receiver, credential lifecycle, or recovery process. Assign that responsibility before using Mailchimp for a live handoff.
Design the handoff
Use this framework to agree on the input, the next action, and who owns the result.
Suggested workflow design, based on the documented capabilities below.
| Stage | Decision to make |
|---|---|
| Business decision | Maintain a Mailchimp audience member from selected prospect data |
| Receiving contract | Agree which of the 5 example data fields the receiving process actually needs. Set missing-value and identity rules in the field mapping below. |
| Execution boundary | Assign an owner for the HTTPS receiver, credentials, and Mailchimp operation. |
| Completion | Decide who can confirm the Mailchimp outcome and recover a failed or repeated handoff. Use the completion check below as the acceptance criterion. |
Explore the scenarios
Choose the situation that fits your team and work through the proposed plan.
Open a scenario to explore its plan. Checklists track your selections in this page only.
Maintain a Mailchimp audience member from selected prospect data
Start with one controlled record and one intended Mailchimp outcome. Keep the test destination separate from live operations.
The receiving owner must distinguish accepted input from completed work. Agree on the evidence required before treating this handoff as successful.
- Prepare the destination using the Mailchimp setup checklist
- Resolve the sample fields for one known record and inspect the request before sending it
- Trace that handoff through the receiving operation and compare the actual destination values with the source
Preserve an unsubscribe
Preserve an unsubscribe: run a test update against an unsubscribed test member. Confirm that refreshing the name or company does not change the subscription state.
Decide whether this case should be held for review, corrected, or retried. Make that decision before running Mailchimp against live records.
- Isolate the test in a controlled destination and record the starting state
- Run the edge case described above and capture the actual response and destination state
- Recover the record once, then check that recovery did not create unintended additional work
Illustrative workflow, not a preconfigured automation. Complete these checks in your own account.
Define success before launch
Inspect the data and the intended outcome separately. Connection status is only the first check.
Expected, not tested
Maintain a Mailchimp audience member from selected prospect data
Inspect the audience member, mapped merge fields, and subscription state. Repeat the same normalized email and verify it updates the intended member.
Documentation-based reference. This workflow has not been tested end to end. Use a record or event you control before enabling live activity.
Questions answered
Common decisions when connecting Unify and Mailchimp.
Why use an intermediary for Mailchimp?
The proposed receiver normalizes and hashes the email, selects the audience, maps its merge fields, and preserves subscription rules before calling the member API.[3]
Limits & decisions
Check these boundaries before designing a live workflow around the connection.
What the connection supports
Understand the connection, the data involved, and the behavior that matters for a Unify + Mailchimp workflow.
Authenticated intake and destination API
| Decision | What to know |
|---|---|
| Unify action | Outbound HTTP request with configurable method, authentication, headers, and body[1] |
| Receiving operation | Choose an audience and authenticate the receiver to the correct Mailchimp data center. Compute subscriber_hash as MD5 of the lowercase email for the member path.[3] |
| Response handling | Webhook response bodies are not available as inputs to later Unify Play actions[2] |
Technical setup reference
References and requirements for the Mailchimp connection.
Connection requirements and setup checklist
Before connecting
- A Unify Play with a Webhook action and a controlled record for testing
- Access to the intended Mailchimp environment and the permissions required by the cited API or trigger
- An HTTPS receiver your team implements or configures, with an owner and a place to inspect accepted work
- An agreed record identity, duplicate policy, and owner for failed handoffs
Prepare the Mailchimp destination
Choose an audience and authenticate the receiver to the correct Mailchimp data center. Compute subscriber_hash as MD5 of the lowercase email for the member path.[3]
Implement the receiving operation
Use PUT /3.0/lists/YOUR_LIST_ID/members/YOUR_SUBSCRIBER_HASH. Set status_if_new according to the documented permission and consent state; do not overwrite an existing subscription status blindly.[3]
Configure the Unify request
Use POST, the endpoint and authentication below, and JSON body format in the Webhook action. Replace setup placeholders, then inspect Expand preview with a controlled record. The receiver must respond within 8 seconds; webhook response bodies are not exposed to later Play steps.[1][2]
Validate the complete handoff
Run the success and edge-case scenarios in Explore the scenarios with a controlled record. Save the request identity and destination evidence, then apply the completion check before enabling live traffic.[3]
Request configuration
- Method
POST- URL pattern
https://YOUR_RECEIVER_HOST/webhooks/unify/mailchimp- Headers
Content-Type: application/jsonAuthorization: Bearer YOUR_RECEIVER_SECRET- Authentication
- Protect your own HTTPS receiver with a Bearer secret checked by your application. Keep the destination credentials in the receiver, not in this example payload.
Choose JSON as the body format. Unify sets Content-Type automatically. The receiver must respond within Unify’s 8-second timeout; request responses are not passed to later Play steps.[2]
Replace URL placeholders with the actual receiver URL from your account or deployed application. These example URLs are not working endpoints.
Example handoff payload
Start with a fictional prospect. Validate the resolved values before using a real record.
Inspect the sample payload and field mapping
{
"event": "prospect_handoff",
"handoff_id": "example-handoff-001",
"prospect_name": "Alex Morgan",
"prospect_email": "alex@example.com",
"company_name": "Example Company",
"company_domain": "example.com"
}Fictional data. Replace sample values before using a real Play.
Proposed JSON contract for your receiver, not a ready-made destination API request. Implement the translation in Technical setup. All prospect values are fictional and all setup placeholders must be replaced. Use the field mapping to distinguish record data from fixed settings. Select available fields in your Play and inspect Expand preview; do not replace configuration values with prospect data.[1][2][3]
| Payload field | Value to send |
|---|---|
event | Keep the literal "prospect_handoff" required by this example request; change it only when deliberately changing the receiving contract. If missing: Keep this configured value in the request; do not replace it with a blank prospect field. |
handoff_id | Supply a stable identifier for this logical handoff. Reuse it on a retry, and use a different identifier for a genuinely new event. Do not assume Unify automatically creates this sample field. If missing: Hold the handoff until the receiver or upstream workflow can establish its identity. |
prospect_name | Select the available full name field for the controlled person or company record in Unify. Keep the receiving field a string. If missing: Skip or hold the handoff if this value is required by the destination; omit it only when the destination contract permits omission. Do not send a guessed value. |
prospect_email | Select the available email field for the controlled person or company record in Unify. Keep the receiving field a string. If missing: Skip or hold the handoff if this value is required by the destination; omit it only when the destination contract permits omission. Do not send a guessed value. |
company_name | Select the available company name field for the controlled person or company record in Unify. Keep the receiving field a string. If missing: Skip or hold the handoff if this value is required by the destination; omit it only when the destination contract permits omission. Do not send a guessed value. |
company_domain | Select the available company domain field for the controlled person or company record in Unify. Keep the receiving field a string. If missing: Skip or hold the handoff if this value is required by the destination; omit it only when the destination contract permits omission. Do not send a guessed value. |
Map prospect_email to email_address and map names only to merge fields configured in that audience. The receiver computes the hash and builds the destination payload.
Troubleshooting
Start with the stage where the expected data or action stops appearing.
The request is rejected
Protect your own HTTPS receiver with a Bearer secret checked by your application. Keep the destination credentials in the receiver, not in this example payload. Check the receiving account, permissions, endpoint, and required fields against the cited documentation.[3]
The values or destination are wrong
Compare the resolved JSON with the field-by-field contract in Example handoff payload. Check identifiers against the selected Mailchimp environment, and distinguish an absent source value from an intentional static value. Fix the mapping before repeating the write.[3]
Receipt does not match the expected result
Find the request in the receiving logs, then inspect the actual Mailchimp resource or execution. If the request was accepted but no result exists, investigate the destination failure before retrying. Keep the same logical handoff identity when recovering a repeat.[3]
Sources & review
Official documentation reviewed on September 15, 2026.
Technical claims link to primary documentation from Unify and the destination tool. Scenarios, field choices, and recovery plans are editorial implementation examples. Documentation review is separate from execution testing.
Documentation reviewed; end-to-end execution not tested. No named technical reviewer has signed off on these articles yet.
Content updated: . Report a correction to Unify with the tool name, source URL, and behavior you observed.