AB-410 sample exam questions
15 exam-style questions for Microsoft AB-410: Intelligent Applications Builder, with answers and explanations. Take them as a timed practice exam first if you want a score out of 1000.
- A company uses a model-driven app across multiple departments.
A public view intended only for managers currently exposes sensitive columns and filters to all users.
The view must meet the following requirements:
Restrict access to the specific public view to managers.
Display only context-relevant views for other users.
You need to configure view access.
What should you do?- ARestrict the view by assigning it to the manager security role.
- BConfigure table-level permissions for managers only.
- CRemove the view from the app navigation.
- DSet up the quick find view.
Show answer
Correct answer: A
WhyA public view can be limited to specific people by assigning it to a security role, which makes it appear in the view selector only for managers. Table permissions would affect all views, removing it from navigation does not secure it, and quick find is a search view, not an access control.
- A
- You create a parent entity and a child entity. The parent entity has a 1:N relationship with the child entity.
You need to ensure that when the owner changes on the parent record that all child records are assigned to the new owner.
You need to configure the relationship behavior type.
What should you use?- AReferential, Restrict Delete
- BReferential
- CRestrict
- DParental
Show answer
Correct answer: D
WhyThe Parental relationship behavior cascades assign, share, delete, reparent and unshare from the parent to all child rows, so changing the owner reassigns the children. Referential and Restrict options do not cascade assignment.
- A
- DRAG DROP
You are designing a data model for a company. The model uses only standard Microsoft Dataverse tables.
You must extend the existing Accounts and Contacts tables to support the following business requirements:
Store an additional classification value on the Accounts table.
Add a field that indicates a customer’s engagement tier on the Contacts table.
Create a mechanism to improve lookup performance and ensure uniqueness across selected fields.
You need to modify the tables to support the business requirements.
Which components should you use? To answer, move the appropriate components to the correct requirements. You may use each component once, more than once, or not at all. You may need to move the split bar between panes or scroll to view content.
NOTE: Each correct selection is worth one point.

Move each item to the matching row:
- Alternate key
- Choice column
- Lookup column
- Customer column
- Add a classification value to the Accounts table.
- Add a customer engagement tier to the Contacts table.
- Improve lookup performance and enforce uniqueness.
Show answer
- Add a classification value to the Accounts table. Choice column
- Add a customer engagement tier to the Contacts table. Choice column
- Improve lookup performance and enforce uniqueness. Alternate key
WhyClassification and tier are values picked from a fixed list, so a choice column fits both without adding tables. An alternate key creates a unique index over selected columns, which enforces uniqueness and speeds up lookups.
- A company maintains a Power Platform solution that includes prompts, cloud flows, and Dataverse components. Multiple development teams are responsible for different features within the solution.
The development teams have the following requirements:
Teams must develop and update the same features independently.
Updates must not overwrite changes made by other teams.
Production deployments must remain controlled and predictable.
You need to recommend an ALM approach that supports independent development and controlled deployment in line with Microsoft best practices.
What should you recommend?- ACreate and maintain separate solutions in a single development environment. Deploy independently as managed solutions.
- BMake changes in a single solution. Deploy updates directly to production.
- CCreate and maintain separate solutions in a separate development environment. Deploy independently as managed solutions.
- DCreate unmanaged solutions in production. Merge changes during deployment.
Show answer
Correct answer: C
WhyTeams working independently should each use their own development environment with separate solutions, then deploy them as managed solutions through test to production. A shared environment lets teams overwrite each other's changes, and changing production directly or using unmanaged solutions there is uncontrolled.
- A
- A company is designing a Power Platform solution that includes a model-driven app used by customer service representatives to manage support cases.
The company is evaluating which solution component to include in the app. The solution must meet the following requirements:
Users must interact with system-generated responses while working within forms and views.
Responses must reflect the current data and context in the app.
Users must remain within the app while interacting with the solution.
You need to recommend solution components for the app.
Which two components should you recommend? Each correct answer presents a complete solution.
NOTE: Each correct selection is worth one point.- ABusiness rules
- BCopilot Studio agent
- CSmart assist
- DApp assistant agent
Show answer
Correct answer: B, D
WhyCopilot Studio agents and the app assistant agent give conversational, context-aware generated responses inside the model-driven app. Business rules are fixed logic and not generated responses. Smart assist gives suggestions but is not an interactive agent the user converses with, so it is the weaker choice.
- A
- HOTSPOT
A company plans to use Microsoft Dataverse to manage sales opportunities. Records will contain confidential financial data that should only be accessible to specific groups of employees.
You have the following requirements:
Sales representatives must only view and update records they create.
Sales managers must have visibility into all opportunities within their organization.
You need to configure security.
Which configuration should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.

Sales representatives can only view and update records they create. User-level access / Organization-level access / Team-level access Sales managers have visibility into all opportunities in the organization. Organization-level access / Parent: Child Business Unit-Level access / Business Unit-level access Show answer
- Sales representatives can only view and update records they create. User-level access
- Sales managers have visibility into all opportunities in the organization. Organization-level access
WhyUser-level access limits read and write privileges to rows the user owns, which suits representatives. Organization-level access in a security role grants visibility of every row in the environment regardless of business unit, which suits managers who need all opportunities.
- A company is building a prompt about product specifications. The company plans to use the prompt in Power Automate.
The prompt must use Retrieval-Augmented Generation to ground the model with additional business information.
You need to select the available knowledge source for the prompt.
What should you use?- APDF document
- BPNG image
- CDataverse table columns
- DText
Show answer
Correct answer: C
WhyFor a prompt used in Power Automate, the knowledge sources that ground the model through retrieval are Dataverse tables and their columns. Plain text, PDFs and images can be provided as inputs but are not grounding knowledge sources in the prompt builder.
- A
- A company uses Dataverse to manage customer accounts and related transaction records.
The company requires the following functionality:
Reference a single related record without performing any aggregations.
Store the relationship as part of the table definition, so the platform automatically maintains the link between records.
You need to configure a column.
Which type of column should you configure?- AFormula
- BCalculated
- CRollup
- DLookup
Show answer
Correct answer: D
WhyA lookup column references one related row and stores the relationship in the table definition, with Dataverse maintaining the link. Rollup aggregates many related rows, and calculated and formula columns compute values rather than defining a relationship.
- A
- Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution that might meet the stated goals. Some question sets might have more than one correct solution, while others might not have a correct solution.
After you answer a question in this section, you will NOT be able to return to it. As a result these questions will not appear on the review screen.
A company uses a model-driven app.
The company must be able to dynamically control how components of the form behave as users interact with it. The solution must modify the form in real time while the user interacts with the interface.
You need to enforce client-side behavior dynamically.
Solution: Use business rules to show inline error messages.
Does the solution meet the goal?- AYes
- BNo
Show answer
Correct answer: A
WhyBusiness rules run client-side on the form as users interact, and they can show an error message on a column and set required, visibility or values. This meets the requirement for real-time form behavior. Server-side automation would not do this.
- A
- Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution that might meet the stated goals. Some question sets might have more than one correct solution, while others might not have a correct solution.
After you answer a question in this section, you will NOT be able to return to it. As a result these questions will not appear in the review screen.
You administer the Microsoft 365 and Microsoft Power Platform environments for Contoso, Ltd. The company has a model-driven app that is used to track customer interactions with employees. The app uses standard table types for customers. A user named Elisabeth Rice signs in to the app by using the following sign in name: [email protected].
After marriage, Elisabeth changes her legal name to Elisabeth Mueller.
You need to update the sign in name for the user without losing any application history.
Solution: Ask the Microsoft 365 administrator to sign in to the admin portal and change the user name.
Does the solution meet the goal?- AYes
- BNo
Show answer
Correct answer: A
WhyCommunity answer B is wrong. Dataverse users are synced from Microsoft Entra ID, so changing the user name in the Microsoft 365 admin center updates the sign-in name on the same user object. The Dataverse user row and all its history are kept, and no new user is created.
- A
- DRAG DROP
A company is creating a canvas app and a model-driven app to manage their customer accounts.
The canvas app requires a business rule to set the Business Type column to large if the customer size is greater than a specific currency value.
The model-driven app requires a business rule to recommend the account rating be re-evaluated when the account goes on credit hold for this app only.
You need to configure the scope for the business rules.
Which scope should you use? To answer, drag the appropriate scopes to the correct business rules. Each scope may be used once, more than once, or not at all. You may need to drag the split bar between panes or scroll to view content.
NOTE: Each correct selection is worth one point.

Move each item to the matching row:
- All forms
- Specific form
- Table
- Business Type column setting for customer size
- Account rating re-evaluation
Show answer
- Business Type column setting for customer size Table
- Account rating re-evaluation Specific form
WhyCanvas apps only run business rules scoped to Table, because that logic executes on the server rather than on a form. A recommendation is a form-only action, and a specific form scope confines it to the form used by the model-driven app.
- A company uses a Power Automate cloud flow to manage purchase approvals. Purchase orders will always be approved, rejected, or marked as escalated to a manager.
The company has the following requirements:
Multiple approvers must be included in each approval request.
Once approved, an email must be sent to the purchasing team that confirms the outcome.
The flow must not wait for remaining approvers after a decision is reached.
You need to configure the approval.
Which three configurations should you use? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.- AConfigure the approval type as Approve/Reject - First to respond.
- BCreate separate approval actions for each approver in parallel branches.
- CConfigure the approval type as Custom Responses - Wait for one response.
- DEvaluate the approval outcome by using a condition.
- EAssign multiple approvers in a single approval action.
Show answer
Correct answer: C, D, E
WhyUse one approval action with multiple approvers and a Custom Responses - Wait for one response type, so the flow continues after the first decision, including escalated. Then use a condition on the outcome to send the confirmation email. First to respond only supports Approve and Reject, so it misses escalation.
- A
- A company uses a prompt to generate responses based on internal support knowledge.
The company requires the prompt to minimize generation of unsupported and incorrect information while ensuring responses remain useful.
You need to tune the prompt model settings.
How should you configure the model settings?- ADecrease the content moderation level.
- BIncrease the content moderation level.
- CDecrease the temperature.
- DIncrease the temperature.
Show answer
Correct answer: C
WhyA lower temperature makes the model more deterministic and less creative, reducing unsupported or invented content while staying useful. Raising temperature increases randomness and hallucination risk. Content moderation filters harmful content, not factual accuracy.
- A
- DRAG DROP
A company processes transaction records by using a Power Automate cloud flow.
The company has the following requirements:
Continue processing records until a status field changes to Complete, even if new records are added during execution.
Process a fixed list of records retrieved at the start of the flow, ensuring each record is processed exactly once.
You need to configure the flow control logic.
Which controls should you use? To answer, move the appropriate controls to the correct requirements. You may use each control once, more than once, or not at all. You may need to move the split bar between panes or scroll to view content.
NOTE: Each correct selection is worth one point.

Move each item to the matching row:
- Scope
- Do until
- Apply to each
- Set concurrency
- Continue processing until status becomes Complete.
- Process a fixed list of records retrieved at the start of the flow.
Show answer
- Continue processing until status becomes Complete. Do until
- Process a fixed list of records retrieved at the start of the flow. Apply to each
WhyDo until repeats its actions until a condition is true, so it suits waiting for a status of Complete. Apply to each runs once per item in an array obtained earlier, so a fixed list is handled exactly once per record.
- HOTSPOT
A company processes customer orders by using a cloud flow.
The flow must evaluate the following conditions:
Route orders for approval when the OrderTotal exceeds 1,000.
Flag orders when the CustomerName identifies the string “VIP”.
You need to configure flow conditions.
Which expressions should you use? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.

Route orders for approval when the OrderTotal exceeds 1,000. equals(triggerOutputs()?['body/OrderTotal'], 1000) / greater(triggerOutputs()?['body/OrderTotal'], 1000) / less(triggerOutputs()?['body/OrderTotal'], 1000) Flag orders when the CustomerName identifies the string "VIP". contains(triggerOutputs()?['body/CustomerName'], 'VIP') / startsWith(triggerOutputs()?['body/CustomerName'], 'VIP') / equals(triggerOutputs()?['body/CustomerName'], 'VIP') Show answer
- Route orders for approval when the OrderTotal exceeds 1,000. greater(triggerOutputs()?['body/OrderTotal'], 1000)
- Flag orders when the CustomerName identifies the string "VIP". contains(triggerOutputs()?['body/CustomerName'], 'VIP')
WhyThe greater function returns true only when the first value is larger than the second, matching totals above 1,000. The contains function finds VIP anywhere in the name, whereas startsWith and equals would miss names with the string elsewhere.