Marketing · n8n

Automatically Launch a Mailchimp Campaign When Zendrop Product Prices Drop

This recipe monitors your Zendrop products for price drops via a scheduled HTTP check and instantly triggers a targeted Mailchimp email campaign to alert your customers. Save hours of manual work and never miss a chance to promote a discounted product.

difficulty Intermediatesetup 45 minresult Whenever a Zendrop product price drops below your set threshold, a Mailchimp campaign is automatically created and sent to your chosen audience list.
  1. 1

    Schedule a Regular Price Check

    Add a Schedule Trigger node and set it to run every hour (or at your preferred interval). This node kicks off the workflow automatically so you never have to check Zendrop manually. In the node settings, set Rule to Hours and Every to 1.

  2. 2

    Fetch Product Prices from Zendrop

    Add an HTTP Request node connected to the Schedule Trigger. Set Method to GET and URL to your Zendrop API endpoint (e.g. https://api.zendrop.com/v1/products). Add your Zendrop API key as a header: Authorization: Bearer YOUR_API_KEY. Store this key safely in n8n credentials. The response will contain current product prices.

  3. 3

    Check If Price Has Dropped Below Threshold

    Add an IF node to filter only products with a price drop. In the Value 1 field enter the expression {{ $json.price }} and set the condition Smaller Than with Value 2 as your threshold number (e.g. 25). Only products meeting this condition will continue to the next step. Adjust the threshold to match your margin requirements.

  4. 4

    Build the Campaign Data

    Add a Set node on the TRUE branch of the IF node. Create fields that Mailchimp needs: set campaign_name to Price Drop: {{ $json.name }}, set subject_line to Limited Time Deal on {{ $json.name }}!, and set list_id to your Mailchimp audience ID (found in Mailchimp under Audience settings). This prepares a clean data object for the final step.

  5. 5

    Create and Send a Mailchimp Campaign

    Add an HTTP Request node connected to the Set node. Set Method to POST and URL to https://usX.api.mailchimp.com/3.0/campaigns (replace usX with your Mailchimp data center prefix). Add header Authorization: apikey YOUR_MAILCHIMP_API_KEY. Set Body Content Type to JSON and in the Body field include: {"type":"regular","recipients":{"list_id":"{{ $json.list_id }}"},"settings":{"subject_line":"{{ $json.subject_line }}","from_name":"Your Store","reply_to":"you@yourdomain.com","title":"{{ $json.campaign_name }}"}}. After the campaign is created, a follow-up send call can be made using the returned campaign ID.

Frequently asked questions

How do I find my Zendrop API key?

Log in to your Zendrop account, navigate to Settings, then API or Integrations. Copy the API key shown there and paste it into the HTTP Request node header in n8n. Keep this key private and never share it publicly.

What if I want to track the previous price to detect a real drop?

You can store the last known price in a Google Sheet or Airtable and add a comparison step before the IF node. Each run updates the stored price after checking, so the next run can compare current vs stored price to confirm a genuine drop.

Can I send to a specific Mailchimp segment instead of the whole list?

Yes. In the Set node, add a `segment_id` field with your desired Mailchimp segment ID. Then in the HTTP Request node body, add `"segment_opts":{"saved_segment_id":YOUR_SEGMENT_ID}` inside the `recipients` object to target that segment.

About this recipe. Recipes on FlowRecipesHub are written for business owners, not developers, and are tested before publishing — how recipes get made. Some ingredient links are affiliate links that cost you nothing — full disclosure.