Free sample · answers included
Free Salesforce MuleSoft Platform Integration Architect
Practice Questions
18 free MuleSoft Platform Integration Architect practice questions from our bank of 300 reviewed questions, picked across all 10 official exam sections in proportion to their weight. Each one shows the correct answer, why it is right and why the others are wrong, and the official documentation it was checked against.
What is the MuleSoft Platform Integration Architect exam like?
60 + up to 5
Scored + unscored questions
120 min
Time limit
70%
Passing score
$400
Registration (retake $200)
None
Prerequisite
Confirm current details in the official MuleSoft Platform Integration Architect exam guide.
Questions by exam section
Heavier sections get more questions, the same way the real exam and our 60-question practice exams are weighted.
- Initiating integration solutions on the Anypoint Platform8% · 1 question
- Designing for the runtime plane technology architecture15% · 3 questions
- Designing architecture using integration paradigms10% · 2 questions
- Designing and developing Mule applications15% · 3 questions
- Designing automated tests for Mule applications5% · 1 question
- Designing integration solutions to meet persistence requirements10% · 2 questions
- Designing integration solutions to meet reliability requirements8% · 1 question
- Designing integration solutions to meet performance requirements7% · 1 question
- Designing integration solutions to meet security requirements8% · 1 question
- Applying DevOps practices and operating integration solutions14% · 3 questions
Initiating integration solutions on the Anypoint Platform
8% of the examQuestion 1 · Easier
Ursa Major Solar is reviewing network connectivity for a Runtime Fabric installation. Security asks how the agent initially establishes its management connection so the approved network design does not assume that Anypoint must first open a public inbound connection to the cluster. Which architecture fact should the integration architect use?- A.The Runtime Fabric agent establishes an outbound mutual-TLS connection to the control plane when it starts.
- B.The control plane must initiate an unauthenticated inbound connection, because certificate authentication happens only for API traffic.
- C.The agent exchanges management instructions through consumer requests to Exchange, so no dedicated control-plane connection is needed.
- D.Each application must expose a public listener for the control plane, because the agent has no management connection of its own.
Show the answer and explanationHide the answer
Correct answer: A. The Runtime Fabric agent establishes an outbound mutual-TLS connection to the control plane when it starts.The Runtime Fabric agent runs as a pod and establishes an outbound mTLS connection to the control plane at startup. It does not require every application to expose a public management listener. The documented connection is authenticated with mutual TLS rather than an unauthenticated inbound session. Exchange consumer requests are not the transport for this agent's management instructions; the full network design must still follow the applicable connectivity requirements.
Designing for the runtime plane technology architecture
15% of the examQuestion 2 · Harder · Choose 2
Bloomington Caregivers uses a CloudHub 1.0 DLB allowlist to admit selected partner IP addresses. Testing finds that callers can still reach the application through the shared public load balancer. The application must remain reachable through the DLB. Which two changes should the architect retain in the network design? Choose 2 answers.- A.Keep the DLB allowlist as the client restriction for traffic entering through the dedicated load balancer.
- B.Remove all local-VPC access to the private worker ports so the DLB can no longer reach the application.
- C.Allow every client IP on the DLB, because its allowlist automatically governs the shared load balancer too.
- D.Publish a custom hostname, because that automatically disables the application's shared-load-balancer route.
- E.Remove the VPC rules permitting public inbound access to the worker's shared-load-balancer ports.
Show the answer and explanationHide the answer
Correct answers: A. Keep the DLB allowlist as the client restriction for traffic entering through the dedicated load balancer.; E. Remove the VPC rules permitting public inbound access to the worker's shared-load-balancer ports.The networking guide pairs removal of public worker access through the shared-load-balancer ports with a DLB allowlist. Keeping the allowlist controls the DLB route while removing the alternate public worker path closes the bypass. A custom hostname alone does not remove the alternate route. Blocking the DLB's private worker access breaks the required service, and the DLB allowlist does not govern the shared load balancer.Question 3 · Harder
AW Computing combines two SDK modules in one Mule application. Both modules expose their JSON library's types in operation signatures and export the same library package, although they use incompatible library versions. Deployment fails before the integration handles requests. Which cause should the architect investigate first?- A.The modules both export the same package, which the SDK documentation identifies as a deployment conflict.
- B.The modules have different operation names, which requires all implementation packages to be merged at deployment.
- C.The application lacks a shared domain, which is required whenever two modules have operation return types.
- D.The application uses a unified thread pool, which prevents modules with different JSON libraries from loading.
Show the answer and explanationHide the answer
Correct answer: A. The modules both export the same package, which the SDK documentation identifies as a deployment conflict.The SDK's duplicate-package example states that an application fails when two modules export the same package. Exposing incompatible third-party library types creates that conflict here. Distinct operation names do not require merging implementation packages, and a shared domain is not a prerequisite for module return types. The UBER scheduling strategy concerns task execution rather than resolving exported-package collisions.Question 4 · Easier
Universal Containers audits a Mule 4.6 runtime that uses default UBER scheduling. A thread dump also shows connector NIO-selector and recurring-task pools. The team treats their presence as proof that UBER is disabled. What should the architect explain?- A.UBER permits only recurring-task pools, while every NIO selector must be hosted in another Mule runtime instance.
- B.Components can create specialized NIO-selector or recurring-task pools in addition to the main UBER pool.
- C.UBER requires every connector activity to run on the same single thread, so any second thread proves misconfiguration.
- D.UBER applies only to class loading and therefore has no relationship to the runtime's execution thread pools.
Show the answer and explanationHide the answer
Correct answer: B. Components can create specialized NIO-selector or recurring-task pools in addition to the main UBER pool.The execution-engine page explicitly allows component-specific pools in addition to UBER, including NIO selectors and recurring tasks. Their presence alone does not demonstrate that the main strategy is disabled. A unified thread pool is not a single thread, and NIO selectors need not move to another runtime. UBER is an execution scheduling strategy rather than a class-loading feature.
Designing architecture using integration paradigms
10% of the examQuestion 5 · Easier
Ursa Major Solar owns a search API that supports a POST search document as well as simple GET queries. A client expands a complex filter into a very long GET query string and receives 414 URI Too Long. It must retain every filter condition. Which redesign directly addresses the rejected part of the request?- A.Use the supported POST search operation and carry the complex filter in its request body instead of the URI.
- B.Change only the Accept header so the server interprets the existing long URI as a different response format.
- C.Raise the allowed request-body size while leaving the complete filter expression in the same GET URI.
- D.Increase the response timeout while continuing to send the same URI through the rejecting HTTP endpoint.
Show the answer and explanationHide the answer
Correct answer: A. Use the supported POST search operation and carry the complex filter in its request body instead of the URI.A 414 response identifies a URI that exceeds what the server is willing to interpret, rather than a body-size or response-wait problem. Moving the filter to the already-supported POST body removes that oversized query information from the URI. Increasing a body limit or a timeout leaves the rejected URI unchanged. Accept negotiates the response representation and does not shorten that URI.Question 6 · Easier
AW Computing's JMS requester uses Publish Consume with a temporary reply destination. The service accepts each request and produces a valid reply, but its custom reply publisher always sends to a fixed response queue instead. Correlation settings already match. Which routing change should the architect require?- A.Send the response to the original request destination because every requester also waits on that incoming work queue.
- B.Keep the fixed response destination and change only the body media type so the temporary queue receives that message.
- C.Keep the fixed response destination and increase the request priority so the broker reassigns the reply destination.
- D.Send the response to the destination named in the request JMSReplyTo header, which identifies where this caller waits.
Show the answer and explanationHide the answer
Correct answer: D. Send the response to the destination named in the request JMSReplyTo header, which identifies where this caller waits.Publish Consume places the destination where it waits for a response in the outgoing JMSReplyTo header, including a temporary reply destination. The custom responder must honor that destination rather than its fixed response queue. The request work queue has a different role from the reply queue. Media type and priority do not redirect a publication from the wrong destination to the caller's temporary reply destination.
Designing and developing Mule applications
15% of the examQuestion 7 · Medium
Cloud Kicks has two Mule flows on one runtime, each with a Salesforce Connector source subscribed to the same event channel. Each flow performs a different business action, but subscription deliveries consume the user quota twice. Which design should the integration architect recommend to reduce duplicate subscription consumption?- A.Keep both subscriptions and place a duplicate filter after each source so only one event reaches each business path.
- B.Keep both subscriptions and set one to replay only new events while the other resumes from its last replay ID.
- C.Keep both subscriptions and use a separate connector configuration name for each while retaining the same user and channel.
- D.Use one source subscription and dispatch each received event to the two business-processing paths inside the application.
Show the answer and explanationHide the answer
Correct answer: D. Use one source subscription and dispatch each received event to the two business-processing paths inside the application.MuleSoft documents that multiple flows listening to the same channel or topic consume the events multiple times from the user quota and recommends implementing the logic in one flow instead. One source can feed the two application processing paths without creating a second subscription. Filtering after a source does not undo a delivery already consumed from the subscription quota. Different replay starting points and configuration names do not consolidate the two subscriptions for the same user and channel.Question 8 · Harder
Cumulus Financial validates an order with a Validation All scope containing five validators, each with a field-specific message. Clients must receive every failure in one response, and the API's error handler expects one application error type, APP:INVALID_ORDER, rather than VALIDATION:MULTIPLE. What should the developer do?- A.Set a Message on the All scope whose expression joins the nested messages and declares the APP:INVALID_ORDER error type.
- B.Add a validation:exception child to the All scope that sets the error type to APP:INVALID_ORDER for every combined failure.
- C.Configure the All scope's Error Mapping to map VALIDATION:MULTIPLE to APP:INVALID_ORDER, keeping the nested messages.
- D.Replace the All scope with five individual validators, each with an error mapping to APP:INVALID_ORDER and its own message.
Show the answer and explanationHide the answer
Correct answer: C. Configure the All scope's Error Mapping to map VALIDATION:MULTIPLE to APP:INVALID_ORDER, keeping the nested messages.The All scope runs every nested validation and raises a single VALIDATION:MULTIPLE error whose message lists each failure, and the documentation says its Error Mapping can be modified to map that error to a different one. Unlike the individual validation operations, All does not let you customize the exception type or message through validation:exception or exception factory elements, so neither the exception child nor a scope-level message works. Individual validators stop the flow at the first failure, so clients would no longer receive every failure in one response. Keeping the nested messages preserves the field-specific detail in the combined error.Question 9 · Easier
Northern Trail Outfitters has an HTML receipt file containing Mule expressions such as #[payload.orderNumber]. A Mule flow must evaluate those expressions with each request's message and return the resulting HTML, while keeping the template in a separate file. Which core component should the integration architect select?- A.Read the HTML receipt with a file:: property placeholder and return that string from Set Payload.
- B.Configuration properties with the receipt file as its file, so every HTML element becomes an expression-aware property.
- C.Parse Template with content set to the receipt file's path, treating that field as the external template location.
- D.Parse Template with location set to the HTML receipt file, evaluating its expressions for each incoming message.
Show the answer and explanationHide the answer
Correct answer: D. Parse Template with location set to the HTML receipt file, evaluating its expressions for each incoming message.Parse Template processes text containing embedded Mule expressions, evaluates them against the message, and supports an external file through location. A file:: placeholder reads the entire file as a string; loading that string is not Parse Template's per-message expression evaluation. The content field holds inline template text, so a literal file path there is not a request to load that file. Configuration properties load YAML or .properties values, not expression-aware HTML templates.
Designing automated tests for Mule applications
5% of the examQuestion 10 · Harder
Get Cloudy Consulting's flow calls a partner with HTTP Request and has an On Error Continue for HTTP:CONNECTIVITY that sets the payload to 'Connection Error'. A unit test must exercise that handler deterministically, without depending on the network or the partner being down. What should the developer design?- A.Point the request configuration at an unreachable test port through a property and declare expectedErrorType HTTP:CONNECTIVITY on the test.
- B.Wrap the flow reference in a Try scope with On Error Continue in the execution scope, and assert the payload that the Try scope returns.
- C.Mock the HTTP Request with a then-return payload of 'Connection Error', then assert that the payload returned by the flow equals that text.
- D.Mock the HTTP Request with a then-return error of type HTTP:CONNECTIVITY, run the flow, and assert the payload set by the handler.
Show the answer and explanationHide the answer
Correct answer: D. Mock the HTTP Request with a then-return error of type HTTP:CONNECTIVITY, run the flow, and assert the payload set by the handler.Mock When can return an error instead of a payload, so returning HTTP:CONNECTIVITY triggers the flow's On Error Continue without any network dependency, and the validation asserts the handler's payload. Pointing at an unreachable port depends on real network behavior, and because On Error Continue handles the error, the flow completes successfully and a test expecting HTTP:CONNECTIVITY fails. Returning 'Connection Error' as a normal payload bypasses the error handler, so the test passes without exercising it. A Try scope in the test handles errors in the test rather than proving the application's own handler works.
Designing integration solutions to meet persistence requirements
10% of the examQuestion 11 · Medium
Ursa Major Solar's Mule 4 application on CloudHub 1.0, with Object Store v2 enabled, uses a group-based aggregator with its default persistent object store to collect the inspection photos for each installation, about 1-2 MB each, before building a combined report. Open groups must survive application restarts. After go-live, Object Store v2 transaction usage rises sharply and the application slows, even while groups sit idle waiting for more photos. What should the integration architect recommend?- A.Make the photo content class implement Serializable, so that the aggregator can write each photo to the object store efficiently.
- B.Switch the aggregator to an in-memory object store, so that open groups of photos stop consuming Object Store v2 throughput.
- C.Store each photo outside the aggregator and aggregate only its reference, because aggregator state is polled every second.
- D.Set Eviction Time to 0, so that photo groups are removed right away and the aggregator stops polling their stored content.
Show the answer and explanationHide the answer
Correct answer: C. Store each photo outside the aggregator and aggregate only its reference, because aggregator state is polled every second.Aggregator state is stored in an object store and polled every second, so MuleSoft does not recommend aggregators for large payloads; aggregating small references keeps the persistent store while cutting the object store throughput the photos consume. An in-memory object store is faster but loses all aggregation data when the application restarts, which breaks the requirement for open groups. Content must be serializable for the module to work properly, but serializability does not reduce the size of the state that is stored and polled. Eviction Time only controls how long a group ID is remembered after the group completes or times out, so it does not affect open groups still waiting for photos.Question 12 · Harder
Get Cloudy Consulting runs a Mule 4 application on CloudHub 1.0. One VM queue carries high-value claims that must not be lost; another is a TRANSIENT queue the team chose for low-latency telemetry fan-out, where losing messages is acceptable. The team enables Persistent queues in Runtime Manager to protect the claims queue. Which outcome should the architect anticipate?- A.The deployment is rejected, because CloudHub persistent queues cannot coexist with a VM queue that the application declares as TRANSIENT.
- B.Both queues become persistent, because CloudHub replaces the queue manager and persists all queues regardless of the in-app queue type.
- C.Only the claims queue is stored externally, because CloudHub honors each VM queue's declared type when persistent queues are enabled.
- D.Batch and internal SEDA queues stay in worker memory, so only the two VM queues pay the added latency of external persistence.
Show the answer and explanationHide the answer
Correct answer: B. Both queues become persistent, because CloudHub replaces the queue manager and persists all queues regardless of the in-app queue type.When persistent queues are enabled, CloudHub replaces the default queue manager with a persistent one that persists all queues regardless of in-app configuration, including VM queues declared transient, internal Batch queues and internal SEDA queues. The telemetry queue therefore takes on the documented cost of 10-20 ms to put and 70-100 ms to take a small message. Expecting the declared type to be honored is the main misconception, and the setting does not reject transient declarations at deployment. Batch and SEDA queues are explicitly listed among the affected queue types, so they are persisted too.
Designing integration solutions to meet reliability requirements
8% of the examQuestion 13 · Medium · Choose 3
Universal Containers runs its Mule 4 applications on a two-node customer-hosted Mule runtime cluster in a single data center. Management believes this cluster already meets a new requirement to recover from the loss of the whole data center with a recovery point objective of one hour. Which three elements should the integration architect add to the DR plan? Choose 3 answers.- A.Provide a way to redirect clients to the second site, such as a load balancer or a DNS change driven by health checks.
- B.Replicate or back up the databases and message stores the applications use to the second site often enough to meet the RPO.
- C.Add a third node to the existing cluster in the same data center so the cluster can survive the loss of two nodes at once.
- D.Prepare a standby Mule environment at a second site, with the applications and configuration it needs to take over the workload.
- E.Enable the Quorum Protocol on the existing cluster so that it keeps processing after the whole data center has been lost.
Show the answer and explanationHide the answer
Correct answers: A. Provide a way to redirect clients to the second site, such as a load balancer or a DNS change driven by health checks.; B. Replicate or back up the databases and message stores the applications use to the second site often enough to meet the RPO.; D. Prepare a standby Mule environment at a second site, with the applications and configuration it needs to take over the workload.A cluster gives high availability against the failure of a node, but every node shares the data center, so DR for that site needs a standby environment elsewhere, data replicated or backed up to meet the RPO, and a mechanism to move traffic, all of which the customer owns for on-premises deployments. Adding a third node in the same building strengthens HA but leaves the site as a single point of failure. The Quorum Protocol governs how a cluster behaves when it partitions, and it cannot keep processing when no node survives. The HA and DR guide notes that on-premises cross-region recovery is not built in and must be designed by the customer.
Designing integration solutions to meet performance requirements
7% of the examQuestion 14 · Medium
Get Cloudy Consulting's Mule 4 application publishes order events with the AMQP Connector. To meet a new durability requirement, the team set the publisher's delivery mode to PERSISTENT and enabled Request Broker Confirm, and publishing throughput dropped noticeably. How should the integration architect explain the drop?- A.Request Broker Confirm batches confirmations, so publishing pauses until a full batch is acknowledged.
- B.PERSISTENT mode makes the Mule application write every message to its own local disk before publishing.
- C.The broker logs persistent messages to disk, and each broker confirm adds one more exchange per message.
- D.Both settings switch the connector to IMMEDIATE acknowledgment, which serializes all publishing work.
Show the answer and explanationHide the answer
Correct answer: C. The broker logs persistent messages to disk, and each broker confirm adds one more exchange per message.With PERSISTENT delivery mode, messages delivered to durable queues are logged to disk by the broker, whose storage implementation determines the performance impact, and Request Broker Confirm adds one extra communication between the broker and the client per published message. The broker, not the Mule application, persists the messages. The documentation describes a per-message confirmation exchange, not batched confirmations. Acknowledgment modes govern consumption, so neither publish setting changes them.
Designing integration solutions to meet security requirements
8% of the examQuestion 15 · Medium
Ursa Major Solar built an internal reporting tool as an Anypoint Platform connected app that acts on behalf of a user with the Authorization Code grant. Each analyst authorizes it once, and the tool must then refresh Exchange data overnight with that analyst's own permissions after the analyst's session ends. Overnight calls fail once the original access token expires. What should the integration architect recommend?- A.Set an expiration date on the connected app's client secret, because tokens issued to an app whose secret never expires are revoked when the session ends.
- B.Request the offline_access scope during authorization so the tool receives refresh tokens and can exchange them while the analysts are signed out.
- C.Change the app to act on its own behalf with client credentials so it can call Exchange overnight without any analyst having to authorize it first.
- D.Switch the app to the Password grant so it can store each analyst's credentials and request a fresh access token whenever the overnight job starts.
Show the answer and explanationHide the answer
Correct answer: B. Request the offline_access scope during authorization so the tool receives refresh tokens and can exchange them while the analysts are signed out.For the Authorization Code grant, the offline_access scope is required to use refresh tokens after the original access tokens expire, and the refresh_token grant then provides access to user data while the user is not signed in. Client credentials would remove the user context, so the tool would no longer act with each analyst's own permissions as required. The client secret has no expiration date by default, and changing it does not control access-token lifetime. The Password grant exposes user credentials to the app and precludes MFA, so the documentation advises against it.
Applying DevOps practices and operating integration solutions
14% of the examQuestion 16 · Easier
Universal Containers installs a Mule runtime on a new on-premises server and wants a pipeline to deploy to it with runtime-mgr:standalone-application:deploy. The CLI cannot find the server as a deployment target. What should the operations team do first?- A.Register the server with Anypoint Platform through Runtime Manager so that the CLI recognizes it.
- B.Run the CLI on the server itself, because hybrid commands deploy only to the local Mule runtime.
- C.Create a CloudHub 2.0 private space for the server so that the CLI exposes it as a deployment target.
- D.Add the server's host name to the CLI configuration file with conf so the CLI can discover it.
Show the answer and explanationHide the answer
Correct answer: A. Register the server with Anypoint Platform through Runtime Manager so that the CLI recognizes it.The CLI command reference states that for Anypoint Platform CLI to recognize target servers, each server must be manually registered with the platform; the standalone-application commands then deploy to that server, a server group or a cluster. The CLI configuration file holds credentials, host and selected organization and environment, not a list of servers. Private spaces belong to CloudHub 2.0 and do not represent customer-hosted servers. Hybrid commands work through the platform against registered targets, so the CLI does not need to run on the server.Question 17 · Harder
Get Cloudy Consulting's client gives its Maven deployment pipeline credentials that are scoped only to a child business group named Retail, under least-privilege rules, with no access to the parent organization. The cloudhub2Deployment element sets neither businessGroup nor businessGroupId, and deployments do not reach the Retail environments. What should the architect configure?- A.Set the environment parameter to Retail/Production so it identifies both the business group and environment.
- B.Set businessGroupId to the Retail business group's ID, which is mandatory without parent organization access.
- C.Set businessGroup to Retail alone, because the plugin searches child business groups for a matching name.
- D.Grant the credentials matching scopes at the root organization, so the default business group resolves correctly.
Show the answer and explanationHide the answer
Correct answer: B. Set businessGroupId to the Retail business group's ID, which is mandatory without parent organization access.When neither business group parameter is set, the deployment defaults to the main business group of the user, and the reference states that businessGroupId is mandatory when you have access only to a specific business group but not to the parent organization. Granting root-level scopes would make the default work but violates the least-privilege rule. The businessGroup parameter expects the full hierarchical path from the parent organization, not a bare child name, and a path still assumes visibility of the parent. The environment parameter must match an environment name and does not select a business group.Question 18 · Easier
AW Computing is moving applications from on-premises Mule servers, where operations tunes the shared $MULE_HOME/conf/log4j2.xml, to Runtime Fabric. Operations wants to keep tuning a shared runtime-level file after the move. What should the architect tell them?- A.Only the application-level log4j2.xml can be customized on Runtime Fabric; the runtime-level file cannot be modified.
- B.Edit the runtime-level file in each Mule pod after deployment, because Runtime Fabric reads it on every restart.
- C.Provide the runtime-level file as an application property, which Runtime Fabric merges into every application.
- D.Place the runtime-level file in a Mule domain, because applications deployed to Runtime Fabric inherit domain logging.
Show the answer and explanationHide the answer
Correct answer: A. Only the application-level log4j2.xml can be customized on Runtime Fabric; the runtime-level file cannot be modified.Runtime Fabric documentation states that only the application-level log4j2.xml in src/main/resources can be customized and that the Mule runtime-level file cannot be modified for Runtime Fabric deployments. Editing files inside a running pod is the on-premises habit, but it is not a supported customization point. Mule domains are an on-premises runtime feature and are not a way to supply Runtime Fabric logging configuration. Application properties set configuration values; they do not replace or merge Log4j configuration files.
Where to go after these 18 questions
Get MuleSoft Platform Integration Architect exam updates by email
Occasional emails when Salesforce changes this exam, plus practice questions with full explanations.
Free practice questions for other Salesforce Architect certifications
Ready for a full MuleSoft Platform Integration Architect practice exam?
Take a timed 60-question exam drawn from all 300 reviewed questions in the real exam's section mix, then drill the sections you miss.