Skip to content

Working with data operations and variables in Power Automate

When you pull information from Tallyfy into Power Automate, you’ll deal with collections of tasks, form field data, and JSON payloads. Variables, loops, and data operations are the tools that let you store values, transform data, and process multiple items at once.

How variables work with Tallyfy integrations

Variables are temporary storage that persists while your flow runs. Here’s why they matter for Tallyfy work:

  • Store intermediate results from Tallyfy data lookups
  • Count tasks that match specific criteria
  • Build up a list of task names before sending it somewhere else
  • Control loop behavior based on changing Tallyfy values

Variable types in Power Automate: Boolean, Integer, Float, String, Array, and Object.

Common variable actions:

  • Initialize variable - declares the variable with a name, type, and starting value (always goes first)
  • Set variable - overwrites the current value
  • Increment / Decrement variable - adds or subtracts 1, great for counters
  • Append to string variable - tacks text onto the end
  • Append to array variable - pushes a new item into the list

Looping through Tallyfy data with Apply to each

The Apply to each control runs your actions once per item in an array.

  • Power Automate adds it automatically when you pick dynamic content that’s a list (like rows from a Tallyfy table form field)
  • You can also add one manually and point it at array data from an earlier step

Tallyfy example: Say a task has a table-type form field listing equipment for a project. When you fetch that task through the Tallyfy connector or API, the table comes back as an array. Use “Apply to each” to loop through every row - maybe creating purchase orders in your ERP or adding items as tasks in another Tallyfy process.

Parsing JSON from Tallyfy

Tallyfy webhooks and API responses return JSON. The Parse JSON data operation turns that raw text into structured objects you can reference as dynamic content.

How to set it up:

  1. Add Parse JSON from Data Operations
  2. Content - point it at your JSON string from Tallyfy
  3. Schema - click Generate from sample and paste real JSON from a Tallyfy webhook or API call

Tallyfy example: Someone launches a process and your webhook fires a JSON payload to Power Automate. That payload contains the process name, who started it, and all kick-off form data - but it’s just a text blob until you parse it. After parsing, you can grab the initiator’s email, route form data to other systems, or trigger follow-up actions.

Handling Tallyfy field types after parsing:

  • Text fields - map directly as strings
  • Dropdown fields - use item()?['fieldName']?['text'] for the display label
  • Checkbox fields - returns an array of selected values; loop or index into it
  • Table fields - each row is an object in an array, so you’ll need a loop
  • Date fields - arrives in ISO format; format with formatDateTime()

Transforming Tallyfy data into CSV or HTML tables

Two data operations turn arrays into formatted output:

  • Create CSV Table - feed it an array of Tallyfy task details, get back a CSV string for Excel
  • Create HTML Table - same input, outputs an HTML table you can paste into an email

Tallyfy use case: Pull overdue tasks using the Tallyfy connector or API, then run them through Create HTML Table to email a formatted summary to stakeholders.

Putting it together - a daily task report

Scenario: Your team lead wants a daily email at 8 AM showing all their Tallyfy tasks due that day, formatted as an HTML table.

  1. Trigger: Recurrence. Set to run daily. (See understanding Power Automate basics for trigger setup.)

  2. Action: Get user profile (V2) (Office 365 Users). Optional - only needed if you want assignee details beyond email.

  3. Action: Tallyfy - “Get a member’s tasks” (Get_User_Tasks).

    • Set up your Tallyfy connection
    • user_id - the team lead’s Tallyfy user ID
    • q - optional search query to narrow results
    • This action doesn’t filter by date, so you’ll filter in the next step
  4. Control: “Filter array” (Data Operation).

    • From: the task list output from the previous step
    • Condition: use an expression to keep only tasks due today: @equals(formatDateTime(item()?['deadline'], 'yyyy-MM-dd'), formatDateTime(utcNow(), 'yyyy-MM-dd'))
  5. Action: Initialize variable.

    • Name: DailyTaskReportHTML
    • Type: String
    • Value: <table><tr><th>Task Name</th><th>Deadline</th></tr>
  6. Control: “Apply to each”.

    • Input: output from the “Filter array” step
  7. Inside “Apply to each”: Action - “Append to string variable”.

    • Name: DailyTaskReportHTML
    • Value: <tr><td>[Task Name]</td><td>[Deadline formatted with formatDateTime()]</td></tr>
  8. (Outside loop) Action: Append to string variable.

    • Add </table> to close the HTML table
  9. Action: Send an email (V2).

    • To: team lead’s email
    • Subject: Your Tallyfy Tasks Due Today
    • Body: switch to code view (</>) and insert DailyTaskReportHTML. Enable HTML rendering.

Tips for working with Tallyfy data

  • Initialize early. Put all variable initializations at the top of your flow. It’s easier to maintain.
  • Expect arrays everywhere. Table form fields? Arrays. Multiple tasks from the API? Arrays. You’ll reach for “Apply to each” often.
  • Debug with Compose. Can’t tell what your data looks like? Drop a “Compose” action and output your variable or Tallyfy data. It’s console.log for Power Automate.

Power Automate > Understanding Power Automate basics

Power Automate connects Tallyfy to your other business apps by using triggers and actions to automatically launch processes and create tasks based on external events like emails or CRM updates while Tallyfy handles the human side of structured workflow management and collaboration.

Power Automate > Using conditional logic in Power Automate

Power Automate’s conditional logic lets flows make decisions based on Tallyfy data - using IF-THEN structures, Switch controls, and nested conditions to route actions differently based on task statuses, form field values, and process conditions.

Middleware > Power Automate

Microsoft Power Automate serves as a no-code bridge between Tallyfy and your other business systems—including Office 365 and SharePoint and Dynamics—using a Premium-tier OAuth 2.0 connector with 13 actions to sync data and automatically launch processes or complete tasks based on events happening across your entire software stack.