Ops · n8n

Auto-Update Your Site Banner When Zendrop Reports Holiday Shipping Delays

Polls Zendrop for active holiday delay notices and instantly fires a webhook to update your website banner, keeping shoppers informed without any manual work. Set it once and let it run every day during peak seasons.

difficulty Intermediatesetup 40 minresult Your website banner is automatically updated with the latest Zendrop holiday delay message as soon as a delay notice is detected, reducing customer support tickets during peak periods.
  1. 1

    Step 1 — Schedule a Daily Trigger

    Add a Schedule Trigger node. Set Trigger Interval to Days and Days Between Triggers to 1. Choose a time like 07:00 AM so your banner updates before your store's peak traffic. This node fires the workflow automatically every morning.

  2. 2

    Step 2 — Fetch Zendrop Delay Notices

    Add an HTTP Request node named Get Zendrop Delays. Set Method to GET and URL to https://api.zendrop.com/v1/announcements (replace with your actual Zendrop API endpoint). Add an Authorization header using your Zendrop API key as a Bearer token — store it in an n8n credential of type Header Auth. The response will include any active holiday delay announcements.

  3. 3

    Step 3 — Check If a Delay Exists

    Add an IF node named Delay Active?. Set the condition to check {{ $json.data.length }} is greater than 0. Route the true branch forward to the next step. The false branch can be left unconnected — if there are no delays, the workflow simply stops and your banner remains unchanged.

  4. 4

    Step 4 — Extract the Delay Message

    Add a Set node named Build Banner Payload. Create a new field called bannerMessage and set its value to {{ $json.data[0].message }}. Optionally add a bannerActive field set to true. This shapes the data into a clean payload your website webhook can consume.

  5. 5

    Step 5 — Send to Your Site Webhook

    Add an HTTP Request node named Update Site Banner. Set Method to POST and URL to your website or CMS webhook endpoint (e.g., a Netlify build hook, WordPress REST endpoint, or custom handler). Set Body Content Type to JSON and map bannerMessage and bannerActive from the previous node into the request body. Your site receives the payload and displays the delay notice banner automatically.

Frequently asked questions

What if Zendrop changes their API endpoint?

Log in to your Zendrop account, navigate to the API documentation or developer settings, and copy the updated announcements endpoint. Then open the `Get Zendrop Delays` node in n8n and paste the new URL into the `URL` field. No other changes are needed.

How do I make the banner disappear when delays end?

Connect the `false` branch of the `Delay Active?` IF node to a second `HTTP Request` node that POSTs `{ "bannerActive": false }` to your same site webhook. Your site code should hide the banner whenever `bannerActive` is false, giving you full automatic on/off control.

Can I trigger this more than once a day during a crisis?

Yes. In the `Schedule Trigger` node, change `Trigger Interval` to `Hours` and set `Hours Between Triggers` to `2` or `4`. This makes the workflow check Zendrop every few hours so your banner updates much faster when new delay notices are posted.

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.