PL-900 Practice Question: Demonstrate the capabilities of Power Automate
Your Power Automate flow uses an HTTP action to call a REST API. The API returns a JSON array of objects. You need to process each object and create a record in a SQL Server database. Which actions should you use?
⚠ Common exam trap
PL-900 often tests whether candidates know that arrays require 'Apply to each' iteration and schema parsing, so they wrongly pick 'Filter array' or 'Compose' thinking those process each object.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Use 'Parse JSON' to define the schema, then 'Apply to each' with 'Insert row' inside.
To process a JSON array of objects from an HTTP response, you first use 'Parse JSON' to define the schema so Power Automate understands the structure, then use 'Apply to each' to iterate over the array, placing the 'Insert row' action inside the loop to create a SQL record per object. This is the standard pattern for iterating and inserting.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Use 'Filter array' to select objects, then 'Insert row'.
Why it's wrong here
Filter array reduces the collection to matching items but does not iterate, so only a single row is inserted rather than one per object. It fits narrowing an array by condition before acting on the subset.
- ✓
Use 'Parse JSON' to define the schema, then 'Apply to each' with 'Insert row' inside.
Why this is correct
'Parse JSON' converts the returned array into a typed schema, enabling 'Apply to each' to iterate every object and 'Insert row' to write each into SQL Server. This satisfies the requirement to process each object individually.
- ✗
Use 'Compose' to store the JSON, then 'Insert row' directly.
Why it's wrong here
Compose stores the whole JSON array as one object, and Insert row expects a single record, so it cannot create a row per element. It fits holding a value for reuse later in the flow.
- ✗
Use 'Select' to transform the array, then 'Insert row' with a batch.
Why it's wrong here
'Insert row' writes a single record per call, so it cannot accept a batch, and 'Select' only reshapes the array without iterating it. The tempting use is mapping fields before insertion, but processing each object requires an 'Apply to each' loop wrapping the insert action.
Go deeper
Related to this question
About these practice questions
Courseiva writes every PL-900 question from scratch — 701 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official Microsoft exam blueprint
This PL-900 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the PL-900 exam.