Courseiva

Microsoft Power Platform Fundamentals PL-900 (PL-900) — Questions 151–225

701 questions total · 10pages · All types, answers revealed

Page 2

Page 3 of 10

Page 4
151
MCQeasy

In a Power Apps canvas app, the App.OnStart property contains the code above. The LookUp function returns blank for a user who exists in the Roles data source. What is the most likely cause?

A.The app needs to refresh the Roles data source first.
B.The Set function cannot store records.
C.The User() function is not available in Power Apps.
D.The Roles data source column name does not match 'UserEmail'.
AnswerD

LookUp matches the formula's column argument against the actual column logical name in the Roles data source. If that column is named differently from 'UserEmail', the lookup finds no matching record and returns blank even though the user exists.

Why this answer

The LookUp function in Power Apps relies on exact column name matching. If the Roles data source has a column named 'Email' or 'UserID' instead of 'UserEmail', the function will not find a match and will return blank, even if the user exists. This is a common schema mismatch issue in canvas apps.

Exam trap

The trap here is that candidates assume the LookUp function will automatically match any column containing the user's email, ignoring the exact column name requirement, or they confuse this with a data refresh or function availability issue.

How to eliminate wrong answers

Option A is wrong because the Roles data source is automatically loaded when the app starts; a manual refresh is not required unless the data source is explicitly configured to defer loading, which is not indicated. Option B is wrong because the Set function can store records, including the result of a LookUp, as long as the result is a valid data type (e.g., a record or blank). Option C is wrong because the User() function is fully available in Power Apps and returns the current user's email, name, and other details; it is a core function.

152
MCQhard

Refer to the exhibit. An ARM template deploys a Power App with a connection to Office 365 Outlook. What is the purpose of the 'dependsOn' element?

A.To deploy the resources to different regions
B.To ensure the connection is deployed before the app
C.To ensure the app is deployed before the connection
D.To reduce the cost of the deployment
AnswerB

dependsOn establishes deployment ordering in ARM, so the Office 365 Outlook connection resource is created before the app that references it. Without it, the app could deploy against a connection that does not yet exist.

Why this answer

In an ARM template, the dependsOn element explicitly declares that one resource must be deployed before another. In this scenario, the Power App depends on the Office 365 Outlook connection, so dependsOn ensures the connection is created first. This ordering is essential because the app references the connection's resource ID; without it, deployment could fail or the app could be provisioned without a valid connection.

Exam trap

PL-900 often tests the misconception that dependsOn controls deployment order in reverse or affects cost/region, when it strictly enforces that the referenced resource is deployed first.

How to eliminate wrong answers

Option A is wrong because region selection is controlled by the location property, not dependsOn. Option C is wrong because it reverses the dependency — the app does not need to exist before the connection, and doing so would break the reference. Option D is wrong because dependsOn has no impact on cost; it only affects deployment order.

153
MCQmedium

A company uses Power Automate flows that connect to SharePoint and Microsoft Entra ID. The administrator needs to ensure that the flows can access data only from approved data sources. What should the administrator configure?

A.Define SharePoint site permissions for the flows
B.Create a Data Loss Prevention (DLP) policy that restricts connectors to approved data sources
C.Configure data policies in Power Apps settings
D.Set connector sharing permissions to limit access
AnswerB

A Data Loss Prevention policy in Power Platform classifies connectors into business, non-business and blocked groups, preventing flows from combining approved and unapproved data sources. This enforces the restriction to approved sources across SharePoint and Microsoft Entra ID connectors.

Why this answer

Data Loss Prevention (DLP) policies in the Power Platform allow administrators to control which connectors can be used together in flows and apps, effectively restricting flows to approved data sources like SharePoint and Microsoft Entra ID. By classifying connectors as Business or Non-Business, DLP policies prevent unauthorized data sharing between environments, which directly addresses the requirement to limit data access to approved sources.

Exam trap

The trap here is that candidates often confuse DLP policies with SharePoint permissions or connector sharing, thinking that restricting user access to SharePoint sites is sufficient to control flow data sources, when in fact DLP policies are the only mechanism that can restrict which connectors a flow can use at the environment level.

How to eliminate wrong answers

Option A is wrong because SharePoint site permissions control user access to SharePoint content, not the data sources that Power Automate flows can connect to; flows run under their own service principal or user context and are not governed by site-level permissions alone. Option C is wrong because data policies in Power Apps settings are a legacy concept that has been replaced by the unified DLP policy management in the Power Platform admin center, and they do not provide the granular connector-level restriction needed for flows. Option D is wrong because connector sharing permissions control which users or groups can use a specific connector instance, not which data sources (connectors) are allowed or blocked across the entire environment.

154
MCQmedium

A support team uses a Power Automate cloud flow that runs when a new email arrives in a shared mailbox. The flow occasionally processes the same message twice, creating duplicate Dataverse cases. The maker needs to make the flow idempotent so a given message is handled only once. Which approach should the maker take?

A.Add a condition that checks whether a case with the same Internet Message ID already exists in Dataverse, and stop the flow if it does.
B.Increase the trigger's interval and frequency so the flow polls the mailbox less often.
C.Enable concurrency control on the trigger and set it to a value of one.
D.Add a Delay action at the start of the flow before creating the case.
AnswerA

The Internet Message ID uniquely identifies an email message. Querying Dataverse for an existing case with that identifier and terminating when found makes the flow idempotent, so a repeated trigger event for the same message cannot create a second case. This directly solves the duplicate-processing symptom.

Why this answer

Idempotency means the same input produces the same single outcome even if processed more than once. Checking for an existing Dataverse case keyed on the email's Internet Message ID before creating a new record guarantees that a repeated trigger event for one message is detected and discarded, eliminating duplicates without altering the trigger's timing.

Exam trap

The trap here is treating performance settings such as polling frequency or concurrency as correctness controls, when only an explicit uniqueness check prevents duplicate processing.

155
MCQmedium

A company wants to create a Power App that uses AI to extract information from uploaded invoices. The app should allow users to upload an invoice image and then automatically populate fields like invoice number, date, and total amount. Which Power Platform feature should you use? A) AI Builder's prebuilt invoice processing model. B) Custom Vision service in Azure. C) Power Automate with OCR actions. D) Use the 'Scan' function in Power Apps.

A.AI Builder's prebuilt invoice processing model.
B.Use the 'Scan' function in Power Apps.
C.Custom Vision service in Azure.
D.Power Automate with OCR actions.
AnswerA

AI Builder's prebuilt invoice processing model extracts invoice number, date and total from uploaded documents using a trained document-understanding model, returning structured fields the app can bind directly. It satisfies the requirement for automatic field population without custom model training or OCR pipeline building.

Why this answer

AI Builder's prebuilt invoice processing model is specifically designed to extract key fields such as invoice number, date, and total amount from uploaded invoice images. It is a no-code/low-code AI feature within the Power Platform, making it the most appropriate choice for this requirement.

Exam trap

PL-900 often tests the distinction between AI Builder prebuilt models and other Azure AI services, so candidates might choose Custom Vision or generic OCR thinking they are equivalent, but AI Builder is the integrated low-code solution.

How to eliminate wrong answers

Option B is wrong because the 'Scan' function in Power Apps is not a built-in AI feature for invoice processing; it typically requires custom implementation and does not automatically extract structured data. Option C is wrong because Custom Vision in Azure is for image classification and object detection, not for extracting text fields from invoices; it would require significant custom development. Option D is wrong because Power Automate with OCR actions can extract text, but it does not provide prebuilt invoice-specific field extraction and would require complex parsing logic.

156
Multi-Selectmedium

Which TWO features are available in Power Pages to customize the appearance and behavior of a site without writing custom code?

Select 2 answers
A.Power Pages Studio
B.Custom JavaScript
C.Theme editor
D.Custom CSS
E.Liquid templates
AnswersA, C

Power Pages Studio provides a no-code visual interface for editing site pages, layouts, styling and component behaviour, satisfying the stem's requirement to customise appearance and behaviour without writing code. It is the primary design surface for makers, so it qualifies as one of the two correct features.

Why this answer

Power Pages Studio (A) is correct because it is the browser-based, no-code design environment where makers visually edit pages, sections, components, forms, and lists, and configure site behavior through built-in settings rather than code. The Theme editor (C) is correct because it provides a no-code interface for selecting and customizing colors, typography, buttons, and other styling tokens that apply consistently across the site. Custom JavaScript (B), Custom CSS (D), and Liquid templates (E) are all code-based customization mechanisms, so they require writing code and therefore do not satisfy the 'without writing custom code' requirement.

157
MCQmedium

You are building a canvas app for a field service team. The app must allow technicians to capture a customer signature on a touch screen and attach it to a work order record. Which Power Apps control should you add to the screen to meet this requirement?

A.Image control
B.Text input control
C.Pen input control
D.Camera control
AnswerC

The Pen input control is designed specifically for capturing freehand drawing or signatures on touch-enabled devices. It stores the drawing as an image that can be saved to a data source, such as a work order record in Dataverse or SharePoint. This directly meets the requirement of capturing a customer signature and attaching it to a work order.

Why this answer

The Pen input control is the only control in Power Apps canvas apps that provides a canvas for freehand drawing, making it ideal for capturing signatures. It can be bound to a data source so the signature image is saved with the work order. Other controls either display images, capture typed text, or use the camera, but none allow direct on-screen signing.

Exam trap

The trap here is assuming that any input control can capture a signature, when only the Pen input control provides a drawing surface.

158
Multi-Selecteasy

Which TWO are valid ways to distribute a Power App to end users? (Select 2)

Select 2 answers
A.Add the app to Microsoft Teams
B.Email the app as an attachment
C.Share the app directly with users or groups
D.Export the app and send it as a .msapp file
E.Publish the app to Microsoft AppSource
AnswersA, C

Apps can be added to Teams for easy access.

Why this answer

Power Apps can be added directly to Microsoft Teams as a tab or personal app, allowing end users to access the app within the Teams interface without leaving the collaboration environment. This leverages the Teams integration capabilities of Power Apps, which uses the Teams manifest and the Power Apps app for Teams to provide seamless access.

Exam trap

The trap here is that candidates often confuse exporting a .msapp file (a developer artifact) with a distribution method, or think emailing an app as an attachment is possible, when in reality Power Apps must be shared through the platform's sharing mechanism or embedded in a supported host like Teams or SharePoint.

159
MCQeasy

A university uses Power Apps for student registration. The app is built on Dataverse and shared with all students. Recently, a student reported that they cannot access the app and receive an error that they do not have permission. The app was working earlier. The admin checks the environment and finds that the app's sharing settings have been changed. The admin needs to restore access for all students quickly. What should the admin do?

A.Contact Microsoft Support to restore the previous sharing settings.
B.Assign the 'Environment Maker' role to all students.
C.Re-create the app from a backup.
D.Share the app with the 'All Students' security group in the Power Apps maker portal.
AnswerD

Re-sharing the app with the 'All Students' security group in the Power Apps maker portal restores access for every member at once. Group-based sharing is the quickest route, since the changed sharing settings removed the students' permissions.

Why this answer

Sharing the app with the 'All Students' security group in the Power Apps maker portal restores access for all students quickly and correctly. Security groups are the recommended way to manage access at scale in Dataverse-backed apps.

Exam trap

PL-900 often tests whether candidates choose overly complex or inappropriate fixes (support tickets, role escalation, app recreation) when the correct action is simply re-sharing the app with the appropriate security group.

How to eliminate wrong answers

Option A is wrong because contacting Microsoft Support is slow and unnecessary when the admin can restore sharing directly. Option B is wrong because assigning the Environment Maker role grants broad privileges beyond app access and is not appropriate for students. Option C is wrong because re-creating the app from backup is disruptive and does not address the sharing permission issue.

160
Multi-Selectmedium

A manufacturing company uses Power Automate to manage equipment maintenance requests. They want to create a flow that, when a new request is added to a SharePoint list, sends an approval to the maintenance manager and, upon approval, updates the request status and notifies the requester via Microsoft Teams. The company needs to ensure the flow handles approvals correctly. Which two actions are required to implement the approval process in this flow? (Choose two.)

Select 2 answers
A.Add a condition to check if the approval outcome is 'Approve' or 'Reject'.
B.Use a 'Do until' loop to poll for the manager's response.
C.Use the 'Start and wait for an approval' action to send the approval request.
D.Configure the SharePoint trigger to include an approval status column.
E.Use the 'Send an email' action to request approval from the manager.
AnswersA, C

After the approval action, the flow must evaluate the outcome to determine subsequent actions. A condition action checks whether the approval response is 'Approve' or 'Reject.' If approved, the flow updates the SharePoint item and sends a Teams notification; if rejected, it may take alternative steps. This condition is necessary to branch the flow based on the manager's decision, ensuring correct handling.

Why this answer

To implement an approval process in Power Automate, the 'Start and wait for an approval' action is used to send the request and pause the flow until a response is received. Then, a condition action evaluates the outcome to branch the flow accordingly. These two actions together provide a robust, built-in approval mechanism that integrates seamlessly with SharePoint and Teams notifications.

Exam trap

The trap here is thinking that sending an email and manually parsing replies is equivalent to using the built-in approval action, which offers structured responses and tracking.

161
MCQhard

A model-driven app has a subgrid showing related opportunities. Users want to be able to edit opportunity fields directly in the subgrid without opening the record. Which feature should be enabled?

A.Enable the 'Chart' option on the subgrid properties.
B.Set the subgrid's 'Default view' to a custom view.
C.Change the subgrid type from 'Standard' to 'Editable'.
D.Set the subgrid's 'View Selector' to show multiple views.
AnswerC

Editable subgrids let users modify fields inline, satisfying the requirement to edit opportunities without opening records. Switching the subgrid type from read-only Standard to Editable enables this directly within the model-driven app form, avoiding extra navigation. No additional configuration beyond the subgrid control's type setting is needed.

Why this answer

To allow users to edit opportunity fields directly within a subgrid, the subgrid must be configured as an editable grid. This feature enables inline editing of records without opening them. Changing the subgrid type from 'Standard' to 'Editable' is the correct configuration.

Exam trap

PL-900 often tests the difference between subgrid types and their properties, and candidates may confuse view selection or chart options with editing capabilities, leading to incorrect answers.

How to eliminate wrong answers

Option A is wrong because enabling the 'Chart' option only adds a chart view alongside the subgrid; it does not enable editing. Option B is wrong because setting a default view only changes which records are displayed, not the editing capability. Option D is wrong because the view selector allows users to switch between multiple views, but it does not enable inline editing.

162
MCQeasy

A marketing team wants to allow external users to register on a Power Pages site using their own social media accounts. Which identity provider should they configure?

A.Azure AD B2C
B.Local authentication
C.Microsoft Entra ID
D.Microsoft account
AnswerA

Azure AD B2C is the external identity provider that supports social sign-in (Google, Facebook, etc.) for Power Pages, satisfying the requirement that external users register with their own social media accounts. Microsoft Entra ID handles workforce identities, not consumer self-registration. Note: Azure AD B2C is the legacy name; Microsoft Entra External ID is its successor.

Why this answer

Azure AD B2C (Business-to-Consumer) is the identity provider that supports social identity providers like Google, Facebook, and Microsoft accounts. It allows external users to register using their social media accounts. Local authentication is for username/password within the site, not social accounts.

Microsoft Entra ID is for organizational accounts. Microsoft account is a single social provider, but Azure AD B2C is the configured identity provider that can integrate multiple social providers.

163
Multi-Selecthard

A company is migrating a complex Power Apps solution from a development environment to production. The solution includes custom connectors, flows, and Dataverse tables. Which THREE steps should the administrator take to ensure a successful migration?

Select 3 answers
A.Test the solution in a staging environment first
B.Delete the development environment after export
C.Export the solution as a managed solution
D.Manually recreate the solution in production
E.Run the solution checker to identify issues
AnswersA, C, E

Deploying to a staging environment first exercises the solution's custom connectors, flows and Dataverse tables against a production-like target, exposing environment-specific connection references or configuration gaps before the production import, satisfying the migration's need to verify behaviour safely.

Why this answer

To ensure a successful migration, the administrator should test the solution in a staging environment first (A) to validate functionality, export it as a managed solution (C) to maintain component relationships and support future upgrades, and run the solution checker (E) to identify and fix issues before migration. Deleting the development environment after export (B) is risky because it removes the source before the migration is verified. Manually recreating the solution in production (D) is error-prone and not recommended.

164
MCQeasy

Refer to the exhibit. You see a configuration snippet for a Microsoft Copilot Studio bot. What is the purpose of 'triggerPhrases'?

A.They define the bot's fallback behavior.
B.They identify which topics the bot should use when a user says those phrases.
C.They define the responses the bot will give.
D.They are used for analytics reporting.
AnswerB

Trigger phrases are matched against user utterances to route the conversation to the appropriate topic. When a user's wording aligns with a topic's trigger phrases, the bot invokes that topic, so they act as the routing mechanism rather than the response content.

Why this answer

In Microsoft Copilot Studio, trigger phrases are utterances that, when matched by the NLU model, route the conversation to the associated topic. They define the intent recognition for that topic, not the bot's fallback or responses. This allows the bot to understand user input and select the correct topic to handle.

Exam trap

PL-900 often tests the confusion between trigger phrases (intent recognition) and responses (message content), so candidates must remember that trigger phrases are for routing, not for defining what the bot says.

How to eliminate wrong answers

Option A is wrong because fallback behavior is configured separately, typically via the 'Fallback' topic or system fallback settings, not through trigger phrases. Option C is wrong because responses are defined within the topic's authoring canvas (message nodes), not by trigger phrases. Option D is wrong because analytics reporting is a separate feature that tracks usage and performance, not the purpose of trigger phrases.

165
MCQmedium

A Power Apps app uses a Dataverse table with a choice column 'Priority' (Low, Medium, High, Critical). The app must display the priority as a color-coded badge in a gallery. Which method is most efficient?

A.Add a second table with colors and use LookUp in the gallery.
B.Create a Power Automate flow to update a color field on the record.
C.Use the Switch function in the gallery's Fill property to map each choice value to a color.
D.Use an If function with multiple conditions to set the Fill property.
AnswerC

The Switch function evaluates the Priority value and returns the matching colour in one expression, avoiding nested If statements. Applied to the badge's Fill property, it maps Low, Medium, High and Critical directly to colours.

Why this answer

The Switch function evaluates a single expression against multiple possible values and returns a corresponding result, making it the cleanest and most efficient way to map four choice values to four colors in one formula. It is more readable and performs better than nested If statements because it evaluates the expression once. This is the idiomatic Power Apps pattern for choice-to-color mapping.

Exam trap

PL-900 often tests whether candidates over-engineer display logic with extra tables or flows when a simple client-side function like Switch is the intended, efficient answer.

How to eliminate wrong answers

Option A is wrong because adding a second table and using LookUp in the gallery introduces an unnecessary data call per row, hurting performance and adding maintenance overhead. Option B is wrong because a Power Automate flow to store a color field duplicates data, adds latency, and is overkill for a pure display concern. Option D is wrong because nested If functions are harder to read, evaluate the expression repeatedly, and are less efficient than Switch for multi-branch mapping.

166
MCQeasy

A company wants to create a public-facing website for citizens to submit permit applications and track their status. The site must allow anonymous access and integrate with Dataverse for backend storage. Which Power Platform component should the company use?

A.Power Automate
B.Power Pages
C.Power BI
D.Power Apps
AnswerB

Power Pages supports anonymous access and authenticated citizen registration, storing submissions directly in Dataverse. This satisfies the public-facing, anonymous and Dataverse integration requirements, whereas Power Apps and Power Automate are not designed to host external websites.

Why this answer

Power Pages is the Power Platform component specifically designed for building secure, public-facing, data-driven websites that can be accessed anonymously. It integrates natively with Dataverse, allowing citizen users to submit permit applications and track their status through forms and lists without requiring authentication. This makes it the only option that satisfies both the anonymous public access and Dataverse backend requirements.

Exam trap

PL-900 often tests the distinction between Power Apps and Power Pages, as both can create user interfaces, but only Power Pages is designed for external, anonymous-facing websites with Dataverse integration.

How to eliminate wrong answers

Option A is wrong because Power Automate is a workflow automation service used to create automated processes between apps and services, not to build public-facing websites. Option C is wrong because Power BI is a business analytics service for creating interactive reports and dashboards, not for hosting public websites or collecting form submissions. Option D is wrong because Power Apps is primarily for building internal business applications for authenticated users, and while it can be embedded, it does not natively provide anonymous public website capabilities with Dataverse integration like Power Pages does.

167
MCQmedium

Fabrikam Inc. uses Power Automate to automate expense report approvals. The flow is triggered when an expense report is submitted in a SharePoint list. The flow then sends an approval request to the expense approver via the Approvals connector. If approved, the flow updates the SharePoint list status to 'Approved' and sends a confirmation email to the submitter. If rejected, it updates the status to 'Rejected' and sends a rejection email. Currently, the flow works for single approvers, but the business now requires that if the expense amount exceeds $5,000, the approval must be sent to a senior manager instead of the regular manager. You need to modify the flow to meet this requirement with minimal maintenance. What should you do?

A.Use a Scope action to group the approval actions
B.Create a child flow that handles the approval routing
C.Add a Condition action to check the expense amount and then use two separate approval actions
D.Add parallel branches for each approval path
AnswerC

A Condition action evaluates the expense amount and routes to either the regular or senior manager approval action, satisfying the over-$5,000 routing requirement without rebuilding the flow. Two separate approval actions keep each branch explicit and require minimal ongoing maintenance.

Why this answer

Adding a Condition action that checks the expense amount and then branches to two separate approval actions is the simplest, lowest-maintenance way to route based on a threshold. It keeps everything in one flow, uses native controls, and requires no additional flows or complex orchestration. This directly satisfies the requirement with minimal moving parts.

Exam trap

PL-900 often tests whether candidates over-engineer with child flows or parallel branches when a simple Condition action is sufficient — the trap is choosing a more 'advanced' construct that actually violates the single-approver requirement.

How to eliminate wrong answers

Option A is wrong because a Scope action only groups actions for error handling or clarity — it does not evaluate conditions or route approvals. Option B is wrong because a child flow adds complexity and maintenance overhead (separate flow to manage, version, and monitor) when a simple Condition suffices. Option D is wrong because parallel branches run simultaneously, which would send both approvals at once rather than choosing one based on amount, causing duplicate or incorrect approvals.

168
MCQhard

You are troubleshooting a canvas app that connects to a SQL Server database through an on-premises data gateway. Users in the finance department receive an error stating the app cannot reach the data source, while users in IT can use the app normally. What is the most likely cause?

A.The finance users lack the necessary permissions on the SQL Server database.
B.The gateway is installed on a machine that is turned off during finance working hours.
C.The finance users have not been granted access to the on-premises data gateway connection.
D.The SQL Server database has reached its maximum number of concurrent connections.
AnswerC

On-premises data gateway connections have their own user list separate from the gateway itself. If finance users are not added as users of the specific connection, their apps cannot use it, producing a data source unreachable error. IT users were likely added, explaining why only they succeed.

Why this answer

On-premises data gateway connections maintain a separate list of users who may use the connection. If finance users are omitted from that list, their apps cannot authenticate through the gateway and report the data source as unreachable, while IT users who were added work normally. Gateway machine availability and SQL Server connection limits would affect all users, and database permission errors would produce different messages.

Exam trap

The trap here is assuming that access to the gateway itself is sufficient, when each gateway connection has its own user list that must be managed separately.

169
MCQmedium

A company wants to enable its field service technicians to access customer records and update work orders from their mobile devices offline. Which Power Platform solution should they implement?

A.Power Pages website accessible from mobile browsers
B.Power Apps (model-driven) configured for offline use
C.Power BI dashboards embedded in a mobile app
D.Power Automate flows to sync data periodically
AnswerB

Model-driven Power Apps can be used offline, enabling technicians to view and edit data on their mobile devices.

Why this answer

Model-driven Power Apps natively support offline capabilities through the Dynamics 365 offline sync engine, which allows field service technicians to access customer records and update work orders without connectivity. When the device reconnects, changes are automatically synchronized with the Dataverse, ensuring data consistency. This makes it the correct choice for mobile offline scenarios.

Exam trap

The trap here is that candidates confuse 'offline access' with 'periodic sync' (Option D) or 'mobile browser access' (Option A), not realizing that only model-driven Power Apps provide a native offline runtime with full CRUD capabilities on mobile devices.

How to eliminate wrong answers

Option A is wrong because Power Pages is a low-code website builder for external-facing sites, not designed for offline mobile data entry or synchronization with Dataverse. Option C is wrong because Power BI is a data visualization and analytics tool, not an application for creating or updating transactional records like work orders. Option D is wrong because Power Automate flows can trigger syncs but do not provide a user interface for technicians to view or edit records offline; they are automation tools, not offline-capable apps.

170
MCQmedium

A company uses Power Apps to manage employee leave requests. They want to automate the approval process so that managers receive an email when a request is submitted. Which component should they add?

A.Power Automate
B.Power BI
C.AI Builder
D.Power Virtual Agents
AnswerA

Power Automate supplies the event-driven workflow engine that Power Apps alone lacks. A flow triggers on the leave request's creation, then sends the manager an approval email, satisfying the requirement to notify managers automatically on submission without custom code.

Why this answer

Power Automate is the correct component because it is designed to create automated workflows that trigger actions based on events. In this scenario, when a leave request is submitted in Power Apps, a Power Automate flow can be configured to send an email notification to the manager, automating the approval process without manual intervention.

Exam trap

The trap here is that candidates may confuse Power Automate with Power BI, thinking that reporting tools can also send notifications, but Power BI lacks workflow automation capabilities.

How to eliminate wrong answers

Option B is wrong because Power BI is a business analytics tool used for data visualization and reporting, not for automating workflows or sending emails. Option C is wrong because AI Builder adds artificial intelligence capabilities (e.g., form processing, object detection) to Power Platform solutions, but it does not handle event-driven email notifications. Option D is wrong because Power Virtual Agents is used to build conversational chatbots, not to automate backend processes like sending approval emails.

171
MCQeasy

A business analyst wants to create a Power Automate flow that runs every Monday at 9 AM to generate a report. Which trigger should they use?

A.Power Apps button
B.When a row is added, modified or deleted
C.When a new email arrives
D.Recurrence
AnswerD

The Recurrence trigger schedules flows on a defined interval and time zone, supporting weekly execution on a chosen day and hour. This directly satisfies the requirement to run every Monday at 9 AM without depending on any external event.

Why this answer

The Recurrence trigger is the correct choice because it is specifically designed to start a flow on a schedule, such as every Monday at 9 AM. It allows the analyst to define the frequency (weekly), the day of the week (Monday), and the time (9 AM) without any external event. This trigger is part of the built-in connectors and is ideal for automated, time-based report generation.

Exam trap

PL-900 often tests the difference between event-driven and schedule-driven triggers, and candidates may mistakenly choose an event-based trigger like 'When a new email arrives' for a time-based requirement.

How to eliminate wrong answers

Option A is wrong because the Power Apps button trigger requires manual user interaction from within a Power Apps app, not a scheduled automatic run. Option B is wrong because 'When a row is added, modified or deleted' is a Dataverse trigger that fires only when data changes in a table, not on a time schedule. Option C is wrong because 'When a new email arrives' is an Outlook trigger that depends on receiving an email, which is event-driven and not time-based.

172
Multi-Selecthard

Which TWO of the following are required to set up a Power Pages site that allows external users to sign in using their social media accounts?

Select 2 answers
A.Deploy a model-driven app to manage user registrations.
B.Set up the social identity provider in the Power Pages admin center.
C.Configure Microsoft Entra ID as the identity provider.
D.Obtain a client ID and client secret from the social media platform.
E.Create a local contact record for each external user.
AnswersB, D

Registering the social provider in the Power Pages admin centre creates the site's identity provider configuration, enabling the external authentication handshake. Without this entry, Power Pages cannot redirect visitors to the social platform or trust its returned claims, so social sign-in fails regardless of credentials.

Why this answer

Option B is correct because, in the Power Pages admin center (under Security > Identity providers), you must configure and enable the specific social identity provider (e.g., Facebook, Google, LinkedIn) so the site can authenticate external users against it. Option D is correct because every OAuth 2.0/OpenID Connect social provider requires you to register an app on that platform and obtain its client ID and client secret, which are then entered into the Power Pages identity provider settings to complete the trust relationship. Option A is not required, since user registrations are handled by the Power Pages authentication/registration flow and the Contacts table, not by deploying a model-driven app.

Option C is not required because Microsoft Entra ID is a work/organizational identity provider, not a social media provider, and the scenario specifically calls for social accounts. Option E is not required to set up the sign-in itself; Power Pages can create or associate the contact record automatically upon first sign-in, so manually creating a local contact for each external user is unnecessary.

Exam trap

PL-900 often tests the misconception that Microsoft Entra ID is used for social sign-in; candidates may pick it because it's a common identity provider, but social media requires configuring the specific social provider and obtaining its credentials.

173
MCQeasy

A company uses Power Automate to automate approval workflows for expense reports. When an expense report exceeds $5,000, the flow should send an email to the manager and then wait for approval before processing payment. Which type of trigger should be used to start the flow when a new expense report is submitted?

A.When an item is modified trigger
B.Recurrence trigger
C.When a new item is created trigger
D.Manual trigger
AnswerC

A 'When a new item is created' trigger fires the moment the expense report row is added to its data source, satisfying the requirement to start the flow on submission. Subsequent approval and payment steps then run conditionally on the $5,000 threshold.

Why this answer

The 'When a new item is created' trigger starts the flow when a new expense report is submitted. Option A is wrong because 'When an item is modified' triggers on updates, not new items. Option B is wrong because a scheduled trigger runs at specified times, not on item creation.

Option D is wrong because a manual trigger requires a user to run the flow.

174
MCQeasy

A manufacturing company uses Power Automate flows to process inventory updates. The flows use standard connectors. The company needs to ensure that the flows can be run by users in their own context without requiring the flow owner's credentials. Which authentication type should be used for the connections?

A.Owner-provided credentials
B.User-provided credentials
C.Anonymous authentication
D.Service principal authentication
AnswerB

User-provided credentials embed each user's own sign-in within the connection, so flows run in that user's context rather than the owner's. This satisfies the stem's requirement that users run flows without the flow owner's credentials.

Why this answer

User-provided credentials (option B) are correct because they allow each user who runs the flow to authenticate with their own identity, enabling the flow to execute in the user's context without requiring the flow owner's credentials. This is essential when flows are shared with multiple users and need to respect individual permissions and data access.

Exam trap

The trap here is that candidates often confuse 'owner-provided credentials' with the default behavior of shared flows, not realizing that user-provided credentials are required to run flows in each user's own context rather than the owner's context.

How to eliminate wrong answers

Option A is wrong because owner-provided credentials would force all users to run the flow under the flow owner's identity, which violates the requirement that users run flows in their own context and introduces security risks. Option C is wrong because anonymous authentication is not supported for standard connectors in Power Automate; all connectors require some form of authenticated identity. Option D is wrong because service principal authentication is used for server-to-server or automated scenarios, not for flows triggered or run by individual users in their own context.

175
MCQhard

A global company has multiple Power Platform environments (Dev, Test, Prod) and uses Application Lifecycle Management (ALM) with solutions. The administrator needs to ensure that only tested solutions are deployed to production. What is the recommended approach?

A.Share the solution from Dev to Test to Prod using sharing permissions.
B.Export the solution as managed from Dev, import to Test, then after validation, import to Prod.
C.Allow developers to make changes directly in the production environment.
D.Copy the Dataverse database from Dev to Prod directly.
AnswerB

Managed solutions are locked, so they cannot be edited directly in Test or Prod, enforcing that only validated artefacts flow through the pipeline. Exporting as managed from Dev and importing to Test for validation, then to Prod, satisfies the requirement that only tested solutions reach production.

Why this answer

Application Lifecycle Management (ALM) in Power Platform requires solutions to be exported as managed from a development environment, then imported into test for validation, and finally imported into production. This ensures that only tested, versioned components are deployed, preventing unvalidated changes from reaching production. Managed solutions also lock components in the target environment, preventing accidental modifications.

Exam trap

The trap here is that candidates confuse sharing permissions (which control user access) with solution deployment mechanisms, leading them to choose option A instead of understanding that managed exports are the only supported ALM method for promoting solutions across environments.

How to eliminate wrong answers

Option A is wrong because sharing permissions control user access to data and apps, not the deployment of solution components; sharing does not enforce versioning or testing gates. Option C is wrong because allowing direct changes in production bypasses all ALM processes, risks breaking live services, and violates governance best practices. Option D is wrong because copying the Dataverse database directly from Dev to Prod would overwrite production data and configurations, including untested changes, and is not a supported method for solution deployment.

176
MCQhard

Your organization has a Power Apps app that uses the Microsoft Dataverse connector. Users report that the app loads slowly. You review the app and find that it loads all records from a large table (over 500,000 rows) into a gallery. What is the best action to improve performance?

A.Increase the data row limit in the app settings.
B.Modify the gallery's Items property to use a delegable filter, such as Filter(Table, Condition).
C.Clear the app cache on the client devices.
D.Reduce the delegation limit in the environment settings.
AnswerB

Delegable filters translate into Dataverse queries executed server-side, so only matching rows return to the app instead of all 500,000. This satisfies the performance constraint by avoiding the non-delegable row limit that forces client-side processing of the full table.

Why this answer

Modifying the gallery's Items property to use a delegable filter (e.g., Filter(Table, Condition)) ensures that the query is processed server-side by Microsoft Dataverse, retrieving only the subset of records that match the condition. This avoids loading all 500,000+ rows into the client app, which is the root cause of the slow performance. Delegation allows Power Apps to offload data processing to the data source, significantly reducing network payload and client memory usage.

Exam trap

The trap here is that candidates often confuse client-side caching or row limits with the core delegation concept, mistakenly believing that increasing limits or clearing caches solves performance issues, when the real solution is to ensure queries are processed on the server via delegable filters.

How to eliminate wrong answers

Option A is wrong because increasing the data row limit in app settings would actually worsen performance by forcing the app to retrieve even more records from the large table, exacerbating the slow loading issue. Option C is wrong because clearing the app cache on client devices only removes locally stored temporary files; it does not address the fundamental problem of retrieving an excessive number of records from the server. Option D is wrong because reducing the delegation limit in environment settings would lower the maximum number of records that can be processed server-side, potentially causing the app to fall back to non-delegable queries and still retrieve all rows, or truncating data incorrectly.

177
Multi-Selectmedium

A Power Platform administrator needs to manage user access to a specific environment. The administrator wants to allow a group of users to create apps and flows in that environment, but restrict them from modifying environment settings or managing other users. Which two actions should the administrator perform? (Choose two.)

Select 2 answers
A.Assign the Environment Admin role to the group of users for the environment.
B.Add the users to the environment's Maker security group (if using security groups).
C.Assign the Environment Maker role to the group of users for the environment.
D.Assign the Power Platform Administrator role to the group of users.
E.Ensure the users have the Common Data Service User security role in the environment.
AnswersB, C

If the environment is configured to use security groups, adding users to the Maker security group grants them the Environment Maker role, enabling them to create apps and flows. This is a valid method to assign the appropriate permissions without granting administrative rights.

Why this answer

To allow users to create apps and flows without granting administrative rights, the administrator should assign the Environment Maker role. This can be done directly or by adding users to the environment's Maker security group if security groups are used. These actions provide the necessary creation permissions while adhering to least privilege, unlike Environment Admin or tenant-level roles.

Exam trap

The trap here is confusing the Environment Maker role with the Environment Admin role; the Maker role allows creation but not management, which is exactly what is needed.

178
MCQhard

A maker is building a canvas app that connects to a SharePoint list containing 20,000 items. Users report that a gallery showing filtered results displays only part of the expected records, and some filters seem to be ignored. The maker wants the app to return accurate results for the filtered queries. What should the maker do?

A.Add a ClearCollect function that loads all 20,000 items into a collection when the app starts
B.Rework the queries to use delegable functions and operators supported by the SharePoint connector
C.Set the app's data row limit to the maximum value and leave the existing filters unchanged
D.Replace the SharePoint list with an Excel workbook stored in OneDrive
AnswerB

When a query cannot be delegated, Power Apps processes only a limited set of records locally, which can cause missing results and ignored filters. SharePoint supports delegation for certain functions and operators, so rewriting filters to use those delegable constructs allows the data source to perform the filtering and return the complete, accurate result set for the gallery.

Why this answer

Delegation is the mechanism that lets Power Apps push filtering, sorting, and other operations to the data source instead of processing them locally on a limited set of records. When a function or operator is not delegable for SharePoint, results can be incomplete or filters ignored. Rewriting queries with delegable functions ensures the data source returns the correct filtered set, which resolves the reported symptoms.

Exam trap

The trap here is assuming that raising the data row limit fixes missing results, when the real problem is that non-delegable queries are processed locally against only a subset of records.

179
MCQmedium

A company plans to build a public-facing website for customer support using Power Pages. They need to enable customers to view their open support tickets and submit new ones. What must be configured in the Power Pages design studio?

A.Embed a canvas app
B.Configure a Dataverse connector in a custom web template
C.Add a list and a form component bound to a Dataverse table
D.Create a Power Automate flow
AnswerC

A list component renders Dataverse records, letting customers view their open tickets, while a form component bound to the same table handles submission of new tickets. Binding both to Dataverse satisfies the requirement to read and write support ticket data on the public site.

Why this answer

Power Pages design studio provides list and form components that can be bound directly to a Dataverse table to display and submit data. Option A is incorrect because embedding a canvas app is not a built-in component in Power Pages design studio; it would require custom development. Option B is incorrect because while you can use custom web templates with Dataverse connectors, it is not the standard or recommended approach for simple view/submit scenarios, and it is not a configuration in the design studio.

Option D is incorrect because Power Automate flows are not components in the Power Pages design studio; they can be triggered but are not used for direct data viewing or submission.

180
MCQhard

An operations team has a Power Automate cloud flow that reads rows from a Microsoft Dataverse table and, for each row, calls an external REST API that enforces a limit of 10 requests per second. During peak hours the flow hits '429 Too Many Requests' errors and many runs fail. The maker must reduce throttling failures while still processing every row. What should the maker do?

A.Enable concurrency control on the Apply to each loop and set the degree of parallelism to a value that stays within the API limit, and configure retry policy on the HTTP action.
B.Add a Terminate action inside the loop that stops the flow when a 429 response is received.
C.Replace the Apply to each loop with a single HTTP action that sends all rows in one request.
D.Increase the loop's concurrency to the maximum so all rows finish before the peak window ends.
AnswerA

Concurrency control on Apply to each caps how many iterations run in parallel, so the maker can keep outbound calls under ten per second, and a retry policy on the HTTP action re-sends transient 429 responses. Together they reduce throttling failures while ensuring every row is still processed.

Why this answer

Throttling from a downstream API is controlled by limiting outbound request rate and gracefully retrying transient failures. Setting concurrency control on the Apply to each loop to a degree that keeps calls under ten per second, combined with a retry policy on the HTTP action, lets the flow process every row while staying inside the API's limits and absorbing occasional 429 responses.

Exam trap

The trap here is assuming faster processing through higher parallelism fixes throttling, when exceeding the API's rate limit is precisely what causes the 429 errors.

181
MCQhard

You are designing a Power Automate flow to approve expense reports. The flow must allow managers to approve or reject directly from the email notification without signing in. Which action should you use?

A.Create a file
B.Send an email (V2)
C.Start and wait for an approval
D.Send an HTTP request
AnswerC

The Start and wait for an approval action sends actionable approval requests via email, letting managers approve or reject using Outlook buttons without signing in to Power Automate. This directly satisfies the stem's requirement for email-based decisions without authentication.

Why this answer

The 'Start and wait for an approval' action is specifically designed to send an approval request via email or the Power Automate mobile app, and it allows recipients to approve or reject directly from the email notification without needing to sign in, using adaptive cards or lightweight approval buttons. This meets the requirement for manager approval without authentication.

Exam trap

The trap here is that candidates often confuse 'Send an email (V2)' with the ability to embed approval buttons, but that action only sends a static email and cannot capture responses without a separate custom solution, whereas 'Start and wait for an approval' is the native, correct action for this scenario.

How to eliminate wrong answers

Option A is wrong because 'Create a file' only generates a file (e.g., in SharePoint or OneDrive) and has no capability to send notifications or collect approval responses. Option B is wrong because 'Send an email (V2)' can send an email but does not include built-in approval buttons or the ability to capture a response directly from the email without additional custom setup. Option D is wrong because 'Send an HTTP request' is used to call external APIs or web services and does not provide a native approval workflow or email-based approval interaction.

182
MCQmedium

An organization uses Power Automate flows that connect to Microsoft Dataverse. The flows need to run under a service account with specific permissions. What is the best practice to manage the connection?

A.Use the flow owner's credentials and share the flow with the service account
B.Create a connection reference that uses the service account's connection
C.Create a service account connection type in the Power Platform admin center
D.Hardcode the service account credentials in the flow
AnswerB

A connection reference centralises the Dataverse connection so flows reference it rather than embedding credentials, letting the service account's connection be managed and updated in one place. This satisfies the requirement to run flows under a service account with specific permissions.

Why this answer

Connection references decouple the connection details from the flow definition, allowing you to configure a service account's connection once and reuse it across multiple flows. When you create a connection reference and set it to use a service account's connection (e.g., a pre-created Dataverse connection authenticated with the service account), the flow runs under that account's permissions without exposing credentials or requiring the flow owner to share their identity. This is the recommended pattern for service principal or application user scenarios in Power Automate.

Exam trap

The trap here is that candidates confuse 'sharing a flow' with 'changing the runtime identity,' assuming that sharing with a service account grants it execution permissions, when in reality the flow always runs under the connection owner's identity unless a connection reference is used to swap the connection.

How to eliminate wrong answers

Option A is wrong because sharing a flow with a service account does not change the runtime identity; the flow still executes under the original owner's credentials, not the service account's permissions. Option C is wrong because there is no 'service account connection type' in the Power Platform admin center; connection types are defined by connectors, not created in the admin center. Option D is wrong because hardcoding credentials violates security best practices, exposes secrets in plaintext, and breaks when passwords rotate or policies change.

183
Multi-Selecthard

A company is designing a copilot using Microsoft Copilot Studio. The copilot must handle sensitive employee data. Which TWO actions should the administrator take to ensure data security and compliance?

Select 2 answers
A.Enable anonymous access to allow external users
B.Configure data loss prevention (DLP) policies to restrict data movement
C.Disable authentication to simplify access
D.Enable the 'Data for training' option to be turned off
E.Add public websites as knowledge sources
AnswersB, D

DLP policies inspect and block sensitive information from being shared or exported, directly restricting data movement within the copilot's responses and connected sources. This enforces the compliance constraint for sensitive employee data handled by the Microsoft Copilot Studio copilot.

Why this answer

Option B is correct because configuring data loss prevention (DLP) policies in the Power Platform admin center lets the administrator control which connectors and actions the Copilot Studio copilot can use, preventing sensitive employee data from being moved to unauthorized services or external endpoints. Option D is correct because turning off the 'Data for training' option ensures that conversation content and user inputs are not used to train or improve Microsoft's underlying AI models, which is essential when handling sensitive employee data under privacy and compliance requirements. Options A and C are wrong because enabling anonymous access or disabling authentication would expose sensitive data to unauthenticated users, directly violating security and compliance goals.

Option E is wrong because adding public websites as knowledge sources could pull untrusted external content into the copilot and does not protect sensitive employee data.

Exam trap

PL-900 often tests the misconception that anonymous access or disabling authentication improves usability without security trade-offs, and that public knowledge sources are harmless; candidates must recognize these as compliance risks.

184
MCQmedium

A company has deployed a custom copilot built with Microsoft Copilot Studio to support the sales team. The copilot uses a SharePoint site containing product documentation and a public website for industry news as knowledge sources. The copilot is configured with anonymous access and is published to a demo page. Recently, the sales team has been using the copilot to answer customer questions, but they report that the copilot sometimes provides incorrect product specifications and cites sources that are not related to the company's products. The administrator needs to improve the accuracy and relevance of the copilot's responses while maintaining the ability to answer questions about industry news. What should the administrator do first?

A.Remove the public website as a knowledge source and add a more specific industry news source
B.Enable Microsoft Entra ID authentication to restrict access
C.Turn off Generative AI and use only manual topics
D.Add additional SharePoint sites with product specifications
AnswerA

Removing the public website eliminates the unvetted external content that causes irrelevant citations, since anonymous access lets the copilot ground answers in any publicly reachable page. Retaining a curated industry news source preserves the requirement to answer industry questions, while SharePoint documentation continues supplying accurate product specifications.

Why this answer

The core issue is that the public website knowledge source is introducing irrelevant or incorrect information into the copilot's responses. By removing it and adding a more specific industry news source, the administrator directly addresses the source of inaccuracy while preserving the ability to answer industry news questions. This aligns with the principle that knowledge source quality directly impacts generative AI response relevance in Microsoft Copilot Studio.

Exam trap

The trap here is that candidates may think restricting access (authentication) or disabling generative AI are quick fixes, but the question specifically asks about improving accuracy and relevance while maintaining the ability to answer industry news, so the correct first step is to refine the knowledge sources, not to change access or disable the core AI functionality.

How to eliminate wrong answers

Option B is wrong because enabling Microsoft Entra ID authentication controls access to the copilot but does not improve the accuracy or relevance of its responses; it only restricts who can use it. Option C is wrong because turning off Generative AI and using only manual topics would eliminate the copilot's ability to answer questions about industry news, which the requirement explicitly states must be maintained. Option D is wrong because adding more SharePoint sites with product specifications does not address the root cause of the problem—the public website source introducing irrelevant or incorrect information—and could even compound the issue by adding more potentially conflicting data.

185
Multi-Selectmedium

A company is evaluating the Microsoft Power Platform to streamline its operations. The IT director wants to understand which components are considered part of the Power Platform and provide specific capabilities. (Choose two.)

Select 2 answers
A.Microsoft Azure Machine Learning
B.Power BI
C.Power Automate
D.Microsoft Dynamics 365
E.Microsoft Power Platform Center of Excellence Toolkit
AnswersB, C

Power BI is a core component of the Microsoft Power Platform. It provides business analytics capabilities, allowing users to visualize data, create interactive reports, and share insights across the organization. It connects to various data sources and is used for data-driven decision-making, making it an integral part of the platform's offerings.

Why this answer

The Microsoft Power Platform consists of four key components: Power Apps for app development, Power Automate for workflow automation, Power BI for business analytics, and Power Virtual Agents for chatbots. Power BI and Power Automate are two of these core components, offering analytics and automation capabilities respectively. The other options are related but not part of the core platform.

Exam trap

The trap here is confusing related Microsoft services like Dynamics 365 or Azure Machine Learning with the core Power Platform components.

186
MCQeasy

Which data platform in Power Platform provides a secure, scalable database with built-in business logic and security?

A.Microsoft Dataverse
B.SharePoint
C.SQL Server
D.Excel
AnswerA

Microsoft Dataverse delivers the secure, scalable data store the stem requires, enforcing role-based security at table, row and column level. Its built-in business logic — calculated columns, business rules and plug-ins — executes server-side, so validation and automation apply consistently across every Power Platform app without external code.

Why this answer

Microsoft Dataverse is the correct answer because it is the underlying data platform for Power Platform that provides a secure, scalable database with built-in business logic (such as business rules, workflows, and calculated fields) and role-based security. Unlike other options, Dataverse is designed specifically to store and manage business data with features like column-level security, auditing, and a rich metadata-driven architecture.

Exam trap

The trap here is that candidates often confuse SharePoint's list storage capabilities with a true database platform, overlooking that Dataverse is the only option purpose-built for Power Platform with integrated security and business logic.

How to eliminate wrong answers

Option B (SharePoint) is wrong because while it can store list data and integrate with Power Platform, it lacks the relational database capabilities, built-in business logic (like server-side calculations and workflows), and granular role-based security that Dataverse provides; SharePoint is primarily a document management and collaboration platform. Option C (SQL Server) is wrong because although it is a robust relational database with security and logic, it is not a built-in data platform of Power Platform and requires additional configuration for integration, whereas Dataverse is natively integrated with Power Apps and Power Automate. Option D (Excel) is wrong because it is a spreadsheet application with no built-in security, scalability, or business logic capabilities; it is often used as a data source but is not a secure, scalable database platform.

187
MCQmedium

A company has deployed a custom copilot built with Microsoft Copilot Studio. Users report that the copilot sometimes provides outdated information. The knowledge sources are SharePoint sites and public websites. The copilot uses Generative AI to formulate answers. What should the administrator do to improve the accuracy of the copilot's responses?

A.Enable the 'Show citations' option
B.Reduce the number of topics
C.Refresh the knowledge sources periodically
D.Turn off Generative AI for responses
AnswerC

Refreshing knowledge sources periodically re-indexes the SharePoint sites and public websites, so the generative AI answers draw on current content rather than stale cached data. This directly addresses the outdated-information constraint in the stem, since Microsoft Copilot Studio retrieves grounding data from those connected sources at query time.

Why this answer

The copilot's knowledge sources (SharePoint sites and public websites) are not automatically refreshed in real time. By periodically refreshing these sources, the administrator ensures the copilot's generative AI has access to the most current content, directly addressing the issue of outdated information.

Exam trap

The trap here is that candidates confuse user-facing features like 'Show citations' with data freshness mechanisms, or assume that disabling generative AI will fix accuracy issues, when in fact the root cause is the static nature of the knowledge snapshot.

How to eliminate wrong answers

Option A is wrong because enabling 'Show citations' only displays the source of the answer to the user, but does not update the underlying data; the copilot would still use outdated content. Option B is wrong because reducing the number of topics limits the copilot's scope but does not solve the problem of stale data; outdated information remains in the remaining topics. Option D is wrong because turning off Generative AI would revert the copilot to non-generative, topic-based responses, which may still rely on outdated knowledge sources and would eliminate the AI's ability to synthesize answers from multiple sources.

188
MCQmedium

A manufacturing company uses Power Apps to track inventory. They want to add a feature that automatically reorders stock when levels fall below a threshold. The solution must be low-code. Which Power Platform component should be integrated with Power Apps?

A.Power BI
B.Power Pages
C.Power Virtual Agents
D.Power Automate
AnswerD

Power Automate supplies the event-driven workflow engine that Power Apps lacks natively. A flow triggered when the inventory record's quantity drops below the threshold can call the reorder action automatically, satisfying the low-code requirement without custom plug-ins or code.

Why this answer

Power Automate is the correct component because it provides low-code workflow automation that can monitor inventory levels in real time and trigger reorder actions when thresholds are breached. By integrating Power Automate with Power Apps, you can create a cloud flow that checks stock data from a data source (e.g., Dataverse or SQL) and automatically sends reorder notifications or creates purchase orders, all without writing traditional code.

Exam trap

The trap here is that candidates often confuse Power Automate with Power BI, thinking that a dashboard can automatically reorder stock, but Power BI is read-only and cannot trigger actions—only Power Automate can execute automated workflows.

How to eliminate wrong answers

Option A is wrong because Power BI is a business analytics tool for visualizing data and creating reports, not for triggering automated actions like reordering stock. Option B is wrong because Power Pages is used to build external-facing websites with low-code, not for backend process automation or event-driven workflows. Option C is wrong because Power Virtual Agents is designed for creating conversational chatbots, not for executing automated business logic such as inventory reorder triggers.

189
Multi-Selectmedium

An administrator is planning the environment strategy for a large enterprise. Which TWO considerations should the administrator include to ensure proper governance?

Select 2 answers
A.Use only the default environment to simplify management
B.Establish environment naming conventions
C.Disable environment monitoring to reduce overhead
D.Implement data loss prevention (DLP) policies
E.Allow all connectors to maximize flexibility
AnswersB, D

Consistent environment naming conventions let administrators identify each environment's purpose, owner and lifecycle at a glance, which is essential for governance across a large tenant. They also underpin auditing, access reviews and policy assignment, satisfying the stem's requirement for scalable oversight rather than ad hoc management.

Why this answer

Environment naming conventions and DLP policies are key governance considerations. Option B (establish naming conventions) helps organize environments; Option D (implement DLP policies) protects data. Option A is wrong because using only the default environment is not recommended for governance.

Option C is wrong because disabling environment monitoring reduces visibility and control. Option E is wrong because allowing all connectors poses a security risk.

190
MCQeasy

A small business wants to automate sending a welcome email when a new customer is added to a CRM system. Which Power Platform service should they use?

A.Power Automate
B.Power Apps
C.Power BI
D.Copilot Studio
AnswerA

Power Automate provides event-driven cloud flows, so a trigger on new CRM customer record creation can automatically send the welcome email. This satisfies the automation requirement, unlike Power Apps, which builds apps, or Power BI, which only visualises data.

Why this answer

Power Automate is the correct service because it is designed to create automated workflows that trigger actions based on events, such as sending a welcome email when a new customer record is added to a CRM system. It uses connectors to integrate with CRM platforms (e.g., Dynamics 365, Salesforce) and email services (e.g., Office 365 Outlook) to execute the automation without manual intervention.

Exam trap

The trap here is that candidates often confuse Power Automate with Power Apps, thinking that building an app is necessary to send an email, when in fact Power Automate handles event-driven automation without requiring a custom app interface.

How to eliminate wrong answers

Option B is wrong because Power Apps is a low-code platform for building custom applications, not for automating workflows or sending emails based on triggers. Option C is wrong because Power BI is a business analytics tool for data visualization and reporting, not for workflow automation or event-driven actions. Option D is wrong because Copilot Studio is used to create custom copilots and AI-powered conversational experiences, not for triggering automated email workflows from CRM events.

191
MCQeasy

You create a Power Automate flow that runs when a new tweet matches a keyword. What type of trigger does this use?

A.Recurrence trigger
B.Manual trigger
C.Automated trigger
D.Scheduled trigger
AnswerC

An Automated trigger fires automatically when the external event occurs, here a new tweet matching the keyword, satisfying the scenario's requirement. It requires no manual initiation, unlike Instant triggers, and is event-driven rather than recurrence-based like Scheduled triggers.

Why this answer

An automated trigger in Power Automate fires in response to an event, such as a new tweet matching a keyword, without any user interaction. The Twitter/X connector provides a 'When a new tweet matching a keyword is posted' trigger, which is classified as automated because it is event-driven. This is distinct from scheduled or manual triggers, which require a timer or explicit user action.

Exam trap

PL-900 often tests the distinction between automated (event-driven) and scheduled (recurrence) triggers, so candidates must recognize that 'when a new tweet matches a keyword' is event-driven, not timer-based.

How to eliminate wrong answers

Option A is wrong because a Recurrence trigger runs on a defined time interval (e.g., every hour) and does not react to an event like a new tweet. Option B is wrong because a Manual trigger requires the user to click 'Run' or invoke the flow explicitly, whereas the tweet keyword scenario fires automatically. Option D is wrong because a Scheduled trigger is essentially a recurrence-based trigger tied to a calendar, not an event-driven one — the tweet keyword scenario is event-driven, making it automated.

192
Multi-Selectmedium

Which TWO of the following are valid ways to customize the appearance of a Power Pages site? (Choose two.)

Select 2 answers
A.Use Power Automate to change the site theme
B.Add custom CSS via the portal's CSS editor
C.Edit page templates to modify layout
D.Embed Power BI tiles
E.Add a Power Apps canvas app to a page
AnswersB, C

The portal's CSS editor injects custom stylesheets that override the default theme, letting you restyle layout, colours and typography. This is a supported customisation path for changing a Power Pages site's visual appearance without altering its underlying content.

Why this answer

Option B is correct because Power Pages provides a built-in CSS editor (Styling workspace) where you can add custom CSS rules to override the default theme styles and control colors, fonts, spacing, and other visual properties of the site. Option C is correct because page templates in Power Pages define the HTML structure and layout of pages, so editing a template lets you modify the layout and appearance of every page based on it. Option A is incorrect because Power Automate is a workflow automation service and cannot change a site's theme.

Option D is incorrect because embedding Power BI tiles adds data visualizations, not customization of the site's appearance. Option E is incorrect because adding a canvas app embeds app functionality into a page rather than customizing the site's look and feel.

193
MCQmedium

You have a Power Automate flow that sends a notification to a Teams channel when a high-priority ticket is created in Dynamics 365. The flow works correctly for most tickets, but occasionally a ticket is missed. Upon checking the flow runs, you see that some runs show 'Skipped' status. What is the most likely cause?

A.The trigger has a condition that filters out tickets with priority lower than 'High'.
B.The flow requires a premium license, but some users have standard licenses.
C.The flow's concurrency setting is too high, causing some triggers to be ignored.
D.The flow uses a connection that has expired or lacks permissions.
AnswerA

A trigger condition evaluates before the flow runs, so tickets failing the priority filter never start a run and appear as 'Skipped'. This precisely matches the intermittent missed notifications for lower-priority tickets described in the stem.

Why this answer

The 'Skipped' status in Power Automate indicates that the flow was triggered but the trigger condition evaluated to false. In this scenario, the trigger has a condition that only allows high-priority tickets to proceed. When a ticket is created with a priority lower than 'High', the condition fails and the run is skipped.

Option A correctly identifies this filter. Option B is incorrect because licensing issues would typically cause errors, not skips. Option C is wrong because high concurrency leads to queuing not skipping.

Option D is incorrect as expired connections would cause failure, not skip.

194
Multi-Selecteasy

Which TWO of the following are capabilities of Power Pages?

Select 2 answers
A.Integrate with Dataverse for data storage
B.Run complex machine learning models
C.Automate business processes using workflows
D.Build custom mobile apps for iOS and Android
E.Create external-facing websites without code
AnswersA, E

Power Pages uses Dataverse as its native data store, letting sites read and write table records through forms, lists and Liquid, governed by table permissions and web roles. This tight integration is a core platform capability.

Why this answer

Power Pages is Microsoft's low-code platform for building secure, external-facing business websites, so option E is correct: it lets makers create external-facing websites without code using templates, the design studio, and prebuilt components. Option A is also correct because Power Pages stores and surfaces data in Microsoft Dataverse, using Dataverse tables, forms, lists, and web roles/permissions to drive the site's content and interactions. Option B is not a Power Pages capability; complex machine learning models are typically built and run in Azure Machine Learning or Power Platform AI Builder, not in Power Pages itself.

Option C is not correct for Power Pages because business process automation with workflows is provided by Power Automate (cloud flows) rather than being a native Power Pages capability. Option D is not correct because custom iOS and Android mobile apps are built with Power Apps mobile or native development tools, whereas Power Pages produces responsive web portals, not native mobile apps.

Exam trap

PL-900 often tests the boundary between Power Platform components — candidates confuse Power Pages with Power Apps or Power Automate and pick capabilities that belong to those services.

195
MCQmedium

An organization plans to build a Power App that will be used by external partners. The app must allow partners to log in with their own credentials (Azure AD B2B). Which feature should be configured?

A.Use SharePoint external sharing settings
B.Enable anonymous access in Power Apps
C.Set up Azure AD B2B guest user access
D.Configure Azure AD B2C for the app
AnswerC

Configuring Microsoft Entra ID B2B guest access lets external partners authenticate with their own organisational credentials, satisfying the stem's requirement that partners log in using existing Azure AD identities. Guest accounts are invited into the tenant, and Power Apps honours that external identity, avoiding separate local accounts or credential duplication.

Why this answer

Azure AD B2B (Business-to-Business) is Microsoft's feature for inviting external users as guest accounts into the organization's tenant, allowing them to authenticate with their own credentials while accessing internal resources. Configuring Azure AD B2B guest user access enables external partners to sign in to Power Apps using their existing organizational identities. This matches the requirement exactly.

Exam trap

The trap is confusing Azure AD B2B with Azure AD B2C — candidates often assume any external user scenario maps to B2C, but B2B is specifically for partner/federated identities while B2C is for consumer/customer identities.

How to eliminate wrong answers

Option A is wrong because SharePoint external sharing settings govern document and site sharing within SharePoint, not authentication for Power Apps external users. Option B is wrong because anonymous access removes authentication entirely, which contradicts the requirement that partners log in with their own credentials. Option D is wrong because Azure AD B2C is designed for customer-facing applications where users create local or social media accounts — it is not intended for partner/federated B2B scenarios, which use Azure AD B2B instead.

196
MCQmedium

You are designing a copilot in Microsoft Copilot Studio for a retail company. The copilot must greet users with a personalized message that includes the current date and the user's name, and this greeting must appear automatically when a conversation starts. Which feature should you use to accomplish this?

A.Use a Power Automate flow that sends a proactive message to the user when the conversation starts.
B.Use a system topic that triggers on conversation start and includes a message node with variables.
C.Create a custom entity that captures the user's name and date, and set it as a required input in the greeting topic.
D.Configure the copilot's authentication settings to retrieve the user's name from Azure Active Directory and insert it into the greeting.
AnswerB

The system topic 'Greeting' (or 'Start') is automatically triggered when a conversation begins. You can add a message node that uses variables like {User.Name} and system variables for date. This provides a personalized greeting without user input. This is the standard way to customize the initial interaction.

Why this answer

The system topic that triggers on conversation start is specifically designed to handle initial interactions. By adding a message node with variables, you can personalize the greeting with the user's name and current date. This is a no-code, built-in capability of Copilot Studio, making it the correct and efficient solution.

Exam trap

The trap here is assuming that authentication or a Power Automate flow is required to personalize a greeting, when the built-in system topic already provides the necessary trigger and message nodes.

197
Multi-Selectmedium

Which THREE are valid components of a Microsoft Power Platform environment?

Select 3 answers
A.Custom connector
B.Dataverse database
C.Power BI workspace
D.Microsoft 365 Group
E.Power Automate flow
AnswersA, B, E

Custom connectors are stored in environments.

Why this answer

A custom connector is a valid component of a Microsoft Power Platform environment because it allows you to extend the platform by creating your own API connectors to external services. Custom connectors are stored and managed within an environment, enabling makers to build apps and flows that interact with systems not covered by out-of-the-box connectors.

Exam trap

The trap here is that candidates confuse shared Microsoft 365 resources (like Groups or Power BI workspaces) with Power Platform environment components, but only items directly managed within the environment's scope—such as custom connectors, Dataverse databases, and Power Automate flows—are valid components.

198
MCQmedium

A Power Automate flow processes hundreds of items daily. The flow sometimes fails due to service unavailability. Which feature should be used to automatically retry the failed action?

A.Use a 'Scope' action
B.Enable retry policy on the action
C.Add a 'Terminate' action
D.Configure a 'Configure run after' setting
AnswerB

Enabling a retry policy on the action makes Power Automate automatically re-attempt it after transient service unavailability, using configurable intervals and counts. This handles intermittent failures without manual intervention, matching the requirement for automatic retries.

Why this answer

Power Automate allows you to configure a retry policy on individual actions to automatically reattempt execution when a transient failure (such as service unavailability) occurs. This feature handles intermittent errors without manual intervention, improving flow reliability for high-volume processing.

Exam trap

The trap here is that candidates often confuse 'Configure run after' settings (which control conditional execution based on previous action status) with automatic retry logic, but retry policy is a separate configuration on the action itself that handles transient failures before any run-after conditions are evaluated.

How to eliminate wrong answers

Option A is wrong because a 'Scope' action is used to group actions for error handling and variable scoping, not to automatically retry a failed action. Option C is wrong because a 'Terminate' action is used to stop a flow immediately with a custom status, not to retry failures. Option D is wrong because 'Configure run after' settings define which actions run based on the success or failure of a previous action, but they do not automatically retry the failed action itself.

199
MCQmedium

A company wants to restrict the ability to create Power Apps and Power Automate flows in the default environment to only a specific security group. What is the recommended approach?

A.Create a DLP policy that blocks creation of apps and flows.
B.Assign the security group to the Environment Maker role for the default environment.
C.Disable the default environment and create a new one with restricted access.
D.Remove the Environment Maker role from all users and add the security group as co-admins.
AnswerB

The Environment Maker role can be scoped to a specific environment and assigned to a security group.

Why this answer

The recommended approach to restrict app and flow creation in the default environment is to assign only the desired security group to the Environment Maker role for that environment. The Environment Maker role grants permissions to create resources like Power Apps and Power Automate flows, and by assigning it exclusively to a security group, you effectively limit creation capabilities to members of that group while removing the role from all other users.

Exam trap

The trap here is that candidates often confuse DLP policies with access control, thinking they can block creation of apps/flows via DLP, when in fact DLP only governs connector usage and data policies, not creation permissions.

How to eliminate wrong answers

Option A is wrong because a Data Loss Prevention (DLP) policy controls data connectors and data sharing between environments, not the ability to create apps or flows; it does not restrict creation permissions. Option C is wrong because disabling the default environment is not supported—the default environment cannot be disabled or deleted; instead, you must manage access through role assignments. Option D is wrong because adding a security group as co-admins grants them administrative privileges (e.g., managing environments, DLP policies), not the specific ability to create apps and flows; the Environment Maker role is the correct role for creation permissions.

200
Multi-Selecthard

Which TWO are benefits of using model-driven apps over canvas apps? (Choose two.)

Select 2 answers
A.Easier to create complex formulas
B.No Microsoft Entra ID licensing required
C.Built-in business process flows
D.Responsive design automatically adapts to screen size
E.Unlimited custom layout control
AnswersC, D

Model-driven apps include business process flows natively, guiding users through defined stages and enforcing consistent data entry across the organisation. Canvas apps require this logic to be built manually, so the built-in capability is a genuine advantage where structured, repeatable processes matter.

Why this answer

Option C is correct because model-driven apps are built on Microsoft Dataverse and include business process flows natively, allowing organizations to define and enforce multi-stage processes (such as lead-to-opportunity stages) directly within the app's data model without custom development. Option D is correct because model-driven apps use a component-based, metadata-driven UI that automatically renders a responsive, adaptive layout across devices (desktop, tablet, mobile) based on the underlying form and view definitions, so designers do not have to build separate layouts. Options A and E are incorrect because they describe canvas apps, which offer a free-form drag-and-drop designer with full pixel-level layout control and Excel-like Power Fx formulas for complex logic.

Option B is incorrect because both canvas and model-driven apps require appropriate Microsoft Power Platform and Microsoft Entra ID-based licensing; model-driven apps do not eliminate Entra ID licensing requirements.

201
MCQhard

A company has a Power Apps portal for external partners to submit support tickets. Partners report that they cannot see the tickets they created. The portal uses Dataverse. What is the most likely cause?

A.The partners are using an unsupported browser.
B.Entity permissions for the ticket table are not configured for portal users.
C.The portal is not published to the external network.
D.The Dataverse environment is in maintenance mode.
AnswerB

Power Pages uses its own table permissions layered over Dataverse security roles; without a permission record granting the partner web role read access to the ticket table, portal users see nothing. Dataverse roles alone do not expose records to external portal identities.

Why this answer

In Power Apps portals, visibility of Dataverse records is governed by entity permissions, not by the portal being published or the browser used. When partners cannot see tickets they created, the most likely cause is that the entity permissions for the ticket table are not configured to grant 'Read' access to the appropriate portal web roles (e.g., 'Authenticated Users' or a custom role). Without these permissions, the portal cannot query and display the records, even though the data exists in Dataverse.

Exam trap

The trap here is that candidates may assume the issue is a network or browser problem, but the PL-900 exam specifically tests understanding that Power Apps portals rely on Dataverse security and entity permissions to control record visibility, not on portal publishing status or browser compatibility.

How to eliminate wrong answers

Option A is wrong because unsupported browsers typically cause rendering or functionality issues (e.g., JavaScript errors), not a complete inability to see records that were created; Dataverse and Power Apps portals support modern browsers like Chrome, Edge, and Firefox. Option C is wrong because if the portal were not published to the external network, partners would not be able to access the portal at all, not just fail to see tickets; the question states they can access the portal but cannot see tickets. Option D is wrong because maintenance mode in Dataverse prevents all operations (create, read, update, delete) across the environment, but partners can still create tickets, which indicates the environment is operational.

202
MCQmedium

A company has a Power Apps model-driven app for sales. Sales reps need to see their assigned leads only. Which security feature should be configured?

A.Configure business unit security to isolate each rep's data
B.Use field-level security to set permissions on the 'Assigned To' field
C.Assign security roles that filter leads by owner
D.Share the app with each rep individually
AnswerC

Security roles in model-driven apps control record-level access through the owner-based privilege model, so assigning roles that grant User-level read on leads restricts each sales rep to records they own. This satisfies the requirement that reps see only their assigned leads, without custom filtering logic.

Why this answer

Security roles with 'User' access level on the Lead entity filter records so that users see only records they own. This is the appropriate method to restrict leads by assigned owner in a model-driven app. Option B is incorrect because field-level security controls read/write permissions on a specific field (like 'Assigned To'), not which records are visible.

It does not filter the list of records. Option A is incorrect because business unit security isolates data at the business unit level, not per user. Option D is incorrect because sharing the app grants access to the app but does not filter the underlying data.

203
Multi-Selecteasy

Which TWO of the following are components of Power Platform? (Choose two.)

Select 2 answers
A.SharePoint
B.Teams
C.Power Apps
D.Excel
E.Power BI
AnswersC, E

Power Apps is a core Power Platform component, providing a low-code canvas and model-driven environment for building custom business applications that connect to data sources such as Dataverse. It satisfies the stem's requirement by being one of the platform's primary services, alongside Power Automate, Power BI and Power Virtual Agents.

Why this answer

Power Apps (C) is a core Power Platform component, providing a low-code/no-code canvas and model-driven app development environment that connects to data sources via connectors and the Dataverse. Power BI (E) is also a core Power Platform component, delivering business analytics, interactive dashboards, and reports built on the Power BI service and Desktop. Together with Power Automate and Power Virtual Agents (now Copilot Studio), these make up the Microsoft Power Platform suite.

SharePoint (A), Teams (B), and Excel (D) are not Power Platform components; they are separate Microsoft 365 services/applications that can integrate with Power Platform (e.g., as connectors or data sources) but are not part of the platform itself.

Exam trap

The trap here is that candidates often confuse data sources or integration tools (like SharePoint or Excel) with actual Power Platform components, leading them to select those as answers instead of the core services Power Apps and Power BI.

204
MCQmedium

A sales team uses a Power Apps canvas app to view and update customer records stored in a Microsoft Dataverse table. A new requirement states that when a user selects a customer in the app, the app must automatically retrieve the 10 most recent related orders from a different Dataverse table and display them in a gallery. Which Power Apps capability should the maker use to retrieve and display the related orders?

A.Add a second data source connection to the orders table and use the Default property of the gallery.
B.Use the Filter function with a relationship-based lookup in the Items property of the gallery.
C.Use the LookUp function to retrieve a single order and display it in a form.
D.Create a Power Automate cloud flow that returns all orders and bind the gallery to the flow output.
AnswerB

The Filter function can use a lookup column to retrieve related records from another table. In this scenario, the orders table has a lookup to the customers table, so Filter(Orders, Customer.CustomerId = ThisItem.CustomerId) returns the related orders. This is the standard way to display related data in a canvas app gallery without writing server-side code.

Why this answer

To display related records from another table in a canvas app, the maker should use the Filter function in the gallery's Items property, referencing the lookup column that establishes the relationship. This retrieves only the relevant records and updates dynamically when the selected customer changes. Other approaches either return too few records, are asynchronous, or do not filter correctly.

Exam trap

The trap here is assuming that a Power Automate flow is needed to retrieve related records, when a simple Filter function on a lookup column can achieve the same result directly in the app.

205
MCQeasy

A sales team needs a mobile-friendly app to view and update customer information stored in Microsoft Dataverse. The app should be generated automatically from the data model and provide a consistent interface across devices. Which type of Power Apps app should they create?

A.Power BI dashboard
B.Model-driven app
C.Power Apps portal
D.Canvas app
AnswerB

Model-driven apps are generated from the data model defined in Dataverse, including tables, relationships, and forms. They automatically provide a responsive, consistent user interface across devices with minimal manual design. This matches the requirement for an app that is automatically generated and mobile-friendly.

Why this answer

Model-driven apps are built on Dataverse and automatically generate a responsive UI from the data model, including forms, views, and dashboards. They are ideal for complex business processes and provide a consistent experience across devices. This makes them the correct choice for a sales team needing a mobile-friendly app generated from data.

Exam trap

The trap here is confusing canvas apps with model-driven apps, thinking that canvas apps are automatically generated from data models, which they are not.

206
MCQmedium

Refer to the exhibit. An administrator runs this PowerShell command against a Power Platform environment. What can the administrator conclude?

A.The environment is accessible only to members of the ContosoUsers security group
B.The environment creation failed
C.The environment has no security group assigned
D.The environment is a personal productivity environment
AnswerA

The environmentSecurityGroupName property indicates the security group assigned to the environment.

Why this answer

The PowerShell command `Get-AdminPowerAppEnvironment` returns the environment details, including the `SecurityGroupId` property. If this property is populated with a GUID, it indicates a security group is assigned to the environment, restricting access to its members. Since the exhibit shows a non-null `SecurityGroupId` for the ContosoUsers group, the environment is accessible only to members of that security group.

Exam trap

The trap here is that candidates assume a populated `SecurityGroupId` field means the environment is restricted to that group, but they may confuse it with other properties like `EnvironmentSku` or `Permissions`, or incorrectly think a null value indicates failure rather than no group assignment.

How to eliminate wrong answers

Option B is wrong because the command successfully returned environment details, including a `SecurityGroupId`, which indicates the environment was created and exists. Option C is wrong because the `SecurityGroupId` field is populated with a GUID, meaning a security group is assigned; an empty or null value would indicate no security group. Option D is wrong because a personal productivity environment (e.g., from a Power Apps license) does not have a security group assigned; the presence of a `SecurityGroupId` confirms this is a standard environment with access control.

207
Multi-Selecthard

Which TWO of the following are best practices for managing Power Platform environments in an enterprise? (Choose two.)

Select 2 answers
A.Share all connectors and data sources with all users by default.
B.Implement Data Loss Prevention (DLP) policies to control data flow between connectors.
C.Disable auditing to improve performance.
D.Use a single environment for all development and production workloads.
E.Use separate environments for development, testing, and production.
AnswersB, E

DLP policies define which connectors may share data within a tenant, blocking combinations that could leak business data to consumer services. This satisfies the enterprise governance requirement by enforcing connector classification across environments and apps centrally.

Why this answer

Option B is correct because Data Loss Prevention (DLP) policies in the Power Platform Admin Center let administrators classify connectors into Business, Non-Business, and Blocked groups, preventing sensitive data from flowing between incompatible connectors and enforcing enterprise governance. Option E is correct because separating development, testing, and production into distinct environments isolates changes, supports managed solutions and deployment pipelines, and prevents unverified customizations from affecting live business data. Options A, C, and D are not best practices: sharing all connectors and data sources by default violates least-privilege and exposes sensitive data, disabling auditing removes the compliance and security trail needed for enterprise oversight, and using a single environment for all workloads mixes development and production, risking instability and data corruption.

Exam trap

The trap here is that candidates may think disabling auditing improves performance (Option C) or that a single environment simplifies management (Option D), but the PL-900 exam emphasizes governance, security, and ALM separation as core best practices.

208
MCQhard

A model-driven app uses a business process flow to guide users through a sales process. The flow has multiple stages, and users complain that they can move to the next stage without completing required fields. What should the app maker do to enforce data entry?

A.Set the fields as business required in the entity
B.Set the fields as required in the business process flow stage
C.Add a validation rule on the entity fields
D.Make the fields read-only in the business process flow stage
AnswerB

Marking fields as required on the business process flow stage enforces data entry at stage level, blocking progression until those columns are populated. This directly satisfies the stem's constraint: users currently advance stages without completing required fields. Required-stage columns apply validation to the flow itself, unlike form-level requirements, which only govern the form.

Why this answer

Setting fields as required in the business process flow stage ensures they must be filled before progressing to the next stage. Option A is incorrect because setting fields as business required in the entity applies globally, not just within the flow, and would affect all forms and views. Option C is incorrect because validation rules apply to the field's data integrity, not to flow stage transitions.

Option D is incorrect because making fields read-only would prevent data entry entirely, not enforce required completion.

209
MCQeasy

A non-technical employee wants to create a simple chatbot to answer common HR questions. Which Power Platform component should they use?

A.Power BI
B.Power Apps
C.Power Virtual Agents
D.Power Automate
AnswerC

Power Virtual Agents lets non-technical staff build chatbots through a guided, no-code graphical interface, satisfying the stem's requirement for a simple HR Q&A bot without developer skills. It integrates with Microsoft Entra ID for authentication and connects to Power Automate flows, so the employee can extend answers to backend HR data later.

Why this answer

Power Virtual Agents (C) is the correct choice because it is a no-code, AI-driven chatbot service within Power Platform specifically designed for building conversational agents. It allows non-technical users to create, publish, and analyze chatbots using a graphical interface without writing code, making it ideal for handling common HR questions through predefined topics and natural language understanding.

Exam trap

The trap here is that candidates confuse Power Virtual Agents with Power Automate, assuming chatbots are just automated workflows, but Power Virtual Agents is specifically designed for conversational AI with built-in NLP, whereas Power Automate handles backend task automation.

How to eliminate wrong answers

Option A is wrong because Power BI is a business analytics and data visualization tool, not a chatbot builder; it focuses on creating reports and dashboards from data sources. Option B is wrong because Power Apps is a low-code platform for building custom business applications (canvas or model-driven apps), not for creating conversational interfaces or chatbots. Option D is wrong because Power Automate is a workflow automation service for orchestrating repetitive tasks and processes across applications, not for building interactive chatbots that respond to user queries in real time.

210
MCQmedium

A healthcare provider needs to ensure that only authorized users can access patient data in a Power Apps app. The app uses Dataverse. What should the administrator configure?

A.Configure SharePoint permissions for the app
B.Set environment as restricted in Power Platform admin center
C.Use Microsoft Entra ID conditional access policies
D.Assign Dataverse security roles to users
AnswerD

Assigning Dataverse security roles grants users the precise privileges required to access patient records, satisfying the requirement that only authorised users reach the data. Security roles operate at the environment and table level, controlling create, read, update and delete permissions, so unauthorised users without an assigned role are denied access entirely.

Why this answer

Dataverse uses its own security model based on security roles, which define the privileges a user has on tables, records, and other resources. To ensure that only authorized users can access patient data in a Power Apps app that uses Dataverse, the administrator must assign appropriate Dataverse security roles to users. These roles control create, read, write, delete, and append privileges at the organization, business unit, parent-child business unit, and user levels.

Exam trap

PL-900 often tests the distinction between authentication (Entra ID conditional access) and authorization (Dataverse security roles) — candidates who pick conditional access confuse controlling who can sign in with controlling who can access specific data.

How to eliminate wrong answers

Option A is wrong because SharePoint permissions apply to SharePoint data, not Dataverse tables — the app uses Dataverse, so SharePoint permissions are irrelevant. Option B is wrong because setting the environment as restricted in the Power Platform admin center controls who can create environments and manage capacity, not who can access data within an app. Option C is wrong because Microsoft Entra ID conditional access policies control authentication and access to cloud apps at the sign-in level, but they do not control record-level or table-level access within Dataverse — a user who passes conditional access still needs a Dataverse security role to read patient data.

211
MCQmedium

A company uses Power Automate to process incoming invoices. A cloud flow is triggered when a new file is added to a SharePoint document library. The flow must extract the invoice total from the file and store it in a SharePoint list. The file is a PDF. What should you use to extract the total?

A.Power Automate's built-in 'Extract text from PDF' action
B.Microsoft Dataverse's 'Parse invoice' connector
C.AI Builder's Extract information from invoices prebuilt model
D.SharePoint's 'Extract document text' action
AnswerC

AI Builder provides a prebuilt model specifically for invoice processing that extracts key fields such as invoice total, date, and vendor from PDFs. This is the correct choice because it directly addresses the requirement to extract the invoice total without custom code. The model can be used in Power Automate with the 'Extract information from invoices' action, which returns structured data that can then be stored in SharePoint.

Why this answer

The requirement is to extract the invoice total from a PDF file. AI Builder's prebuilt invoice model is designed exactly for this purpose, using machine learning to identify and extract key fields from invoices. It integrates with Power Automate, allowing the extracted data to be used in subsequent actions, such as creating an item in SharePoint.

Other options either do not exist or do not provide the needed extraction capability.

Exam trap

The trap here is assuming that generic text extraction or OCR actions can reliably pull specific fields like invoice total, when specialized AI Builder models are required for structured data extraction.

212
MCQmedium

A company uses Power BI to monitor manufacturing efficiency. The dataset includes a column 'RunTime' (in minutes) and 'DownTime' (in minutes). A user wants to calculate 'Availability' as (RunTime / (RunTime + DownTime)) * 100. Which DAX measure should be used?

A.Availability = DIVIDE(SUM([RunTime]), SUM([RunTime])+SUM([DownTime])) * 100
B.Availability = DIVIDE(SUM([RunTime]), SUM([RunTime])+SUM([DownTime]))
C.Availability = AVERAGE(Table[RunTime]) / (AVERAGE(Table[RunTime])+AVERAGE(Table[DownTime])) * 100
D.Availability = SUMX(Table, [RunTime]/([RunTime]+[DownTime])) * 100
AnswerA

Correctly calculates percentage.

Why this answer

It uses the DIVIDE function to safely handle division by zero, and multiplies by 100 to express the result as a percentage. The formula sums RunTime and DownTime across all rows, then computes Availability = (Total RunTime / (Total RunTime + Total DownTime)) * 100, which matches the user's requirement exactly.

Exam trap

The trap here is that candidates often confuse aggregate-level calculations (using SUM) with row-level calculations (using SUMX or AVERAGE), and they may forget to multiply by 100 when the requirement explicitly asks for a percentage value.

How to eliminate wrong answers

Option B is wrong because it omits the multiplication by 100, so the result is a decimal (e.g., 0.95) rather than a percentage (95%), which does not match the user's requirement. Option C is wrong because it uses AVERAGE instead of SUM; averaging individual row ratios yields a different result than the aggregate ratio, and the user's requirement is based on total times, not averages. Option D is wrong because SUMX iterates row-by-row, computing the ratio for each row and then summing those ratios; this is not equivalent to the aggregate ratio of total RunTime divided by total (RunTime + DownTime), and it can produce incorrect results when rows have different denominators.

213
Multi-Selecthard

Which THREE of the following are capabilities of Power Apps?

Select 3 answers
A.Create complex workflow automations
B.Perform real-time streaming analytics
C.Use AI Builder to add artificial intelligence
D.Connect to Microsoft 365 data (e.g., SharePoint, Outlook)
E.Run on mobile devices (iOS, Android, Windows)
AnswersC, D, E

AI Builder supplies prebuilt and custom machine-learning models that Power Apps can invoke through components, letting makers add prediction, form processing, or object detection without writing model code. This is a genuine Power Apps capability.

Why this answer

Power Apps is a low-code application development platform, and option C is correct because it natively integrates with AI Builder, allowing makers to add prebuilt or custom AI models (such as form processing, object detection, and prediction) directly into canvas and model-driven apps. Option D is correct because Power Apps provides hundreds of built-in connectors, including standard connectors to Microsoft 365 services like SharePoint lists/libraries and Outlook (mail, calendar, contacts), enabling apps to read and write that data without custom code. Option E is correct because Power Apps ships Power Apps Mobile for iOS and Android plus the Power Apps app for Windows, so the same app runs on those mobile devices.

Option A does not belong because complex, multi-step workflow automation is the role of Power Automate, not Power Apps itself. Option B does not belong because real-time streaming analytics is handled by Azure Stream Analytics (or Power BI streaming datasets), not by Power Apps.

Exam trap

The trap is attributing capabilities of sibling Power Platform services (Power Automate for workflows, Power BI for analytics) to Power Apps; candidates must know the boundary between the three products.

214
Multi-Selectmedium

A logistics company wants to improve its operations by using Microsoft Power Platform capabilities. The IT director asks which capabilities are provided by the Power Platform to enable business users to build solutions with less coding. (Choose two.)

Select 2 answers
A.Connect to hundreds of data sources through built-in connectors
B.Provision and manage virtual machines in Azure
C.Create automated workflows with a visual designer
D.Build responsive web applications by writing HTML, CSS, and JavaScript
E.Replace all existing line-of-business systems with a single database
AnswersA, C

The Power Platform includes a large library of connectors that let makers interact with services such as SharePoint, SQL Server, Dynamics 365, and third-party APIs without writing integration code. This capability is fundamental to low-code development because it removes the need to build custom data access layers, directly supporting the goal of enabling business users to create solutions quickly.

Why this answer

The Power Platform enables low-code solution building primarily through its extensive connector ecosystem and its visual workflow designer. Connectors let makers reach data and services without custom integration code, while the visual designer in Power Automate lets them automate processes without programming. Together these capabilities empower business users to deliver solutions faster, which is what the IT director is evaluating.

Exam trap

The trap here is equating low-code with any development activity, when the Power Platform's low-code value comes from connectors and visual designers rather than hand-written web code.

215
MCQmedium

Your company wants to create a chatbot that can answer employee questions about IT policies and escalate complex issues to a human agent. The chatbot should be built with minimal custom code. Which two Microsoft Power Platform components should you combine?

A.Power Virtual Agents
B.Power BI
C.Power Automate
D.Power Apps
AnswerA, C

Power Virtual Agents provides a no-code graphical bot builder that handles conversational question-and-answer flows and supports hand-off to a human agent, satisfying the minimal-custom-code constraint. Combined with Power Automate for backend logic, it answers IT policy queries and escalates complex issues without bespoke development.

Why this answer

This is a multiple-select question requiring two components. Power Virtual Agents (A) is the correct choice because it provides a low-code, conversational AI platform specifically designed to build chatbots with minimal custom code, enabling the creation of a bot that answers IT policy questions. Power Automate (C) is correct because it can be used to escalate complex issues to a human agent by triggering workflows, such as sending an email or creating a ticket in a helpdesk system, without writing code.

Exam trap

The PL-900 exam often tests the distinction between low-code chatbot creation (Power Virtual Agents) and workflow automation (Power Automate) versus analytics (Power BI) or app building (Power Apps), leading candidates to mistakenly choose Power Apps for the chatbot or Power BI for escalation.

How to eliminate wrong answers

Option B (Power BI) is wrong because it is a business analytics tool for data visualization and reporting, not for building chatbots or automating escalation workflows. Option D (Power Apps) is wrong because it is a low-code platform for building custom applications (canvas or model-driven apps), not for creating conversational interfaces or automating escalation processes; while it could integrate with a chatbot, it is not the primary component for the described scenario.

216
MCQhard

A company has a copilot built with Microsoft Copilot Studio that answers HR policy questions by using a SharePoint knowledge source. Users report that the copilot sometimes gives answers that are not in the policy documents. The maker must reduce these ungrounded responses while still allowing the copilot to answer from the approved SharePoint content. What should the maker do?

A.Set the generative answers node to use only the configured SharePoint knowledge source and disable general knowledge.
B.Increase the copilot's creativity setting so it can better interpret the policy documents.
C.Add a second knowledge source that contains a copy of the HR policies in a public website.
D.Disable generative answers and build a manual topic for every possible HR question.
AnswerA

In Microsoft Copilot Studio, generative answers can be configured to use specific knowledge sources. Disabling general knowledge and restricting the node to the SharePoint source prevents the copilot from drawing on outside information, which reduces ungrounded responses. This keeps the copilot answering from the approved HR policy content while preserving natural-language answers.

Why this answer

To reduce ungrounded responses, the maker should restrict the generative answers node to the approved SharePoint knowledge source and disable general knowledge. This ensures the copilot answers from the HR policy documents rather than from broader model knowledge. Disabling generative answers entirely, adding a public website source, or increasing creativity do not constrain the copilot to the approved content.

Exam trap

The trap here is believing that making the copilot more creative or adding more sources will improve accuracy, when the real fix is restricting it to the approved knowledge source.

217
MCQhard

An organization has a canvas app that uses a SharePoint list as its data source. Users report that the app loads slowly and sometimes times out. The developer needs to improve performance. Which approach should the developer take?

A.Increase the timeout setting in the app settings
B.Migrate the data source to SQL Server to improve performance
C.Split the app into multiple screens to reduce load per screen
D.Use delegable queries to filter data at the source
AnswerD

Delegable queries translate filter operations into the data source's own query language, so SharePoint performs the filtering and returns only relevant rows. This avoids downloading the whole list, which is what causes the slow loads and timeouts.

Why this answer

Delegable queries push filtering and sorting operations to the data source (SharePoint) rather than pulling the entire dataset into Power Apps for client-side processing. This dramatically reduces the volume of data transferred and the memory footprint on the client, which is the primary cause of slow loads and timeouts. Non-delegable functions force Power Apps to retrieve the first 500 (or up to 2,000) records and process them locally, which breaks correctness and performance on large lists.

Exam trap

PL-900 often tests the misconception that increasing timeout or splitting screens solves performance issues, when the real fix is delegation — candidates confuse symptom relief with root-cause resolution.

How to eliminate wrong answers

Option A is wrong because increasing the timeout only masks the underlying problem — the app still retrieves and processes excessive data, so it will continue to be slow and may still time out on larger datasets. Option B is wrong because migrating to SQL Server is a major architectural change that is not required to fix the performance issue; the correct fix is to use delegable queries against the existing SharePoint source. Option C is wrong because splitting the app into multiple screens does not reduce the amount of data retrieved per query; the bottleneck is the non-delegable data retrieval, not screen rendering.

218
Multi-Selectmedium

Which TWO scenarios are best suited for using Power Automate scheduled flows?

Select 2 answers
A.Sending an approval request when a new expense report is submitted
B.Generating a daily sales report at 8 AM
C.Archiving records older than 30 days every Sunday
D.Creating a task in Planner when a new email arrives with specific subject
E.Posting a message to Teams when a new file is added to SharePoint
AnswersB, C

Generating a daily sales report at 8 AM suits a scheduled cloud flow, which triggers on a recurrence pattern rather than an event. The fixed 8 AM timing satisfies the stem's scheduling constraint, unlike automated flows that fire on a trigger such as a new row or email arrival.

Why this answer

Option B is correct because a scheduled flow is designed to run on a time-based recurrence, so generating a daily sales report at 8 AM is a classic use case where the Recurrence trigger fires once per day at the specified time. Option C is correct because archiving records older than 30 days every Sunday is also time-driven, and the Recurrence trigger can be configured to run weekly on Sundays to perform the cleanup automatically. The unmarked options A, D, and E are all event-driven scenarios: they should use automated triggers such as when a new expense report is submitted, when a new email arrives with a specific subject, or when a new file is added to SharePoint, rather than a scheduled recurrence.

Exam trap

The trap here is that candidates often confuse event-driven triggers (e.g., 'when a new item is created') with scheduled triggers, mistakenly thinking any recurring task can be automated with a scheduled flow, but only time-based, non-event-driven scenarios qualify.

219
MCQhard

An organization is using Microsoft Power Platform to build a compliance solution. They need to ensure that sensitive data in Dataverse is encrypted at rest and that access is audited. Which feature should they enable?

A.Data Loss Prevention (DLP) policies
B.Customer-managed encryption key (CMK) and Audit logging
C.Power Apps business rules
D.Microsoft Entra ID Conditional Access policies
AnswerB

Customer-managed encryption keys let the organisation control the key protecting Dataverse data at rest, while audit logging records every access to sensitive records. Together they satisfy both stated compliance constraints: encryption at rest under customer control and auditable access.

Why this answer

Customer-managed encryption key (CMK) provides control over the encryption key used to encrypt data at rest in Dataverse, ensuring sensitive data is encrypted with a key managed by the organization. Audit logging records all access and changes to data, enabling compliance auditing. Together, they directly address the requirements for encryption at rest and access auditing.

Exam trap

The trap here is that candidates often confuse Data Loss Prevention (DLP) policies with data protection at rest, but DLP only governs data movement and does not provide encryption or auditing of stored data.

How to eliminate wrong answers

Option A is wrong because Data Loss Prevention (DLP) policies control data movement between connectors and prevent data exfiltration, but they do not encrypt data at rest or provide access auditing. Option C is wrong because Power Apps business rules enforce business logic and validation on forms, not encryption or auditing. Option D is wrong because Microsoft Entra ID Conditional Access policies control authentication and access based on conditions like location or device compliance, but they do not encrypt data at rest or audit data access within Dataverse.

220
Multi-Selectmedium

A maker is authoring a canvas app in Power Apps Studio and wants to reuse logic and control appearance across multiple screens. Which two capabilities support this goal? (Choose two.)

Select 2 answers
A.Enable the app's experimental features toggle
B.Set the app's theme to a custom color palette
C.Use a named formula in App.Formulas to define reusable values and logic
D.Create a component and insert it on multiple screens
E.Define a named formula with the With function for shared calculations
AnswersC, D

App.Formulas allows named formulas that define values and logic once and reference them throughout the app. They recalculate as needed and can be used on any screen. This provides a single place to maintain shared logic, which supports reuse across multiple screens as the maker requires.

Why this answer

Components and named formulas are the two canvas app authoring features built for reuse. Components package controls, properties, and formulas that can be inserted on many screens and updated centrally. Named formulas in App.Formulas define values and logic once for use anywhere in the app.

Together they let a maker maintain shared behavior and styling without duplicating definitions.

Exam trap

The trap here is treating visual theming or experimental toggles as reuse mechanisms, when only components and named formulas actually carry reusable logic and appearance.

221
MCQmedium

A company uses Power Automate to process expense reports. The flow must run only on weekdays and must not run more than once per hour. The flow is currently triggered manually. Which trigger should be used to meet these requirements?

A.Manually trigger a flow
B.When an item is created in SharePoint
C.When a file is created (properties only) in SharePoint
D.Recurrence
AnswerD

The Recurrence trigger allows you to schedule a flow to run at a specific interval, such as every hour, and you can configure it to run only on weekdays by selecting specific days in the schedule. This directly meets both conditions: running only on weekdays and not more than once per hour. It is the standard trigger for time-based automation in Power Automate.

Why this answer

The Recurrence trigger is designed for scheduled execution. It allows configuration of interval and frequency, such as every hour, and selection of specific days of the week. In this scenario, setting the recurrence to run hourly on weekdays only meets both the timing and frequency constraints.

Other triggers are event-based and cannot enforce the required schedule.

Exam trap

The trap here is thinking that any trigger that runs on a schedule will work, but only the Recurrence trigger provides the granular control over days and intervals needed.

222
MCQeasy

A manager needs to quickly analyze sales data from multiple sources and share interactive dashboards with the team. Which Power Platform tool should they use?

A.Power Automate
B.Power Apps
C.Power Virtual Agents
D.Power BI
AnswerD

Power BI connects to multiple data sources and unifies them into semantic models, then publishes interactive dashboards the team can explore. This directly satisfies the manager's need to analyse combined sales data quickly and share live, interactive visualisations, unlike canvas apps or flow-based automation tools.

Why this answer

Power BI is the correct tool because it is designed specifically for data analytics and visualization. It can connect to multiple data sources, transform and model the data, and create interactive dashboards that can be shared securely with team members via the Power BI service. This directly meets the manager's need to analyze sales data from multiple sources and share interactive dashboards.

Exam trap

The trap here is that candidates may confuse Power BI's dashboard and visualization capabilities with Power Apps' UI-building features, or assume Power Automate can handle data analysis because it can process data in flows, but neither tool provides the interactive, shareable analytics dashboards that Power BI offers.

How to eliminate wrong answers

Option A is wrong because Power Automate is a workflow automation tool for creating automated processes between apps and services, not for analyzing data or building interactive dashboards. Option B is wrong because Power Apps is a low-code application development platform for building custom business apps, not for data analysis or dashboard creation. Option C is wrong because Power Virtual Agents is a tool for creating conversational AI chatbots, not for analyzing data or sharing dashboards.

223
Matchingmedium

Match each AI Builder model type to its use case.

Drag a concept onto its matching description — or click a concept then click the description.

Concepts
Matches

Extract text from forms

Identify objects in images

Categorize text into predefined classes

Extract specific data from text

Classify text into categories

Why these pairings

The correct matches are: Object Detection identifies objects in images; Form Processing extracts data from forms; Text Classification categorizes text. Common confusions involve swapping these definitions.

224
MCQmedium

A company uses Power Automate to automate approval workflows for purchase orders. The flow should send an approval request to the manager of the requestor. When the manager approves, the flow should update a SharePoint list and send a confirmation email. However, the flow fails with an error 'Unable to find the manager for the specified user'. What is the most likely cause?

A.The user profile in Microsoft Entra ID does not have a manager assigned.
B.The SharePoint list column for manager is missing.
C.The flow trigger is set to 'When a new item is created' but the item already exists.
D.The SharePoint list does not have the correct permissions.
AnswerA

The approval action resolves the requestor's manager by querying the manager attribute on their Microsoft Entra ID profile. When that attribute is empty, the connector cannot resolve a recipient, producing exactly the 'Unable to find the manager' error rather than a permissions or licensing fault.

Why this answer

The error 'Unable to find the manager for the specified user' indicates that the user's profile in Microsoft Entra ID (Azure AD) does not have a manager attribute populated. Power Automate's approval action relies on the manager relationship defined in Entra ID to route the request.

Exam trap

PL-900 often tests the dependency on Microsoft Entra ID data for Power Automate actions, and candidates may incorrectly blame SharePoint configuration or permissions instead of the missing manager attribute in the user profile.

How to eliminate wrong answers

Option B is wrong because the SharePoint list column for manager is not used by the approval action; the manager is resolved from Entra ID, not SharePoint. Option C is wrong because the trigger condition (new item vs. existing) would not cause a manager lookup failure; it would affect whether the flow runs at all. Option D is wrong because SharePoint list permissions affect access to the list, not the ability to resolve a user's manager from Entra ID.

225
Multi-Selectmedium

Which TWO are valid ways to share a canvas app with other users in your organization?

Select 2 answers
A.Publish the app to a SharePoint list
B.Share directly from the Power Apps maker portal
C.Embed the app in Microsoft Teams
D.Provide a direct link to the .msapp file
E.Send the app file as an email attachment
AnswersB, C

The maker portal's Share command grants named users or security groups permission to run the app, with optional co-owner rights. This is the standard in-tenant distribution mechanism, satisfying the requirement for a valid way to share a canvas app within the organisation.

Why this answer

Option B is correct because the Power Apps maker portal provides a built-in Share feature that lets you grant specific users or groups in your organization access to a canvas app, assigning them either User or Co-owner permissions. Option C is correct because embedding a canvas app in Microsoft Teams is a supported sharing method that distributes the app to team members through a Teams tab or as a personal app, respecting the organization's security and licensing. Option A is not valid because a SharePoint list is a data source, not a distribution channel for a canvas app.

Option D is not valid because a .msapp file is a source package for editing or importing in the maker portal, not a runnable link for end users. Option E is not valid because emailing the .msapp file does not publish or share the app and recipients cannot run it directly.

Page 2

Page 3 of 10

Page 4

All pages