
Documentation Dablio Robô
Complete reference of all automation blocks. Select a block in the sidebar or use search to get started.
Temporary flows via URL or CustomEvent
✦ ADVANCEDThis feature allows you to run a temporary flow, assembled in memory, without previously creating and saving a flow in Dablio Robô. JSON can be sent via the page URL itself or via a JavaScript event CustomEvent.
It is recommended for integrations between systems, internal panels, ERPs, quick action links, indirect webhooks, pages that need to trigger local automations in the browser and scenarios where the flow is dynamically generated by an external application.
Difference for saved stream
Saved flows are run by dablioroboId or dabliorobo and already exist in the extension store. Temporary streams are sent as JSON, executed in memory, and discarded after execution begins.
Complete workflow
Use dablioroboWorkflow when you already have a complete stream object containing blocks, connections, startBlockId, trigger and other metadata.
Command list
Use dablioroboCommands when you want to send a simple, sequential list of commands. Dablio Robô converts this list into a temporary workflow automatically.
Backend validation
Before execution, the robot calls existing session validation. When runToken is sent, the endpoint checks the código de execução and confirms whether or not the flow can continue.
Parameters available in the URL
| Parameter | Description |
|---|---|
dablioroboWorkflow |
Complete workflow in JSON encoded in Base64URL. Runs the temporary flow without saving it. |
dablioroboCommands |
Array of commands in JSON encoded in Base64URL. The robot converts commands into sequential blocks. |
runToken |
Password configured on the backend to authorize temporary execution. Mandatory for dablioroboWorkflow and dablioroboCommands. |
dablioroboData |
Optional JSON in Base64URL with initial execution data/variables. |
dablioroboOnce |
When set to 1, avoids repeated triggering of the same URL during navigation/reloading. |
dablioroboNow |
When set to 1, attempts to execute immediately, without waiting for later automatic behavior. |
dablioroboWorkflow and dablioroboCommands together. Use only one format per shot. If both are sent, the implementation should prioritize only one of them or reject execution to avoid ambiguity.How to encode JSON to Base64URL
The parameters dablioroboWorkflow, dablioroboCommands and dablioroboData must be sent as Base64URL to avoid problems with quotes, accents, curly braces, slashes, spaces and special characters within the URL.
function toBase64Url(obj) {
const json = JSON.stringify(obj);
const utf8 = new TextEncoder().encode(json);
let binary = '';
utf8.forEach(byte => {
binary += String.fromCharCode(byte);
});
return btoa(binary)
.replace(/\+/g, '-')
.replace(/\//g, '_')
.replace(/=+$/g, '');
}
const workflowBase64 = toBase64Url(workflowJson);
const commandsBase64 = toBase64Url(commandsJson);
Example 1 — Send complete workflow via URL
In this format you send the entire workflow, similar to a flow exported by Dablio Robô. The stream will not be saved to local storage.
{
"nome": "Consulta rápida no Google",
"ativo": true,
"blockDelay": 500,
"startBlockId": "start",
"trigger": {
"tipo": "manual",
"config": {}
},
"blocks": [
{
"id": "start",
"type": "trigger",
"config": []
},
{
"id": "abrir_google",
"type": "new-tab",
"config": {
"ativo": true,
"url": "https://www.google.com",
"criarNa": "janelaAtual",
"aguardarCarregamento": true,
"definirAbaAtiva": true
}
},
{
"id": "digitar_busca",
"type": "forms",
"config": {
"ativo": true,
"seletor": "textarea[name='q'], input[name='q']",
"aguardarSeletor": true,
"tempoAguardarSeletor": 15000,
"acao": "text",
"valor": "Dablio Group",
"limparCampo": true
}
},
{
"id": "enviar_form",
"type": "forms",
"config": {
"ativo": true,
"seletor": "form[action*='/search']",
"aguardarSeletor": true,
"tempoAguardarSeletor": 10000,
"acao": "submit"
}
}
],
"connections": [
{
"from": { "blockId": "start", "port": "default" },
"to": { "blockId": "abrir_google", "port": "in" }
},
{
"from": { "blockId": "abrir_google", "port": "default" },
"to": { "blockId": "digitar_busca", "port": "in" }
},
{
"from": { "blockId": "digitar_busca", "port": "default" },
"to": { "blockId": "enviar_form", "port": "in" }
}
]
}
https://www.google.com/?dablioroboWorkflow=BASE64URL_DO_WORKFLOW&runToken=SUA_SENHA&dablioroboOnce=1&dablioroboNow=1
Example 2 — Send sequential commands via URL
In this format you only send a list of commands. The robot automatically assembles the starting block, intermediate blocks and sequential connections.
[
{
"type": "open",
"url": "https://www.google.com",
"wait": true
},
{
"type": "type",
"selector": "textarea[name='q'], input[name='q']",
"value": "Dablio Group",
"wait": true,
"clear": true
},
{
"type": "submit",
"selector": "form[action*='/search']",
"wait": true
},
{
"type": "click",
"selector": "h3",
"wait": true
}
]
https://www.google.com/?dablioroboCommands=BASE64URL_DOS_COMANDOS&runToken=SUA_SENHA&dablioroboOnce=1&dablioroboNow=1
Aliases accepted in short commands
| Alias | Equivalent block/action |
|---|---|
clickclicarclique |
Convert to block click-element. |
typedigitarpreencher |
Convert to block forms with text action. |
submitenviar |
Convert to block forms with action submit. |
selectselecionar |
Convert to block forms with selection action. |
keyhotkeyatalho |
Convert to block press-key. |
waitsleepaguardar |
Convert to block delay. |
openopen-urlnova-aba |
Convert to block new-tab. |
jsjavascript |
Convert to block javascript-code. |
windows |
Convert to block windows, when Local Host is installed and authorized. |
type real block and put all the configuration inside config. Example: { type: "click-element", config: { seletor: "#botao" } }.Send variables along with the flow
Use dablioroboData to send initial data for the run. This data enters the context of the flow and can be consumed by blocks as variables.
https://www.google.com/?dablioroboWorkflow=BASE64URL_DO_WORKFLOW&dablioroboData=BASE64URL_DAS_VARIAVEIS&runToken=SUA_SENHA&dablioroboOnce=1&dablioroboNow=1
Example 3 — Execute temporary workflow via CustomEvent
Use this format when the page is already open and you want to trigger automation via JavaScript, without reloading the URL.
window.dispatchEvent(new CustomEvent('dabliorobo:execute-workflow', {
detail: {
runToken: 'SUA_SENHA',
workflow: {
nome: 'Fluxo temporário via evento',
ativo: true,
blockDelay: 500,
startBlockId: 'start',
trigger: {
tipo: 'manual',
config: {}
},
blocks: [
{
id: 'start',
type: 'trigger',
config: []
},
{
id: 'aguardar_1s',
type: 'delay',
config: {
ativo: true,
tempoMs: 1000
}
}
],
connections: [
{
from: { blockId: 'start', port: 'default' },
to: { blockId: 'aguardar_1s', port: 'in' }
}
]
},
data: {
cliente: '123',
origem: 'meu-sistema'
}
}
}));
Example 4 — Execute commands via CustomEvent
window.dispatchEvent(new CustomEvent('dabliorobo:execute-workflow', {
detail: {
runToken: 'SUA_SENHA',
commands: [
{
type: 'open',
url: 'https://www.google.com',
wait: true
},
{
type: 'type',
selector: "textarea[name='q'], input[name='q']",
value: 'Dablio Group',
wait: true,
clear: true
},
{
type: 'submit',
selector: "form[action*='/search']",
wait: true
}
],
data: {
origem: 'custom-event'
}
}
}));
Capture execution feedback
After receiving the request, the content script returns the result via the event dabliorobo:execute-workflow:result. This return informs whether the flow was received, whether it was started and what the error was in case of blocking.
window.addEventListener('dabliorobo:execute-workflow:result', function (event) {
console.log('Resultado Dablio Robô:', event.detail);
if (event.detail.ok) {
console.log('Fluxo recebido e iniciado:', event.detail.instanceId);
} else {
console.error('Falha ao iniciar fluxo:', event.detail.error);
}
});
Security validation with runToken
1. User must be authenticated
The robot calls existing session validation. If the session is invalid, expired, or has no local token, execution is blocked.
2. User must have permission
In addition to the valid session, the return from the backend needs to allow flow execution, normally.
3. The execution code must be previously configured in the panel
Before taking any action, the user needs to access their panel and check if they have permission to perform this action and then configure an execution code (and this must be informed in the requests), otherwise the temporary flow is not executed.
Main blocking errors
| Error | When it happens |
|---|---|
RUN_TOKEN_REQUIRED |
A temporary workflow was sent, but the parameter runToken was not informed. |
RUN_TOKEN_INVALID |
The backend did not accept the runToken |
AUTH_REQUIRED |
The user's local session is not valid or the backend refused authentication. |
PERMISSION_DENIED_RUN_WORKFLOW |
The user is authenticated, but does not have permission to run flows. |
WORKFLOW_NOT_FOUND |
Applies to triggers by ID/publicId when the saved stream is not found. It must not occur in a valid temporary workflow. |
runToken as a password. Do not display this value on public pages, shared URLs, screenshots, server logs, browser history or links sent to third parties. For sensitive integrations, prefer to generate the link in an authenticated area of your system and limit its validity in the backend.dablioroboWorkflow to send a complete stream, dablioroboCommands to send simple commands, dablioroboData for variables and runToken to authorize temporary execution on the backend.Trigger
The block Trigger It is the mandatory starting point of any flow. It defines when and how the flow will start. Each flow must have exactly one Trigger.
Defines how and when the flow starts. Supports manual triggering, by interval, day of the week, when visiting a website, on a specific date/time, when opening the browser, by context menu or keyboard shortcut.
Manual
Start the flow by clicking the ▶ button on the Dablio Robô panel. Ideal for tests and specific executions.
By interval
Runs the flow repeatedly every N minutes defined in the field Intervalo (minutos). The counter starts after the first manual run or activation of the flow.
When visiting a website
Fires automatically when the browser accesses a URL that matches the configured pattern. Supports plain text, exact match, Regex and SPA (Single Page Applications) sites with route change detection.
Specific date/time
Schedules the flow to run once on a specified date and time, using local system time.
Day of the week
Runs every week on a fixed day and time — for example, every Monday at 08:00.
When opening the browser
Starts automatically when the browser is opened. Ideal for system startup routines or daily data collection.
Context menu
Adds flow as an option in the right-click menu. It can be filtered by URL and by context: images, links, editable fields, selected text, etc.
Keyboard shortcut
Binds the flow to a key combination (ex: Ctrl+Shift+1). It only works on web pages — not on internal browser pages (chrome://).
| Parameter | Description |
|---|---|
Tipo de disparo |
Manual · By interval · When visiting a website · Specific date/time · Day of the week · When opening the browser · Context menu · Keyboard shortcut |
Intervalo (min) |
Number of minutes between each automatic execution |
URL do site |
URL or part of the URL that triggers the flow when visited |
Considerar exato |
The trigger only fires when the URL is exactly the same |
Usar regex |
Interpret the URL field as a regular expression |
Support SPA |
Also fires when URL changes in Single Page Applications |
Executar automaticamente |
If unchecked, the flow only runs if started manually |
Aguardar carregamento completo |
Starts the flow only after the page load event |
Dia da semana / Data / Hora |
Date and time settings for scheduled shooting |
Atalho de teclado |
Key combination that triggers the flow (ex: CTRL+SHIFT+1) |
Executar automaticamente unchecked to display a floating button on the page, allowing the user to start the flow at the right time.Trigger via JavaScript (CustomEvent)
You can trigger a flow programmatically from any page using the CustomEvent from JavaScript:
chrome:// or chrome-extension:// do not support keyboard shortcuts.Execute a job
Calls another flow as a subroutine. The child flow automatically receives the variables and tables from the parent and, after completing, the parent continues normally along the default path.
Runs another workflow from this point. Automatically shares variables, tables and the target tab between the parent and child flow.
Context Sharing
Variables, tables, and the current target tab are automatically passed to the child. Changes made by the child to variables are visible to the parent upon return.
Recommended use
Ideal for creating libraries of reusable subroutines: login, filling out recurring forms, sending notifications, etc. Multiple flows can call the same subflow.
| Parameter | Description |
|---|---|
Workflow alvo |
Select the flow that will be executed |
{{nomeVariavel}}.Context Sharing
What is shared
The child flow automatically receives all variables, tables, and the current target tab from the parent flow. Changes made by the child to variables are visible to the parent upon return.
Check flow
Checks in real time if another flow is running at this moment. Useful for avoiding parallel executions or waiting for a concurrent stream to finish.
Checks whether a specific flow is currently running. Returns true (running) or false (stopped).
Return
Return true if the flow is running, false otherwise. The result can be saved in a variable.
Use cases
Prevent two flows from accessing the same system at the same time; create control semaphores in complex automations; Monitor the health of automatic flows.
| Parameter | Description |
|---|---|
Origem do fluxo |
Select from list or enter ID manually |
Fluxo / workflowId |
Flow to be checked |
Salvar resultado na variável |
Save true/false in a variable |
Stop flows
Stops the execution of the current flow or other flows in progress. It can terminate with Success status or throw an Error to activate failure handling blocks.
Stops the execution of the current flow or other flows in progress. It may terminate successfully or throw an error.
Stop current flow
Immediately close this flow. Se Throw an error is checked, the status is Error and the configured message appears in the logs.
Stop all flows
For all running instances. The option Except the current stream keeps this one alive while canceling the others.
Stop specific flow
Cancels all instances of a selected flow, without affecting other running flows.
| Parameter | Description |
|---|---|
O que parar |
Current flow · All flows · Specific flow |
Exceto o fluxo atual |
For everyone else, but keep this one alive |
Lançar um erro |
Terminates with Error status instead of Success |
Mensagem de erro |
Message displayed in the logs when closing with an error |
Wait a while
Pauses execution for the configured time before advancing to the next block. Essential for waiting for loads, page animations and time windows between actions.
Pauses flow execution for a configured time in milliseconds before advancing to the next block.
Time in milliseconds
1 second = 1000ms · 500ms = half a second · 3000ms = 3 seconds. Set the minimum time required — too long times slow the flow unnecessarily.
Alternatives to Delay
To wait for a specific element to appear, choose the option Wait for selector in interaction blocks. It is more reliable than a fixed time because it does not depend on estimates.
| Parameter | Description |
|---|---|
Tempo (ms) |
Pause duration in milliseconds (ex: 1000 = 1 second) |
Time reference
500ms= half a second1000ms= 1 second3000ms= 3 seconds60000ms= 1 minute
Export data
Exports data collected by the flow to local files. Supports data tables, individual variables and custom content, with multiple output formats.
Exports collected data (tables, variables, or custom text) to a local file in various formats.
Source: Table
Exports all data from a table created by the flow (e.g. data scraped from a website). Ideal for CSV and JSON.
Source: Variable
Exports the contents of a specific variable. Useful for saving long texts, API responses or captured HTML content.
Source: Custom Content
Assembles the file from a text template with interpolated variables: Nome: {{nome}}, E-mail: {{email}}.
Base64 format for file
Converts a Base64 string (e.g. image or PDF received from API) back to the corresponding binary file.
Choose specific location
Using the browser's file system access API, it saves the file directly to a folder chosen by the user — without going through the default Downloads folder.
| Parameter | Description |
|---|---|
Fonte dos dados |
Data table · Variable · Custom content |
Formato |
JSON · CSV · TXT · HTML · XML · Base64 to File · Custom MIME |
Nome do arquivo |
Output file name. Accepts variables {{var}} |
Escolher local específico |
Saves to a selected folder instead of the default Downloads folder |
Conflito de nome |
Generate unique name · Overwrite · Ask user |
{{data}} in the file name to create single files: relatorio_{{data}}.csv.Available export formats
- JSON — object or array formatted with indentation. Ideal for consuming via API.
- CSV — comma separated worksheet. Compatible with Excel, Sheets and LibreOffice.
- TXT — pure text, one line per record.
- HTML — keeps the captured HTML structure.
- XML — structured format for legacy integrations.
- Base64 to file — converts a Base64 string back to the original binary file (PDF, image, etc.).
- Custom (MIME) — specify any MIME type for unlisted formats.
{{data}} or another date variable in the file name to create timestamp exports: relatorio_{{data}}.csvHTTP Request
Makes HTTP/HTTPS requests to external APIs. Supports all REST verbs, authentication via headers, multiple body formats and response types.
Makes an HTTP request to APIs or external services. Supports all methods, custom headers, body types and receives the response as JSON, text or Base64.
Custom Headers
Add one header per line in the format Chave: Valor. For authentication: Authorization: Bearer {{token}}. Variables are automatically replaced.
Content Types
application/json for standard REST APIs; application/x-www-form-urlencoded for legacy forms; multipart/form-data for uploading files.
Path in JSON
Extracts a specific field from the response without having to process the full JSON. Use dot notation: data.users.0.email — returns the email of the first user in the array.
Base64 Response
Ideal for downloading binary files (PDFs, images, documents) from APIs. The result can be used with the Export Data block to save the file to disk.
| Parameter | Description |
|---|---|
Método |
GET · POST · PUT · PATCH · DELETE · HEAD |
URL |
Full API address. Accepts variables {{var}} |
Tempo limite |
Time in ms to abort the request if it takes too long (0 = disable) |
Cabeçalhos |
One header per line in Key: Value format |
Tipo de conteúdo |
JSON · Form URL Encoded · Multipart · Text · HTML |
Body |
Request body (for POST/PUT/PATCH). Accepts variables |
Tipo de resposta |
JSON (object) · Text (string) · Base64 (binary/file) |
Caminho no JSON |
Extracts part of the JSON using dot notation (ex: data.items.0.id) |
Salvar resposta |
Name of the variable where the result will be stored |
Authorization: Bearer {{meuToken}}
Content-Type: application/json
X-Api-Key: minha-chave-secreta
Data Path
Use dot notation to extract a specific field from the JSON response. For example, for a response like:
- To get the array
valores: writedata.valores - To get the first element: write
data.valores.0 - To get the price of the second item: write
data.valores.1.preco
Sending with Form Data (multipart/form-data)
When the content type is multipart/form-data, the body must follow the pair array format:
Using variables in the request body
For values of type string, wrap the variable in double quotes:
$response in the field Path in data to capture the complete HTTP response, including status, statusText and the raw data.Clipboard
Reads or writes data to the system clipboard (Ctrl+C/Ctrl+V). Useful for transferring data between the stream and the operating system.
Copies text to the system clipboard or reads the current content copied by the user.
Copy
Replaces the current clipboard contents with the configured text. Accepts variables: {{nome}} - {{email}}.
Read
Captures the current clipboard contents and saves it to a stream variable for use in future blocks.
| Parameter | Description |
|---|---|
Ação |
Copy · Read |
Texto |
Text to be copied (for 'copy' action). Accepts variables |
Salvar na variável |
Variable that will receive the read text (for 'read' action) |
Use cases
Copy (write to clipboard)
Replaces the current content with the configured text. Accepts variables {{var}}. Useful for preparing text before pasting into a system that does not respond to the Form block.
Read (capture from clipboard)
Captures the current contents of the clipboard and saves it to a variable. Use to capture data that the user manually copied or that another program placed on the clipboard.
Ctrl+V.Wait for connections
Waits for all previous connected blocks to finish before continuing. Useful for synchronizing parallel streams.
When to use
When multiple parallel blocks converge to a single point in the flow, the block Wait for connections Wait for everyone to finish before continuing. Without it, the flow may advance before all branches are complete.
Block group
Visually groups other blocks within a container to organize and structure the flow. It does not perform any action by itself.
Comment
Visual notepad. Does not perform any actions during the flow. It is used exclusively to document and organize the canvas.
Notification
Displays visual alerts to the user: as native Windows notifications (corner of the screen) or as floating popups within the active page in the browser.
Displays a notification to the user on the Windows operating system and/or as an HTML popup within the active page, with different visual styles.
Browser
Displays a styled toast/popup within the current page. Supports 7 visual styles: standard, success, attention, failure, information and colorful alerts.
Windows
Uses the native Chrome/Edge notifications API, displaying an alert in the bottom right corner of the Windows screen, regardless of the page opened.
Duration
Set 0ms to keep the popup until the user closes it manually — ideal for important messages that shouldn't disappear automatically.
| Parameter | Description |
|---|---|
Título |
Notification title |
Mensagem |
Notification text. Accepts variables {{var}} |
Onde exibir |
Browser only · Windows only · Windows and browser |
Estilo |
Standard · Success (green) · Attention (orange) · Failure (red) · Information (blue) · Alert (purple/brown) |
Duração no navegador (ms) |
Time until the popup disappears (0 = keep until closed) |
Audible alarm
✦ EXCLUSIVEPlays an audible alert to attract the user's attention during or after performing tasks. Useful when the stream runs in the background.
Plays an audible alert for a set time. Useful for signaling completion of important tasks or events.
Types of sound
5 options: Simple Beep (discreet notification), General alert (moderate attention), Success/Completion (task completed), Siren/Urgent (critical errors) and Digital (tech style).
Volume
Scale from 0 (mute) to 100 (maximum volume). The sound is played in the active browser tab.
| Parameter | Description |
|---|---|
Escolha o som |
Simple Beep · General Alert · Success/Completion · Siren/Urgent · Digital |
Duração (segundos) |
How long will the alarm ring? |
Volume (0 a 100) |
Alarm volume level |
Processing
✦ EXCLUSIVEDisplays a semi-transparent overlay with loading indicator over the page, preventing the user from clicking or interacting while the robot works.
Displays a lock screen with loading indicator to prevent user interaction while the flow is running.
Open screen
Locks the interface immediately. Configure the message, colors, and transparency to visually integrate with the target site.
Close screen
Removes the overlap, restoring normal interaction. Use whenever the flow ends or in case of an error.
Keep open when finished
Useful when the flow ends but you want the user to confirm the results before taking back control of the page.
Allow HTML in message
Enables advanced message formatting: bold, links, emojis and even custom progress bars with inline HTML/CSS.
| Parameter | Description |
|---|---|
Ação |
Open processing screen · Close processing |
Mensagem de status |
Text displayed to the user. Accepts variables and HTML |
Tamanho da fonte (px) |
Message text size |
Permitir HTML |
Renders content as HTML instead of plain text |
Cor do texto e spinner |
Message and loading icon color |
Cor de fundo |
Overlay color |
Transparência (%) |
0 = invisible (just blocks), 100 = completely dark |
Manter aberto ao finalizar |
Does not close by itself at the end of the flow — displays CLOSE button |
Exibir botão FECHAR |
Allows the user to unlock the screen at any time |
Show Dialog
✦ EXCLUSIVEDisplays an interactive modal window within the page. It can be simple (information with OK) or a mini-form with text fields, selects and multiple action buttons.
Displays a dialog box on the screen and waits for user action. Supports multiple response buttons, text fields, selects and checkboxes.
Simple mode
Displays title and message with OK (→ default output) and Cancel (→ fallback output) buttons. HTML is allowed in the message.
Quiz mode
Adds custom input fields: text inputs, dropdowns (select), checkboxes and buttons with custom labels. Each button generates its own output in the block.
Save values
The values entered in the fields are automatically saved in the variables configured for each field, available in the following blocks.
| Parameter | Description |
|---|---|
Título |
Optional dialogue title |
Mensagem |
Message text (accepts HTML) |
Modo Questionário |
Enables multiple buttons and input fields |
Campos de diálogo |
Add buttons, inputs, selects and checkboxes dynamically |
Activate tab/window
Defines which browser tab will be the target of the next blocks. Changes the execution context to the tab found by the configured criteria.
Focuses on a specific tab and defines it as the target for all future blocks in the flow.
By URL
Searches for the first tab whose URL contains, is equal to or matches the informed Regex.
By title
Finds the tab by the title displayed in the browser tab.
Next / Previous
Navigate to the tab to the right or left of the current tab, in circular order.
Page saved
Reference a tab by the previously saved name with the option Save ID in blocks like New Tab or New Window.
Focus tab
Brings the tab visually to the front in the browser — useful when the robot needs the tab to be visible to capture screen.
| Parameter | Description |
|---|---|
Encontrar aba por |
Current tab · By URL · Title · Next tab · Previous tab · Index · Open tab · Saved page |
Focar aba/janela |
Brings the tab visually to the front of the screen |
Why is this block needed
Dablio Robô needs to know in which tab to perform each action. This block defines the execution context for all subsequent blocks. Use at the beginning of the flow or whenever you need to change focus to another tab.
New tab
Opens a new tab in the browser with the configured URL and offers full control over window, identification and loading behavior.
Opens a new tab in the browser with advanced window controls, page identification and waiting for complete loading.
Reuse tab
Instead of opening a new tab, it updates the current tab with the new URL. Saves resources and avoids the accumulation of unnecessary tabs in repetitive flows.
Wait for loading
Pauses the flow until the page finishes loading completely (load event). Uncheck only if you want to continue immediately without waiting.
Keep flap behind
Open the tab in the background without stealing visual focus. Ideal for preloading pages while the user continues browsing.
Mute tab
Switches the tab to mute automatically — useful for opening videos or pages with audio autoplay.
Save ID
Saves a name for this tab (ex: 'abaPortal') that can be used as a reference in other blocks in the flow.
| Parameter | Description |
|---|---|
URL |
Address of the page to open. Accepts variables |
Criar na janela |
Current window · Active window · Specific window · By title/URL/saved page |
Reutilizar aba |
Refreshes the existing tab instead of opening a new one |
Aguardar carregamento |
Wait for the page to load completely before continuing |
Manter aba atrás |
Opens without stealing visual focus from the screen |
Silenciar aba |
Mute new tab sounds (videos, notifications) |
Salvar identificação |
Save a name to reference this tab in other blocks |
Reuse tab option
Save resources in loops
When active, the block navigates the current tab instead of opening a new one. Ideal for flows that visit many URLs in sequence — avoids accumulating dozens of open tabs.
Toggle tab/window
Switches the execution focus to another tab already open in the browser, identified by URL, title, index or relative position.
Switch focus to another tab based on URL, title, index, relative position or saved page.
By URL
Searches through all open tabs and activates the first one that matches the pattern. Supports plain, exact or Regex text.
Next / Previous
Useful in loops where you need to process tabs in sequence. Navigate in circular order (after the last one, go to the first).
Fallback output
If the flap is not found, the flow continues through the exit fallback instead of generating an error — allows you to handle the 'tab not found' case gracefully.
| Parameter | Description |
|---|---|
Encontrar aba por |
URL · Title · Next · Previous · Index · Open tab · Saved page |
Definir como aba ativa |
This tab becomes the target of the next actions |
New window
Opens a new browser window, separate from the current tabs. Supports private/incognito mode, popups without address bar and custom dimensions.
Opens a new browser window with advanced options: private/incognito mode, type, initial state and custom dimensions.
Incognito mode
Opens in a private window, without history or cookies from the main session. Requires permission in extension settings.
Popup type
Compact window without tab bar, address or tools — ideal for displaying specific content or simulating opening legacy web systems.
Custom State
Position the window accurately on the screen: top, left, width and height in pixels — useful for monitoring or viewing on multiple monitors.
| Parameter | Description |
|---|---|
URL |
Address to load in the new window |
Janela anônima |
Opens in private mode (requires extension permission) |
Tipo |
Normal · Popup (no tabs) · Panel |
Estado inicial |
Normal · Maximized · Minimized · Fullscreen · Custom (position/size) |
Salvar identificação |
Saves a name to reference the window in other blocks |
Back
Navigates to the previous page in the active tab's history, equivalent to the browser's back button.
Returns to the previous page in the active tab, equivalent to the browser's back button.
Typical usage
Return to the listing after processing a detail item in scraping loops or forms.
Next
Navigates to the next page in the active tab's history (only if it exists), equivalent to the browser's Next button.
Advances to the next page in the active tab, equivalent to the browser's Next button.
Typical usage
Useful in review flows where the user has navigated backwards and the robot needs to resume.
Close tab/page
Closes specific tabs or windows while streaming. It supports multiple selection criteria and can close more than one tab at once.
Closes tabs or windows by criteria: active tab, visible tab, window, by URL, title, index or saved page. Supports multiple close.
By URL
Closes all tabs whose URLs match the pattern. Activate Close multiples to close them all at once; otherwise, it closes only the first one found.
Active tab vs. current tab
Active tab (Work) closes the tab that the stream is using as a target; Current tab (Visible) closes the tab the user is currently viewing.
| Parameter | Description |
|---|---|
O que fechar |
Active tab · Current tab · Active/current window · Specific tab · By title/index/URL/saved page |
Fechar múltiplos |
Closes ALL tabs found with the criteria |
Closing modes
Active tab (Work) vs. Current tab (Visible)
Active tab (Work) closes the tab that the flow is using as its execution context. Current tab (Visible) closes the tab that the user is currently viewing in the browser. These can be different tabs when the robot works in the background.
Screenshot
Captures screen images in 4 modes: visible area of the page, full page with scroll, specific element or complete element with a height greater than the screen.
Takes a screenshot of the visible area, full page, specific element, or full element with scroll.
Full page
Dablio Robô automatically scrolls the page from top to bottom, collecting fragments and assembling the complete image using canvas. Wait for lazy images to load with field Wait (ms).
Specific element
Scrolls and centers the element on the screen before capturing. Use the CSS or XPath selector to identify the exact element.
Complete element (with scroll)
For elements with overflow: scroll — Dablio Robô scrolls within the element to capture all content, even if it is larger than the viewport.
Save to variable
The result is a Base64 string (data:image/png;base64,...) that can be used with OCR, exported as a file, or sent to AI APIs.
| Parameter | Description |
|---|---|
Alvo |
Visible page · Full page · One element · One complete element (with scroll) |
Em qual aba |
Current tab or search by URL/title/index/saved page |
Seletor do elemento |
CSS or XPath selector of the element to capture |
Aguardar (ms) |
Pause after scrolling to load dynamic content |
Salvar no computador |
Download the PNG/JPG file |
Salvar em variável |
Saves the image as Base64 in a variable |
Capture Modes
Visible page (viewport)
Captures only the visible area of the browser window. Fast and requires no scrolling.
Full page
Dablio Robô automatically scrolls the page from top to bottom, captures fragments and assembles a complete image using canvas. Configure the field Wait (ms) between 1000–2000ms to ensure lazy image loading.
Specific element
Scrolls the page until the element is visible and captures only that region. Use CSS or XPath selector to identify the exact element.
Complete element (with internal scroll)
For elements with overflow: scroll, the robot rolls inside the element and stitches the fragments together, capturing all the content even if it is larger than the screen.
Listen browser
Pauses the flow waiting for a specific browser or page event: tab open/close, click, typing, form submission, scroll and more.
Pauses the flow until a specific event occurs in the browser or on a page element.
Tab Events
Waits for a tab to load, be created or closed. Indispensable in flows that open popups or new tabs asynchronously.
Mouse and keyboard events
Waits for user interaction: click anywhere, on a specific element, typing in a field, etc. Turns the robot into a reactive trigger.
Element Monitor
When active, the event is only accepted if it occurs within the configured selector — it ignores the same event in other parts of the page.
Fallback output
If the event does not occur within the time limit, the flow continues through the output fallback, allowing timeouts to be handled without failure.
| Parameter | Description |
|---|---|
Tempo limite (ms) |
If the event does not occur, follow the fallback output |
Evento a escutar |
Tab: load/close/create · Window: create/close · Mouse: click/dblclick/mouseover · Keyboard: keydown/keyup · Form: input/change/focus/blur/submit · Clipboard: copy/cut/paste · Touch · Scroll · Resize · Load |
Monitorar em |
Active tab · By URL · Title · Index · Saved page |
Monitor elemento |
The event must occur within the selected selector |
proxy
Configures a proxy server for all browser navigation, useful for bypassing geographic restrictions or rotating IPs in scraping automations.
Configure a Proxy server (HTTP/HTTPS/SOCKS4/SOCKS5) for the entire browser connection or remove the current configuration.
Set proxy
Configures host, port, protocol and credentials. Affects all browser connections while the proxy is active.
Clear proxy
Removes the proxy configuration and returns to the operating system's default network settings.
Exceptions
Domains listed on List of exceptions (separated by commas) do not go through the proxy: localhost, 127.0.0.1, corporate intranets.
| Parameter | Description |
|---|---|
Ação |
Set Proxy · Clear/Disable |
Protocolo |
HTTP · HTTPS · SOCKS4 · SOCKS5 |
Host/IP |
Proxy server address |
Porta |
Proxy server port |
Usuário/Senha |
Optional authentication credentials |
Lista de exceções |
Domains that do not use proxy (comma separated) |
Configuration
Supported protocols
HTTP, HTTPS, SOCKS4 and SOCKS5. For proxies that require authentication, fill in the fields User and Password. Credentials are automatically sent by the browser.
List of exceptions
Comma separated domains that will not go through the proxy. Always include localhost and 127.0.0.1 to not route local traffic through the proxy.
Toggle Frame
Changes the execution context into a <iframe> on the page. Required when the element you want to interact with is inside an inline frame.
Changes the execution focus to a specific iFrame on the page or back to the main page.
Select frame
After focusing on a frame, all selectors in subsequent blocks look for elements within that frame — not on the main page.
Return to main page
Use the option Return to main page to exit the frame and return to the global page context.
By selector
Dablio Robô finds the element <iframe> in the DOM using the given selector and maps the frameId automatically.
| Parameter | Description |
|---|---|
Modo |
Return to main page · By CSS/XPath selector · By frame URL · By index |
Seletor |
<iframe> element CSS or XPath selector |
URL do frame |
URL pattern to find the frame |
Índice |
Frame position in the list (0 = main) |
How it works
After focusing on a frame, all selectors in the following blocks they start looking for elements within that frame, not on the main page. Use Return to main page to exit the frame and return to the global context.
<iframe> or <frame> in the page structure.Screen display
Controls how the browser window or specific page elements are displayed, useful for screenshots and systems that require full screen.
Changes the display mode: window (normal/maximized/minimized/full screen), full page or expands a specific element.
Window
Changes the state of the window: normal, maximized, minimized or full screen. Useful before a screenshot to ensure full visibility.
Element
Calls the browser's Fullscreen API on a specific element — such as a video player or map — without affecting the rest of the window.
| Parameter | Description |
|---|---|
Alterar |
Current window · Current page · Specific part (element) |
Modo de exibição |
Normal · Maximized · Minimized · Fullscreen |
Seletor do elemento |
To expand a specific element to full screen |
Recharge
Reloads one or more browser tabs, equivalent to F5. Useful for updating data in dashboards or after modifications that require reloading.
Reloads one or more tabs by criteria: active tab, visible, by title, index or URL.
Reload multiple
When searching by URL, select Reload multiple to update all tabs that match the pattern at once.
| Parameter | Description |
|---|---|
Qual aba recarregar |
Active tab · Current tab · Specific · By title/index/URL/saved page |
Recarregar múltiplos |
Reload ALL tabs found with the criteria |
Common uses
- Update dashboards or reports after modifications
- Force data reload on systems with aggressive caching
- Restart a page that got stuck during automation
- Reload multiple monitoring tabs at once
Get URL
Captures the URL and/or title of open tabs and saves them in flow variables for later use.
Gets the URL and/or title of one or more open tabs and saves it in variables.
Active tab
Returns the URL and title of the tab that the flow is currently targeting.
All tabs
Returns arrays with the URLs and titles of all tabs in the current window. Optional filters allow you to select only relevant tabs.
| Parameter | Description |
|---|---|
Modo |
Active tab · All tabs |
Filtros |
URL and title to filter when 'All tabs' is selected |
Variável para URL |
Name of the variable that will receive the URL (or list of URLs) |
Variável para título |
Name of the variable that will receive the title (or list) |
Common uses
- Check which URL the flow is at before performing conditional actions
- Capture the URL after a redirect to extract parameters
- Save history of URLs visited during automation
- Validate that the flow arrived at the expected page before continuing
Cookie
Manages browser cookies for specific websites: reads values, creates/updates or removes session cookies.
Reads, creates, updates or removes cookies from the current website.
Read
Returns the cookie value for the configured variable. Useful for capturing session tokens or saved preferences.
Record
Creates or updates a cookie for the given URL. Use to simulate authentication state or user preferences.
Remove
Deletes the cookie, useful for forcing re-authentication or clearing session state.
| Parameter | Description |
|---|---|
Operação |
Read · Write · Remove |
Nome |
Cookie name |
URL |
URL of the website the cookie belongs to |
Valor |
Value to write (for 'write' operation) |
Variável destino |
Variable that will receive the read value |
Available operations
Read
Captures the value of a cookie by name and URL and saves it to a flow variable. Return null if the cookie does not exist.
Record
Creates or updates a cookie for the specified URL. Useful for simulating session state or setting preferences before accessing a page.
Remove
Deletes the cookie by name and URL. Use to force re-authentication or clear session state between runs.
Download files
Intercepts and manages file downloads: it can wait for a download to start, download directly via URL or extract media (images, videos, audios) from page elements.
Wait for a download to start, download file via direct URL or extract media (img, audio, video) from page elements.
Wait for download
It waits until the browser starts a download (user click or page redirect). Useful for capturing files that the website generates dynamically.
Direct URL
Immediately download the file from the specified URL. Accepts multiple links separated per line.
Media Element
Extracts the src URLs of img, video, audio elements within a selector and downloads them. Activate Multiple to download all found media.
Rename with wildcard
Use * to preserve the original name: fotos/*.jpg saves each image with its original name in the 'photos' folder; relatorio_* keep the name and change the extension.
| Parameter | Description |
|---|---|
Modo |
Wait for a download · Direct URL · Media element |
Seletor do elemento |
Container where to search for media (element mode) |
Múltiplos |
Download all found media |
Aguardar conclusão |
Pause the stream until the download finishes |
Renomear arquivo |
Use * to keep the original name (ex: folder/*.jpg) |
Salvar em local específico |
Set a custom destination folder |
Salvar caminho em variável |
Save the path of the downloaded file |
Rename pattern with wildcard (*)
The character * preserves the original file name and only allows you to change the prefix, suffix or extension:
fotos/*— saves to folder photos keeping the original name*.jpg— keep the name, force JPG extensionrelatorio_*— adds prefix to original namebackup/*.pdf— saved in the backup folder with PDF extension
Click on the element
Clicks on page elements using CSS or XPath selectors. The most used block in web automations.
Click on one or more elements on the page using the CSS or XPath selector, with support for waiting for the element to appear.
CSS Selector
Ex: #botao-salvar, .btn-primary, button[type='submit'], a.menu-link:nth-child(3).
XPath selector
Ex: //button[text()='Salvar'], //input[@placeholder='Buscar']. Use when CSS is not sufficient to identify the element.
Multiple
Clicks on all elements found by the selector in sequence. Useful for closing multiple popups, selecting checkboxes in a list, etc.
Wait for selector
The block waits for the element to appear before clicking. Eliminates the need for a Delay block before clicking.
| Parameter | Description |
|---|---|
Seletor |
CSS or XPath of the element (ex: #btn-save, //button[@type='submit']) |
Múltiplos |
Click on ALL elements found by the selector |
Aguardar seletor |
Wait for the element to appear before clicking |
Tempo máximo (ms) |
Timeout to wait for element |
Supported selectors
CSS Selector
Any valid CSS selector works: #id, .classe, button[type="submit"], ul.menu > li:nth-child(2) > a. Use Dablio Robô's selector tool to capture the selector directly from the page.
XPath selector
Useful when CSS is not enough. Examples: //button[text()='Confirmar'], //input[@placeholder='Buscar']. XPath starts with // or (//.
Get content
Extracts content from page elements: plain text, internal HTML, or form field values. Saves it to a variable for use in subsequent blocks.
Extracts text, internal HTML, or values from page elements. Supports multiple elements (returns array).
innerText vs textContent
innerText returns visible text (respects display:none and formatting). textContent returns all node text, including content hidden by CSS.
Multiple elements
Returns an array (list) with the contents of all found elements. Use with block Browse data to process each item.
Include HTML
Captures innerHTML instead of plain text — useful for extracting HTML structures for further processing.
| Parameter | Description |
|---|---|
Seletor |
CSS or XPath of the target element |
Salvar em variável |
Name of the variable that will receive the value |
Múltiplos elementos |
Captures all found elements as a list |
Incluir tags HTML |
Capture innerHTML instead of plain text |
Usar textContent |
Uses .textContent (raw text) instead of .innerText (visible) |
Aguardar elemento |
Waits for element to appear before capturing |
table with Include HTML active — you will have the full HTML of the table to process.Capture Modes
innerText (default)
Returns only visible text, respecting CSS as display:none. It is the closest behavior to what the user sees on the screen.
textContent
Returns all node text, including content hidden by CSS and whitespace. Useful when the element has hidden text that you need to capture.
innerHTML
Captures the element's internal HTML code. Activate Include HTML tags when you need to process the element structure, not just the text.
Multiple elements
When active, returns a array with the content of all elements found by the selector. Match with block Browse data to process each item individually.
Form
The most versatile block for interacting with forms: fill in text fields, select options, mark checkboxes, click on radio buttons and can extract all data from a form at once.
Interact with forms: fill in text fields, select options from lists, mark checkboxes and radio buttons, or extract data from the form.
Text field
Enter the value in the field. Use Clear field to delete the previous content. Typing delay simulates human typing character by character.
Selection list (select)
Selects by internal value, option text, position (index) or first/last option. Accepts variables for dynamic selection.
Get values
Extracts all form fields at once, returning in JSON, URL Encoded or text format. Ideal for auditing completed forms.
Submit
Click the submit button or call submit() on the form directly.
| Parameter | Description |
|---|---|
Seletor |
CSS of the form field or container |
Aguardar elemento |
Wait for the field to be available |
Múltiplos |
Apply the action to all fields found |
Obter valores |
Extract data from the form instead of filling it out |
Tipo de ação |
Text field · Selection list · Checkbox · Radio · Submit |
Valor |
Text to enter or value to select |
Limpar campo |
Clean content before writing |
Atraso de digitação (ms) |
Time between each character entered |
Modo de seleção |
By value · First option · Last option · By position |
Formato de extração |
JSON · Encoded URL · Text (when getting values) |
Supported field types
Text field (input/textarea)
Fills in the field value. Use Clear content to clear the previous value before typing. The field Typing delay simulates human typing character by character — set between 50–150ms for systems that detect autocomplete.
Selection list (select)
Select an option based on your internal value (attribute value HTML), not the displayed text. To find the correct value, inspect the element with the browser's developer tools (F12 → select the <option> desired).
Checkbox and Radio
The field Select option defines whether the element should be marked (true) or unchecked (false). For radio buttons, selecting one automatically deselects the others in the same group.
Scrolling
Scrolls the page or an element with scrollbar to a specific position or to display an element on the screen.
Scrolls the page or a specific element horizontally and/or vertically, with scrolling support for smooth preview and animation.
Absolute position vs. incremental
No increment: go to the exact X/Y position from the top/left. With increment: adds the value to the current scroll position.
Scroll to view
Automatically scrolls until the target element is visible in the viewport, either up or down — without needing to calculate positions.
Overflow element
To scroll within elements with overflow: scroll (lists, tables, panels), enter the selector in the field Target element.
| Parameter | Description |
|---|---|
Elemento alvo |
CSS/XPath selector of the element to scroll (empty = full page) |
Rolagem horizontal (px) |
Positive = right, negative = left |
Rolagem vertical (px) |
Positive = down, negative = up |
Rolar para visualização |
Scroll until the target element is visible on the screen |
Rolagem suave |
Uses scrolling animation instead of instantaneous |
Incrementar |
Adds to current position instead of going to absolute position |
Scrolling modes
Absolute position vs. incremental
Without incrementing: scrolls to the exact coordinate entered (X/Y from the top left corner). With increment: adds the value to the current position. For example, +300px moves down 300 pixels from where it is.
Scroll Into View
Automatically scrolls the page until the target element is visible in the visible area of the screen, without having to calculate coordinates. Dablio Robô discovers the position of the element on its own.
Overflow elements
To scroll within a container with its own scroll (lists, tables, panels), enter the container's CSS/XPath selector in the field Target element instead of leaving it blank.
Attributes
Reads, sets, or removes HTML attributes from any element. Covers from standard attributes (href, src, class) to custom data attributes (data-id, data-value).
Reads, sets or removes HTML attributes from elements such as href, src, class, style, data-id and any other custom attributes.
Get
Reads the attribute value and saves it in the configured variable. Ex: read the href of a link before clicking, or the data-id of a list item.
Set
Modifies the attribute in the DOM on the fly. Ex: change the src of an image, disable/enable a button via disabled.
Remove
Deletes the attribute completely from the element — useful for removing readonly or disabled of blocked fields.
| Parameter | Description |
|---|---|
Seletor |
CSS or XPath of the target element |
Ação |
Get value · Set value · Delete attribute |
Nome do atributo |
Ex: href, src, class, data-id, placeholder |
Salvar em variável |
Variable that will receive the read value ('get' action) |
Valor a atribuir |
New attribute value. Accepts variables |
Múltiplos |
Applies the action to all found elements |
disabled or readonly, use this block with the action Remove before trying to fill in with the Form block.Most used attributes
href— Link URL, useful for capturing destinations before browsingsrc— path of images, videos and scriptsvalue— current value of hidden fields or inputs that cannot be modified by the Form blockdata-id,data-*— identifiers and metadata embedded by the websitedisabled,readonly— field restrictions; use Remove to unlock themclass,style— visual control of elements
Run JS
Injects and executes JavaScript directly into the page (MAIN world context) or service worker. It has full access to the DOM, flow variables and extension APIs.
Executes JavaScript on the page (page context) or in the background (service worker). Use 'return' to save the result in a stream variable.
Page context
The code executes as if it were part of the page's own JavaScript. It has access to window, document, global page variables and frameworks (React, Vue, etc.).
Background context
Runs on service worker with access to Chrome APIs like chrome.tabs, chrome.storage, chrome.downloads. It does not have access to the DOM.
Flow variables
Use vars.minhaVariavel to read and vars.minhaVariavel = 'valor' to write. Use globals.varGlobal for global variables between streams.
Return
The value of return is saved in the variable configured in Return variable. Supports objects, arrays, numbers and strings.
| Parameter | Description |
|---|---|
Contexto |
In the active tab (page) · Background (service worker) |
Tempo antes de executar (ms) |
Wait before injecting code |
Código JS |
JavaScript running. Has access to vars (flow variables) and globals |
Variável de retorno |
Variable that will receive the 'return' value |
Executar em cada nova aba |
Automatically reruns on new tabs opened |
Executar antes da página |
Injects as soon as the tab starts loading |
async/await — Dablio Robô waits for the Promise to resolve before continuing the flow.// Lê variável do fluxo
const usuario = vars.nomeUsuario;
// Manipula DOM
document.querySelector('#campo-login').value = usuario;
// Faz uma requisição assíncrona
const resp = await fetch('/api/verificar?user=' + usuario);
const dados = await resp.json();
// Salva resultado no fluxo
vars.usuarioAtivo = dados.ativo;
// Retorna para variável configurada
return dados.ultimoAcesso;
Utility functions available in the code
vars — Read and write stream variables
Use vars.nomeVar to read and vars.nomeVar = valor to record. The changed variables are available in all subsequent blocks of the flow.
globals — Global variables across streams
Use globals.nomeVar to access variables shared between multiple streams. Useful for configurations, tokens, or global state of the automation.
return — Return value to a variable
The value returned by return is saved in the variable configured in the field Return variable. Supports any type: string, number, object or array.
async/await directly in the block code. The flow automatically waits for the Promise to resolve before continuing.Trigger event
Triggers DOM events on page elements, simulating interactions that other blocks do not cover. Essential for systems that only respond to native JavaScript events.
Triggers DOM events on page elements: mouse, keyboard, form, clipboard, touch and others, with advanced modifier and coordinate options.
Mouse Events
click, dblclick, mousedown, mouseup, mouseover, contextmenu. Configure the button (left/right/center) and modifier keys (Ctrl, Shift, Alt).
Keyboard Events
keydown, keyup, keypress. Configure key, code and keyCode to simulate specific keys accurately.
Form events
input, change, focus, blur, submit. Useful for forcing field re-validation or triggering JavaScript logic linked to value changes.
Multiple
Fires the event on all elements found by the selector sequentially.
| Parameter | Description |
|---|---|
Seletor |
CSS or XPath of the element that will receive the event |
Evento |
Mouse: click/dblclick/mousedown/mouseover · Keyboard: keydown/keyup/keypress · Form: input/change/focus/blur/submit · Clipboard: copy/cut/paste · Touch · Scroll · Resize |
Botão do mouse |
Left · Center · Right |
Modificadores |
CTRL · SHIFT · ALT · META |
Múltiplos |
Shoot ALL elements found |
Opções avançadas |
bubbles, cancelable, coordinates, key, keyCode, deltaX/Y |
input after filling in the value via JavaScript.When to use this block
Modern frameworks (React, Vue, Angular)
These frameworks control inputs via internal state — filling in the field directly does not trigger the update. After filling in the value via the Form or JavaScript block, fire the event input or change to force the framework to recognize the change.
Hidden validations and listeners
Some sites perform validations or load new fields only when a specific event occurs. Use this block to trigger this behavior programmatically.
Hover
Simulates hovering over a page element (mouseover/hover), revealing dropdown menus, tooltips and content that only appear with the cursor over the element.
Simulates hovering the mouse over a page element (mouseover/hover event), useful for displaying menus, tooltips and dynamic content.
Typical usage
Navigation menus that expand on hover; nested submenus; tooltips with extra information; action buttons that appear when hovering over a table row.
| Parameter | Description |
|---|---|
Seletor |
CSS or XPath of the target element |
Aguardar seletor |
Wait for the element to appear before simulating hover |
Use cases
- Reveal dropdown menus that only appear on hover
- Display tooltips with extra information
- Show action buttons on table rows (edit, delete)
- Enable CSS animations that reveal content
Drag element
Simulates the action of dragging and dropping page elements. Useful for interfaces with Kanban boards, list ordering, sliders and editing tools.
Simulates dragging an element from point A to point B with position, speed and button press settings.
Human simulation
Dablio Robô divides the movement into multiple intermediate steps with configurable interval, simulating the natural movement of the human mouse instead of teleporting.
Anchor points
Configure where on the source element the click will start (center, corners) and where on the destination the item will be dropped. Offsets allow fine-tuning of pixels.
Button pressed
Most drag-and-drops use the left button. Some interfaces use the middle or right button — configure according to expected behavior.
| Parameter | Description |
|---|---|
Botão pressionado |
None · Left · Right · Center |
Seletor de origem |
Element to be dragged |
Seletor de destino |
Element or area where the item will be dropped |
Ponto de origem/destino |
Center · Top left/right · Bottom left/right |
Offsets X/Y |
Additional travel at points of origin and destination |
Passos |
Number of intermediate mouse movements |
Intervalo entre passos (ms) |
Pause between each movement to simulate human drag |
Segurar antes de arrastar (ms) |
Time to hold the button down before moving |
mousedown → mousemove (várias vezes) → mouseup.Send file
Upload files into fields input[type=file], bypassing the limitation that the browser does not allow direct automation of the operating system's file selector.
Uploads files via URL/Base64, local folder, absolute path or simulates click for the user to select manually.
URL or Base64
Provides the file as a public URL or Base64 string. Dablio Robô downloads and injects the file directly into the input without opening the system selector.
Local folder
Select a previously authorized folder on your computer and enter the file name. Dablio Robô automatically reads and injects it.
Absolute path
Provides the full path of the file (C:\Users\arquivo.pdf or URL). Requires local file access permission in extension settings.
Manual
Click the upload button and pause — the user selects the file manually. The flow continues after selection.
| Parameter | Description |
|---|---|
Seletor |
CSS or XPath from input[type=file] |
Aguardar seletor |
Wait for the input to appear |
Múltiplos |
Fill in all found upload fields |
Origem do arquivo |
Manual · URL/Base64 · Local folder · Absolute path |
Supported file sources
Public URL or Base64
Dablio Robô downloads the file from the URL or decodes Base64 and injects directly into the field input[type=file] without opening the operating system selector.
Local folder
Select a folder on your computer (the browser asks for permission once). Enter the name of the file within this folder — accepts variables for dynamic names.
Absolute path
Enter the full path of the file (ex: file:///C:/Users/arquivo.pdf). Requires access permission to file URLs in extension settings.
Manual (click button)
The robot just clicks the upload button and pauses. A notification appears asking the user to select the file manually. The flow resumes after selection.
Press key
Simulates key presses and keyboard shortcuts, or types complete text key by key with configurable timing.
Press a keyboard shortcut (e.g. CTRL+S) or type text key by key, with optional focus on the target element.
Press shortcut
Perform combinations such as Ctrl+S (save), Ctrl+A (select all), F2 (rename), Enter, Escape, Tab. Use the shortcut recorder to capture the desired combination.
Enter text
Enter text character by character with configurable time between keys. Unlike the Form block that sets the value directly, this one simulates real typing.
target element
When configured, Dablio Robô focuses on the element before each key — ensuring that keys are sent to the correct element even if the focus has changed.
| Parameter | Description |
|---|---|
Ação |
Press a shortcut · Enter text |
Tecla/combinação |
Ex: CTRL+SHIFT+1, ALT+Q (use the shortcut recorder) |
Tempo de pressão (ms) |
How long will the key be pressed |
Texto para reproduzir |
Text that will be typed key by key |
Target element |
Selector of the element that will receive focus before each key |
Common shortcuts
Enter— confirm forms and dialogsTab— navigate between fieldsEscape— close modes and menusCtrl+A— select allCtrl+C/Ctrl+V— copy and pasteF2— enter edit mode (Excel, desktop applications)Delete/Backspace— delete selected content
Alt+F4 or Ctrl+Alt+Del cannot be simulated by the extension.Create HTML
Injects custom HTML, CSS, and JavaScript directly into the page in a position relative to the target element. Allows you to visually extend any website without modifying its code.
Inserts HTML, CSS and JavaScript code into the page at a specific position in relation to the target element.
Insertion positions
First/last child: inside element; Previous/later sibling: next to the element; Replace: exchanges the element with the injected content.
tag script
Tags <script> included in HTML are executed immediately after injection. Ideal for adding JavaScript logic to the page.
Run before loading
Inject content into the event loading of the tab, before the page finishes loading — to overwrite original scripts or styles.
| Parameter | Description |
|---|---|
Elemento alvo |
CSS or XPath of the reference element |
Posição |
As first child · As last child · Previous sibling · Next sibling · Replace element |
Executar antes do carregamento |
Injects at the beginning of page load |
HTML/CSS/SCRIPT |
Code to be inserted. <script> tags will be executed |
<div style='position:fixed;bottom:20px;right:20px;z-index:9999;background:#1a6eff;color:white;padding:12px 20px;border-radius:8px;cursor:pointer;font-family:sans-serif;box-shadow:0 4px 20px rgba(26,110,255,0.4)' onclick='window.__dablioExportar()'>💾 Exportar Dados</div>
<script>
window.__dablioExportar = function(){
window.dispatchEvent(new CustomEvent('dablio-export'));
};
</script>
Element exists
Checks whether an element is present in the page's DOM, with configurable multiple retries before completing. Return exists or fallback.
Checks whether an element exists on the page with multiple attempts before going through the success or fallback port.
Attempts
Each attempt waits the configured interval before repeating. If the element appears on any attempt, it immediately returns along the path exists.
Use in loops
Use at the beginning of loops to check if there are still items to process. When the element no longer exists (e.g. 'Next page' button), the loop ends naturally through fallback.
| Parameter | Description |
|---|---|
Seletor |
CSS or XPath of the element to check |
Número de tentativas |
How many checks before concluding that it does not exist |
Intervalo (ms) |
Time between each verification attempt |
Block outputs
Output exists (element found)
The flow follows this path when the element is located in the DOM within the configured number of attempts. Dablio Robô returns on the first successful attempt, without waiting for the others.
Fallback output (not found)
The flow follows this path when all attempts are exhausted without finding the element. Use to handle alternative scenarios: skipping a step, trying a different action, or ending the loop.
Open link
Read the attribute href of a link element and navigates to the destination — more robust than clicking directly as it does not rely on the link's CSS or JavaScript behaviors.
Reads the href attribute of an element and navigates to the link in the same tab, new tab, or new window.
On current page
Navigates within the tab itself, equivalent to setting window.location.href.
New tab
Open the link in a new tab. Activate Set as active tab so that the flow continues in the new tab.
New window
Opens in a separate window with type options (normal/popup) and initial state.
| Parameter | Description |
|---|---|
Seletor |
CSS or XPath of the element or container with link |
Como abrir |
On current page · New tab · New window |
Tipo de janela |
Normal · Popup (no tabs) |
Aguardar elemento |
Wait for the element to appear |
Salvar identificação |
Save a name to reference the tab/window |
File exists?
Checks the existence of a file in a local folder before trying to process it, preventing errors in flows that depend on external files.
Checks whether a file exists in a selected local folder. Supports search by exact name, base name or regular expression.
Search by exact name
If the name includes an extension (e.g. report.pdf), the search is accurate. Without extension, searches for any file with that base name regardless of the extension.
Search by Regex
Allows advanced patterns: ^fatura_\d{8}\.pdf$ finds invoices with a date in the name; .*\.xlsx$ finds any Excel spreadsheet.
| Parameter | Description |
|---|---|
Pasta Local |
Folder where the file will be searched |
Nome do arquivo |
Exact name, base name (without extension) or Regex pattern |
Usar Regex |
Interpret the field as a regular expression |
Conditional
Decision block that compares two values and directs the flow to the path True or False.
Compares two values and directs the flow along the True or False path. Supports literal values, variables, element texts, HTML attributes and JavaScript code.
Basic operators
Equal (==): case insensitive. Equal (SM): sensitive. Different (!=).
Numeric operators
Greater, less, greater or equal, less than or equal — values are converted to numbers automatically.
Text operators
Contains, does not contain (insensitive/sensitive), begins with, ends with.
Regular expression
Tests the 1st value against the Regex of the 2nd. Ex: check CPF format, email, date.
DOM element
Checks existence, visibility (in the DOM and viewport) or attribute value of page elements — without needing a separate selector.
JavaScript code
The 1st value can be a block of JS code that returns true/false for arbitrarily complex logic.
| Parameter | Description |
|---|---|
Tipo do 1º valor |
Literal value · Variable exists · Variable value · JS code · Text/attribute/element visibility |
Operador |
Equal · Not equal · Greater/Less (than) · Greater/Less than or equal · Contains · Does not contain · Starts/Ends with · RegEx |
Tipo do 2º valor |
Value · Variable · Element text/attribute |
Sensível a maiúsculas |
SM versions of operators are case sensitive |
return vars.x > 10 && vars.status === 'ativo';Available operators
- Equal (==) — case-insensitive comparison. "John" == "John" → true.
- Equal (Sensitive) — exact comparison, case sensitive.
- Contains / Does not contain — checks whether the first value includes the second.
- Starts with / Ends with — checks the prefix or suffix of the text.
- Biggest / Smallest / ≥ / ≤ — numerical comparison. Values are converted to numbers automatically.
- RegEx — tests the first value against a regular expression. Example:
^\d{3}\.\d{3}\.\d{3}-\d{2}$validates CPF. - Element exists/visible — checks presence or visibility of a selector on the page, without a second value.
- JS Code — executes JavaScript code that returns true/false for arbitrary logic.
return vars.x > 10 && vars.status === 'ativo';Cycle through elements
Iterates over all elements found by a selector, executing the internal blocks for each. The equivalent of forEach in web automation.
Cycles through all occurrences of a CSS/XPath selector executing the inner blocks for each element found.
Loop identifier
Each element receives the attribute wRobo-loop='nome_N' (where N is the index). Use the selector [wRobo-loop='nome_0'] inside the loop to specifically interact with the current element.
Maximum occurrences
Limits the number of iterations — useful when a page has hundreds of elements but you only want to process the first N.
Reverse order
Processes elements from bottom to top — necessary when removing items or pagination affects indexes.
| Parameter | Description |
|---|---|
Seletor |
CSS or XPath that returns the list of elements |
Aguardar elemento |
Wait for the elements to appear |
Inverter ordem |
Starts from the last element to the first |
Máximo de ocorrências |
Limits the number of iterations (0 = all) |
Identificador personalizado |
Adds wRobo-loop attribute to each element to reference it |
table tbody tr) and inside the loop select the cells ([wRobo-loop='linha_N'] td:nth-child(2)) to access each column.Loop identifier
Dablio Robô automatically adds the attribute wRobo-loop on each element encountered during the loop. Use this attribute on inner blocks to specifically interact with the current element:
table tbody tr and inside the loop access the columns with [wRobo-loop="linha_N"] td:nth-child(X).Repeat tasks
Repeats internal blocks a fixed number of times. The equivalent of a loop for(i=0; i<N; i++).
Repeats internal blocks a set number of times.
Automatic counter
Dablio Robô automatically injects the variable {{loopIndex}} with the current index (0-based) within each iteration.
Interrupt with Stop repeat
Use the block Stop repeat inside the loop to exit before completing all iterations when a condition is met.
| Parameter | Description |
|---|---|
Repetir quantas vezes |
Number of loop iterations |
https://site.com/lista?page={{pagina}}.Automatic index variable
Dablio Robô automatically injects the variable {{loopIndex}} within each iteration, starting at 0. Use to build dynamic URLs, file names, or conditional logic based on the current iteration:
Browse data
Iterates over lists of data: variable arrays, numeric ranges, or custom JSON data. The current item is accessible via the configured variable.
Iterates through a list (variable array, sequential numbers, or JSON data) repeating the internal blocks for each item.
Source: Variable
Iterates over an array saved in a variable (e.g. list of emails, list of CNPJs). The current item variable is accessible as {{loopItem}}.
Source: Numbers
Generates a sequence of integers from start to end value. {{loopItem}} contains the current number.
Source: JSON
Iterates over a JSON array defined directly in the block. Each item is an object with configured properties.
Home index
Skip the first N items — useful for resuming interrupted processing.
| Parameter | Description |
|---|---|
Fonte de dados |
Variable · Numbers · JSON |
ID do loop |
Name of the variable that will receive the current item (ex: {{loopItem}}) |
Do número / Até o número |
Range for 'Numbers' mode |
Dados JSON |
JSON in [{key, value}] format for JSON mode |
Inverter ordem |
Starts with the last item in the list |
Índice inicial |
Starts from the given index |
Máximo de ocorrências |
Limits the number of iterations (0 = all) |
Supported data sources
Variable (Array)
Iterates over an array saved in a stream variable. The current item is available in {{loopItem}} and the index in {{loopIndex}} inside the loop.
Numeric range
Generates a sequence of numbers from start to end value. Ideal for browsing numbered pages or repeating N times with index control.
Custom JSON
Defines a JSON array directly in the block. Each item can be an object with multiple properties, accessed within the loop as {{loopItem.propriedade}}.
Stop repeat
Immediately breaks the nearest loop (Repeat Tasks, Traverse Data, or Traverse Elements) and continues the flow after the loop block.
Immediately stops the nearest loop or repetition (Repeat tasks, Cycle through data, or Cycle through elements).
Use with Conditional
Combine with a block Conditional to exit the loop when a condition is met, such as 'if price is greater than X, stop searching'.
Difference between Stop Replay and Stop Streams
- Stop repeat — interrupts only the nearest loop. The flow continues normally after the loop block.
- Stop flows — ends execution of the entire stream (or other streams). Use only when you want to finish everything.
Enter data
The most straightforward variable creation block: sets the value of a variable, adds data to a stream table, or reads contents from files.
Populates variables, stream tables, or local storage tables. Accepts manual text, variables and file contents.
Variable
Sets or overrides the value of a variable. The Data field accepts free text, interpolated variables ({{nome}}) and expressions.
Flow table
Adds a row of data to the specified table, one column at a time. Combine multiple Insert Data blocks to build complete records.
Report file
Reads the contents of a local file or URL and stores it in a variable. Supports plain text and Base64 conversion for binary files.
| Parameter | Description |
|---|---|
Aplicar em |
Variable · Flow table · Storage table |
Nome da variável |
Target variable (variable mode) |
Dados |
Content to insert. Accepts variables {{var}} |
Informar arquivo |
Reads content from a local file or URL |
Formato |
Pattern (text) · Convert to Base64 |
vars.objeto = {id: vars.id, nome: vars.nome};Available destinations
Flow variable
Creates or replaces the value of a variable. Accepts free text, interpolated variables {{var}} and any type of data: strings, numbers, arrays or JSON objects.
Flow table
Adds a row of data to the flow's internal table (column by column). Use multiple blocks Enter data in sequence to build complete records before exporting with the block Export data.
Local file (URL or path)
Reads the contents of a computer file or a public URL and stores it in a variable. Activate Convert to Base64 for binary files like PDFs and images.
Set data
Transforms and extracts data from existing variables: string slicing, extraction by content type and regular expressions.
Creates, updates, or extracts parts of content into a new variable. Supports text/data slicing, extraction by type and regular expressions.
Text slice
Extracts a substring by position: start and end in character index. Ex: extract the first 4 digits of a ZIP code (0 to 4).
Data slice
For arrays and objects, extract by index. Ex: picking the first 3 items from a list.
Extract numbers/text
Filters only the digits or only the alphabetic characters in a string. Useful for clearing CPF/CNPJ/phone number.
RegEx Expression
Extracts text that matches the pattern. Activate Multiple to return all occurrences as array. Activate Replace to replace rather than extract.
| Parameter | Description |
|---|---|
Valor/Conteúdo |
Source text or variable {{var}} |
Tratamento |
None · Extract index from text (slice) · Extract index from data · Extract numbers · Extract text · RegEx expression |
Início / Final |
Positions for slice operations |
RegEx |
Regular expression for extraction or replacement |
Substituir |
Replaces the found snippet instead of extracting |
Nome da variável |
Variable that will receive the result |
123.456.789-09 → 12345678909), use the treatment Extract only numbers.Available text treatments
Text slice (index extraction)
Extracts a substring by character position. Index 0 = start, negative index = from end. Example: extract the first 8 digits of a date 20240115 → index 0 to 4 returns 2024.
Extract only numbers
Removes all non-numeric characters. Useful for clearing CPF, CNPJ, telephone number and ZIP code: 123.456.789-09 → 12345678909.
Regular Expression (RegEx)
Extracts or replaces parts of text using patterns. Activate Multiple to return all occurrences as array. Activate Replace to exchange the found pattern with another text.
Increment variable
Increments or decrements a numeric value of a variable by a configured amount. The simplest block for creating counters.
Increments or decrements the numerical value of a variable by a given value.
Loop Counter
Create a variable pagina with value 1 and increment by 1 at each iteration to navigate through numbered pages.
Negative value
To decrement, configure a positive value — Dablio Robô will always add this value to the current one. To subtract, use the block Calculator.
| Parameter | Description |
|---|---|
Variável |
Name of the variable to increment |
Valor incremento |
Value to add (positive) or subtract (negative) |
Use as a loop counter
Classic pattern for browsing numbered pages:
Delete data
Removes a variable from stream memory. Useful for freeing up space in long streams or ensuring variables don't carry values from previous iterations.
Removes a variable or data from memory during flow execution.
Nested paths
Supports dot notation to remove properties from objects: usuario.senha only removes the password field from the user object.
| Parameter | Description |
|---|---|
Dados de |
Variable · Table |
Nome da variável |
Variable to be deleted. Supports nested paths (ex: obj.campo) |
Nested paths
Use dot notation to remove just one property from an object, without deleting the entire object:
usuario— removes the variable user completelyusuario.senha— removes only the field password of the object userlista.0— removes the first item from the array list
Calculator
✦ EXCLUSIVEPerforms mathematical calculations with support for specialized functions for Brazilian business scenarios, including currency formatting in Real (BRL).
Performs mathematical calculations with standard operators and specialized functions, including Brazilian currency conversion.
Basic operators
+ sum, - subtraction, * multiplication, / division, ^ power, % module (remainder of the division).
Rounding Functions
Calc.arredonda(valor, casas) — standard mathematical rounding. Calc.arredondaBaixo — always down (floor). Calc.arredondaCima — always upwards (ceil).
Currency Functions
Calc.valorBRL(1500.5, 2) → '1.500,50' — formats number to the Brazilian standard. Calc.valorUSD('1.500,50', 2) → 1500.50 — converts BRL text to number.
Statistical functions
Calc.max(a, b, c...) — highest value among arguments. Calc.min(a, b, c...) — lower value.
| Parameter | Description |
|---|---|
Expressão matemática |
Ex: Calc.max({{v1}}, {{v2}}, 50) + 10.50 |
Funções disponíveis |
Calc.max · Calc.min · Calc.rounded · Calc.roundedBow · Calc.roundedUp · Calc.removeDecimals · Calc.turnPositive · Calc.rootSquare · Calculation.power · Calc.random · Calc.sine · Calc.cosine · Calc.tangent · Calc.logarithm · Calc.valueBRL · Calc.valueUSD |
Variável de retorno |
Variable that will receive the result |
Casas decimais |
Rounding of the final result |
Calc.max({{preco1}}, {{preco2}}, {{preco3}}). Variables are replaced before calculation.// Calcular valor com desconto e formatar em BRL
Calc.valorBRL({{valor}} * (1 - {{desconto}} / 100), 2)
// Calcular juros compostos
Calc.arredonda({{principal}} * Calc.potencia(1 + {{taxa}}/100, {{meses}}), 2)
// Maior entre dois preços e aplicar margem
Calc.max({{precoA}}, {{precoB}}) * 1.15
Convert data
✦ EXCLUSIVEData conversion center: transforms between file formats, data types and textual representations.
Multi-format converter: files and URLs to Base64, JSON parse/stringify, text to number/integer, date formatting and Base64 decoding.
File → Base64
Converts files from public URL, local folder or absolute path to Base64 string, ready for sending via APIs, WhatsApp or email.
JSON parse/stringify
Converts JSON strings to JavaScript objects (parse) or objects to JSON text (stringify). Use after receiving responses from APIs as text.
Text → Number
Converts strings like '42.5' or '1,234.56' (BRL format) to numbers. Required before using values in calculations.
Format date
Transforms timestamps or ISO dates to the configured format: DD/MM/YYYY, YYYY-MM-DD HH:mm:ss, etc.
Decode Base64
Converts a Base64 string back to text. Useful for reading contents of files received as Base64 from APIs.
| Parameter | Description |
|---|---|
Tipo de conversão |
Text→Base64 · URL→Base64 · Local file→Base64 · Absolute path→Base64 · File (input)→Base64 · Object→Text · JSON parse · JSON stringify · Text→Number · Text→Integer · Format date · Decode Base64 |
Conteúdo/Variável |
Data to be converted |
Origem do arquivo |
For file conversions: local folder, URL, absolute path |
Formato de data |
Output mask: YYYY, MM, DD, HH, mm, ss |
Variável de retorno |
Variable that will receive the result |
Calc.valorBRL().Full integration with WhatsApp Web using the WA-JS library. No paid API, no mandatory Business account — works with any number with WhatsApp Web active in the browser.
Send automatic messages via WhatsApp Web using WA-JS or manual mode. Supports text, image, video, audio, document and status posting.
Check WhatsApp
Confirm that WhatsApp Web is logged in. Optionally validates that the connected account is the configured number — ensures that the robot is sending from the correct account.
Send text (WA-JS mode)
Sends messages directly via WA-JS to the specified recipient (number with area code + 55, e.g. 5511999999999). WhatsApp can be open or in the background.
Send text (manual mode)
Opens a temporary popup window with the URL web.whatsapp.com/send?phone=..., click the Send button and close the window. Fallback for when WA-JS is not available.
Send file
Supports image, video, audio and documents. The file can come from public URL, Base64, local folder or absolute path. Accepts custom caption and name.
Single view
For images: send as a single-view message — the recipient can only see it once before it disappears. Similar to the app's native feature.
Status
Publish content on WhatsApp Status (Stories). Supports text with background color and images with caption.
| Parameter | Description |
|---|---|
Ação |
Check WhatsApp · Send Text · Send Image · Send Video · Send Audio · Send Document · Text Status · Image Status |
Destinatário |
Telephone with area code (ex: 5511999999999) or chatId (@c.us) |
Mensagem |
Text to send. Accepts variables {{var}} |
Origem do arquivo |
URL/Base64 · Local folder · Absolute path · Local file |
Visualização única |
Send image with single view (disappears after viewing) |
Mensagem de voz |
Send audio as a voice message instead of a file |
Abrir/Fechar/Focar WhatsApp |
Control the WhatsApp Web tab |
Verificar conta |
Confirms that the connected account matches the number entered |
Facebook authentication verification and automation. Detects login status via session cookies and page DOM.
Checks if Facebook is logged in in the browser and automatically logs in with email/phone and password.
Login verification
Analyzes cookies (c_user), interface elements and URL to accurately determine whether the user is authenticated.
Automatic login
Fill in the email and password fields and click enter. Supports 'Use another profile' flow when multiple accounts are detected.
| Parameter | Description |
|---|---|
Ação |
Verify Facebook · Facebook Graph API |
Fazer login |
Performs automatic login if not logged in |
E-mail/Telefone |
Access credentials. Accepts variables |
Senha |
Facebook password. Accepts variables |
Aguardar após entrar (ms) |
Time for login to complete before verification |
Abrir Facebook |
Do not open · New window · New tab |
Messenger
✦ EXCLUSIVEAuthentication verification and automation in Messenger Web. Includes handling of conversation history restoration PIN modal.
Checks whether Messenger is logged in, performs automatic login, and supports chat history restoration PIN.
Reset PIN
When Messenger asks for PIN to restore encrypted chat history, WROBOBRANDOONE can automatically enter or dismiss the modal by clicking 'Continue without restoring'.
| Parameter | Description |
|---|---|
Ação |
Check Messenger · Messenger Graph API |
Fazer login |
Performs automatic login if not logged in |
E-mail/Telefone / Senha |
Access credentials |
PIN |
History restore PIN (if requested) |
Abrir Messenger |
Do not open · New window · New tab |
Authentication verification and automation on Instagram Web. Detects login via session cookie (sessionid) and interface elements.
Checks if Instagram is logged in to the browser and automatically logs in with email/username/phone number and password.
Post login
After successful login, Dablio Robô automatically handles the 'Save login information?' clicking 'Not now', avoiding blockages in the flow.
| Parameter | Description |
|---|---|
Ação |
Verify Instagram · Instagram Graph API |
Fazer login |
Performs automatic login if not logged in |
E-mail/Telefone / Senha |
Access credentials |
Abrir Instagram |
Do not open · New window · New tab |
Telegram
✦ EXCLUSIVEAuthentication check on Telegram Web. Analyzes localStorage and cookies to determine login status and validate account phone number.
Checks whether Telegram Web is logged in, with optional specific phone number validation.
Number validation
Enter a phone number to check if the account connected to Telegram Web matches. Supports multiple formats: with country code, without code, etc.
| Parameter | Description |
|---|---|
Telefone |
Number to check (ex: 559912345678). Accepts variables |
Aguardar após login (ms) |
Time for page to load |
Abrir Telegram |
Do not open · New window · New tab |
Google Sheets
Direct integration with Google Sheets for reading and writing data in spreadsheets.
Read or write data to a Google Sheets spreadsheet via API integration.
Read data
Returns data from a range of cells as an array for processing in the stream.
Append
Adds new rows to the end of the worksheet without overwriting existing data.
| Parameter | Description |
|---|---|
ID da planilha |
ID extracted from spreadsheet URL |
Range |
Cell range (ex: A1:D10) |
Modo |
Read · Append (add lines) |
Authentication required
Available operations
Read data
Returns data from a range of cells as an array for use in subsequent blocks. Combine with Browse data to process line by line.
Add (Append)
Inserts new rows at the end of the spreadsheet without overwriting existing data. Ideal for accumulating scraping results over time.
OCR: Read images
Integration with Google Cloud Vision API for OCR (text recognition in images) and other computer vision analyses.
Sends an image to the Google Cloud Vision API for OCR, detection of labels, objects, faces, logos and security analysis.
Simple vs. Simple OCR document
Simple OCR is for images with sparse text. OCR Document is optimized for dense documents such as forms, scanned PDFs and invoices.
Other types of detection
Labels (object categorization), Face detection, Company logos, Tourist attractions, SafeSearch (inappropriate content) and Web Detection (reverse search).
Result
For OCR, returns the extracted text as a string. For other types, returns the full JSON from the API for processing with the block Set data.
| Parameter | Description |
|---|---|
API Key |
Google Cloud Vision API Key |
Origem do arquivo |
Manual · URL/Base64 · Local folder · Absolute path |
Tipo |
Simple OCR · Document OCR · Labels · Objects · Face · Logo · SafeSearch · Web detection... |
Máx. resultados |
Maximum number of detection results |
Variável de retorno |
For OCR, saves the extracted text; for other types, save the full JSON |
Google Document AI
✦ EXCLUSIVEAdvanced document processing with Google Cloud Document AI. Uses specialized Processors to extract structured fields from invoices, contracts, identities and forms.
Send documents (PDF or image) to Google Cloud Document AI for advanced processing with configured Processors.
Processors
Each Processor is trained for a type of document. Create and configure in the Google Cloud Console before using in WROBOBRANDOONE.
Access Token
Unlike Vision API, Document AI requires OAuth 2.0 authentication (not API Key). Use the Bearer token obtained via Google Auth.
Result
For OCR, returns the full text. For Form Parser and Invoice Parser, returns structured JSON with extracted fields and their values.
| Parameter | Description |
|---|---|
Access Token (OAuth) |
Token Bearer OAuth 2.0 with Document AI permission |
Project ID |
Project ID in Google Cloud |
Location |
us · me |
Processor ID |
Processor ID created in the Document AI console |
Processor Version |
Specific processor version (optional) |
Origem do arquivo |
Manual · URL/Base64 · Local folder · Absolute path |
MIME Type |
application/pdf image/png image/jpeg |
Variável de retorno |
For OCR, save the text; for parsers, save the JSON |
N8N
✦ EXCLUSIVEBidirectional integration with the N8N to trigger more complex automation flows or integrate with the hundreds of connectors available on the N8N.
Run an existing flow via webhook or create and run a new flow on the N8N with the option to automatically delete it after use.
Run existing flow
Sends an HTTP request to the webhook of a flow already created and configured on the N8N. Configure method, headers and body as the webhook expects.
Create and run flow
Creates a new flow in N8N via API, activates it, triggers the webhook and optionally deletes the flow after execution. Ideal for temporary or dynamic flows.
Wait for return
Dablio Robô waits for N8N's response before continuing. Configure the timeout according to the estimated duration of the flow on the N8N.
| Parameter | Description |
|---|---|
Modo |
Run N8N flow (webhook) · Create new flow in N8N |
URL do webhook |
Full URL of existing stream |
Método HTTP |
GET · POST · PUT · PATCH · DELETE |
Cabeçalhos/Body |
Request headers and body |
Aguardar retorno |
Pause the stream until N8N responds |
JSON do novo fluxo |
JSON exported from N8N to create the flow (creation mode) |
Executar fluxo criado |
Trigger the webhook after creating |
Manter salvo no N8N |
If unchecked, deletes the flow after execution |
Salvar retorno |
Variable that will receive the response |
Send Email
Sends emails via backend API configured on the server. Supports HTML, multiple recipients and flow variables in content.
Sends email through a configured backend API, supporting HTML and multiple recipients.
HTML in the body
The Message field accepts full HTML—use to create emails formatted with tables, images, inline styles, and clickable links.
Multiple recipients
In the Cc field, separate the emails with a comma for copying to multiple recipients simultaneously.
| Parameter | Description |
|---|---|
De (remetente) |
Sender email (must match backend account) |
Para (destinatário) |
Recipient email |
Cc |
Copy — multiple emails separated by comma |
Assunto |
Email subject. Accepts variables |
Mensagem |
Email body in HTML or text. Accepts variables |
<p>Total processado hoje: <strong>{{total}}</strong></p>Artificial Intelligence
✦ EXCLUSIVEIntegration with Artificial Intelligence models from major providers. Ideal for classification, summarization, information extraction, text generation and content-based decision making.
Integration with AI models: ChatGPT (OpenAI), DeepSeek and Gemini (Google). Configure the context, requirements, and prompt for intelligent responses.
OpenAI (ChatGPT)
GPT-5, GPT-4.1 models and variants. Use Requirements as a system prompt to define the AI role and context, and Prompt for the content to be processed.
DeepSeek
V3.1 (standard) and V3.1-Think (extended reasoning) models. Excellent cost-benefit for text analysis tasks in Portuguese.
Google Gemini
2.5 Flash and Pro models. Flash is faster and more economical; Pro is more capable for complex tasks.
Use case: extraction
Configure the Requirement like: 'You are a data extractor. Return only JSON without markdown formatting.' — the block saves the JSON to the variable for immediate use.
| Parameter | Description |
|---|---|
Fornecedor |
OpenAI (ChatGPT) · DeepSeek · Google (Gemini) |
Modelo |
GPT-5/4.1/o3 · DeepSeek-V3.1 · Gemini 2.5 flash/pro |
Requisitos/Contexto |
System instructions that define the role and behavior of the AI |
Prompt |
Question or content to process. Accepts variables {{var}} |
Variável de resposta |
Variable that will receive the AI response |
Analise o seguinte texto e extraia o valor total da fatura: {{textoCapturado}}Windows
✦ EXCLUSIVEExclusive Dablio Robô block that expands automation to the Windows operating system level, controlling any desktop application beyond the browser.
Sends automation commands to the Local Host installed on Windows. Allows you to control the operating system in addition to the browser: mouse, keyboard, windows, processes, screen OCR, PowerShell and much more.
Move and click
Controls the mouse cursor in absolute screen coordinates. Use together with mode Capture position to discover the coordinates of elements in legacy systems.
Enter text
Simulates typing in any active window or field in the system. It works on ERPs, terminals, Java applications, legacy systems that do not have an API.
Window/process exists?
Checks by title (supports Regex) or process name (.exe). Returns window coordinates if enabled Return coordinates.
Find element on screen (UI)
Finds interface elements using the Windows Accessibility API (UIAutomation). For Java systems, enable Java Access Bridge (JAB).
Find text on screen (OCR)
Captures the screen and uses optical character recognition to find text. It works in any application, including those that do not expose accessibility elements.
PowerShell
Runs full PS1 scripts with full system access. The result (stdout) can be captured in a stream variable.
Multi-actions
Defines a JSON array with multiple actions in sequence: more efficient than using several separate blocks for login on desktop systems.
| Parameter | Description |
|---|---|
Ação |
Connection test (Ping) · Move mouse · Click · Type text · Press ENTER · Wait (sleep) · Scroll (scroll) · Capture position · Shut down computer · Cancel shutdown · Window/process exists? · Find element on screen (UI) · Find text on screen (OCR) · Open/run file · PowerShell · Multi-actions · Custom commands |
Coordenadas X/Y |
Position on screen for mouse actions |
Botão do mouse |
Left · Right |
Número de cliques |
Single, double or personalized |
Texto |
Text to enter into the system |
Título da janela |
Text or Regex to identify the window |
Nome do processo |
Ex: SistemaXYZ.exe |
Usar JAB |
Enables Java Access Bridge for Java applications |
Aguardar retorno |
Pauses the stream until it receives a response from the Host |
Variável de retorno |
Variable that will receive the response from the Host |
[
{"cmd":"move", "x":450, "y":320},
{"cmd":"click", "x":450, "y":320, "button":"left", "clicks":1},
{"cmd":"sleep", "ms":800},
{"cmd":"type", "text":"{{usuario}}"},
{"cmd":"type", "text":"\t"},
{"cmd":"type", "text":"{{senha}}", "enter":true}
]
CAPTCHA
✦ EXCLUSIVEComplete CAPTCHA management: detect, wait for manual resolution or resolve automatically via AI with a high success rate.
Detects the presence of CAPTCHA on the page and waits to be solved manually or automatically via AI. Supports the main types on the market.
Automatic detection
Identifies reCAPTCHA v2/v3, hCaptcha, Cloudflare Turnstile, FunCaptcha, GeeTest, Amazon WAF, DataDome, and more without manual configuration.
Wait for manual resolution
Focus on the tab (bring it to the front) and wait until the CAPTCHA disappears from the DOM or the response token is filled. Saves the CAPTCHA coordinates in a variable if necessary.
Automatic resolution
Detects the necessary parameters (SiteKey, pageURL, User-Agent) automatically on the page. Sends it to the AI service and injects the response token into the correct field.
Custom selector
For unmapped CAPTCHAs: enter the CSS/XPath selector of the CAPTCHA element. The block waits until the selector disappears, or configure a 'resolved CAPTCHA' selector that should appear.
Outputs
true: CAPTCHA has been detected and solved. false: timeout or unresolved. default: No CAPTCHA was detected on the page.
| Parameter | Description |
|---|---|
Tipo |
Auto (detects) · reCAPTCHA v2/v3 · hCaptcha · Cloudflare Turnstile · FunCaptcha · GeeTest v3/v4 · Amazon WAF · DataDome · CyberSiara · Imperva · MtCaptcha · Friendly · Tencent · Capy · CutCaptcha · Lemin · Custom |
Tempo máx. espera (ms) |
Time to wait for manual resolution |
Intervalo de verificação (ms) |
Frequency of checking whether the CAPTCHA is still present |
Focar aba quando detectar |
Brings the tab forward for the user to solve |
Resolver automaticamente |
Uses AI with high success rate (requires credits) |
Timeout de resolução (seg) |
Maximum time for AI to automatically resolve |
Parâmetros manuais |
SiteKey, pageURL, UserAgent and specific fields of each type |
Salvar resposta |
Saves response token to variable for manual injection |
PDF to Image
✦ EXCLUSIVEConvert PDF pages to PNG or JPG images using PDF.js, directly in the browser. Useful for extracting images from documents or preparing PDFs for OCR.
Converts a specific page of a PDF to a PNG or JPG image using PDF.js, with scaling quality control.
Scale/Quality
1.0 = native resolution. 2.0 = double the resolution (ideal for OCR). 3.0 = high resolution for printing. The larger it is, the larger the resulting file.
Save to variable
Returns the image as Base64 for use with OCR (Google Vision), sending via WhatsApp, API or exporting as a file.
Specific page
Enter the page number to convert (1 = first). To convert all pages, match the block Browse data iterating from 1 to the total number of pages.
| Parameter | Description |
|---|---|
Origem do PDF |
Manual · URL/Base64 · Local folder · Absolute path |
Número da página |
Which page to convert (1 = first) |
Escala/Qualidade |
1.0 = original, 2.0 = double the resolution (more quality) |
Formato |
PNG (best quality) · JPG (smallest size) |
Destino |
Save Base64 to variable · Download file |
Database Connection
✦ EXCLUSIVEDirect connection to databases to execute SQL queries, insertion and retrieval of data during automation.
Executes SQL queries on databases connected to the system.
Configuration
Connect databases in Dablio Robô settings. Multiple connections can be configured for different environments (dev, prod).
Result
The data returned by the query is saved in the variable configured as an array of objects, ready for iteration with the loop blocks.
| Parameter | Description |
|---|---|
Banco de dados |
Select the configured connection |
Consulta SQL |
SQL query to be executed |
Variável de resposta |
Variable that will receive the results |
Excel
Advanced reading and writing in Excel files (XLS, XLSX, ODS, XLSB) with support for multiple processing engines.
Reading, writing and advanced utilities for Excel files. Supports multiple read/write engines and XLS, XLSX, ODS and XLSB formats.
List tabs
Returns the names of all tabs in the worksheet as a list. Useful for dynamically processing spreadsheets with a variable number of tabs.
Read data (Excel Input)
Reads data from a specific tab in a configurable range, with options to handle headers, empty lines, encoding and errors.
Export (Excel Output)
Creates a new Excel file with the flow data. Supports templates, tab protection, automatic column adjustment and dynamic names with date/time.
Advanced writing (Excel Writer)
Writes to specific cells of an existing file, with fine control of position (start cell), conflict behavior and style preservation.
| Parameter | Description |
|---|---|
Recurso |
List tabs · Read data (Excel Input) · Export (Excel Output) · Advanced writing (Excel Writer) |
Caminho do arquivo |
Full path of the Excel file |
Motor |
XLS (JXL) · XLSX (POI) · XLSX Streaming · ODS · XLSB |
Aba |
Name or index of the tab to process |
Linha/coluna inicial |
Starting point for reading or writing |
Cabeçalho |
Ignore or include first line as header |
Formato de saída |
Name, extension, split, protection and template settings |
Antivirus
✦ EXCLUSIVEIntegration with VirusTotal (Google) to check the security of files, URLs and hashes before processing them in automation.
Scans file, URL or hash on VirusTotal (Google) and returns full security report with configurable blocking policy.
Check hash
Checks MD5, SHA1 or SHA256 of a file. If the file is not in the VirusTotal database, it returns undefined results.
Check URL
Analyzes whether a URL is malicious. Returns the report with detections by antivirus engine.
Blocking policy
Configure thresholds: if ≥ N engines detect it as malicious or suspicious, the block goes through the fallback output, allowing the file to be treated as a threat.
| Parameter | Description |
|---|---|
Ação |
Check hash · Check URL · Check file |
API Key VirusTotal |
VirusTotal Service API Key |
Hash |
MD5, SHA1 or SHA256 of the file |
URL |
Address to check |
Limite de detecções maliciosas |
Block if ≥ N antiviruses mark as malicious |
Limite de suspeitos |
Block if ≥ N antiviruses mark as suspicious |
Campo de saída |
Name of the field where the JSON report will be written |