A node is a single step in a workflow. Nodes fetch data, process it, or send it to another destination. Every workflow is built by chaining multiple nodes together.


Trigger vs Action Nodes

There are two types of nodes in Markifact:

  • Trigger Node – Starts the workflow. This could be time-based (e.g., every Monday), event-based (e.g., new Slack message), or manual.
  • Action Node – Performs a specific task. This includes pulling data, transforming it, sending it, or using AI to analyze it.

Common Node Categories

While all action nodes technically follow the same structure, they fall into categories based on behavior:

CategoryDescriptionExamples
Pull DataFetches data from a sourceGoogle Ads, BigQuery, Meta Ads
TransformProcesses or reshapes the dataFilter Rows, Sort, Rename Fields
AIUses language models to analyze or generateAsk AI, Analyze Data, Summarize
SendSends data to a destinationGoogle Sheets, Slides, Slack

Node Status Indicators

Nodes display visual indicators to show their current state:

StatusDescription
No badge or iconNode is ready to run and properly configured
⚠️ Warning (orange circle)Configuration is incomplete - missing required fields or settings
❌ Error (red X)Last run failed - check the Logs panel for error details
✅ Success (blue checkmark)Last run completed successfully

These indicators help you quickly identify which nodes need attention before running your workflow.


Inputs & Outputs

Each node receives input from the previous step and produces output for the next one.

Where to View Inputs and Outputs

After running a workflow:

  1. Open the Logs panel
  2. Click any node to expand its details
  3. Toggle between Input and Output tabs
  4. You can view both Table and JSON formats

This helps you understand what’s flowing between nodes — especially when debugging.


Passing Data Between Nodes

You can reference the output of any previous node using the dynamic data picker.

For example, when sending data to Google Sheets:

  • Click on the Data field
  • Choose “Insert Dynamic Data”
  • Pick the output from a previous node (e.g., Get Report)
  • You can insert the entire output, or individual fields like Sessions, Page Views, etc.


Common Issues: “I Don’t See Any Output to Select”

If a node’s output doesn’t show up in the dynamic data picker, here are the most likely reasons:

1. Node isn’t fully configured

  • Some fields might be missing (e.g., missing credentials, dataset, or query).
  • You’ll usually see a warning badge around the node.
  • Make sure all required fields are filled out and saved.

2. Node hasn’t been run yet (for preview-only outputs)

  • Some nodes like BigQuery or Google Sheets require an actual run to generate outputs.
  • These nodes fetch dynamic fields (e.g., column names or schema) and can’t predict output without executing.

🔍 Important: Even if the node technically works, its output might not be “discoverable” in downstream nodes until it’s run.

3. You’re referencing a node that produced no output

  • If the node ran but returned nothing (e.g., an empty query result), the output might be technically “valid” but invisible.
  • Check the Logs tab → Output to confirm there’s data.

4. Node isn’t connected or dependent on the target node

  • The dynamic data picker only shows outputs from nodes that are in the same execution path as your current node.
  • If nodes are in different branches or not connected through the workflow path, their outputs won’t be available.
  • Make sure there’s a clear execution path from the source node to your current node.

Best Practices

  • Give your nodes clear labels (e.g. “Pull Meta Ads – Last 7 Days” instead of just “Get Report”)
  • Always run a node once before using its output in another node (especially for BigQuery, Sheets, or Docs)
  • Use the Logs tab to confirm output and test your logic
  • Use “Use All Data” for tables and field-level insertion for messages and AI steps

FAQ