What changed and why?
Previously, when building Integrations using Pipefy actions (such as "Get Card by ID"), the integration relied on the exact names of your fields and phases to map data. This created a vulnerability: if someone simply renamed a field or a phase in your Pipefy process, the integration would break because it was still looking for the old name.
The Solution: We have updated the system to use unique, unchangeable system IDs instead of names. Now, if you rename a field or phase in Pipefy, your integrations will remain perfectly stable and will not break.
Who needs to take action?
Published Flows: If you have active, published flows that you are not currently editing, you do not need to do anything. They will continue to run normally using the old structure.
Edited Flows: If you edit an existing flow, the system will automatically upgrade it to this new, more stable version. When this happens, you will need to update your dynamic variables to use the new ID-based structure to avoid errors.
🛠️ Step-by-Step Guide: Adapting Your Existing Flows
If you are editing an existing flow, please follow these steps to update your data mapping.
Step 1: Identify affected flows & recognize the error
This change affects any flow that uses dynamic data from actions like Get Card by ID, Create Card, or Get Cards by Phase / Field Value.
If you edit one of these flows without updating the mapping, you will likely see a "Testing Failed" error regarding invalid or missing inputs.
Step 2: Update your mapping with the new structure
To fix the error, simply clear the old dynamic value and select the data again using the Data Selector. You now have two ways to find your fields:
Option A: Map from "fields" (All fields) You can easily find all your card's fields grouped together under the fields option. Look for your field's ID (the label/name will still be visible to help you identify it) and insert the value.
Option B: Map from "fields_by_phase" (Grouped by phase) If you prefer to find a field based on the phase it belongs to, select fields_by_phase. First, select the specific Phase (or start_form), and then select your Field ID to insert the value.
Step 3: Test your flow
After updating your mappings, run a test to confirm the flow is successfully pulling data using the new structure.
Tip: You can optionally rename a field in Pipefy and test the flow again to see the new stability in action—it will continue to work flawlessly!
📋 Summary of Changes
Before (old structure) | After (new structure) |
Keys = field label, phase name | Keys = field ID, phase ID (or start_form) |
One object per phase keyed by name | fields_by_phase[phase_id] with .name and .fields |
Fields keyed by label | fields[field_id] and fields_by_phase[phase_id].fields[field_id] |
Renaming in Pipefy broke flows | Renaming in Pipefy does not change keys; flows stay valid |
