ZoomAsk
Sends a message (question) to either user (in a direct message) or to a channel. The message includes predefined reply options. The response can also close a task (might be conditional) in a playbook.
python · Zoom
Details
| ID | ZoomAsk |
|---|---|
| Language | python |
| From Version | 5.0.0 |
| Docker Image | demisto/fastapi:0.125.0.10158186 |
| Tags | zoom |
README
Sends a message (question) to either a user (in a direct message) or to a channel. The message includes predefined reply options. The response can also close a task (might be conditional) in a playbook.
Script Data
| Name | Description |
|---|---|
| Script Type | python3 |
| Tags | Zoom |
| Version | 5.5.0 |
Use Case
This automation allows you to ask users in Zoom (including users who are external to Cortex XSOAR) questions, have them respond and
reflect the answer back to Cortex XSOAR.
Dependencies
Requires an instance of the Zoom integration with Long Running instance checked.
This script uses the following commands and scripts.
send-notification
Inputs
| Argument Name | Description |
|---|---|
| user | The Zoom user to whom to send the message. Can be either an email address or a Zoom user_id. |
| channel_id | The Zoom channel_id to which to send the message. |
| message | The message to send to the user or channel. |
| option1 | The first reply option. The default is “Yes” with a blue button. To change the color of the button, add the pound sign (#) followed by the name of the new color (blue, red, or black). The default color is “Blue”. For example, “Yes#blue”. Options cannot contain whitespaces. |
| option2 | The second reply option. The default is “No” with a red button. To change the button color, add the pound sign (#) followed by the name of the new color (green, red, or black). The default color is “red”. For example, “No#red”. Options cannot contain whitespaces. |
| task | The task to close with the reply. If empty, then no playbook tasks will be closed. |
| persistent | Indicates whether to use one-time entitlement or persistent entitlement. |
| responseType | How the user should respond to the question. |
| additionalOptions | A comma-separated list of additional options in the format of “option#color”, for example, “maybe#red”. The default color is “black”. Options cannot contain whitespaces. |
| reply | The reply to send to the user. Use the templates {user} and {response} to incorporate these in the reply. (i.e., “Thank you {user}. You have answered {response}.”) |
| lifetime | Time until the question expires. For example - 1 day. When it expires, a default response is sent. |
| defaultResponse | Default response in case the question expires. |
Outputs
There are no outputs for this script.
Guide
The automation is most useful in a playbook to determine the outcome of a conditional task - which will be one of the provided options.
It uses a mechanism that allows external users to respond in Cortex XSOAR (per investigation) with entitlement strings embedded within the message contents.

The automation can utilize the interactive capabilities of Zoom to send a form with buttons.
This requires the external endpoint for interactive responses to be available for connection. (See the Zoom integration documentation).
You can also utilize a dropdown list instead, by specifying the responseType argument.
To use ZoomAsk via playbook:
- Add the
ZoomAskscript to a playbook as a task. - In the
messageargument, specify the message to be sent. - Configure the response options by filling out the
option1andoption2arguments (default values are ‘Yes’ and ‘No’). - Either a user or a channel_id or channel_name must be specified.
- In the
ZoomAsktask, pass a tag value to thetaskargument.
All other inputs are optional.
At some point at the playbook, after running ZoomAsk, add a manual conditional task, which holds up the playbook execution until the response is received from Zoom.
The condition names must match the response options you passed in to ZoomAsk.
In order to tie the conditional task back to ZoomAsk, add the same tag from the fifth step to the conditional task (under the “Details” tab of the task). The conditional task will be marked as completed when a user responds to the ZoomAsk form.
Notes
ZoomAskwill not work when run in the playbook debugger. This is because the debugger does not generate entitlements, since they must be tied to an investigation. Entitlements are needed to track the response.- Whitespaces are not supported in custom options and will not work. (i.e. setting a button to
I Agree)
args: - description: The Zoom user ID, JID or email to whom to send the message. You must provide this parameter or the channel_id parameter. name: user - description: The ID or the JID of the channel where you intend to send the message. You must provide this parameter or the user parameter. name: channel_id - name: channel_name description: The channel name can be provided only if the channel is part of a mirroring incident, instead of the channel JID. - description: The message to send to the user or channel. name: message required: true - defaultValue: Yes#blue description: The first reply option. The default is "Yes" with a blue button. To change the color of the button, add the pound sign (#) followed by the name of the new color (blue, red, or black). The default color is "blue". For example, "Yes#blue". Options cannot contain whitespaces. name: option1 - description: The second reply option. The default is "No" with a red button. To change the button color, add the pound sign (#) followed by the name of the new color (blue, red, or black). The default color is "red". For example, "No#red". Options cannot contain whitespaces. name: option2 defaultValue: No#red - description: The task to close with the reply. If empty, then no playbook tasks will be closed. name: task - auto: PREDEFINED defaultValue: 'false' description: Indicates whether to use one-time entitlement or persistent entitlement. name: persistent predefined: - 'true' - 'false' - description: How the user should respond to the question. name: responseType auto: PREDEFINED defaultValue: button predefined: - button - dropdown - description: A comma-separated list of additional options in the format of "option#color", for example, "maybe#black". The default color is "black". Options cannot contain whitespaces. name: additionalOptions - defaultValue: Thank you {user}. you have answered {response} . description: The reply to send to the user. Use the templates {user} and {response} to incorporate these in the reply. (i.e., "Thank you {user}. You have answered {response}."). name: reply - defaultValue: 1 day description: Time until the question expires. For example - 1 day. When it expires, a default response is sent. name: lifetime - description: Default response in case the question expires. name: defaultResponse defaultValue: NoResponse comment: Sends a message (question) to either user (in a direct message) or to a channel. The message includes predefined reply options. The response can also close a task (might be conditional) in a playbook. commonfields: id: ZoomAsk version: -1 enabled: true name: ZoomAsk script: '-' subtype: python3 tags: - zoom timeout: '0' type: python dockerimage: demisto/fastapi:0.125.0.10158186 tests: - no test - Untestable dependson: must: - Zoom|||send-notification fromversion: 5.0.0 supportedModules: - agentix - xsiam - edr