Courseiva

CCNA Playbook Development Questions

56 questions · Playbook Development topic · All types, answers revealed

1
MCQeasy

An XSOAR Engineer is designing a playbook and needs to execute an integration command that is not associated with an existing out-of-the-box task. Which task type should the engineer add to the playbook to run a direct python script or specific command?

A.Task
B.Condition
C.Data Collection
D.Parallel
AnswerA

A standalone Task executes a direct command or inline Python script when no out-of-the-box integration task exists. It satisfies the constraint of running an arbitrary integration command by letting the engineer specify the command and its arguments manually within the playbook.

Why this answer

A Regular task (or Task) in an XSOAR playbook is used to run integration commands, automation scripts, or built-in actions directly.

2
Multi-Selecthard

When configuring advanced playbook data transformations, which THREE built-in transformers or methods can be used to manipulate strings or lists in Cortex XSOAR context expressions? (Choose three)

Select 3 answers
A.'ToLower' to convert string characters to lowercase
B.'CompileToMachineCode' to convert context into native x86 assembly
C.'EncryptDatabase' to secure SQL storage
D.'concat' to combine multiple string values
E.'uniq' to remove duplicate items from a list
AnswersA, D, E

'ToLower' is a built-in Cortex XSOAR transformer that converts string characters to lowercase within context expressions, enabling case-insensitive comparison and normalisation during playbook data transformations. It operates directly on string values in the context path.

Why this answer

Option A ('ToLower') is correct because Cortex XSOAR's built-in transformer set includes string transformers such as ToLower, which converts all characters in a given string value to lowercase within a context expression. Option D ('concat') is correct because concat is a built-in transformer that joins multiple string values together, allowing playbook authors to assemble composite strings from separate context fields. Option E ('uniq') is correct because uniq is a built-in list transformer that removes duplicate elements from a list, which is a standard list-manipulation operation in XSOAR context expressions.

Option B ('CompileToMachineCode') is not a real XSOAR transformer; XSOAR does not compile context data into native x86 assembly. Option C ('EncryptDatabase') is also not a built-in transformer; XSOAR does not expose a transformer that secures SQL storage, as database encryption is not a context-expression string or list manipulation.

3
MCQmedium

An engineer wants to test a playbook that is still in development. The playbook should only be triggered for incidents with the type 'Phishing' and severity 'High'. Which configuration ensures the playbook runs only under these conditions?

A.In the playbook settings, set 'Run on' to 'All incidents' and add a filter in the first task.
B.Create a new incident type 'Phishing' and set the playbook as the default for that type, then configure the playbook to run only on severity 'High'.
C.Configure the playbook's trigger to 'Automatic' and set the incident type and severity conditions in the playbook's trigger settings.
D.Set the playbook's trigger to 'Manual' and add a conditional task at the beginning to check incident type and severity.
AnswerC

Cortex XSOAR allows you to define triggers for playbooks that specify conditions based on incident fields such as type and severity. By setting the trigger to 'Automatic' and adding conditions for incident type 'Phishing' and severity 'High', the playbook will only run when both conditions are met. This is the standard method for conditional automatic execution.

Why this answer

To ensure a playbook runs automatically only for incidents matching specific criteria, the engineer should use the playbook's trigger settings. Setting the trigger to 'Automatic' and adding conditions for incident type and severity restricts execution to incidents that meet both criteria. Other options either require manual triggering, run the playbook unnecessarily, or do not properly filter by severity.

Exam trap

The trap here is thinking that incident type default playbooks automatically filter by severity, or that manual triggers with conditional tasks are efficient for automatic runs.

4
MCQmedium

You are configuring a playbook task to execute an integration command, but the required argument value is not available until runtime from an external email message body. How should you pass this dynamic value into the task argument?

A.Hardcode the expected string value directly into the task argument field
B.Store the value in a server-wide environment variable and call os.environ
C.Reference the context path using the ${Email.Body} syntax in the argument field
D.Write a custom integration instance configuration for that specific email
AnswerC

Cortex XSOAR resolves ${Email.Body} at runtime by reading the value from the incident context, substituting it into the argument field when the task executes. This passes the dynamic email body content into the integration command without hard-coding values.

Why this answer

Dynamic values from the Incident Context are passed into task arguments using the ${Context.Path} syntax.

5
MCQmedium

An engineer wants a playbook to dynamically decide the next task based on a severity value that is computed at runtime by a script. The playbook must branch to different tasks depending on whether the computed severity is 'High', 'Medium', or 'Low'. Which task type should be used to achieve this dynamic branching?

A.Data collection task
B.Standard task
C.Conditional task
D.Manual task
AnswerC

A conditional task evaluates a custom condition using the current incident context at runtime, allowing the playbook to branch based on computed values like severity. It supports multiple conditions, each leading to a different next task, which directly satisfies the requirement for dynamic branching based on the script's output.

Why this answer

A conditional task evaluates custom conditions against the incident context at runtime, enabling the playbook to follow different paths based on computed values such as severity. This is the intended mechanism for dynamic branching in Cortex XSOAR playbooks. Other task types either execute a single action, collect input, or require manual completion, and do not provide conditional routing.

Exam trap

The trap here is assuming that any task can branch based on conditions, when only conditional tasks (or scripts that explicitly return next tasks) provide that capability.

6
MCQhard

An XSOAR Engineer needs to modify the behavior of a built-in playbook supplied by a content pack without losing updates when the content pack is upgraded. What is the best practice approach?

A.Lock the content pack version in Marketplace settings to prevent all future updates.
B.Override playbook tasks by creating a separate script with the same name.
C.Edit the content pack files directly on the filesystem via SSH.
D.Clone the playbook, make modifications to the clone, and use the customized clone in your workflows.
AnswerD

Content pack upgrades overwrite the pack's original playbooks, discarding direct edits. Cloning creates a separate custom playbook outside the pack's managed content, so your modifications persist through upgrades while the original remains available for reference or future pack improvements.

Why this answer

The recommended best practice for customizing a content-pack playbook without losing updates is to clone the playbook, modify the clone, and use the clone in your workflows. This preserves the original pack playbook so Marketplace upgrades can update it, while your customized clone remains under your control. It also keeps a clear separation between vendor content and custom logic.

Exam trap

XSOAR-Engineer often tests the misconception that you can 'override' a pack playbook in place — the correct approach is always to clone and customize, never to edit pack files directly.

How to eliminate wrong answers

Option A is wrong because locking the content pack version prevents all future updates, including security fixes and new features, which is not a sustainable practice. Option B is wrong because creating a script with the same name does not override playbook tasks — playbook logic is not resolved by script name matching. Option C is wrong because editing content pack files directly on the filesystem is unsupported, will be overwritten on upgrade, and can break the pack's integrity.

7
MCQhard

An engineer is configuring a playbook task that calls a sub-playbook. The parent playbook needs to pass a dynamic list of IP addresses stored in an incident field to the sub-playbook as an input argument. How should this be configured in the sub-playbook task mapping?

A.Reference the incident field using context syntax such as ${incident.ipaddresses} in the sub-playbook input mapping.
B.Write a custom Python automation script to manually push the incident field into the sub-playbook context every time.
C.Hardcode the IP addresses into the sub-playbook's default argument values.
D.Create a global variable in the Server Configuration settings.
AnswerA

Context syntax such as ${incident.ipaddresses} resolves the incident field at runtime and passes its current value into the sub-playbook input, so the dynamic list of IP addresses is transferred correctly rather than a static literal.

Why this answer

To pass incident fields or context data to a sub-playbook, the engineer uses the Context or Incident field selector in the sub-playbook task configuration, referencing the path such as ${incident.ipaddresses}.

8
MCQeasy

What is the purpose of the 'Playbook Description' field when creating a new custom playbook?

A.To define the regex pattern used for email parsing
B.To provide human-readable documentation on the playbook's purpose and workflow
C.To store encrypted API credentials for sub-playbooks
D.To execute initialization scripts when the playbook starts
AnswerB

The Playbook Description field stores free-text documentation visible to analysts in the playbook library, recording what the playbook does and how it flows. It carries no execution logic, so it serves purely as human-readable context for the workflow.

Why this answer

The Playbook Description field in Cortex XSOAR is a free-text metadata field used to document the playbook's purpose, scope, and workflow for human readers. It appears in the playbook library and helps analysts and engineers understand what the playbook does without opening and tracing every task.

Exam trap

The trap is over-reading the field name and assuming 'Description' has functional or configuration power — candidates may pick regex or credential options because those sound like configuration, but the description is documentation only.

How to eliminate wrong answers

Option A is wrong because regex patterns for email parsing are defined in tasks or integration configurations, not in the playbook description field. Option C is wrong because credentials are stored in the Cortex XSOAR credential store or integrations, never in a description field. Option D is wrong because initialization scripts are executed via automation tasks or scripts within the playbook, not through the description metadata.

9
MCQmedium

You are building a playbook and need to execute three different enrichment tasks (Active Directory query, Threat Intel lookup, and DNS resolution) simultaneously before proceeding to an analysis task. How should you connect these tasks on the canvas?

A.Wrap them inside a single Data Collection Task.
B.Place them in a serial chain one after another.
C.Connect the preceding task to all three tasks in parallel, and route them into the joining task.
D.Use a Loop Task with a batch size of 3.
AnswerC

Parallel fan-out connections let the three enrichment tasks run concurrently, then converge into the joining analysis task. This satisfies the stem's requirement to execute Active Directory, Threat Intel and DNS lookups simultaneously before proceeding, rather than sequentially.

Why this answer

To run multiple tasks concurrently, you connect the preceding task to all three tasks simultaneously, and then connect all three tasks into the subsequent analysis task to join the workflow.

10
MCQhard

An engineer is designing a playbook that must iterate over a list of IP addresses stored in the incident context under the key 'IPs'. For each IP, the playbook should run a reputation check and then add a note to the incident. Which playbook task type should be used to loop over the list and execute the sub-tasks for each item?

A.Conditional task
B.For-each task
C.Manual task to select each IP and trigger the sub-tasks
D.Standard task with a script that loops internally
AnswerB

A For-each task iterates over a list and executes its sub-tasks for each item. You can specify the list from context (e.g., ${IPs}) and the loop will run the reputation check and note-adding tasks for each IP. This is the designed way to perform repetitive actions on a collection of items within a playbook.

Why this answer

The For-each task is specifically designed to iterate over a list and execute a set of sub-tasks for each element. In this scenario, it will loop through the 'IPs' list, run the reputation check, and add a note for each IP. This provides a clean, maintainable way to handle repetitive actions without manual intervention or custom scripting.

Exam trap

The trap here is assuming that a Conditional task can loop, or that a Standard task with a script is equivalent to a For-each task for playbook sub-tasks.

11
Multi-Selecthard

When exporting a playbook as part of a Content Pack in XSOAR, which THREE elements should an engineer verify are correctly included or referenced to ensure the pack installs and runs successfully in a target production environment? (Choose three)

Select 3 answers
A.Integration dependencies or required integration commands.
B.Active incident war room chat logs from the development environment.
C.Local analyst user account credentials and password hashes.
D.Custom automation scripts and transformers used within playbook tasks.
E.Dependent sub-playbooks called by the main playbook.
AnswersA, D, E

Integration dependencies or required integration commands must be verified because a playbook's tasks invoke specific commands that only exist when the corresponding integrations are installed and enabled. Without these references, the pack installs but tasks fail at runtime in the target production environment, since XSOAR cannot resolve commands absent from the tenant.

Why this answer

Option A is correct because a Content Pack must declare its integration dependencies (or the specific integration commands the playbook invokes) so that the target production environment has the required integrations installed and configured before the playbook runs. Option D is correct because custom automation scripts and transformers referenced by playbook tasks are not built-in and must be packaged or referenced in the pack, otherwise tasks will fail with missing-script errors. Option E is correct because any dependent sub-playbooks called by the main playbook must also be included or referenced in the pack, since sub-playbooks are separate content items and will not resolve automatically in the target environment.

Option B is not correct because war room chat logs are runtime artifacts of the development environment, not deployable content, and are irrelevant to pack installation or execution. Option C is not correct because analyst credentials and password hashes are environment-specific secrets that should never be exported in a Content Pack and are not required for the playbook to install or run.

12
Multi-Selectmedium

When configuring task inputs in a playbook, which TWO methods can be used to provide values to a command argument? (Choose two)

Select 2 answers
A.Direct SQL queries executed against the internal PostgreSQL database
B.Dynamic context path references using ${} syntax
C.Direct memory pointer addresses in C syntax
D.Local environment variables via bash export commands
E.Static text entered directly into the argument field
AnswersB, E

The ${} syntax resolves values from playbook context at runtime, letting a task argument inherit output from prior tasks or incident fields. This dynamic binding satisfies the requirement to pass computed or upstream values into command arguments without hardcoding.

Why this answer

Option B is correct because task inputs in a playbook support dynamic context path references written with the ${} syntax, which resolves values from the playbook's context at runtime (for example ${incident.id} or ${alert.name}). Option E is correct because static text can be typed directly into the argument field, providing a literal value that is passed to the command argument without any resolution step. Option A is incorrect because playbooks do not query the internal PostgreSQL database directly to populate task arguments; data is supplied through context or static input.

Option C is incorrect because memory pointer addresses in C syntax are not a supported input mechanism in playbook task configuration. Option D is incorrect because local environment variables set via bash export are not a supported way to pass values into playbook task arguments.

Exam trap

XSOAR-Engineer often tests the misconception that any programmatic method (SQL, bash, memory pointers) can supply task inputs; candidates overlook that only static text and ${} context references are supported in the playbook task configuration.

13
MCQeasy

An engineer wants to reuse a set of tasks across multiple playbooks without duplicating them. The tasks include several integration commands and a condition. What is the most efficient way to achieve this in Cortex XSOAR?

A.Export the tasks as a playbook and import them into each playbook.
B.Use a script to dynamically generate the tasks at runtime.
C.Create a sub-playbook containing the tasks and call it from the parent playbooks.
D.Copy and paste the tasks into each playbook manually.
AnswerC

Sub-playbooks are designed for reuse. By encapsulating the shared tasks in a sub-playbook, multiple parent playbooks can call it, ensuring consistent logic and reducing maintenance. Changes made to the sub-playbook automatically apply to all callers, which is the most efficient approach for the scenario described.

Why this answer

Sub-playbooks are the native reuse mechanism in Cortex XSOAR. They allow a set of tasks to be defined once and called from multiple parent playbooks, ensuring consistency and simplifying updates. The other options either duplicate logic, create disconnected copies, or rely on unsupported custom scripting, none of which meet the efficiency requirement.

Exam trap

The trap here is thinking that exporting and importing tasks is a form of reuse, when it actually creates independent copies that do not stay in sync.

14
MCQmedium

You are creating a playbook that includes a task to query a threat intelligence integration. The integration command returns a list of indicators, but you only want to proceed if the list is not empty. Which playbook task configuration should you use to evaluate the result and branch accordingly?

A.Use a Standard task with a script that checks the list and then manually routes the playbook by setting a context key.
B.Add a Manual task that asks the analyst to review the list and decide whether to continue.
C.Configure the integration task to only return results if the list is not empty by setting a filter in the command arguments.
D.Add a Conditional task after the integration task and set the condition to check if the indicator list is not empty.
AnswerD

A Conditional task can evaluate the output of the integration task. You can write a condition that checks if the indicator list exists and has a length greater than zero. If true, the playbook branches to the desired path; if false, it can follow an alternative path. This provides the required branching based on the result.

Why this answer

To branch based on the output of an integration task, you need a Conditional task. It can evaluate the indicator list and route execution down the appropriate path. The integration task itself does not provide conditional branching; it only returns data.

A Conditional task is the correct way to implement logic that checks for non-empty results and proceeds accordingly.

Exam trap

The trap here is thinking that an integration command can be configured to conditionally branch, when in fact branching requires a separate Conditional task.

15
MCQmedium

You are designing a playbook that needs to dynamically run different sub-playbooks based on the threat intelligence severity returned from an indicator enrichment task. Which playbook component should you use to implement this conditional routing?

A.A Conditional Task
B.A Data Collection Task
C.A Loop Task with an exit filter
D.A standard task with a Post-processing script
AnswerA

A Conditional Task evaluates the severity value returned in context and routes execution down the matching branch, letting the playbook invoke different sub-playbooks per severity level. It is the built-in component designed for exactly this branching logic.

Why this answer

A Conditional Task allows an XSOAR engineer to evaluate conditions and route the playbook execution path to different branches based on the results.

16
MCQmedium

An engineer needs to ensure that a specific playbook task only executes if the previous task returned a verdict of 'Malicious'. Where should the engineer configure this filtering logic?

A.In the Incident Fields configuration menu
B.In the task's Conditions tab using pre-conditions or filtering rules
C.In the playbook Details tab under Script arguments
D.By writing a separate Condition task before every single integration task
AnswerB

Pre-conditions and filtering rules on the task's Conditions tab evaluate the previous task's verdict before execution, so the task runs only when that verdict equals 'Malicious'. This satisfies the stem's conditional-execution requirement without altering the playbook's overall flow.

Why this answer

Task-level conditional filtering (such as checking previous task results or verdicts) is configured in the Conditions tab of the task properties.

17
Multi-Selectmedium

Which THREE items are typically required or recommended when publishing a custom playbook for organization-wide use? (Choose three)

Select 3 answers
A.A clear, descriptive name reflecting the playbook's workflow purpose
B.An attached compiled binary file for Windows execution
C.Documentation or description explaining input requirements and expected outcomes
D.Hardcoded passwords for external API integrations stored in plain text
E.Association with appropriate Incident Types so it triggers automatically when relevant cases are created
AnswersA, C, E

A clear, descriptive name states the playbook's workflow purpose, letting analysts identify its function in the playbook library before running it. This satisfies the organisation-wide publishing requirement for discoverability and consistent, unambiguous reuse across teams.

Why this answer

Option A is correct because a clear, descriptive name that reflects the playbook's workflow purpose is essential for discoverability and for users to understand at a glance what the playbook does when browsing the organization-wide library. Option C is correct because documentation or a description explaining input requirements and expected outcomes ensures other analysts can correctly supply required inputs and understand what the playbook will produce, which is critical for reusable, organization-wide content. Option E is correct because associating the playbook with the appropriate Incident Types enables it to trigger automatically when relevant cases are created, which is the standard mechanism for mapping playbooks to case categories in platforms like Cortex XSOAR.

Option B is not required because playbooks are defined as declarative workflows (YAML/JSON), not compiled binaries, and Windows execution is handled by integrations or scripts rather than an attached binary. Option D is incorrect and actively discouraged because hardcoding plain-text passwords violates security best practices; credentials should be stored in a secrets manager or credential store and referenced securely.

18
MCQeasy

Which file format does Cortex XSOAR use when exporting a playbook for backup or migration to another server?

A.XML
C.CSV
D.YAML
AnswerB

Cortex XSOAR exports playbooks as JSON files, which capture the full task graph, inputs, and configuration needed to reimport the playbook on another server. This format supports backup and migration because it preserves structure and is portable across XSOAR instances.

Why this answer

Playbooks and other content items in XSOAR are exported and packaged in JSON format.

19
MCQmedium

An engineer is configuring a playbook task to extract indicators using a built-in parsing script. The script outputs indicators to the incident context, but the engineer wants to ensure these indicators are automatically added to the Threat Intelligence module as indicators. How is this achieved?

A.By writing all indicators manually to a local CSV file on the server
B.By enabling 'Auto-extract indicators' in the incident type or task output configuration settings
C.By assigning the playbook to the 'Indicator' incident type exclusively
D.By restarting the Cortex XSOAR server daemon
AnswerB

Auto-extraction settings ensure extracted values become formal indicators in XSOAR.

Why this answer

Indicators returned by automation scripts or commands in standard task outputs can be automatically processed and ingested into the Threat Intel module based on mapping and indicator extraction settings.

20
MCQmedium

When configuring a playbook task to send an email notification, you want to attach a file that was generated during a previous task and stored in the Incident Context under ${File}. How do you reference this file in the task's file attachment argument?

A.By using the 'AttachFile' system-wide environment variable
B.By passing the context path containing the file entry ID, such as ${File.EntryID}
C.By specifying the exact file path on the XSOAR server filesystem, such as /var/log/demisto/file.txt
D.By hardcoding the binary content of the file directly into the argument field
AnswerB

The attachment argument expects the context path to the file's entry ID, not the file object itself. ${File.EntryID} resolves to the stored file identifier that XSOAR retrieves and attaches, so the email task can access the artefact generated earlier.

Why this answer

In Cortex XSOAR, files stored in the incident context are referenced by their entry ID, which is a unique identifier for the file in the incident's file store. To attach such a file to an email, you use the context path containing the file entry ID, such as ${File.EntryID}. This allows the email task to retrieve the file from the incident's attachment store.

The other options are invalid: there is no 'AttachFile' system variable, specifying a server filesystem path is not how XSOAR manages files, and hardcoding binary content is impractical.

Exam trap

The trap is thinking that files can be referenced by filesystem path or hardcoded; candidates must remember that XSOAR uses entry IDs in context paths for file attachments.

How to eliminate wrong answers

Option A is wrong because 'AttachFile' is not a system-wide environment variable in XSOAR; file attachment is done via context paths. Option C is wrong because specifying a server filesystem path like /var/log/demisto/file.txt is not supported; XSOAR stores files in its database and references them by entry ID. Option D is wrong because hardcoding binary content into an argument field is not feasible and would break the playbook.

21
MCQhard

An engineer is designing a playbook that processes incoming phishing alerts. If an analyst clicks 'False Positive' on a manual task, the playbook should jump backward to a previous cleanup task. Does Cortex XSOAR support backward transitions in playbooks?

A.Yes, by editing the raw JSON and inserting a goto statement.
B.No, backward navigation is only possible by terminating the incident and creating a new one.
C.Yes, but only through Loop Tasks or explicit conditional paths that allow looping back to earlier task nodes.
D.No, XSOAR playbooks are strictly directed acyclic graphs (DAGs) and never permit backward transitions.
AnswerC

Cortex XSOAR playbooks are directed acyclic graphs by default, so backward movement requires explicit constructs. Loop Tasks or conditional branches wired to earlier task nodes provide that return path, letting a False Positive click route execution back to the cleanup task.

Why this answer

Cortex XSOAR playbooks are built as directed graphs that support Loop Tasks and conditional branches, which allow execution to return to an earlier task node. This is the supported mechanism for implementing backward transitions such as re-running a cleanup task after an analyst marks a phishing alert as a false positive.

Exam trap

XSOAR-Engineer often tests whether candidates believe playbooks are strictly acyclic DAGs; the trap is forgetting that Loop Tasks and conditional branches explicitly allow backward transitions without JSON hacks or incident recreation.

How to eliminate wrong answers

Option A is wrong because XSOAR does not support a raw-JSON 'goto' statement; backward flow is achieved through Loop Tasks or conditional paths, not by hand-editing JSON. Option B is wrong because terminating and recreating an incident is not required and would lose context; backward navigation is natively supported. Option D is wrong because XSOAR playbooks are not strictly DAGs — Loop Tasks and conditional branches explicitly permit cycles and backward transitions.

22
Multi-Selecthard

An XSOAR Engineer is designing a playbook that must handle multiple branches based on indicator reputation. The engineer wants to ensure that certain tasks only execute when the indicator's reputation is 'Bad' or 'Suspicious'. Which TWO methods can be used to implement this conditional logic in the playbook? (Choose two.)

Select 2 answers
A.Create a sub-playbook that filters indicators by reputation and call it from the parent playbook.
B.Configure the tasks' 'Run if' condition to check the indicator reputation directly in the task settings.
C.Use a loop task to iterate over indicators and set a 'continue on error' condition based on reputation.
D.Use a condition task with an expression that checks the indicator's reputation field and routes to separate branches for each reputation level.
E.Use a data collection task to ask the analyst to manually select the reputation and then branch accordingly.
AnswersB, D

Many task types in Cortex XSOAR support a 'Run if' condition, which allows you to specify an expression that determines whether the task executes. You can set this condition to evaluate the indicator's reputation, so the task only runs when the reputation matches 'Bad' or 'Suspicious'. This is a simple way to conditionally execute individual tasks without a separate branching task.

Why this answer

Condition tasks and 'Run if' conditions are both valid ways to implement conditional logic based on indicator reputation. A condition task provides branching, allowing different paths for different reputations. 'Run if' conditions allow individual tasks to execute only when the reputation matches specified criteria. Both methods are supported and commonly used in playbook design.

Exam trap

The trap here is assuming that interactive tasks like data collection or loop tasks can handle conditional branching based on reputation, when in fact they serve different purposes.

23
MCQmedium

An engineer is designing a playbook that includes a sub-playbook to perform IP enrichment. The sub-playbook returns a list of enriched IPs in its context under the key 'EnrichedIPs'. The engineer wants to access this list in the parent playbook to use in a subsequent task. Which syntax should be used to reference the list in the parent playbook task?

A.${subplaybook.EnrichedIPs}
B.${SubPlaybookName.EnrichedIPs}
C.The engineer must configure the sub-playbook task's outputs to map 'EnrichedIPs' to a parent context key, then reference that key.
D.${EnrichedIPs}
AnswerC

Sub-playbook outputs are not automatically available in the parent context. The engineer must explicitly map outputs in the sub-playbook task configuration, specifying a key in the parent context. Once mapped, the parent can reference that key, e.g., ${ParentKey}. This ensures the data is correctly passed and accessible. This is the correct approach for accessing sub-playbook results.

Why this answer

Sub-playbook outputs must be explicitly mapped to parent context keys in the sub-playbook task's outputs configuration. Without this mapping, the parent playbook cannot directly access the sub-playbook's internal context. Once mapped, the engineer can reference the parent key in subsequent tasks.

This design enforces clear data flow between playbooks.

Exam trap

The trap here is assuming that sub-playbook context is automatically merged into the parent context, when in fact outputs must be explicitly mapped.

24
MCQeasy

When viewing a running playbook in an active incident, what do the different task border colors (such as green, red, or blue) typically indicate?

A.The permission level required by the analyst viewing the task
B.The difficulty rating assigned by the playbook developer
C.The execution status of the task (e.g., completed, failed, in-progress)
D.The integration vendor associated with the task command
AnswerC

Task border colours map to execution state: green for completed, red for failed or errored, blue for in-progress or pending. This lets analysts watching an active incident see at a glance which playbook tasks succeeded, which broke, and which are still running.

Why this answer

Color coding on playbook tasks in active incidents reflects their execution status (e.g., green for completed, red for failed, blue for in-progress).

25
MCQmedium

An engineer is building a playbook that calls a sub-playbook to enrich indicators. The sub-playbook returns a list of enriched indicators in the context key 'EnrichedIndicators'. The engineer needs to pass this list to a subsequent task that expects a comma-separated string of indicator values. Which transformer should be used to convert the list to a comma-separated string?

A.concat
B.toString
C.join
D.split
AnswerC

The join transformer concatenates elements of an array into a single string, using a specified delimiter. By default, it uses a comma. Applying join to the 'EnrichedIndicators' list will produce a comma-separated string of indicator values, which is exactly what the subsequent task requires. This is the correct transformer for this conversion.

Why this answer

To convert a list of indicator values into a comma-separated string, the join transformer is the correct choice. It takes an array and concatenates its elements using a delimiter, defaulting to a comma. This produces a string like '1.1.1.1,2.2.2.2', which is suitable for tasks that expect a comma-separated list.

Other transformers like split, concat, or toString do not achieve this specific conversion.

Exam trap

The trap here is confusing the direction of conversion: split goes from string to array, while join goes from array to string. Engineers often mix these up when working with transformers.

26
MCQeasy

You are building a playbook that must run a series of tasks in parallel to save time. After all parallel branches complete, you need to consolidate their outputs and continue with a single task. Which task type should you use to wait for all parallel branches to finish before proceeding?

A.Join task
B.Manual task
C.Conditional task
D.Standard task
AnswerA

A Join task is designed to synchronize multiple parallel branches. It waits until all incoming branches have completed before continuing. In this scenario, after the parallel tasks finish, the Join task aggregates their outputs and allows the playbook to proceed with a single consolidated flow, exactly as needed.

Why this answer

When parallel branches are used, a Join task acts as a synchronization point. It waits for all incoming branches to finish before allowing the playbook to continue. This ensures that all parallel tasks have completed and their outputs are available before the next task runs.

Other task types do not provide this built-in waiting behavior for multiple branches.

Exam trap

The trap here is assuming that any task placed after parallel branches will automatically wait for all of them, when in fact only a Join task provides that synchronization.

27
MCQhard

An engineer is mapping outputs from an integration command to the XSOAR context. The integration returns a key named 'IPAddress', but standard XSOAR naming conventions and downstream playbook tasks expect 'IP'. How can the engineer transform this output during the mapping phase without modifying the integration code?

A.Run a command to delete the context and recreate it using standard Python scripts.
B.Modify the global incident type schema to automatically alias IPAddress as IP.
C.Use a context transformer or custom mapper in the task's Edit Outputs section to map 'IPAddress' to 'IP'.
D.Rename the integration instance name to match the desired output key.
AnswerC

A context transformer or custom mapper in the task's Edit Outputs section rewrites the returned 'IPAddress' key to 'IP' during output mapping, so downstream playbook tasks and naming conventions resolve correctly. This satisfies the constraint of transforming the output without modifying the integration code itself.

Why this answer

XSOAR allows the use of built-in context transformers and custom mappers in playbook task settings to rename and restructure output keys.

28
MCQmedium

An engineer needs to document a complex conditional branch inside a playbook so that other team members understand the business logic. Where can notes or documentation be added directly within the playbook design interface?

A.By emailing the JSON export to the team
B.By writing comments inside the incident war room
C.By adding Notes or Task Descriptions in the task properties drawer
D.By modifying the server's README.md file
AnswerC

Task descriptions and notes attach directly to individual playbook tasks via the properties drawer, so the conditional branch's business logic stays visible in the design canvas where colleagues review it. This satisfies the requirement to document complex branching without leaving the design interface, unlike external wikis or comments stored outside the playbook itself.

Why this answer

The playbook design interface in Cortex XSOAR provides a task properties drawer where engineers can add Notes and Task Descriptions to document business logic, conditional branches, and expected outcomes. These fields are stored with the task definition and are visible to anyone editing or reviewing the playbook, making them the correct place for inline documentation. This keeps documentation versioned alongside the playbook itself rather than in external channels.

Exam trap

XSOAR-Engineer often tests whether candidates confuse runtime incident artifacts (War Room entries, JSON exports) with design-time documentation fields embedded in the playbook task itself.

How to eliminate wrong answers

Option A is wrong because emailing a JSON export is an external, unversioned distribution method that does not embed documentation in the playbook and quickly becomes stale. Option B is wrong because incident war room comments are tied to a specific incident instance, not to the playbook design, so they are not visible when editing the playbook. Option D is wrong because modifying a server README.md file has no relationship to the playbook design interface and would not surface notes within the task configuration.

29
MCQmedium

You need to ensure that a specific playbook task only executes if the incident severity is 'High' or 'Critical'. Where do you apply this filtering logic?

A.In the playbook JSON file by manually modifying the 'filters' array
B.In the server configuration under Incident Types
C.By writing a custom pre-processing script for every integration
D.In the task's 'Conditions' tab by defining expression rules based on incident severity
AnswerD

Defining expression rules on the task's Conditions tab gates execution directly on the incident severity field, so the task runs only when severity equals High or Critical. This satisfies the stem's constraint precisely: conditional task-level filtering, evaluated before the task executes, rather than playbook-wide triggers or separate routing rules.

Why this answer

The task-level 'Conditions' tab in the Cortex XSOAR playbook editor is the built-in mechanism for conditional task execution. It lets you define expression rules (e.g., using DBot or built-in incident fields like severity) that are evaluated at runtime before the task runs. Setting a condition such as 'severity equals High or Critical' ensures the task only executes for matching incidents without touching the underlying JSON or server config.

Exam trap

XSOAR-Engineer often tests the confusion between task-level 'Conditions' (runtime execution gating) and playbook-level 'filters' or Incident Type configuration, causing candidates to pick JSON editing or server config instead of the Conditions tab.

How to eliminate wrong answers

Option A is wrong because manually editing the playbook JSON 'filters' array is not the supported or maintainable way to gate task execution and bypasses the visual editor's validation. Option B is wrong because Incident Types under server configuration define classification, layout, and playbook mapping — not per-task execution conditions. Option C is wrong because writing a custom pre-processing script for every integration is unnecessary and does not control playbook task flow; conditions are evaluated natively by the playbook engine.

30
MCQeasy

A playbook task is configured to run a command that returns a large JSON object. The engineer wants to store only a specific nested field from the command result into the incident context for later use. Which task configuration should be used?

A.Add a 'Data Collection' task that asks the analyst to manually copy the nested field from the command result.
B.Enable 'Store raw output' and then use a 'Set' task to copy the entire JSON object into a new key.
C.In the task's 'Outputs' section, map a new context key to the nested field using the command's context path.
D.Use a 'Transform' task with a JSONPath expression to extract the field and write it directly to the incident context.
AnswerC

The Outputs section of a playbook task lets you define context keys and map them to values from the command result using the integration's documented context path. This stores only the desired nested field, keeping the context clean and making it easy to reference later. It is the standard way to extract specific data from a command's output.

Why this answer

The Outputs section of a task is designed to map values from the command result to context keys. By specifying the correct context path for the nested field, the engineer can store just that value. This keeps the context concise and ensures later tasks can reference the specific data without parsing large JSON objects or requiring manual intervention.

Exam trap

The trap here is believing that storing raw output or using a Transform task automatically isolates a nested field, when only the Outputs mapping extracts and persists the specific value.

31
MCQmedium

An engineer is troubleshooting a playbook where a task is skipped unexpectedly. Upon reviewing the task configuration, they notice a condition set in the 'Conditions' tab. What evaluates this condition to determine if the task runs or is skipped?

A.The integration instance health status
B.The evaluation of the task's conditional expression against the current Incident Context
C.The system clock and task timeout thresholds
D.The user permissions of the analyst who opened the incident
AnswerB

Cortex XSOAR evaluates the task's conditional expression against the current incident context at runtime; if the expression resolves false, the task is skipped. This context-driven evaluation, not playbook order or manual input, determines whether the task executes.

Why this answer

In Cortex XSOAR, a task's Conditions tab defines a conditional expression that is evaluated against the current incident context (the JSON data available at that point in the playbook). If the expression evaluates to true, the task runs; if false, the task is skipped. This is the mechanism that determines task execution.

Exam trap

XSOAR-Engineer often tests the misconception that task conditions depend on integration health or user permissions — the correct answer is always evaluation against incident context.

How to eliminate wrong answers

Option A is wrong because integration instance health affects whether an integration command can execute, not whether a task's condition passes. Option C is wrong because system clock and task timeouts control scheduling and SLA behavior, not conditional branching. Option D is wrong because analyst permissions govern who can view or act on incidents, not the evaluation of a task's conditional expression.

32
MCQeasy

While building a playbook, an engineer needs to prompt an analyst to review a list of indicators and make a decision to block or ignore them before the playbook continues. Which task type should be used?

A.Loop Task
B.Data Enrichment Task
C.Command Task
D.Prompt Task
AnswerD

A prompt task pauses playbook execution and presents analysts with a question or list of indicators, collecting their decision before the workflow resumes. Conditional, manual, and data-collection tasks cannot halt the run and return a human choice, so the prompt task satisfies the review-and-decide requirement.

Why this answer

A Prompt Task in Cortex XSOAR is designed to pause playbook execution and present a question or decision to an analyst, allowing them to review indicators and choose to block or ignore. This task type is specifically built for human-in-the-loop interactions, ensuring analyst input before proceeding. It supports customizable prompts and response options.

Exam trap

Candidates might confuse Prompt Tasks with Command Tasks or Data Enrichment Tasks; the trap is not recognizing that only Prompt Tasks involve explicit human interaction and decision-making.

How to eliminate wrong answers

Option A is wrong because a Loop Task is used to iterate over a list of items, not to prompt for human decision. Option B is wrong because a Data Enrichment Task automatically enriches indicators using integrations, without human intervention. Option C is wrong because a Command Task executes a specific command or integration, not a manual review.

33
Multi-Selecteasy

Which TWO of the following are valid task types available when building a playbook in the Cortex XSOAR visual designer? (Choose two)

Select 2 answers
A.Firewall Task
B.Conditional Task
C.Database Task
D.Router Task
E.Automation Task
AnswersB, E

Conditional tasks branch playbook execution based on defined criteria, evaluating inputs to route the flow down different paths. This satisfies the stem's requirement for a valid task type in the Cortex XSOAR visual designer, since branching logic is a core built-in task category alongside automation and manual tasks.

Why this answer

In the Cortex XSOAR playbook visual designer, a Conditional Task (B) is a valid task type that evaluates a set of conditions against the playbook context and routes execution down different branches based on whether the conditions evaluate to true or false. An Automation Task (E) is also valid: it runs a selected automation script (or command) and stores its output in the playbook context for later tasks to consume. These two are standard built-in task types in the XSOAR playbook editor.

By contrast, Firewall Task (A), Database Task (C), and Router Task (D) are not task types offered by the XSOAR visual designer; firewall and database operations would be performed through integrations/commands inside an Automation or standard task, and 'Router Task' is not an XSOAR construct (branching is handled by Conditional Tasks).

Exam trap

XSOAR-Engineer often tests the misconception that generic IT roles (Firewall, Database, Router) are task types, when XSOAR only has specific playbook task categories.

34
Multi-Selecthard

An XSOAR Engineer is troubleshooting a playbook where a custom automation script fails to receive expected arguments. Which THREE diagnostic steps should the engineer perform? (Choose three)

Select 3 answers
A.Reinstall the underlying operating system and format all storage volumes.
B.Replace the server's network interface card to fix context serialization errors.
C.Check server log files (e.g., demisto.log) for Python tracebacks and error messages.
D.Inspect the task's 'Inputs' tab in the playbook editor to verify argument mapping and syntax.
E.Review the War Room or task execution details to see the exact arguments passed at runtime.
AnswersC, D, E

Server logs such as demisto.log capture Python tracebacks and runtime errors from the automation script, revealing argument-parsing failures or exceptions. Reviewing them exposes the actual execution error, satisfying the need to diagnose why expected arguments never reached the script.

Why this answer

Troubleshooting script arguments involves inspecting task inputs in the playbook UI, checking the War Room for exact command execution syntax, and reviewing server log files for Python tracebacks.

35
MCQmedium

An engineer is building a playbook that must route incidents to different analysts based on severity. The severity is stored in the incident field 'severity' and can be 'Low', 'Medium', 'High', or 'Critical'. The engineer wants to assign the incident to the 'Tier1' team for Low and Medium, and to the 'Tier2' team for High and Critical. What is the most efficient way to implement this routing in the playbook?

A.Use a single 'Conditional' task with the condition 'severity == "Low" or severity == "Medium"' to assign to Tier1, and an 'else' branch to assign to Tier2.
B.Use a 'Data Collection' task to gather the severity from the analyst, then use a 'Conditional' task to route based on the response.
C.Use a 'Manual Task' that prompts the analyst to select the team, with options for Tier1 and Tier2.
D.Use two separate 'Conditional' tasks: first check if severity is 'Low', assign to Tier1; then check if severity is 'Medium', assign to Tier1; then check if severity is 'High', assign to Tier2; then check if severity is 'Critical', assign to Tier2.
AnswerA

This approach uses one conditional task with a compound condition that evaluates whether severity is Low or Medium. If true, it assigns to Tier1; otherwise, it assigns to Tier2. This efficiently handles all four severity levels without redundant tasks, reducing playbook complexity and maintenance.

Why this answer

A single conditional task with a compound condition using logical OR efficiently evaluates whether severity falls into the lower two categories. If true, the incident is assigned to Tier1; otherwise, it goes to Tier2. This covers all severity levels with minimal tasks, simplifying the playbook and reducing maintenance overhead.

Exam trap

The trap here is assuming that multiple conditional tasks are needed to handle multiple discrete values, when a single condition with logical operators can group them effectively.

36
Multi-Selecteasy

Which TWO tabs are typically found in the task properties drawer when configuring an Automation task in a playbook? (Choose two)

Select 2 answers
A.Kernel
B.Inputs
C.Compiler
D.Outputs
E.Bios
AnswersB, D

The Inputs tab supplies the arguments an automation script consumes at runtime, mapping playbook context values into the task. This satisfies the stem's requirement for a configuration tab within the task properties drawer, since every Automation task must define which script inputs receive data before execution.

Why this answer

Task property drawers include tabs for Task Details, Inputs, Outputs, and Conditions.

37
MCQhard

An engineer is developing a playbook that includes a task to run an integration command. The command returns a JSON object with a field 'result' that contains a list of indicators. The engineer wants to iterate over each indicator in the list and perform a sub-playbook for each one. Which playbook feature should the engineer use to accomplish this?

A.Use a 'Data Collection' task to collect each indicator from the analyst, then run the sub-playbook for each collected indicator.
B.Use a 'Conditional' task that checks if the list is not empty, then use a 'Manual Task' to process each indicator one by one.
C.Use a 'Sub-Playbook' task that calls the sub-playbook with the entire list as input, and the sub-playbook handles the iteration internally.
D.Use a 'Foreach' task with the input as the list of indicators from the command result.
AnswerD

The 'Foreach' task is designed to iterate over a list, executing a set of tasks for each item. By specifying the list from the command result as input, the playbook can run the sub-playbook for each indicator. This is the standard and efficient way to handle repetitive actions over a collection.

Why this answer

The 'Foreach' task is specifically built to iterate over a list, executing a set of tasks for each element. By providing the list of indicators from the command result as input, the playbook can call the sub-playbook for each indicator automatically. This avoids manual steps and ensures consistent processing for all items.

Exam trap

The trap here is confusing the 'Foreach' task with other loop-like constructs or assuming that sub-playbooks inherently handle iteration without explicit configuration.

38
MCQmedium

You want to build a playbook that iterates through a list of alert IDs and runs an enrichment command for each ID. Which task type should you use to achieve this iteration?

A.Data Collection Task
B.Loop Task
C.Parallel Task Group
D.Conditional Task
AnswerB

A Loop Task iterates over a list, running its inner tasks once per element. Feeding it the alert IDs lets the enrichment command execute for each ID in turn, satisfying the required iteration without duplicating tasks or scripting.

Why this answer

A Loop Task is used in XSOAR playbooks to iterate over a list of items and execute subsequent tasks for each item.

39
Multi-Selecthard

When managing playbook versions and content packs in Cortex XSOAR, which THREE best practices apply to playbook development? (Choose three)

Select 3 answers
A.Directly edit the production server's internal SQLite database files while playbooks are running.
B.Store plaintext administrator passwords inside playbook task description fields for easy reference.
C.Clone out-of-the-box content pack playbooks before making custom modifications to prevent loss during updates.
D.Export playbooks as JSON files for version control integration (e.g., Git).
E.Use descriptive names and clear task documentation to assist team collaboration and maintenance.
AnswersC, D, E

Cloning out-of-the-box playbooks before customising them preserves your changes when content packs update, since updates overwrite modified pack files. This directly satisfies the stem's requirement to prevent loss during updates, keeping custom logic intact and separate from vendor-managed content.

Why this answer

Best practices include cloning content pack items before editing, utilizing descriptive naming conventions, and exporting playbooks in JSON format for source control.

40
MCQhard

You are configuring a playbook task that calls a python-based custom automation. The automation requires a list of IP addresses. If the context path ${IP.Address} contains multiple items, how does XSOAR automatically pass this list to the script argument by default?

A.It throws a validation error unless wrapped in a string transformer.
B.It passes only the first item in the list and discards the rest.
C.It converts the list into a JSON object and stores it in a temporary file.
D.It passes the list as a comma-separated string or array to the script argument based on argument definitions.
AnswerD

XSOAR evaluates the ${IP.Address} context path and, when it resolves to multiple values, passes them to the script argument as either a comma-separated string or an array, depending on how that argument is defined in the automation's argument definitions.

Why this answer

XSOAR automatically flattens or serializes list context outputs into comma-separated strings or passes them as array structures depending on argument definitions when referenced in task inputs.

41
MCQeasy

An engineer is building a playbook and wants to add a task that will pause the playbook and wait for an analyst to manually approve a remediation action. The task should present the analyst with a form to approve or reject. Which task type should the engineer use?

A.Data collection task
B.Standard task
C.Conditional task
D.Manual task
AnswerD

A manual task is designed to pause the playbook and require human interaction. It can be configured to display a form with fields for the analyst to fill, such as an approval dropdown or a text box. The playbook will wait until the analyst completes the task, making it ideal for manual approvals or data collection.

Why this answer

A manual task is specifically designed to pause playbook execution and present a customizable form for human input. It is the appropriate task type for manual approvals, allowing the analyst to approve or reject an action before the playbook continues. Other task types either automate execution, evaluate conditions, or collect data without a built-in approval mechanism.

Exam trap

The trap here is confusing data collection tasks with manual tasks; while both involve human input, manual tasks are tailored for approvals and simple interactions.

42
MCQeasy

Where do you go in the Cortex XSOAR UI to create and modify playbooks visually?

A.Dashboards -> Widgets -> Playbook Designer
B.Automation -> Playbooks
C.Settings -> Integrations -> Playbooks
D.Incidents -> Analysis -> Playbooks
AnswerB

The Automation section's Playbooks page is where Cortex XSOAR engineers create, edit, and manage playbooks through the visual drag-and-drop editor, including tasks, conditions, and sub-playbooks. Other areas such as Incidents or Settings do not host the playbook builder.

Why this answer

In the Cortex XSOAR UI, playbooks are created and modified visually under the 'Automation' tab, specifically the 'Playbooks' section. This is where the Playbook Designer is accessible, allowing drag-and-drop editing of tasks, conditions, and flows. The other options refer to unrelated UI areas such as dashboards, integrations, or incident analysis, which do not host the playbook editor.

Exam trap

The trap is assuming that playbook creation is under 'Settings' or 'Incidents'; candidates often overlook that it is under the 'Automation' tab in XSOAR.

How to eliminate wrong answers

Option A is wrong because 'Dashboards -> Widgets -> Playbook Designer' does not exist; dashboards are for visualizing data, not for building playbooks. Option C is wrong because 'Settings -> Integrations -> Playbooks' is not a valid path; integrations are configured under Settings, but playbooks are not managed there. Option D is wrong because 'Incidents -> Analysis -> Playbooks' is not a standard navigation; incident analysis may show playbook runs, but the editor is not located there.

43
MCQmedium

An engineer has configured a playbook task that outputs a list of user objects into the context key 'Account'. The next task needs to iterate over each user object in this list to perform an Active Directory lookup. Which playbook feature should the engineer use?

A.A transformer function in the mapping section
B.A sub-playbook with parallel task execution
C.A Condition task evaluating the length of the Account array
D.The Loop feature configured directly on the task properties
AnswerD

The Loop feature, configured on the task itself, iterates over each element of a list held in context, running the task once per user object. This satisfies the stem's requirement to perform an Active Directory lookup for every entry in the 'Account' list.

Why this answer

To iterate over a list of items in XSOAR context, the engineer uses the Loop feature on the task, specifying the target context array.

44
MCQmedium

An XSOAR engineer wants to create a playbook that can be triggered manually by an analyst from the Incident War Room or Summary page, but should never be triggered automatically by incoming email fetches. How should the engineer configure the playbook settings?

A.Configure the playbook trigger rules or associate it with an incident type that excludes automatic classifier fetching.
B.Disable the integration instance responsible for email fetching.
C.Set the playbook role restriction to Administrator only.
D.Delete the start task of the playbook.
AnswerA

Trigger rules govern which playbook runs and how it starts. Excluding automatic classifier fetching, or scoping the playbook to an incident type not produced by email ingestion, prevents automatic execution while leaving manual runs available from the War Room and Summary page.

Why this answer

Playbooks can be restricted by type or execution triggers. To prevent automatic triggering while allowing manual execution, the playbook should be associated with specific incident types or configured as manual-only.

45
Multi-Selectmedium

Which THREE features are supported when designing sub-playbooks in Cortex XSOAR? (Choose three)

Select 3 answers
A.Directly modifying the underlying OS kernel parameters
B.Executing the sub-playbook either synchronously or asynchronously
C.Mapping parent playbook context data to sub-playbook input arguments
D.Compiling the sub-playbook into a native binary executable file
E.Mapping sub-playbook output keys back into the parent playbook context
AnswersB, C, E

Sub-playbooks can run synchronously, blocking the parent until completion, or asynchronously, letting the parent continue immediately. This flexibility satisfies the design requirement, since Cortex XSOAR supports both execution modes when a parent playbook calls a sub-playbook, unlike some automation platforms that only allow blocking calls.

Why this answer

Option B is correct because Cortex XSOAR sub-playbooks can be invoked with the 'RunAsynchronously' setting, allowing the parent playbook to either wait for the sub-playbook to finish (synchronous) or continue execution while the sub-playbook runs in parallel (asynchronous). Option C is correct because the sub-playbook task configuration includes an 'Inputs' section where parent playbook context keys are mapped to the sub-playbook's defined input arguments, enabling data to flow into the sub-playbook. Option E is correct because the sub-playbook task also has an 'Outputs' section that maps the sub-playbook's output keys back into the parent playbook context, making the results available to subsequent tasks in the parent.

Option A is incorrect because Cortex XSOAR playbooks operate at the orchestration layer and cannot directly modify OS kernel parameters. Option D is incorrect because sub-playbooks are interpreted automation content within the XSOAR engine, not compiled into native binary executables.

Exam trap

XSOAR-Engineer often tests the misconception that sub-playbooks can be compiled or that they have low-level system access, when in fact they are interpreted and sandboxed, and the key features are execution mode and context mapping.

46
MCQhard

An XSOAR Engineer wants to extract specific artifacts from a sub-playbook and ensure they are promoted to the parent incident's main context. How is context scoping handled between parent and sub-playbooks by default?

A.Sub-playbooks share the exact same global context without any isolation or scoping.
B.Sub-playbook outputs must be explicitly mapped in the sub-playbook task configuration under 'Outputs' to merge into the parent context.
C.All sub-playbook context keys automatically overwrite parent context keys with identical names without mapping.
D.Context promotion requires a dedicated python script usingdemisto.setContext() with the 'parent' flag.
AnswerB

Sub-playbook context is isolated by default; its outputs do not automatically flow upward. The engineer must define explicit output mappings in the sub-playbook task's Outputs section so selected values merge into the parent incident context.

Why this answer

By default, sub-playbooks run in their own scoped context namespace, but output keys can be mapped back to the parent playbook's context using the sub-playbook task configuration.

47
MCQhard

An engineer is debugging a playbook that occasionally fails when a task calls an automation script. The script expects a JSON string as input, but the engineer is passing a context object directly. The playbook sometimes works and sometimes fails, depending on the data. Which action should the engineer take to ensure the automation receives the correct input type?

A.In the task's 'Inputs' section, wrap the context object with the 'Stringify' transformer before passing it to the automation.
B.Change the automation script to accept a dictionary instead of a string, and update all calls accordingly.
C.Enable 'Pretty print' in the task settings so the object is formatted as a readable string.
D.Use the 'Set' task to assign the context object to a new key and then reference that key in the automation input.
AnswerA

The Stringify transformer converts a JSON object into a properly formatted string. Since the automation expects a JSON string, using this transformer ensures the input type is correct regardless of the data. This resolves the intermittent failures caused by type mismatches and is the standard way to pass complex data as a string.

Why this answer

The Stringify transformer serializes a JSON object into a string, which is exactly what the automation expects. By applying it in the task's Inputs section, the engineer ensures the automation always receives a valid JSON string, eliminating intermittent failures caused by passing an object directly. This is the correct, non-invasive fix that preserves the automation's interface.

Exam trap

The trap here is confusing display formatting like Pretty print with actual data type conversion, when only a transformer such as Stringify changes the value passed to the automation.

48
Multi-Selecteasy

Which TWO methods can an engineer use to view the execution history or audit trail of a completed playbook task in an incident? (Choose two)

Select 2 answers
A.Analyzing the server's physical power supply status LEDs
B.Reviewing task execution details and results by clicking on the task node in the incident's Playbook tab
C.Checking the War Room logs for command outputs and task messages
D.Inspecting the client browser's DNS cache settings
E.Reviewing the local SMTP mail server queue
AnswersB, C

Clicking the task node in the Playbook tab opens that task's execution details, showing inputs, outputs, results and timestamps. This provides the per-task audit trail required to verify what a completed playbook task actually executed.

Why this answer

Execution history and audit trails can be inspected via the War Room and the task's specific execution details modal in the incident investigation screen.

49
MCQmedium

An engineer is building a playbook that must run a set of enrichment tasks only when the incident severity is at least 'High'. The severity field is already populated in the incident context. The engineer wants to avoid duplicating tasks for each possible severity value. Which approach is most appropriate?

A.Add a condition task that evaluates the severity field and routes to a single branch for High and Critical severities.
B.Use a data collection task to read the severity value and then continue unconditionally.
C.Create four separate playbooks, one per severity level, and trigger each via a separate incident type.
D.Add a manual task that asks the analyst to confirm the severity before enrichment runs.
AnswerA

A condition task evaluates a built-in or custom condition against incident data and routes execution down the matching branch. Grouping High and Critical into one branch using a logical OR condition avoids task duplication and keeps the playbook maintainable. This directly satisfies the requirement to run enrichment only for severities at or above High.

Why this answer

A condition task is the native mechanism for branching on incident fields such as severity. By grouping High and Critical into a single branch with a logical condition, the engineer avoids duplicating enrichment tasks and enforces the severity threshold automatically. The other approaches either require manual effort, create unnecessary playbook sprawl, or do not evaluate the severity field at all.

Exam trap

The trap here is assuming that severity must be handled by separate playbooks or manual review rather than by a condition task that can group multiple severity values into one branch.

50
MCQmedium

When configuring a data collection task in a playbook, you need to assign the user's response to a specific incident field. Where do you map this response within the task configuration?

A.In the task's 'Assign to Incident Field' configuration setting
B.In the 'Details' tab using custom markdown syntax
C.In the task's 'Inputs' tab under context mapping
D.In the 'Script arguments' section under the 'Key' parameter
AnswerA

The 'Assign to Incident Field' setting binds the task's collected response directly to a chosen incident field, so the user's answer persists on the incident record rather than only in task context. This satisfies the requirement to map the response to a specific incident field.

Why this answer

In Cortex XSOAR, when configuring a data collection task, the user's response is mapped to an incident field via the task's 'Assign to Incident Field' configuration setting. This setting explicitly binds the response to a chosen incident field, making it available for downstream playbook logic and incident context. Other tabs handle inputs, scripts, or display, not incident field assignment.

Exam trap

The trap is assuming the mapping happens in the Inputs tab or script arguments because those are where data flows are configured, when XSOAR specifically uses the 'Assign to Incident Field' setting for this purpose.

How to eliminate wrong answers

Option B is wrong because the 'Details' tab is for task documentation and markdown display, not for mapping responses to incident fields. Option C is wrong because the 'Inputs' tab defines inputs to the task or script, not the mapping of a user response to an incident field. Option D is wrong because 'Script arguments' under the 'Key' parameter configures arguments passed to a script, not the assignment of a data collection response to an incident field.

51
Multi-Selecteasy

When designing a custom playbook in XSOAR, which TWO types of tasks are available for controlling the flow and execution path of the playbook? (Choose two)

Select 2 answers
A.Credential
B.Condition
C.Enrichment
D.Parallel
E.Mirroring
AnswersB, D

Condition tasks evaluate a script or expression and route execution down a true or false branch, directly altering the playbook's path. This satisfies the stem's requirement for a task type controlling flow and execution path, unlike standard automation or data-collection tasks.

Why this answer

Option B, Condition, is correct because a condition task evaluates a defined expression against playbook context data and branches execution down different paths depending on whether the result is true or false, which is exactly how XSOAR playbooks control decision-based flow. Option D, Parallel, is correct because a parallel task splits execution into multiple concurrent branches, allowing several task sequences to run simultaneously and then optionally rejoin, which directly controls the execution path and concurrency of the playbook. The unmarked options do not belong: Credential (A) is a task input/parameter type used to supply stored credentials to a task rather than a flow-control task, Enrichment (C) refers to tasks that query integrations to add data to the incident context rather than direct branching logic, and Mirroring (E) is an incident-level feature for syncing fields and entries with external systems such as ticketing platforms, not a playbook flow-control task type.

Exam trap

XSOAR-Engineer often tests the distinction between task types that control flow (Condition, Parallel) and task types that perform data operations (Enrichment, Credential, Mirroring), causing candidates to select functional tasks instead of flow-control tasks.

52
MCQhard

You are configuring a sub-playbook call in a parent playbook. You want the parent playbook to pause and wait for the sub-playbook to fully complete before executing the next task. Is this synchronous execution the default behavior for sub-playbooks?

A.Yes, sub-playbooks run synchronously by default, pausing the parent playbook until completion.
B.No, sub-playbooks require an explicit threading flag in the JSON canvas configuration.
C.No, sub-playbooks always run asynchronously, requiring a 'Wait for Sub-playbook' task afterwards.
D.Yes, but only if the sub-playbook contains fewer than 10 tasks.
AnswerA

Cortex XSOAR executes sub-playbook tasks synchronously unless you explicitly enable the asynchronous flag, so the parent pauses at that task until the child finishes. This default satisfies the requirement to wait for full completion before continuing.

Why this answer

Sub-playbooks in XSOAR execute synchronously by default, meaning the parent task waits for the sub-playbook to finish before proceeding.

53
Multi-Selecteasy

Which TWO options are primary benefits of utilizing Cortex XSOAR playbooks in security operations? (Choose two)

Select 2 answers
A.Permanently disabling all external network connections during any alert
B.Automating repetitive tasks to reduce Mean Time to Respond (MTTR)
C.Eliminating the need for any human oversight in security operations
D.Standardizing incident response processes to ensure consistent handling across analysts
E.Replacing all SIEM databases with flat text files
AnswersB, D

Playbooks execute response actions automatically once a trigger fires, removing manual analyst steps from repetitive triage and containment. This directly reduces Mean Time to Respond, the metric named in the option, by cutting the human latency between alert detection and remediation action.

Why this answer

Option B is correct because Cortex XSOAR playbooks execute automated workflows that handle repetitive SOC tasks such as enrichment, triage, and containment actions, which directly reduces Mean Time to Respond (MTTR). Option D is correct because playbooks encode a defined, repeatable sequence of steps so that every analyst handles the same incident type consistently, standardizing incident response across the team. Option A is incorrect because playbooks do not permanently disable all external network connections during any alert; containment actions are typically scoped, conditional, and reversible.

Option C is incorrect because XSOAR is designed to augment analysts, not eliminate human oversight; human-in-the-loop approvals and analyst judgment remain essential. Option E is incorrect because XSOAR does not replace SIEM databases with flat text files; it integrates with SIEMs and other tools rather than substituting their data stores.

Exam trap

XSOAR-Engineer often tests the misconception that SOAR replaces human analysts or SIEMs entirely — candidates over-select 'eliminating human oversight' or 'replacing SIEM databases' when the real benefits are automation and standardization.

54
Multi-Selectmedium

Which THREE settings can be configured within a Conditional Task in a playbook? (Choose three)

Select 3 answers
A.Compiling Python source code into machine bytecode
B.Configuring custom branch labels for different outcomes
C.Defining conditional expressions using incident fields or context data
D.Directly modifying firewall access control lists without commands
E.Establishing a default (else) fallback path if no specific conditions match
AnswersB, C, E

Conditional tasks let you rename each outgoing branch, so analysts see meaningful outcome labels rather than generic true/false paths. This satisfies the stem's requirement that custom branch labels for different outcomes are configurable within the task itself.

Why this answer

In a playbook Conditional Task, option B is correct because you can configure custom branch labels that name each possible outcome, allowing subsequent tasks to be routed based on which branch is taken. Option C is correct because the core of a Conditional Task is defining conditional expressions that evaluate incident fields or context data to determine which branch executes. Option E is correct because a Conditional Task supports a default (else) fallback path that runs when none of the specified conditions evaluate to true.

Option A is not a playbook Conditional Task setting; compiling Python source into bytecode is a Python runtime/build operation, not a playbook configuration. Option D is not a Conditional Task setting either, since directly modifying firewall ACLs without commands is not a supported configuration mechanism in a Conditional Task.

Exam trap

XSOAR-Engineer often tests whether candidates confuse conditional task configuration (expressions, branch labels, default path) with unrelated engine or integration capabilities.

55
MCQeasy

An engineer is creating a playbook that needs to send an email notification to the security team when a high-severity incident is detected. The engineer wants to include the incident ID and severity in the email body. Which task type should be used to compose and send the email?

A.A standard task that calls the 'send-mail' integration command with the necessary arguments.
B.A manual task that prompts the analyst to send an email manually.
C.A condition task that evaluates the severity and then uses a transformer to send an email.
D.A data collection task that gathers email content from the analyst before sending.
AnswerA

The 'send-mail' command is the standard way to send emails in Cortex XSOAR. It allows you to specify recipients, subject, and body, and you can use context variables like ${incident.id} and ${incident.severity} in the arguments. This task type is appropriate for sending notifications and is commonly used in playbooks.

Why this answer

The 'send-mail' integration command is designed for sending emails from playbooks. By using a standard task that calls this command, the engineer can automatically compose and send an email with dynamic content from the incident context, such as ID and severity. Other task types are not intended for sending emails or would require manual intervention.

Exam trap

The trap here is confusing automated tasks with manual or interactive tasks; sending an email is an automated action best handled by an integration command task.

56
MCQeasy

When building a custom playbook, you want to ensure that a specific task provides clear guidance to a human analyst who has to review phishing emails manually. Which task type should you add to the playbook canvas?

A.Data Collection Task
B.Sub-playbook Task
C.Manual Task
D.Automation Task
AnswerC

A Manual Task pauses the playbook and presents instructions, form fields and a decision prompt to the assigned analyst, so the human review step is explicit and auditable. Automated tasks would execute without waiting, breaking the required manual phishing assessment.

Why this answer

A Manual Task in Cortex XSOAR is designed to pause the playbook and present instructions or a form to a human analyst for manual review or decision. This is ideal for phishing email review where an analyst must inspect the email and determine if it is malicious. Data Collection tasks gather data, Sub-playbooks run other playbooks, and Automation tasks execute scripts without human intervention.

Exam trap

The trap is confusing Manual Task with Data Collection Task; candidates might think data collection involves human review, but it is specifically for gathering data, while manual task is for human decision or action.

How to eliminate wrong answers

Option A is wrong because a Data Collection Task is used to gather information from the analyst or external sources, but it does not provide guidance for a manual review process; it is more about collecting structured data. Option B is wrong because a Sub-playbook Task calls another playbook, which is automated and does not involve human guidance. Option D is wrong because an Automation Task runs automated scripts or commands, not manual review.

Ready to test yourself?

Try a timed practice session using only Playbook Development questions.