DRAGOPS
DRAGOPS
DocumentationConceptsNodes and pins

Nodes and pins

Learn how nodes work and how typed pins control data and execution flow.

Nodes

Nodes are the building blocks of every pattern. Each node performs one operation — parse JSON, make an HTTP request, compare two values, or branch on a condition.

DRAGOPS ships with 179 primitives organized into 16 categories:

CategoryExamples
EventsOn Webhook, On Schedule, On Pattern Call
Flow ControlBranch, For Each, Switch, Sequence
HTTPHTTP Request
StringConcat, Split, Replace, Format
MathAdd, Multiply, Clamp, Random
ArrayMap, Filter, Find, Sort, Reduce
Object/MapGet Property, Set Property, Merge
Data FormatsParse JSON, Stringify JSON, Parse CSV
ComparisonEqual, Greater Than, Contains
Date/TimeNow, Format, Add, Parse
VariablesGet Variable, Set Variable
UtilityLog, Delay, Comment

Node categories and header colors

Every node has a colored header that indicates its category at a glance:

CategoryHeader colorPurpose
Event PinkTriggers that start execution
Function BluePure computations and data transforms
Flow OrangeControl flow (Branch, For Each, Switch)
Action GreenSide effects (HTTP requests, logging)

Pins

Pins are the connection points on the left and right edges of a node. You create wires between pins to build your automation logic. There are two kinds of pins.

Execution pins

Execution pins control when a node runs. They are white/gray and triangular, forming the execution flow — like lines of code running in sequence.

  • A node with execution pins runs only when its input execution pin fires
  • After completing, it fires its output execution pin to continue the flow
  • Some nodes have multiple output execution pins (like Branch, which has True and False)

Data pins

Data pins carry values between nodes. They are circular, and each type has a distinct color so you can identify the data flow at a glance:

TypeColorExample values
String Pink"hello", ""
Integer Teal42, -1, 0
Float Green3.14, -0.5
Boolean Redtrue, false
Object Blue{ "key": "value" }
Array Purple[1, 2, 3]
DateTime Amber2026-03-05T12:00:00Z
Binary Orange(raw byte data)
Any GrayAccepts any type
Null Dark graynull
Enum Dark greenNamed enumeration values

For details on how types interact when you connect pins, see the type system.

Pure vs impure nodes

Nodes fall into two behavioral categories based on whether they have execution pins:

  • Pure nodes (no execution pins) — compute a value from their inputs. They evaluate inline when their output is needed. Examples: Add, Concat, Equal.
  • Impure nodes (has execution pins) — perform an action with side effects. They execute in sequence along the execution flow. Examples: HTTP Request, Log, Set Variable.

Pure nodes do not appear in the execution flow. Instead, their outputs are calculated on demand when a downstream impure node needs the value.

Connecting pins

Drag from an output pin to a compatible input pin to create a wire. The type system prevents invalid connections — you cannot wire a Boolean output into an Object input without a conversion node.

To disconnect a wire, drag it away from the input pin.

  • Wires — the connections between pins
  • Type system — compatibility rules for connecting pins
  • Variables — using Get Variable and Set Variable nodes

On this page