Understanding Dynamic Content in Power Automate
What dynamic content in Power Automate is, how to insert it, and where beginners typically stumble.
How the Parse JSON action in Power Automate works, and how you can generate a schema from a sample payload in just a few clicks.
The Parse JSON action is one of the data operations in Power Automate, and it turns a JSON response that arrives as unstructured text into user-friendly fields you can select with a click in later steps. Without this action, you'd have to pull out values yourself using expressions like body('HTTP')?['data']?['name'], which quickly becomes confusing for non-programmers. With Parse JSON, Power Automate does this work for you and shows each field as its own dynamic content.
The trick is called schema generation from a sample payload: you don't have to write a JSON schema by hand, but instead insert a sample of the expected data, and Power Automate automatically builds the matching structure from it. This article shows step by step how that works, what to watch out for, and which errors occur most often. As of: July 2026.
According to the official documentation, the Parse JSON action is one of several data operations in Power Automate that let you work with data in your cloud flow without writing complicated expressions or loops (Power Automate documentation: Working with data operations). It takes JSON content, such as the response from an HTTP request, a form, or another connector, and converts it into individual, named fields based on a stored schema.
As a non-programmer, the most important thing for you is: once the schema is set up, you no longer need to worry about the actual analysis of the JSON structure. Power Automate handles that in the background.
You don't have to formulate a JSON schema yourself. Instead, you insert a sample of your data, and Power Automate automatically derives the matching schema from it. The official documentation describes exactly this process using the example of a file upload from a form (Power Automate documentation: Common ways to use a form in a flow):
The action then shows a complete schema with all detected fields and data types, and you immediately get new dynamic content for the next steps in your flow. It's also handy that you can use the same approach without an actual test run: a manually typed JSON sample works just as well, as long as the structure matches the real data.
Once the schema is set up, the parsed fields appear in every subsequent action under the name of your Parse JSON action. You simply click the field you want, such as Body Email or Body Amount, and Power Automate automatically inserts the matching expression.
body('Parse_JSON')?['data']?['name'], so the flow doesn't fail with an error when fields are missing (Power Automate documentation: Expression cookbook for cloud flows).You always stay in control of the schema: if the structure of the incoming data changes, you reopen the action, select Generate from sample again, and update the schema with a new sample payload.
Most problems don't arise from the action itself, but from a schema that no longer matches the actual response.
json() function, an error occurs, because most connector actions already return JSON in parsed form.Anyone who regularly connects external systems via JSON, processes form data, or links several connectors together benefits from planning the structure of such flows cleanly from the start. This is exactly where NordFlux's Power Automate consulting supports mid-sized companies, from the first automation to a stable handover to your team.
No. The action is designed precisely so that you don't have to read or write JSON syntax. You insert a sample payload, have the schema generated, and afterward work only with named fields in the list of dynamic content.
The most reliable option is a real test run of your flow, whose output you copy. If you don't have a run yet, a manually entered JSON sample is also fine, as long as the field names and the general structure match the later real data.
Then the Parse JSON action often reports an error because an expected field is missing or a new data type appears. Open the action, select Generate from sample again, and insert a current sample payload to update the schema.
Yes. The schema exists in the background as a regular JSON schema and can be edited directly by hand in the schema field of the action, for example to mark a field as optional. For getting started, though, automatic generation from a sample payload is much faster and less error-prone.
Yes, the action also detects nested objects and arrays within the sample payload and maps them accordingly in the generated schema. To process array elements, you additionally need an Apply to each loop in your flow afterward.
Founder of NordFlux. Spent four years automating processes at enterprise scale at Dräger, and now brings that depth to the mid-market — pragmatic and with full data sovereignty.
Certifications
What dynamic content in Power Automate is, how to insert it, and where beginners typically stumble.
Variables in Power Automate explained simply: Initialize, Set, Increment and Append – the most important actions in German.
Filter Array and Select replace Apply to Each for filtering and reshaping arrays and run noticeably faster.
Generating the schema from a sample payload is the easy part, the real errors usually show up once the actual API response changes later on. NordFlux builds Parse JSON steps that hold up against exactly these changes and takes over the entire flow around that action when needed. That way your process stays stable even as a connected system keeps evolving.