Platform · Routing

Routing you can see.

Call routing is logic, and logic is easier to trust when you can look at it. The flow builder puts every branch, webhook, and failover on one canvas — drag the nodes, connect them, save, and calls follow the picture.

Routing is where tracking starts paying for itself: the same data that attributes a call decides where it goes next.

The working path

From input to next step.

A flow is nodes and connections. Here is what the nodes can do.

  1. 01

    Drag the logic onto the canvas.

    The node library covers the routing vocabulary: If Statements for branching, Routing Plans for destinations, Tagging, Variables, Hangup, and Debug. Connect outputs to inputs and the call's path is the diagram — there is no second configuration hiding underneath it.

  2. 02

    Call out to your systems mid-flow.

    HTTP Request nodes hit any external API while the call is being set up, and a Wait For Pre-Call Webhooks node holds routing until the answers come back. Qualify the caller against your CRM, check a suppression list, or price the call — before it ever rings a buyer.

  3. 03

    Write code only where you want to.

    JavaScript nodes run custom logic inside the flow for the cases the visual vocabulary doesn't cover. Everything else stays drag-and-drop.

  4. 04

    Fail toward an answer, not a dropped call.

    Routing Plan nodes carry explicit failover paths, so when a destination doesn't process the call, the flow already knows where it goes instead. The failure mode is designed on the same canvas as the happy path.

Product specifics

The controls behind the work.

The node library and what each node does.

If Statement

Conditional branching on any call, tag, or variable data.

Routing Plan

Route to configured destinations, with failover paths built in.

HTTP Request

Call external APIs mid-flow — GET through DELETE.

Wait For Pre-Call Webhooks

Hold routing until external responses arrive.

JavaScript

Custom logic inside the flow when you need it.

Tagging

Attach tags to calls for routing, tracking, and reporting.

Variable

Set and manipulate flow variables between nodes.

Hangup

End the call deliberately, with optional messaging.

Debug

Log node data while you build, so flows ship tested.

Why connect it

Change the working pattern.

The flow builder replaces routing changes that used to be tickets.

The friction

IVR and routing changes filed as engineering or vendor tickets, shipped in days.

With Moja

The operator edits the canvas and saves. The flow is the deployment.

The friction

Routing logic documented in a wiki that drifted from what's actually configured.

With Moja

The diagram is the configuration — what you see is what runs.

The friction

Pre-call qualification bolted on with middleware between vendors.

With Moja

HTTP Request and webhook-wait nodes do the lookup inside the flow itself.

Keep the evaluation moving.