HTTP and Slack: Parallel API Enrichment Fan-Out Template

This template fans out to several REST APIs at once with the http connector, merges the results, and posts one combined enrichment summary to a Slack channel.

What It Builds

A Webhook trigger receives an inbound payload (for example a record id, email, or domain). A Parallel node fans out into concurrent branches, each one a Connector node on the http connector calling a different external REST API. A Transform node merges the branch results into a single object, and a final Connector node on slack posts one combined enrichment summary to your channel.

Because the lookups run side by side instead of one after another in Spojit, total run time is roughly the slowest API rather than the sum of all of them.

The Prompt

Paste this into Miraxa and it builds the workflow, connecting the tools for you:

Build a workflow that triggers on a webhook carrying a company domain. Add a Parallel node that fans out into three branches, each a Connector node on the http connector doing an http-get to a different enrichment REST API (company info, social profiles, and tech stack), passing the domain from the webhook and an API key in the Authorization header. After the branches rejoin, add a Transform node that merges the three responses into one object, then a Connector node on the slack connector that uses send-message to post a single combined enrichment summary to the #enrichment channel.

Connectors Used

  • Trigger - Webhook trigger; an external system POSTs the record to enrich and the body is available as {{ input }}.
  • http - one Connector node per branch using http-get (or http-post) to call each external REST API; reaches any service that has no native tile.
  • slack - a Connector node in Direct mode using send-message to post the merged summary to one channel.

Customize It

Change the number of branches and which APIs they call, swap the trigger to Schedule or Manual if no external system pushes to you, and edit the Slack channel name and the merged fields in the summary message. If an enrichment API needs a POST body or a token in the query string rather than the Authorization header, tell Miraxa to use http-post and name where the key goes.

Tips

  • Keep each branch deterministic: use the http Connector node in Direct mode so every lookup is a predictable single call with no AI cost. Reserve Agent mode for branches that need judgment.
  • In the merge Transform node, reference each branch by its output variable (for example {{ companyInfo.body }}) so a single slow or empty API does not break the final Slack message.
  • If one enrichment source is optional, guard the Slack text with a fallback value so a missing field shows as "n/a" rather than a blank line.

Common Pitfalls

  • A failing branch can stop the whole Parallel node. Confirm each API's auth and base URL on a single test run before going live, and review the run in execution history.
  • Rate limits hit harder when calls fire together. If an API is strict, move that lookup out of the fan-out or add a retry on its Connector node.
  • The slack connector needs a connection with permission to post to the target channel, and the channel must exist and allow the connection to post.

Related Articles

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.