PL-400 · Sample questions
9 real questions from the CertifyDeck PL-400 bank, spread across the domains of the official Microsoft Power Platform Developer skills outline, with the correct answer and a full explanation of why the other options are wrong. They are original questions written from the public syllabus, not exam dumps, and they are the same style you will find in the practice tests and mock exams.
Correct answer: B. Create a canvas component packaged in a component library and share it across apps
Canvas components in a component library are the no-code, reusable building block makers can insert directly. PCF targets more complex custom controls typically built by developers, and duplication or injected script is not maintainable.
Correct answer: A. Use a local collection to hold line items and Sum() over it for the running total
A local collection plus Sum() gives an instant, client-side running total with no server round-trip or premature persistence, matching the "not saved until submit" requirement.
Correct answer: A. Table
Custom properties in canvas app components support a Table data type specifically for exposing collections of records, which fits a multi-selection scenario where the host app needs the full list of selected items. Record only represents a single row of data, not multiple selections. Boolean only holds true/false. Screen is not a valid custom property data type.
Correct answer: A. An HTTP endpoint that receives an HTTP POST request when a registered Dataverse event occurs
A webhook endpoint is an HTTP(S) URL that Dataverse calls with an HTTP POST containing the execution context whenever a registered plug-in step fires. The other options are unrelated integration mechanisms not used as Dataverse service endpoints.
Correct answer: C. In a plug-in registered on the Create message of the add-on table, so it always runs server-side regardless of client
Core business logic that must be enforced consistently and cannot be bypassed belongs on the server, and a plug-in registered on the Create message of the relevant table guarantees the logic runs for every client and integration path, including the Web API directly. Client-side form scripts and canvas app formulas only run for the specific client that hosts them and can be bypassed by other clients or direct API calls. A scheduled flow introduces a delay and does not calculate the value at creation time, which fails the "exact moment" requirement.
Correct answer: A. Xrm.WebApi.retrieveMultipleRecords() to query contacts filtered by the account, then render the results client-side
Xrm.WebApi.retrieveMultipleRecords() is the client-side, asynchronous way to query related data via the Web API without navigating away or reloading the page. openForm navigates away from the current record, which the requirement explicitly rules out; a plug-in runs server-side and can't render anything on the form; forcing a full page refresh defeats the purpose of an inline summary.
Correct answer: A. formContext.getControl("expeditedcost").setVisible(false)
Visibility of a field control is toggled with getControl(name).setVisible(boolean). setRequiredLevel changes the business requirement level, not visibility. Hiding the whole tab (option C) would hide unrelated fields too. setSubmitMode controls whether the value is saved, not whether it is displayed.
Correct answer: B. Create an environment variable for the URL with a different current value per environment
Environment variables are solution-aware values that differ per environment without modifying the underlying flow definition after deployment — exactly this scenario. Hardcoding the URL means editing the flow after every deployment; a SharePoint list adds an external dependency with no solution-layer environment binding; manual entry isn't reliable or automatable.
Correct answer: A. The column is referenced by another component, such as a form, view, or business rule, that must be removed or updated first
Dataverse tracks component dependencies, and it will block deletion of a column, table, or other component if another component (a form, view, chart, business rule, or similar) still references it. The dependent components must be updated or removed first before the deletion is allowed.
Answer each question before opening the explanation, and write down why you discarded the other options. On PL-400, most mistakes come from choosing an option that is technically possible but does not meet every requirement in the scenario.
These 9 questions are a taste of the format, not a diagnostic. To know which domains you fail, practice by domain for free and take a timed mock exam that mirrors the official weights and duration.
Start for free, no sign-up or card. Every question includes an explanation like the ones above, and the mock exam reproduces the official PL-400 format.