ToolJet/docs/versioned_docs/version-1.x.x/how-to/run-action-from-runjs.md
2022-12-09 15:49:55 +05:30

192 lines
4.2 KiB
Markdown

---
id: run-actions-from-runjs
title: Run Actions from RunJS query
---
# Run `Actions` from RunJS query
Now you can trigger all the `actions` available in ToolJet from within the `RunJS` query. This guide includes the syntax for each action along with the example.
### Run Query
**Syntax:**
```js
queries.queryName.run()
```
or
```js
await actions.runQuery('queryName')
```
**Example:** In the screenshot below, we are triggering the two different queries `customers` and `getData` using the two different syntax available for `Run Query` action.
<div style={{textAlign: 'center'}}>
![ToolJet - How To - Run Actions from RunJS query](/img/how-to/run-actions-from-runjs/runquery.png)
</div>
### Set Variable
**Syntax:**
```javascript
actions.setVariable(variableName, variableValue)
```
**Example:** In the screenshot below, we are setting the two variables `test` and `test2`. `test` variable includes a numerical value so we haven't wrapped it inside the quotes but the variable `test2` is a string so we have wrapped it in quotes.
<div style={{textAlign: 'center'}}>
![ToolJet - How To - Run Actions from RunJS query](/img/how-to/run-actions-from-runjs/setvariable.png)
</div>
### Unset Variable
**Syntax:**
```javascript
actions.unSetVariable(variableName)
```
**Example:** In the screenshot below, we are unsetting the variable `test2` that we created in the previous step.
<div style={{textAlign: 'center'}}>
![ToolJet - How To - Run Actions from RunJS query](/img/how-to/run-actions-from-runjs/unsetvariable.png)
</div>
### Logout
**Syntax:**
```javascript
actions.logout()
```
**Example:** Triggering `actions.logout()` will log out the current logged in user from the ToolJet and will redirect to sign in page.
<div style={{textAlign: 'center'}}>
![ToolJet - How To - Run Actions from RunJS query](/img/how-to/run-actions-from-runjs/logout.png)
</div>
### Show Modal
**Syntax:**
```javascript
actions.showModal('modalName')
```
**Example:** In the screenshot below, there is a modal on the canvas (renamed it to `formModal` from `modal1`) and we are using RunJS query to show the modal.
<div style={{textAlign: 'center'}}>
![ToolJet - How To - Run Actions from RunJS query](/img/how-to/run-actions-from-runjs/showmodal.png)
</div>
### Close Modal
**Syntax:**
```javascript
actions.closeModal('modalName')
```
**Example:** In the screenshot below, we have used RunJS query to close the modal that we showed up in previous step.
<div style={{textAlign: 'center'}}>
![ToolJet - How To - Run Actions from RunJS query](/img/how-to/run-actions-from-runjs/closemodal.png)
</div>
### Set Local Storage
**Syntax:**
```javascript
actions.setLocalStorage('key','value')
```
<div style={{textAlign: 'center'}}>
![ToolJet - How To - Run Actions from RunJS query](/img/how-to/run-actions-from-runjs/setlocalstorage.png)
</div>
### Copy to Clipboard
**Syntax:**
```javascript
actions.copyToClipboard('contentToCopy')
```
<div style={{textAlign: 'center'}}>
![ToolJet - How To - Run Actions from RunJS query](/img/how-to/run-actions-from-runjs/copytoclipboard.png)
</div>
### Generate File
**Syntax:**
```javascript
actions.generateFile('fileName', 'fileType', 'data')
```
**Example:** `fileName` is the name that you want to give the file(string), `fileType` can be `csv` or `text`, and `data` is the data that you want to store in the file.
<div style={{textAlign: 'center'}}>
![ToolJet - How To - Run Actions from RunJS query](/img/how-to/run-actions-from-runjs/generatefile.png)
</div>
### Go to App
**Syntax:**
```javascript
actions.goToApp('slug',queryparams)
```
- `slug` can be found in URL of the released app after the `application/`, or in the `Share` modal
- `queryparams` can be provided like this `[{"key":"value"}, {"key2":"value2"}]`
<div style={{textAlign: 'center'}}>
![ToolJet - How To - Run Actions from RunJS query](/img/how-to/run-actions-from-runjs/gotoapp1.png)
</div>
### Show Alert
**Syntax:**
```javascript
actions.showAlert(alert type , message ) // alert types are info, success, warning, and danger
```
<div style={{textAlign: 'center'}}>
![ToolJet - How To - Run Actions from RunJS query](/img/how-to/run-actions-from-runjs/showalert.png)
</div>