# Table of Contents - [Page not found | RTILA Web Business Automation](#page-not-found-rtila-web-business-automation) - [Docs | RTILA Web Business Automation](#docs-rtila-web-business-automation) - [V8 API Overview | RTILA Web Business Automation](#v8-api-overview-rtila-web-business-automation) - [Upgrade a License | RTILA Web Business Automation](#upgrade-a-license-rtila-web-business-automation) - [Manage License Activation Count | RTILA Web Business Automation](#manage-license-activation-count-rtila-web-business-automation) - [RTILA Studio local database | RTILA Web Business Automation](#rtila-studio-local-database-rtila-web-business-automation) - [V8 API Results Endpoint | RTILA Web Business Automation](#v8-api-results-endpoint-rtila-web-business-automation) - [Local LLMs Folder Location | RTILA Web Business Automation](#local-llms-folder-location-rtila-web-business-automation) - [Change License's registered email address | RTILA Web Business Automation](#change-license-s-registered-email-address-rtila-web-business-automation) - [Deactivate V8 License | RTILA Web Business Automation](#deactivate-v8-license-rtila-web-business-automation) - [V8 API Remote Execution | RTILA Web Business Automation](#v8-api-remote-execution-rtila-web-business-automation) - [Gemini Rate Limitation | RTILA Web Business Automation](#gemini-rate-limitation-rtila-web-business-automation) - [Download & Activate RTILA Studio | RTILA Web Business Automation](#download-activate-rtila-studio-rtila-web-business-automation) - [Standalone Exe Antivirus False Positive Alert | RTILA Web Business Automation](#standalone-exe-antivirus-false-positive-alert-rtila-web-business-automation) - [AppSumo Code Stacking & Upgrade | RTILA Web Business Automation](#appsumo-code-stacking-upgrade-rtila-web-business-automation) - [AppSumo Codes Redemption | RTILA Web Business Automation](#appsumo-codes-redemption-rtila-web-business-automation) - [WordPress Posts via API (beta) | RTILA Web Business Automation](#wordpress-posts-via-api-beta-rtila-web-business-automation) - [Billing & Licensing | RTILA Web Business Automation](#billing-licensing-rtila-web-business-automation) - [Team Member Activation URL & License | RTILA Web Business Automation](#team-member-activation-url-license-rtila-web-business-automation) - [Webhook Send Request | RTILA Web Business Automation](#webhook-send-request-rtila-web-business-automation) - [Download File to Folder | RTILA Web Business Automation](#download-file-to-folder-rtila-web-business-automation) - [Target Text Before After | RTILA Web Business Automation](#target-text-before-after-rtila-web-business-automation) - [Clipboard Copy & Paste | RTILA Web Business Automation](#clipboard-copy-paste-rtila-web-business-automation) - [ChatGPT API Full Control | RTILA Web Business Automation](#chatgpt-api-full-control-rtila-web-business-automation) - [Regex & JS Filters | RTILA Web Business Automation](#regex-js-filters-rtila-web-business-automation) - [Generate Random Numbers and Text | RTILA Web Business Automation](#generate-random-numbers-and-text-rtila-web-business-automation) - [WhatsApp API send MSG | RTILA Web Business Automation](#whatsapp-api-send-msg-rtila-web-business-automation) - [How to target a CSS element | RTILA Web Business Automation](#how-to-target-a-css-element-rtila-web-business-automation) - [Change default Browser | RTILA Web Business Automation](#change-default-browser-rtila-web-business-automation) - [Export Results to a CSV file | RTILA Web Business Automation](#export-results-to-a-csv-file-rtila-web-business-automation) - [API Bridge Get Post Requests | RTILA Web Business Automation](#api-bridge-get-post-requests-rtila-web-business-automation) - [Custom Commands | RTILA Web Business Automation](#custom-commands-rtila-web-business-automation) - [Profile Session Feature | RTILA Web Business Automation](#profile-session-feature-rtila-web-business-automation) - [Auto Download Pinterest Images | RTILA Web Business Automation](#auto-download-pinterest-images-rtila-web-business-automation) - [Working with Arrays and Objects in RTILA | RTILA Web Business Automation](#working-with-arrays-and-objects-in-rtila-rtila-web-business-automation) - [Error handling Strategy | RTILA Web Business Automation](#error-handling-strategy-rtila-web-business-automation) - [OCR Feature: read text from images | RTILA Web Business Automation](#ocr-feature-read-text-from-images-rtila-web-business-automation) - [Save current URL using JavaScript | RTILA Web Business Automation](#save-current-url-using-javascript-rtila-web-business-automation) - [List Command | RTILA Web Business Automation](#list-command-rtila-web-business-automation) - [Search & Filter Projects | RTILA Web Business Automation](#search-filter-projects-rtila-web-business-automation) - [How-To & Tutorials | RTILA Web Business Automation](#how-to-tutorials-rtila-web-business-automation) - [Incogniton Anti-detect browser | RTILA Web Business Automation](#incogniton-anti-detect-browser-rtila-web-business-automation) - [Save results to file command | RTILA Web Business Automation](#save-results-to-file-command-rtila-web-business-automation) - [RTILA Cloud API Documentation | RTILA Web Business Automation](#rtila-cloud-api-documentation-rtila-web-business-automation) - [FTP / SFTP Command | RTILA Web Business Automation](#ftp-sftp-command-rtila-web-business-automation) - [Custom Commands | RTILA Web Business Automation](#custom-commands-rtila-web-business-automation) - [Add And Configure Dataset Properties | RTILA Web Business Automation](#add-and-configure-dataset-properties-rtila-web-business-automation) - [RPA & Desktop OS Commands | RTILA Web Business Automation](#rpa-desktop-os-commands-rtila-web-business-automation) - [Integrations | RTILA Web Business Automation](#integrations-rtila-web-business-automation) - [Inspection Panel Interface & Elements | RTILA Web Business Automation](#inspection-panel-interface-elements-rtila-web-business-automation) - [Official Commands | RTILA Web Business Automation](#official-commands-rtila-web-business-automation) - [GET HTML | RTILA Web Business Automation](#get-html-rtila-web-business-automation) - [Mac OS Installation Warning | RTILA Web Business Automation](#mac-os-installation-warning-rtila-web-business-automation) - [Directory Get Files Path | RTILA Web Business Automation](#directory-get-files-path-rtila-web-business-automation) - [Target Elements With Text Value | RTILA Web Business Automation](#target-elements-with-text-value-rtila-web-business-automation) - [Slack Notification Command | RTILA Web Business Automation](#slack-notification-command-rtila-web-business-automation) - [Folder and File Monitoring | RTILA Web Business Automation](#folder-and-file-monitoring-rtila-web-business-automation) - [Get File Content | RTILA Web Business Automation](#get-file-content-rtila-web-business-automation) - [Get iFrame URL | RTILA Web Business Automation](#get-iframe-url-rtila-web-business-automation) - [Save Variable to File | RTILA Web Business Automation](#save-variable-to-file-rtila-web-business-automation) - [Rename File | RTILA Web Business Automation](#rename-file-rtila-web-business-automation) - [Verify License Easy Digital Downloads | RTILA Web Business Automation](#verify-license-easy-digital-downloads-rtila-web-business-automation) - [Move File to New Directory | RTILA Web Business Automation](#move-file-to-new-directory-rtila-web-business-automation) - [Mouse Events | RTILA Web Business Automation](#mouse-events-rtila-web-business-automation) - [Airtable Get & Update Records | RTILA Web Business Automation](#airtable-get-update-records-rtila-web-business-automation) - [Delete File | RTILA Web Business Automation](#delete-file-rtila-web-business-automation) - [Get System Info | RTILA Web Business Automation](#get-system-info-rtila-web-business-automation) - [Email Send Via SMTP | RTILA Web Business Automation](#email-send-via-smtp-rtila-web-business-automation) - [OCR Passport Reader | RTILA Web Business Automation](#ocr-passport-reader-rtila-web-business-automation) - [Wait For Element to disappear | RTILA Web Business Automation](#wait-for-element-to-disappear-rtila-web-business-automation) - [Airtable Update Records | RTILA Web Business Automation](#airtable-update-records-rtila-web-business-automation) - [Target Element in Shadow Dom | RTILA Web Business Automation](#target-element-in-shadow-dom-rtila-web-business-automation) - [Sanitize URL | RTILA Web Business Automation](#sanitize-url-rtila-web-business-automation) - [Airtable Get Records | RTILA Web Business Automation](#airtable-get-records-rtila-web-business-automation) - [Get Hardware ID HWID | RTILA Web Business Automation](#get-hardware-id-hwid-rtila-web-business-automation) - [Email Verification | RTILA Web Business Automation](#email-verification-rtila-web-business-automation) - [Timestamp Unix and UTC | RTILA Web Business Automation](#timestamp-unix-and-utc-rtila-web-business-automation) - [Auto Comment On WordPress Posts | RTILA Web Business Automation](#auto-comment-on-wordpress-posts-rtila-web-business-automation) - [Switch Tab Focus Command | RTILA Web Business Automation](#switch-tab-focus-command-rtila-web-business-automation) - [License Check for Standalone Executables | RTILA Web Business Automation](#license-check-for-standalone-executables-rtila-web-business-automation) - [How To Find Custom Collections For List type Datasets | RTILA Web Business Automation](#how-to-find-custom-collections-for-list-type-datasets-rtila-web-business-automation) - [Run Automations in Silent Mode | RTILA Web Business Automation](#run-automations-in-silent-mode-rtila-web-business-automation) - [Trigger Standalone Bots via Command lines | RTILA Web Business Automation](#trigger-standalone-bots-via-command-lines-rtila-web-business-automation) - [Correcting & Completing Auto-Recorder Commands | RTILA Web Business Automation](#correcting-completing-auto-recorder-commands-rtila-web-business-automation) - [RTILA WordPress Plugin installation & configuration | RTILA Web Business Automation](#rtila-wordpress-plugin-installation-configuration-rtila-web-business-automation) - [Using Developer Tools In RTILA Studio | RTILA Web Business Automation](#using-developer-tools-in-rtila-studio-rtila-web-business-automation) - [Create A Project From Scratch | RTILA Web Business Automation](#create-a-project-from-scratch-rtila-web-business-automation) - [Bring back disappearing commands & properties | RTILA Web Business Automation](#bring-back-disappearing-commands-properties-rtila-web-business-automation) - [Export & share an RTILA project file | RTILA Web Business Automation](#export-share-an-rtila-project-file-rtila-web-business-automation) - [Install Browser Extensions using Profile Session | RTILA Web Business Automation](#install-browser-extensions-using-profile-session-rtila-web-business-automation) - [How To Fill a Form Using Generic Form Filler Child-Project | RTILA Web Business Automation](#how-to-fill-a-form-using-generic-form-filler-child-project-rtila-web-business-automation) - [Project Settings: Import URLs manual entry, From File, From Project, and | RTILA Web Business Automation](#project-settings-import-urls-manual-entry-from-file-from-project-and-rtila-web-business-automation) - [Use Local Storage Variable to scrape Do-follow Links | RTILA Web Business Automation](#use-local-storage-variable-to-scrape-do-follow-links-rtila-web-business-automation) - [Project Settings: Import URLs manual entry | RTILA Web Business Automation](#project-settings-import-urls-manual-entry-rtila-web-business-automation) - [Schedule Launch of Automations | RTILA Web Business Automation](#schedule-launch-of-automations-rtila-web-business-automation) - [Email Results File via Gmail | RTILA Web Business Automation](#email-results-file-via-gmail-rtila-web-business-automation) - [Website Load Testing Automation | RTILA Web Business Automation](#website-load-testing-automation-rtila-web-business-automation) - [Read from Google Sheets & Post on WordPress | RTILA Web Business Automation](#read-from-google-sheets-post-on-wordpress-rtila-web-business-automation) - [Downloading files | RTILA Web Business Automation](#downloading-files-rtila-web-business-automation) - [Read data from a txt or csv file | RTILA Web Business Automation](#read-data-from-a-txt-or-csv-file-rtila-web-business-automation) - [Open in a New tab | RTILA Web Business Automation](#open-in-a-new-tab-rtila-web-business-automation) - [Choosing the right collection | RTILA Web Business Automation](#choosing-the-right-collection-rtila-web-business-automation) - [Setup reCAPTCHA Resolution | RTILA Web Business Automation](#setup-recaptcha-resolution-rtila-web-business-automation) - [Set a Counter with JavaScript | RTILA Web Business Automation](#set-a-counter-with-javascript-rtila-web-business-automation) - [Woo Categories & ChatGPT API | RTILA Web Business Automation](#woo-categories-chatgpt-api-rtila-web-business-automation) - [Using filters to complete a URL | RTILA Web Business Automation](#using-filters-to-complete-a-url-rtila-web-business-automation) - [Login to Google Account & share profile session | RTILA Web Business Automation](#login-to-google-account-share-profile-session-rtila-web-business-automation) - [Google Search Baby Steps | RTILA Web Business Automation](#google-search-baby-steps-rtila-web-business-automation) - [Focus On Element Command | RTILA Web Business Automation](#focus-on-element-command-rtila-web-business-automation) - [Auto-Recorder as a 1st step | RTILA Web Business Automation](#auto-recorder-as-a-1st-step-rtila-web-business-automation) - [Config & binaries files for Standalone | RTILA Web Business Automation](#config-binaries-files-for-standalone-rtila-web-business-automation) - [Scroll Element Command | RTILA Web Business Automation](#scroll-element-command-rtila-web-business-automation) - [Standalone Executable Bots | RTILA Web Business Automation](#standalone-executable-bots-rtila-web-business-automation) - [Go To Url Command | RTILA Web Business Automation](#go-to-url-command-rtila-web-business-automation) - [Reload Page Command | RTILA Web Business Automation](#reload-page-command-rtila-web-business-automation) - [Execute JavaScript Code command | RTILA Web Business Automation](#execute-javascript-code-command-rtila-web-business-automation) - [Compare Variables Condition | RTILA Web Business Automation](#compare-variables-condition-rtila-web-business-automation) - [Take Screenshot Command | RTILA Web Business Automation](#take-screenshot-command-rtila-web-business-automation) - [Smart Variable (ChatGPT API) | RTILA Web Business Automation](#smart-variable-chatgpt-api-rtila-web-business-automation) - [Child Projects | RTILA Web Business Automation](#child-projects-rtila-web-business-automation) - [Confirm (Dialog Box) Command | RTILA Web Business Automation](#confirm-dialog-box-command-rtila-web-business-automation) - [Stop Automation Command | RTILA Web Business Automation](#stop-automation-command-rtila-web-business-automation) - [Download Page Command | RTILA Web Business Automation](#download-page-command-rtila-web-business-automation) - [Hover Mouse On Element Command | RTILA Web Business Automation](#hover-mouse-on-element-command-rtila-web-business-automation) - [Populate Text Field Command | RTILA Web Business Automation](#populate-text-field-command-rtila-web-business-automation) - [Log Message Command | RTILA Web Business Automation](#log-message-command-rtila-web-business-automation) - [Input (prompt box) Variable | RTILA Web Business Automation](#input-prompt-box-variable-rtila-web-business-automation) - [Wait for Element to Appear Command | RTILA Web Business Automation](#wait-for-element-to-appear-command-rtila-web-business-automation) - [Selector (DOM element) | RTILA Web Business Automation](#selector-dom-element-rtila-web-business-automation) - [Check Radio Input Command | RTILA Web Business Automation](#check-radio-input-command-rtila-web-business-automation) - [Dynamic Variable (JavaScript Code) | RTILA Web Business Automation](#dynamic-variable-javascript-code-rtila-web-business-automation) - [Static Variables | RTILA Web Business Automation](#static-variables-rtila-web-business-automation) - [Upload File Command | RTILA Web Business Automation](#upload-file-command-rtila-web-business-automation) - [Set Checkbox State Command | RTILA Web Business Automation](#set-checkbox-state-command-rtila-web-business-automation) - [Press a Keyboard Key Command | RTILA Web Business Automation](#press-a-keyboard-key-command-rtila-web-business-automation) - [Set Dropdown Value Command | RTILA Web Business Automation](#set-dropdown-value-command-rtila-web-business-automation) - [Click On An Element Event | RTILA Web Business Automation](#click-on-an-element-event-rtila-web-business-automation) - [Double Click On An Element Event | RTILA Web Business Automation](#double-click-on-an-element-event-rtila-web-business-automation) - [Switch Browser Identity Command | RTILA Web Business Automation](#switch-browser-identity-command-rtila-web-business-automation) - [Slack Notification Command | RTILA Web Business Automation](#slack-notification-command-rtila-web-business-automation) - [Go Forward To Next Page Command | RTILA Web Business Automation](#go-forward-to-next-page-command-rtila-web-business-automation) --- # Page not found | RTILA Web Business Automation [Skip to content](https://rtila.com/docs-category/#content) It looks like the link pointing here was faulty. Maybe try searching? --- # Docs | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/#content) ![betterdocs-category-icon](https://rtila.com/wp-content/plugins/betterdocs/assets/admin/images/betterdocs-cat-icon.svg?v=4.3.11) Ai Assistant ------------ 2 * [Local LLMs Folder Location](https://rtila.com/docs/local-llms-folder-location/) * [Gemini Rate Limitation](https://rtila.com/docs/gemini-rate-limitation/) ![betterdocs-category-icon](https://rtila.com/wp-content/plugins/betterdocs/assets/admin/images/betterdocs-cat-icon.svg?v=4.3.11) API & Cloud ----------- 3 * [V8 API Results Endpoint](https://rtila.com/docs/v8-api-results-endpoint/) * [V8 API Remote Execution](https://rtila.com/docs/v8-api-remote-execution/) * [V8 API Overview](https://rtila.com/docs/v8-api-overview/) ![betterdocs-category-icon](https://rtila.com/wp-content/plugins/betterdocs/assets/admin/images/betterdocs-cat-icon.svg?v=4.3.11) Billing & Licensing ------------------- 11 * [Deactivate V8 License](https://rtila.com/docs/deactivate-v8-license/) * [Change License’s registered email address](https://rtila.com/docs/change-licenses-registered-email-address/) * [Upgrade a License](https://rtila.com/docs/upgrade-a-license/) * [Manage License Activation Count](https://rtila.com/docs/manage-license-activation-count/) * [RTILA Studio local database](https://rtila.com/docs/rtila-studio-local-database/) * [Standalone Exe Antivirus False Positive Alert](https://rtila.com/docs/standalone-exe-antivirus-false-alert/) * [Team Member Activation URL & License](https://rtila.com/docs/team-member-activation-url-license/) * [AppSumo Codes Redemption](https://rtila.com/docs/discount-codes-redemption-upgrades/) * [Download & Activate RTILA Studio](https://rtila.com/docs/download-activate-rtila-studio/) * [AppSumo Code Stacking & Upgrade](https://rtila.com/docs/appsumo-code-stacking-upgrade/) [Explore More](https://rtila.com/docs-category/billing-licensing/) ![betterdocs-category-icon](https://rtila.com/wp-content/plugins/betterdocs/assets/admin/images/betterdocs-cat-icon.svg?v=4.3.11) Custom Commands --------------- 36 * [WordPress Posts via API (beta)](https://rtila.com/docs/wordpress-posts-via-api-beta/) * [Webhook Send Request](https://rtila.com/docs/webhook-send-request/) * [Target Text Before After](https://rtila.com/docs/target-text-before-after/) * [Download File to Folder](https://rtila.com/docs/download-file-to-folder/) * [Clipboard Copy & Paste](https://rtila.com/docs/clipboard-copy-paste/) * [ChatGPT API Full Control](https://rtila.com/docs/chatgpt-api-full-control/) * [Generate Random Numbers and Text](https://rtila.com/docs/generate-random-numbers-and-text/) * [Regex & JS Filters](https://rtila.com/docs/regex-js-filters/) * [API Bridge Get Post Requests](https://rtila.com/docs/api-bridge-get-post-requests/) * [WhatsApp API send MSG](https://rtila.com/docs/whatsapp-api-send-msg/) [Explore More](https://rtila.com/docs-category/custom-commands/) ![betterdocs-category-icon](https://rtila.com/wp-content/plugins/betterdocs/assets/admin/images/betterdocs-cat-icon.svg?v=4.3.11) How-To & Tutorials ------------------ 42 * [How to target a CSS element](https://rtila.com/docs/target-an-element/) * [Change default Browser](https://rtila.com/docs/change-default-browser/) * [Export Results to a CSV file](https://rtila.com/docs/export-results-to-a-csv-file/) * [Profile Session Feature](https://rtila.com/docs/profile-session-feature/) * [OCR Feature: read text from images](https://rtila.com/docs/ocr-feature-read-text-from-images/) * [Auto Download Pinterest Images](https://rtila.com/docs/auto-download-pinterest-images/) * [Save current URL using JavaScript](https://rtila.com/docs/save-current-url/) * [Search & Filter Projects](https://rtila.com/docs/search-filter-projects/) * [Error handling Strategy](https://rtila.com/docs/error-handling-strategy/) * [Working with Arrays and Objects in RTILA](https://rtila.com/docs/working-with-arrays-and-objects-in-rtila/) [Explore More](https://rtila.com/docs-category/how-to-tutorials/) ![betterdocs-category-icon](https://rtila.com/wp-content/plugins/betterdocs/assets/admin/images/betterdocs-cat-icon.svg?v=4.3.11) Official Commands ----------------- 58 * [List Command](https://rtila.com/docs/list-command/) * [Incogniton Anti-detect browser](https://rtila.com/docs/incogniton-anti-detect-browser/) * [Save results to file command](https://rtila.com/docs/save-results-to-file-command/) * [RTILA Cloud API Documentation](https://rtila.com/docs/rtila-cloud-api-documentation-updated/) * [FTP / SFTP Command](https://rtila.com/docs/upload-files-to-ftp-server-using-ftp-sftp-command/) * [Custom Commands](https://rtila.com/docs/custom-commands/) * [Integrations](https://rtila.com/docs/integrations/) * [RPA & Desktop OS Commands](https://rtila.com/docs/desktop-os-commands/) * [Add And Configure Dataset Properties](https://rtila.com/docs/add-and-configure-dataset-properties/) * [Inspection Panel Interface & Elements](https://rtila.com/docs/inspection-panel-interface-elements/) [Explore More](https://rtila.com/docs-category/official-commands/) Frequently Asked Questions -------------------------- ### RTILA FAQ * What can RTILA do for me ? RTILA can automate any action that a human would be doing with the keyboard and mouse on a web page. RTILA offers many automation commands and actions such as navigate to a page or more, save data or input data into or from sections of a page, click or double check and all the keyboard action…  From a business result perspective RTILA can help with the following: 1- Data mining and collection (collect hundreds of thousands of datasets in a single automation) 2- Data manipulation (using regex and JavaScript rules you clean/modify data on the fly) 3- Data monetization (gather your data and publish it or enrich it and make it available for better business decisions) --- # V8 API Overview | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/v8-api-overview/#content) View Categories What You Can Do with the RTILA V8 API [#](https://rtila.com/docs/v8-api-overview/#what-you-can-do-with-the-rtila-v8-api) ------------------------------------------------------------------------------------------------------------------------- * **Execute a project remotely** using `POST /api/remote`. * **Pass variables and override settings** at runtime to reuse the same project in many scenarios. * **Retrieve scraped data** using `GET /api/results` with powerful filtering and sorting. For detailed endpoint documentation, see: * [V8 API Remote Execution (`/api/remote`)](https://rtila.com/docs/v8-api-remote-execution/) * [V8 API Results Endpoint (`/api/results`)](https://rtila.com/docs/v8-api-results-endpoint/) Base URLs [#](https://rtila.com/docs/v8-api-overview/#base-urls) ----------------------------------------------------------------- ### Local RTILA Studio (Default) [#](https://rtila.com/docs/v8-api-overview/#local-rtila-studio-default) When working on the same machine as RTILA Studio: http://127.0.0.1:8880 You can replace `127.0.0.1` with your machine’s LAN IP (for example `http://192.168.0.10:8880`) if you are calling RTILA from another device on your local network. ### Remote Web Accessible Deployment [#](https://rtila.com/docs/v8-api-overview/#remote-web-accessible-deployment) When RTILA is exposed using a reverse proxy or Cloudflare Tunnel, you will typically have a public HTTPS base URL: https://YOUR_PUBLIC_RTILA_HOST Examples: * `https://rtila.yourcompany.com` * `https://api.yourdomain.com` * `https://brand.yourdomain.com` Internally, your proxy forwards requests to the local RTILA instance (for example `http://127.0.0.1:8880`). Authentication [#](https://rtila.com/docs/v8-api-overview/#authentication) --------------------------------------------------------------------------- All API calls require a Bearer token in the `Authorization` header: Authorization: Bearer YOUR_SYSTEM_AUTH_TOKEN * The token is a JWT generated by RTILA Studio. * It authenticates you as a RTILA user (not as a specific project). * You can obtain or refresh this token under the API / Tokens section in RTILA Studio. For security, especially on public endpoints, combine this with network-level protection such as IP allowlists, Cloudflare Access, or VPN. Project Configuration for Remote Execution [#](https://rtila.com/docs/v8-api-overview/#project-configuration-for-remote-execution) ----------------------------------------------------------------------------------------------------------------------------------- Each project that you want to trigger via the API must have remote execution enabled in its configuration. { "name": "Remote Retrieve Queued Results", "remote": { "enabled": true, "api_key": "fad41960-7831-4f36-b9e2-d5ff87ff8ef8" } } | Field | Type | Required | Description | | --- | --- | --- | --- | | `remote.enabled` | `boolean` | Yes | Enables (`true`) or disables (`false`) remote execution for this project. | | `remote.api_key` | `string` | Yes | Project-specific secret token used when triggering this project via the API. | Keep the `api_key` secret. Anyone with this key and a valid system token can execute the project. Core Endpoints [#](https://rtila.com/docs/v8-api-overview/#core-endpoints) --------------------------------------------------------------------------- ### `POST /api/remote` – Trigger Execution [#](https://rtila.com/docs/v8-api-overview/#post-apiremote--trigger-execution) Starts a new remote execution (run) of a project configured for remote execution. You provide: * `api_key` – identifies the project to execute. * `variables` – optional runtime variables. * `settings` – optional advanced overrides (headless, proxy, user agent, etc.). For full details and advanced examples, see [V8 API Remote Execution](https://rtila.com/docs/v8-api-remote-execution/) . ### `GET /api/results` – Retrieve Results [#](https://rtila.com/docs/v8-api-overview/#get-apiresults--retrieve-results) Retrieves records produced by previous executions. You will usually: * Filter by `sessionId` (the `queueId` returned by the remote execution call). * Optionally filter by `dataset` and custom fields. * Use pagination (`page`, `perPage`) and sorting (`sort`). For the full query language and response structure, see [V8 API Results Endpoint](https://rtila.com/docs/v8-api-results-endpoint/) . End-to-End Workflow Summary [#](https://rtila.com/docs/v8-api-overview/#endtoend-workflow-summary) --------------------------------------------------------------------------------------------------- 1. **Configure the project** Enable `remote.enabled` and set an `api_key` in the project configuration. 2. **Trigger execution** Call [`POST /api/remote`](https://rtila.com/docs/v8-api-remote-execution/) with: `api_key`, optional `variables`, and optional `settings`. The response returns a `queueId`. 3. **Retrieve results** Call [`GET /api/results`](https://rtila.com/docs/v8-api-results-endpoint/) with a `filter` on `sessionId='queueId'`, optionally combined with dataset and other conditions. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/v8-api-overview/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 02/12/2025 [V8 API Remote Execution](https://rtila.com/docs/v8-api-remote-execution/) [V8 API Results Endpoint](https://rtila.com/docs/v8-api-results-endpoint/) --- # Upgrade a License | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/upgrade-a-license/#content) View Categories Use Case [#](https://rtila.com/docs/upgrade-a-license/#use-case) ================================================================= Most of our products and licenses offer an upgrade path so you can start with the free or lower tiers, and upgrade as soon as you see the value and need to do so. Login to your customer area [#](https://rtila.com/docs/upgrade-a-license/#login-to-your-customer-area) ======================================================================================================= First you need to login to your customer dashboard, you can do so by going to this link: [**https://rtila.com/my-account**](https://rtila.com/my-account) Click on View Licenses [#](https://rtila.com/docs/upgrade-a-license/#click-on-view-licenses) ============================================================================================= Make sure you click on view licenses for the concerned order (in case you have more than one order). See screenshot below. ![]() Click on View Upgrades [#](https://rtila.com/docs/upgrade-a-license/#click-on-view-upgrades) ============================================================================================= ![]() Click on the Upgrade Offer you want [#](https://rtila.com/docs/upgrade-a-license/#click-on-the-upgrade-offer-you-want) ======================================================================================================================= ![]() Finalize the upgrade payment step [#](https://rtila.com/docs/upgrade-a-license/#finalize-the-upgrade-payment-step) =================================================================================================================== You can enter a discount code if you have any or pay by card on our website to finalize this upgrade. The License Key will remain the same but the allocations/rights will be upgraded. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/upgrade-a-license/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 13/04/2023 [Change License’s registered email address](https://rtila.com/docs/change-licenses-registered-email-address/) [Manage License Activation Count](https://rtila.com/docs/manage-license-activation-count/) --- # Manage License Activation Count | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/manage-license-activation-count/#content) View Categories Definition [#](https://rtila.com/docs/manage-license-activation-count/#definition) =================================================================================== RTILA Studio License comes with a certain number of “Machines” which is the total number of Computers which are activated with your License Key at a given point in time. Normally you should de-activate a computer before activating your license on a new computer so that you keep your Activation count to the minimum, especially if you only have a 1 Machine License. Now it happens that the former computer is not available and for that you can use your online dashboard to manage your License Activations. Go to My Account [#](https://rtila.com/docs/manage-license-activation-count/#go-to-my-account) =============================================================================================== First you need to Login and go to your online customer account, either by clicking on the top menu account icon, or by navigating to this URL: [https://rtila.com/my-account](https://rtila.com/my-account) ![]() Go to View Licenses [#](https://rtila.com/docs/manage-license-activation-count/#go-to-view-licenses) ===================================================================================================== If you have more than one order, make sure you are selecting the correct row and then click on View Licenses ![]() Go to Activation URLs [#](https://rtila.com/docs/manage-license-activation-count/#go-to-activation-urls) ========================================================================================================= Once you are on your License info section, you will be able to click on “Activation URLs” under the “Teams” column ![]() Add, Edit or Remove Activation URLs [#](https://rtila.com/docs/manage-license-activation-count/#add-edit-or-remove-activation-urls) ==================================================================================================================================== Here you will be able to add a new Team Member Activation URL and share it with your team member without revealing your main License Key. This effectively acts as a sub-license mechanism. You can delete Activation URLs to free the count of your license. If you only have 1 Machine License then every time you use your License Key to activate this license on a Computer, it will create a Unique ID Activation URL. By clicking on Deactivate Team URL it will delete that License Activation and release your License so you can use it on a new computer. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/manage-license-activation-count/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 15/03/2023 [Upgrade a License](https://rtila.com/docs/upgrade-a-license/) [RTILA Studio local database](https://rtila.com/docs/rtila-studio-local-database/) --- # RTILA Studio local database | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/rtila-studio-local-database/#content) View Categories Use case [#](https://rtila.com/docs/rtila-studio-local-database/#use-case) =========================================================================== For diverse reason you may need to access and backup your local database file that contains all of your projects and results data. RTILA installs and uses a .sqlite database on your local drive to allow a faster and direct read/write of your data flows. This file is not to be tampered with as it can disturb or break the functionality of the software, but it is brough to your knowledge for backup/migration and debugging purposes. Locate the database file [#](https://rtila.com/docs/rtila-studio-local-database/#locate-the-database-file) =========================================================================================================== On Windows the file is located in the AppData/Roaming/rtila-database folder. Or you can do a search for this filename: D\_rtiladb-v5.sqlite and you should be able to locate it for Mac OS and Linux as the filename remains the same. ![]() Backup database & project files [#](https://rtila.com/docs/rtila-studio-local-database/#backup-database-project-files) ======================================================================================================================= For safety measure copy and paste your file into a different folder like “My Documents” or even on a different drive, so to keep a copy of it. Also it is good practice if you export all your projects from RTILA Studio into .rtila files and save them in the same folder. If you encounter a problem with RTILA please submit a [**support ticket**](https://rtila.com/support/) before starting to manipulate the core files and folders. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/rtila-studio-local-database/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/10/2023 [Manage License Activation Count](https://rtila.com/docs/manage-license-activation-count/) [Standalone Exe Antivirus False Positive Alert](https://rtila.com/docs/standalone-exe-antivirus-false-alert/) --- # V8 API Results Endpoint | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/v8-api-results-endpoint/#content) View Categories Endpoint Summary [#](https://rtila.com/docs/v8-api-results-endpoint/#endpoint-summary) --------------------------------------------------------------------------------------- | | | | --- | --- | | Method | `GET` | | Path | `/api/results` | | Base URL (Local) | `http://127.0.0.1:8880` | | Base URL (Remote/Public) | `https://YOUR_PUBLIC_RTILA_HOST` | Request [#](https://rtila.com/docs/v8-api-results-endpoint/#request) --------------------------------------------------------------------- ### Headers [#](https://rtila.com/docs/v8-api-results-endpoint/#request-headers) | Header | Type | Required | Description | | --- | --- | --- | --- | | `Authorization` | `string` | Yes | `Bearer YOUR_SYSTEM_AUTH_TOKEN` (JWT from RTILA Studio). | ### Query Parameters [#](https://rtila.com/docs/v8-api-results-endpoint/#query-parameters) | Parameter | Type | Required | Description | | --- | --- | --- | --- | | `filter` | `string` | Yes | SQL-like filter expression to select records (e.g. by `sessionId`, `dataset`, or custom fields). | | `page` | `number` | No | Page number for pagination. Default is `1`. | | `perPage` | `number` | No | Items per page. Default is `30`. | | `sort` | `string` | No | Field to sort by. Prefix with `-` for descending (e.g. `-created`, `-Price`). | Filtering (`filter`) [#](https://rtila.com/docs/v8-api-results-endpoint/#filtering-filter) ------------------------------------------------------------------------------------------- The `filter` parameter uses a parenthesized, SQL-like syntax: filter=('') ### Equality [#](https://rtila.com/docs/v8-api-results-endpoint/#equality) filter=(sessionId='ilh2f81bq46wedu') Most commonly used to restrict results to a single execution run (session). ### AND (`&&`) [#](https://rtila.com/docs/v8-api-results-endpoint/#and-) filter=(sessionId='ilh2f81bq46wedu' && dataset='BookData') ### OR (`||`) [#](https://rtila.com/docs/v8-api-results-endpoint/#or-) filter=(price='£53.74' || price='£51.77') ### Common Fields [#](https://rtila.com/docs/v8-api-results-endpoint/#common-fields) * `sessionId` – essential when working with remote runs; use the `queueId` from `POST /api/remote`. * `dataset` – restricts results to a specific dataset (e.g. `BookData`). * Custom data fields – you can filter on any field stored in your dataset (e.g. `Title`, `Price`, `Image_url`, `Status`). ### Example: Filter by Session and Title [#](https://rtila.com/docs/v8-api-results-endpoint/#example-filter-by-session-and-title) curl -X GET "http://127.0.0.1:8880/api/results?filter=(sessionId='ilh2f81bq46wedu' && Title='A Light in the Attic')" \ -H "Authorization: Bearer YOUR_SYSTEM_AUTH_TOKEN" Pagination (`page` & `perPage`) [#](https://rtila.com/docs/v8-api-results-endpoint/#pagination-page--perpage) -------------------------------------------------------------------------------------------------------------- Use pagination to retrieve large result sets in manageable chunks. * `perPage` – items per page (default `30`). * `page` – page number to retrieve (default `1`). ### Example: Page 3, 50 Items per Page [#](https://rtila.com/docs/v8-api-results-endpoint/#example-page-3-50-items-per-page) curl -X GET "http://127.0.0.1:8880/api/results?filter=(sessionId='ilh2f81bq46wedu')&perPage=50&page=3" \ -H "Authorization: Bearer YOUR_SYSTEM_AUTH_TOKEN" Sorting (`sort`) [#](https://rtila.com/docs/v8-api-results-endpoint/#sorting-sort) ----------------------------------------------------------------------------------- Sort the results by a field in ascending or descending order. ### Ascending [#](https://rtila.com/docs/v8-api-results-endpoint/#ascending) sort=Price sort=Title ### Descending [#](https://rtila.com/docs/v8-api-results-endpoint/#descending) sort=-created sort=-Price A common pattern is `sort=-created` to get the newest records first. ### Example: Newest Records First [#](https://rtila.com/docs/v8-api-results-endpoint/#example-newest-records-first) curl -X GET "http://127.0.0.1:8880/api/results?filter=(sessionId='ilh2f81bq46wedu')&sort=-created" \ -H "Authorization: Bearer YOUR_SYSTEM_AUTH_TOKEN" Combining Filter, Pagination & Sorting [#](https://rtila.com/docs/v8-api-results-endpoint/#combining-filter-pagination--sorting) --------------------------------------------------------------------------------------------------------------------------------- You can combine all options in a single request. **Goal:** * Within a specific `sessionId` * Limit to dataset `BookData` * Filter to items with price > £50 * Sort from highest to lowest price * Return only the first 10 items **Note:** The comparison operator (`>`) here is illustrative. Depending on how your data is stored (strings vs numbers), you may need to normalize values or adjust the operator. curl -X GET "https://YOUR_PUBLIC_RTILA_HOST/api/results?filter=(sessionId='ilh2f81bq46wedu' && dataset='BookData' && Price > '50.00')&sort=-Price&perPage=10&page=1" \ -H "Authorization: Bearer YOUR_SYSTEM_AUTH_TOKEN" Response Structure [#](https://rtila.com/docs/v8-api-results-endpoint/#response-structure) ------------------------------------------------------------------------------------------- { "items": [\ {\ "Title": "Tipping the Velvet",\ "Price": "£53.74",\ "Image_url": "https://books.toscrape.com/media/cache/26/0c/260c6ae16bce31c8f8c95daddd9f4a1c.jpg",\ "id": "record-id",\ "collectionId": "collection-id"\ /* additional metadata fields may be present */\ }\ ], "page": 1, "perPage": 30, "totalItems": 1, "totalPages": 1 } | Field | Type | Description | | --- | --- | --- | | `items` | `array` | Array of result records (one object per row in your dataset). | | `page` | `number` | Current page number. | | `perPage` | `number` | Number of items returned per page. | | `totalItems` | `number` | Total number of items that match the filter. | | `totalPages` | `number` | Total pages available given `perPage` and the filter. | Each object in `items` contains: * Your dataset fields (e.g. `Title`, `Price`, `Image_url`). * System metadata fields (e.g. `id`, `collectionId`, timestamps). [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/v8-api-results-endpoint/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 30/11/2025 [V8 API Overview](https://rtila.com/docs/v8-api-overview/) [V8 API Remote Execution](https://rtila.com/docs/v8-api-remote-execution/) --- # Local LLMs Folder Location | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/local-llms-folder-location/#content) View Categories Our Ai Assistant when configured to use Local LLMs will download and call LLMs GGUF files from a specific folder on your Windows/Mac/Linux computer. To find this local folder use RTILA Studio and go to General > Preferences then scroll down and click on “Open Administration Tools”. See screenshot below ![]() This will bring you to the Advanced Tools Tab from where you can click on “Open Application Data Folder”. See screenshot below ![]() This shall open your Disk application folder for RTILA V8 and you will see a folder called “models” and that is where all the GGUF models are stored. See screenshot below ![]() Once in that folder you can delete and paste/add GGUF files of chosen and compatible LLMs. Note that RTILA V8 has an Ai Assistant configuration section where you can specify if you will use CPU or GPU for handling the local models. Make sure you download and use GGUF models that are compatible with CPU or with GPU (preferably NVIDIA). See screenshot of local LLM files in the Models folder below. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/local-llms-folder-location/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 14/01/2026 [Gemini Rate Limitation](https://rtila.com/docs/gemini-rate-limitation/) [Gemini Rate Limitation](https://rtila.com/docs/gemini-rate-limitation/) --- # Change License's registered email address | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/change-licenses-registered-email-address/#content) View Categories Use case [#](https://rtila.com/docs/change-licenses-registered-email-address/#use-case) ======================================================================================== It may happen that you have purchased or redeemed your license using an email address which you now want to replace. In that case you can request for your License to be transferred to your new email address and here is the process to follow. Create new account with new email [#](https://rtila.com/docs/change-licenses-registered-email-address/#create-new-account-with-new-email) ========================================================================================================================================== ![]() First of all you need to create a new account using this new email address. Head to **[https://rtila.com/my-account](https://rtila.com/my-account) ** and scroll down to reach the account registration form. Or you can use our social network buttons to create a new account. Simply click on the social network button of your choice but make sure the email address related to that social address is not the email address you want to move away from. In some cases you may need to verify your account by clicking a verification link, otherwise you will be redirected to your customer dashboard. Submit a support ticket to request the change [#](https://rtila.com/docs/change-licenses-registered-email-address/#submit-a-support-ticket-to-request-the-change) ================================================================================================================================================================== Once you have the new account registered with your new email address you can submit a Support Ticket by going here: **[https://rtila.com/support](https://rtila.com/support) ** You need to provide us with the following information to document the ownership of the former email account: 1: Write to us using your first email address or provide proof that you owned that address by sharing your original purchase receipt, payment receipt or former/current license keys associated with that first email address 2: Mention to us the new email address with which you created the new account Confirmation of transfer of order/license [#](https://rtila.com/docs/change-licenses-registered-email-address/#confirmation-of-transfer-of-orderlicense) ========================================================================================================================================================= Please allow up to 3 days for our team to operate a transfer of your License and order details from your old email account to your new email account. You will then receive a notification. Please note that in most cases the License Key will remain the same, however in some rarer cases we may need to generate a new License Key. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/change-licenses-registered-email-address/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 15/04/2023 [Deactivate V8 License](https://rtila.com/docs/deactivate-v8-license/) [Upgrade a License](https://rtila.com/docs/upgrade-a-license/) --- # Deactivate V8 License | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/deactivate-v8-license/#content) View Categories Warning: De-activating the new V8 License key to use a different license key will reset all your settings and data and any projects or results will be deleted. Make proper export and backup of your settings, projects and results before Deactivating the license. To Deactivate current License key activation on RTILA V8 Studio simply click on on “General” on the left menu, and then on “Deactivate”. Once that done you will be requested to enter a license key to activate again RTILA Studio on the next launch. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/deactivate-v8-license/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2026 [Mac OS Installation Warning](https://rtila.com/docs/mac-os-installation-warning/) [Change License’s registered email address](https://rtila.com/docs/change-licenses-registered-email-address/) --- # V8 API Remote Execution | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/v8-api-remote-execution/#content) View Categories Endpoint Summary [#](https://rtila.com/docs/v8-api-remote-execution/#endpoint-summary) --------------------------------------------------------------------------------------- | | | | --- | --- | | Method | `POST` | | Path | `/api/remote` | | Base URL (Local) | `http://127.0.0.1:8880` | | Base URL (Remote/Public) | `https://YOUR_PUBLIC_RTILA_HOST` | Request [#](https://rtila.com/docs/v8-api-remote-execution/#request) --------------------------------------------------------------------- ### Headers [#](https://rtila.com/docs/v8-api-remote-execution/#request-headers) | Header | Type | Required | Description | | --- | --- | --- | --- | | `Authorization` | `string` | Yes | `Bearer YOUR_SYSTEM_AUTH_TOKEN` (JWT from RTILA Studio). | | `Content-Type` | `string` | Yes | `application/json` | ### Body (Basic Usage) [#](https://rtila.com/docs/v8-api-remote-execution/#request-body-basic) For most use cases you only need to send the project `api_key` and an optional `variables` object. { "api_key": "fad41960-7831-4f36-b9e2-d5ff87ff8ef8", "variables": { "query": "web scraping" } } | Field | Type | Required | Description | | --- | --- | --- | --- | | `api_key` | `string` | Yes | Project remote key (`remote.api_key`) that identifies the project to run. | | `variables` | `object` | No | Arbitrary key/value pairs available to the project as runtime variables (e.g. search terms, IDs). | Advanced users can also send a `settings` object to override project configuration at runtime. This is covered in [Advanced Settings Overrides](https://rtila.com/docs/v8-api-remote-execution/#advanced-settings) . Basic cURL Example (Local) [#](https://rtila.com/docs/v8-api-remote-execution/#basic-curl-example-local) --------------------------------------------------------------------------------------------------------- curl -X POST "http://127.0.0.1:8880/api/remote" \ -H "Authorization: Bearer YOUR_SYSTEM_AUTH_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "api_key": "fad41960-7831-4f36-b9e2-d5ff87ff8ef8", "variables": { "query": "web scraping" } }' ### Basic cURL Example (Remote/Public) [#](https://rtila.com/docs/v8-api-remote-execution/#basic-curl-example-remotepublic) curl -X POST "https://YOUR_PUBLIC_RTILA_HOST/api/remote" \ -H "Authorization: Bearer YOUR_SYSTEM_AUTH_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "api_key": "YOUR_PROJECT_API_KEY", "variables": { "query": "web scraping" } }' Response [#](https://rtila.com/docs/v8-api-remote-execution/#response) ----------------------------------------------------------------------- On success, RTILA queues the execution and immediately returns a JSON response containing a `queueId`. The actual scraping continues asynchronously. { "message": "Project execution successfully queued.", "queueId": "ilh2f81bq46wedu" } | Field | Type | Description | | --- | --- | --- | | `message` | `string` | Confirmation message. | | `queueId` | `string` | Unique ID for this run. Use it later as `sessionId` in [`GET /api/results`](https://rtila.com/docs/v8-api-results-endpoint/)
. | Error Responses [#](https://rtila.com/docs/v8-api-remote-execution/#error-responses) ------------------------------------------------------------------------------------- | Status | Meaning | Typical Cause | | --- | --- | --- | | `400` | Bad Request | Missing `api_key`, invalid JSON body, wrong types. | | `401` | Unauthorized | Missing or invalid Bearer token. | | `403` | Forbidden | Token is valid but not allowed to run this project. | | `500` | Internal Server Error | Unexpected error while queuing the execution. | Advanced Settings Overrides (`settings`) [#](https://rtila.com/docs/v8-api-remote-execution/#advanced-settings-overrides-settings) ----------------------------------------------------------------------------------------------------------------------------------- You can override most project settings at runtime via a `settings` object in the request body. These overrides are merged into the stored configuration, and values in the payload take precedence. { "api_key": "YOUR_PROJECT_API_KEY", "settings": { /* per-call overrides go here */ }, "variables": { /* optional variables */ } } ### Execution Control [#](https://rtila.com/docs/v8-api-remote-execution/#settings-execution-control) * `headless` (boolean) – `true` for Faster background execution, `false` for a visible browser (debugging). * `max_concurrent_workers` (number) – controls how many parallel workers are used. * `navigation_timeout` (number, ms) – page load timeout; adjust for slow or fast targets. ### Anonymity & Anti-Block Controls [#](https://rtila.com/docs/v8-api-remote-execution/#settings-anonymity) #### `proxy` (object) [#](https://rtila.com/docs/v8-api-remote-execution/#proxy-object) "proxy": { "enabled": true, "addresses": [\ "http://user:pass@host1:port",\ "http://user:pass@host2:port"\ ] } Use this to inject a per-run proxy list managed by your backend. #### `user_agent` (string) [#](https://rtila.com/docs/v8-api-remote-execution/#useragent-string) Override the browser User-Agent for a specific run: "settings": { "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36" } Example user agents: * Windows 10/11 Chrome: `Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36` * macOS Safari: `Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1 Safari/605.1.15` * Android Mobile Chrome: `Mozilla/5.0 (Linux; Android 13; SM-S908B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Mobile Safari/537.36` #### `humanoid` (object) [#](https://rtila.com/docs/v8-api-remote-execution/#humanoid-object) "humanoid": { "enabled": true } Enable human-like interaction simulation per call. #### `captcha_resolver` (object) [#](https://rtila.com/docs/v8-api-remote-execution/#captcharesolver-object) "captcha_resolver": { "enable": true, "api_key": "DIFFERENT_2CAPTCHA_KEY" } Enable CAPTCHA solving or override the CAPTCHA API key for this run. ### Performance Tuning: `block_resources` [#](https://rtila.com/docs/v8-api-remote-execution/#settings-performance) "block_resources": { "enabled": true, "types": ["image", "stylesheet", "font"] } Block heavy resources (images, fonts, stylesheets) to speed up data-only scraping. ### Full Advanced Example [#](https://rtila.com/docs/v8-api-remote-execution/#settings-full-example) curl -X POST "https://YOUR_PUBLIC_RTILA_HOST/api/remote" \ -H "Authorization: Bearer YOUR_SYSTEM_AUTH_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "api_key": "YOUR_PROJECT_API_KEY", "settings": { "urls": [\ "https://books.toscrape.com/catalogue/sapiens-a-brief-history-of-humankind_996/index.html"\ ], "headless": true, "max_concurrent_workers": 3, "proxy": { "enabled": true, "addresses": [\ "http://your_proxy_user:your_proxy_pass@proxy.server.com:8080"\ ] }, "block_resources": { "enabled": true, "types": ["image", "font"] }, "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36" }, "variables": { "source_system": "external_api_call" } }' [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/v8-api-remote-execution/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 30/11/2025 [V8 API Results Endpoint](https://rtila.com/docs/v8-api-results-endpoint/) [V8 API Overview](https://rtila.com/docs/v8-api-overview/) --- # Gemini Rate Limitation | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/gemini-rate-limitation/#content) View Categories If you are using Gemini API Free tiers then some usage limits do apply over 3 parameters: RPM: Requests per minute. Current limit: 10 requests per minute. TPM: Tokens per minute. Current limit: 250K tokens per minute. RPD: Requests per day. Current limit: 20 requests per day. See the screenshot below on how to check your current rate and consumption. Login to your Google Account then go to: [https://aistudio.google.com/app/usage](https://aistudio.google.com/app/usage) ![]() When you go over these limits you will get an error like below inside the RTILA Ai Assistant chat interface ![]() **How to manage or solve this Rate Limit errors:** 1) Just wait for the next minute or day depending on the rate item that has been exhausted 2) Add your billing details to the Google Ai Studio and pay per token use [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/gemini-rate-limitation/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2026 [Local LLMs Folder Location](https://rtila.com/docs/local-llms-folder-location/) [Local LLMs Folder Location](https://rtila.com/docs/local-llms-folder-location/) --- # Download & Activate RTILA Studio | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/download-activate-rtila-studio/#content) View Categories Direct Downloads from GitHub [#](https://rtila.com/docs/download-activate-rtila-studio/#direct-downloads-from-github) ---------------------------------------------------------------------------------------------------------------------- [![]()](https://github.com/IKAJIAN/rtila-releases/releases/tag/v6.0.0) If you already have your license key you can directly download the latest versions of our Software from our GitHub repository. Sometime you may also notice Beta versions, which you can also download and use to access newly released features that are still being tested. **[Click here or GitHub logo](https://github.com/IKAJIAN/rtila-releases/releases/tag/v6.0.0) ** Downloads & License from my account [#](https://rtila.com/docs/download-activate-rtila-studio/#downloads-license-from-my-account) ---------------------------------------------------------------------------------------------------------------------------------- You will find the license and download links information In your customer dashboard at this URL: [https://rtila.com/my-account](https://rtila.com/my-account) ![]() After login you shall see your purchase history with the links to get download links as well as your license key. ![]() The same information is present in your email receipt that you should have received on the day of your order, see below example. Please check your spam box and whitelist our email address. ![]() Install RTILA Studio [#](https://rtila.com/docs/download-activate-rtila-studio/#install-rtila-studio) ------------------------------------------------------------------------------------------------------ After downloading the RTILA Studio installation file for your operating system, click the file and follow the installation instructions until the end. **_MPORTANT for MAC USERs:_** Please follow this guide before the installation: [https://support.apple.com/en-za/guide/mac-help/mh40616/mac](https://support.apple.com/en-za/guide/mac-help/mh40616/mac) ![]() Activate your License on RTILA Studio [#](https://rtila.com/docs/download-activate-rtila-studio/#activate-your-license-on-rtila-studio) ---------------------------------------------------------------------------------------------------------------------------------------- Launch RTILA Studio then on the top right corner click on My Account, then on Licensing. Follow the instructions in the screenshot below and enter your License Key then click on Activate License. Your copy of RTILA Studio is now activated. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/download-activate-rtila-studio/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 20/05/2023 [AppSumo Codes Redemption](https://rtila.com/docs/discount-codes-redemption-upgrades/) [AppSumo Code Stacking & Upgrade](https://rtila.com/docs/appsumo-code-stacking-upgrade/) --- # Standalone Exe Antivirus False Positive Alert | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/standalone-exe-antivirus-false-alert/#content) View Categories Our Standalone Executable file may give a warning when scanned by [https://www.virustotal.com](https://www.virustotal.com/) or other Antivirus aggregator scanning tools. This is a known case of False Positive. This happens when such a tool includes or uses the abandoned Zillya Antivirus software, see screenshot of the alert. The virus alert reads something like: Trojan.Agent.Win32.2853154 Acronis (Static ML) ![]() There is nothing to worry about and you can explain to your Standalone clients or users that this is a false alert for the following reasons: 1- Among the 67 Antivirus tools used by VirusTotal.com only Zillya is giving this alert 2- [Zillya](http://zillya.org/en/index.html) website itself has a broken SSL certificate and seems to be abandoned 3- Zillya website is still using Flash which was discontinued back in 2021 after a first announcement made in 2017 by Adobe [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/standalone-exe-antivirus-false-alert/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 19/03/2023 [RTILA Studio local database](https://rtila.com/docs/rtila-studio-local-database/) [Team Member Activation URL & License](https://rtila.com/docs/team-member-activation-url-license/) --- # AppSumo Code Stacking & Upgrade | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/appsumo-code-stacking-upgrade/#content) View Categories Introduction [#](https://rtila.com/docs/appsumo-code-stacking-upgrade/#introduction) ------------------------------------------------------------------------------------- For almost every product, download or service we have an Upgrade Path. Login to My Account section [#](https://rtila.com/docs/appsumo-code-stacking-upgrade/#login-to-my-account-section) ------------------------------------------------------------------------------------------------------------------- To access the Upgrade options you need to first login to your My Account section here: [https://rtila.com/my-account](https://rtila.com/my-account) ![]() Navigate to the Upgrade Path [#](https://rtila.com/docs/appsumo-code-stacking-upgrade/#navigate-to-the-upgrade-path) --------------------------------------------------------------------------------------------------------------------- Then click on Licenses link for the relevant purchase you want to stack up for and upgrade. ![]() On the next page click on “View Upgrades” to access the upgrade path for your product. ![]() Upgrade & enter discount code [#](https://rtila.com/docs/appsumo-code-stacking-upgrade/#upgrade--enter-discount-code) ---------------------------------------------------------------------------------------------------------------------- The upgrade path is a sequential process. You need to upgrade to the next available option which should be for a retail price of $99, against which you will apply your additional codes. ![]() The upgrade process will bring you to our checkout process with the difference that now the License which you are upgrading is appearing in your cart/checkout. Click on the Discount code link and enter your consecutive AppSumo code and finalize the purchase as a free upgrade in our system. ![]() Repeat steps for additional codes [#](https://rtila.com/docs/appsumo-code-stacking-upgrade/#repeat-steps-for-additional-codes) ------------------------------------------------------------------------------------------------------------------------------- Repeat these steps for all the additional codes you have, until you reach the maximum upgrade option available for the concerned deal. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/appsumo-code-stacking-upgrade/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 17/02/2023 [Download & Activate RTILA Studio](https://rtila.com/docs/download-activate-rtila-studio/) [Mac OS Installation Warning](https://rtila.com/docs/mac-os-installation-warning/) --- # AppSumo Codes Redemption | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/discount-codes-redemption-upgrades/#content) View Categories Clarification [#](https://rtila.com/docs/discount-codes-redemption-upgrades/#clarification) -------------------------------------------------------------------------------------------- This document provides guidelines as to how to redeem your first AppSumo code, as well as how to stack-up and upgrade your deal if you have more than one code. As we have more than one AppSumo deal make sure you are using the right URL/Deal and the right Plan for the codes you got. The codes of the Exclusive Plus will not work on the redemption page of the regular LTD deal, and vice versa. We will use screenshots & visuals for the regular AppSumo deal but the same process is valid for the Exclusive Plus (using the Exclusive Plus ULR and codes). Redemption URLs [#](https://rtila.com/docs/discount-codes-redemption-upgrades/#redemption-urls) ------------------------------------------------------------------------------------------------ For the regular AppSumo Deal go here: [**https://rtila.com/downloads/rtila-studio-lifetime-deal**](https://rtila.com/downloads/rtila-studio-lifetime-deal/?selectedOption=1) For the Exclusive Plus Deal go here: [**https://rtila.com/downloads/rtila-studio-asexclusive**](https://rtila.com/downloads/rtila-studio-asexclusive/) Select your purchased plan [#](https://rtila.com/docs/discount-codes-redemption-upgrades/#select-your-purchased-plan) ---------------------------------------------------------------------------------------------------------------------- You need to select the plan for which you have enough codes. If you only have 1 AppSumo code then select the first plan for the value of $99 which the value of each AppSumo code. Otherwise select the Plans for which you have enough codes to redeem. ![]() **Checkout & apply your codes** [#](https://rtila.com/docs/discount-codes-redemption-upgrades/#checkout-apply-your-codes) -------------------------------------------------------------------------------------------------------------------------- After clicking on purchase you will reach the checkout page. In the “Have a discount” section click on “Click to enter it”. ![]() A new field text will appear where you can enter your AppSumo codes and then click on “Apply”. Repeat this process for as many codes as you have and until your purchase amount reaches zero. ![]() The price should now have been offset by your discount code(s) to be 0.00 and you can finalize this purchase as a “Free Download”. If you already have an RTILA account you can use the Log In option, otherwise go ahead and create an account. ![]() Receipt, License Key & Download Links [#](https://rtila.com/docs/discount-codes-redemption-upgrades/#receipt-license-key-download-links) ----------------------------------------------------------------------------------------------------------------------------------------- After finishing the order you will be redirected to a confirmation which will list your order details as well as your license key and the software download links. An email receipt should also have reached your inbox (please check in the spam and whitelist our email address), below is a screenshot of the email receipt you should have received. ![]() Next you can read about how to: Download & Activate RTILA Studio AppSumo Code Stack-up & Upgrade [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/discount-codes-redemption-upgrades/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 03/05/2023 [Team Member Activation URL & License](https://rtila.com/docs/team-member-activation-url-license/) [Download & Activate RTILA Studio](https://rtila.com/docs/download-activate-rtila-studio/) --- # WordPress Posts via API (beta) | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/wordpress-posts-via-api-beta/#content) View Categories ![]() **Description** This Custom Command allows you to create WordPress posts in a programmatic way using either the JWT API connection or the Application Password method which is available for your WordPress admin users. You can specify the status of the post (draft, publish, etc…) and dynamically feed the post title and description from a ChatGPT or other variable command. More documentation and a template demo will be added soon as this is an early version release for Beta Testing. ******How to configure and use this Custom Command**** :** ![]() ****Watch Video Demo**** : [![]()](https://youtu.be/ZfujNgoilJA) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/wordpress-posts-via-api-beta/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [Switch Tab Focus Command](https://rtila.com/docs/switch-tab-focus-command/) [Webhook Send Request](https://rtila.com/docs/webhook-send-request/) --- # Billing & Licensing | RTILA Web Business Automation [Skip to content](https://rtila.com/docs-category/billing-licensing/#content) View Categories Billing & Licensing ------------------- * [Deactivate V8 License](https://rtila.com/docs/deactivate-v8-license/) * [Change License’s registered email address](https://rtila.com/docs/change-licenses-registered-email-address/) * [Upgrade a License](https://rtila.com/docs/upgrade-a-license/) * [Manage License Activation Count](https://rtila.com/docs/manage-license-activation-count/) * [RTILA Studio local database](https://rtila.com/docs/rtila-studio-local-database/) * [Standalone Exe Antivirus False Positive Alert](https://rtila.com/docs/standalone-exe-antivirus-false-alert/) * [Team Member Activation URL & License](https://rtila.com/docs/team-member-activation-url-license/) * [AppSumo Codes Redemption](https://rtila.com/docs/discount-codes-redemption-upgrades/) * [Download & Activate RTILA Studio](https://rtila.com/docs/download-activate-rtila-studio/) * [AppSumo Code Stacking & Upgrade](https://rtila.com/docs/appsumo-code-stacking-upgrade/) * [1](https://rtila.com/docs-category/billing-licensing/page/1) * [2](https://rtila.com/docs-category/billing-licensing/page/2) * [❯](https://rtila.com/docs-category/billing-licensing/page/2) --- # Team Member Activation URL & License | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/team-member-activation-url-license/#content) View Categories Introduction [#](https://rtila.com/docs/team-member-activation-url-license/#introduction) ========================================================================================== RTILA licensing offers are based on the number of “machines” or “devices/users” that you can have active at the same time. A multi-machine license owner can manage the sub-licenses using a method we called Team Member Activation URLs. Go to My Account [#](https://rtila.com/docs/team-member-activation-url-license/#go-to-my-account) ================================================================================================== First you need to Login and go to your online customer account, either by clicking on the top menu account icon, or by navigating to this URL: [https://rtila.com/my-account](https://rtila.com/my-account) ![]() Go to View Licenses [#](https://rtila.com/docs/team-member-activation-url-license/#go-to-view-licenses) ======================================================================================================== If you have more than one order, make sure you are selecting the correct row and then click on View Licenses ![]() Go to Activation URLs [#](https://rtila.com/docs/team-member-activation-url-license/#go-to-activation-urls) ============================================================================================================ Once you are on your License info section, you will be able to click on “Activation URLs” under the “Teams” column ![]() Creating a new Team Member Activation URL [#](https://rtila.com/docs/team-member-activation-url-license/#creating-a-new-team-member-activation-url) ==================================================================================================================================================== From the customer dashboard area, a License Owner can create a new and unique Activation URL for each user or device to which access is to be given. Select the concerned License from your customer dashboard, then click on Team Activation URL management link and then follow the steps below to create and manage your Team Activation URLs. ![]() Once the Team Member Activation URL created you can share this URL with your team member, and the soon user may also receive a notification from RTILA with the instructions. A License Owner can revoke this Activation URL at any time. Also if a Team Member de-activates the Team URL from RTILA Studio side, the Team URL will be deleted and if the user needs to activate a new device he/she will need to request a new Activation URL from the License Owner. ![]() Activating RTILA using a Team Activation URL [#](https://rtila.com/docs/team-member-activation-url-license/#activating-rtila-using-a-team-activation-url) ========================================================================================================================================================== The receiving user, after installing our latest build of RTILA Studio, will be presented with a License activation window that offers 2 possible ways of activating the software. The first way is for License Owners who have a valid license key. And for Team members they need to click on the tab called “Team Member URL” to enter their unique Activation URL. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/team-member-activation-url-license/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 02/02/2025 [Standalone Exe Antivirus False Positive Alert](https://rtila.com/docs/standalone-exe-antivirus-false-alert/) [AppSumo Codes Redemption](https://rtila.com/docs/discount-codes-redemption-upgrades/) --- # Webhook Send Request | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/webhook-send-request/#content) View Categories **Description** This Custom Command allows you to send fixed and dynamic data or variables to any webhook URL simply and directly. You can send your data within the URL of the webhook or you can also use authentication methods and also send data in the Query Parameter or in the body of the request itself. ******How to configure and use this Custom Command**** :** ![]() ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/webhook-send-request/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [WordPress Posts via API (beta)](https://rtila.com/docs/wordpress-posts-via-api-beta/) [Target Text Before After](https://rtila.com/docs/target-text-before-after/) --- # Download File to Folder | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/download-file-to-folder/#content) View Categories ![]() **Description** This Custom Command gives you control over renaming a file from the web dynamically and also dynamically selecting the folder where to save it, before downloading the file to your local computer. ******How to configure and use this Custom Command**** :** ![]() 1) File URL: you should provide the URL of the file you wish to download (it can also take a variable {{variableName}}) 2) New file name: Please specify the file name of the download file. 3) Download path: location of the folder where you can find the download file later! ****Watch Video Demo**** : [![]()](https://youtu.be/M7ccxxuSGkc) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/download-file-to-folder/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [Target Text Before After](https://rtila.com/docs/target-text-before-after/) [Clipboard Copy & Paste](https://rtila.com/docs/clipboard-copy-paste/) --- # Target Text Before After | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/target-text-before-after/#content) View Categories ![]() **Description** This Custom Command allows you to target a text value that is contained before or after a given text, or between 2 other text values If you only specify the text that appears before your target Text you will then get your Target Text and also all the rest of the text that appears after it (if any). If you only specify the text that appears after your Target Text then you will get your Target Text and all the other text that appears before it (if any) ******How to configure and use this Custom Command**** :** ![]() In the template we offer with this command we are capturing the whole content of the table into the Selector DOM Variable, which will contain all the text within that table. See above screenshot. ![]() Now let’s say we want to target the specific tax amount. To do so we need to specify which text appears before it, and which text appears after it. In our table and in a sequential order the word “Tax” will appear before (precede) our target value, and the word “Availability” will appear after (follows) our target value. See above screenshot ![]() We can then test this targeting by feeding the Custom Command to an alert command and see if we are able to isolate the tax amount, see above ****Watch Video Demo**** : [![]()](https://youtu.be/lEjre2gNDlI) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/target-text-before-after/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [Webhook Send Request](https://rtila.com/docs/webhook-send-request/) [Download File to Folder](https://rtila.com/docs/download-file-to-folder/) --- # Clipboard Copy & Paste | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/clipboard-copy-paste/#content) View Categories ![]() **Description** This Custom Command allows you to access and manipulate the data that is saved into the Clipboard of your computer. You can copy or save data into your Clipboard either using Control+C or sometimes some website would auto save a post or news URL into your clipboard for instance. And then you can use again this same command for “Pasting” or feeding that initially saved value into the next flow. Import the Custom Command zip file into your Command Custom Tab panel, then use the .rtila template to see a first basic example of how to use this command. ******How to configure and use this Custom Command**** :** ![]() 1\. Input Value: The input value is a placeholder of the input that takes this command! It can be a variable {{variableName}} or a simple text. 2\. choose mode: Two modes are available for this command to process input according to the desired action. 2.1) copy: is the mode that copies the input to the clipboard, you can access it later using the paste mode. 3) paste: this mode is used to pass value in a place or input that you focus on (use the click-on-an-element see template) 0px ****Watch Video Demo**** : [![]()](https://youtu.be/mP56k_Rephk) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/clipboard-copy-paste/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [Download File to Folder](https://rtila.com/docs/download-file-to-folder/) [ChatGPT API Full Control](https://rtila.com/docs/chatgpt-api-full-control/) --- # ChatGPT API Full Control | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/chatgpt-api-full-control/#content) View Categories ![]() **Description** This custom command allows you to use OpenAI’s Chat Completions API and get back the complete response object. ******How to configure and use this Custom Command**** :** ![]() 1) Enter your OpenAI API Key. 2) Specify your preferred model. 3) Choose the role from User, System, and Assistant. 4) Input your prompt for completion. **Chat Completions response format example:** `{` `"choices": [` \ `{` \ `"finish_reason": "stop",` \ `"index": 0,` \ `"message": {` \ `"content": "The history of the internet dates back to the 1960s when the US Department of Defense developed the ARPANET",` \ `"role": "assistant"` \ `},` \ `"logprobs": null` \ `}` \ `],` `"created": 1677664795,` `"id": "chatcmpl-7QyqpwdfhqwajicIEznoc6Q47XAyW",` `"model": "gpt-3.5-turbo-0613",` `"object": "chat.completion",` `"usage": {` `"completion_tokens": 17,` `"prompt_tokens": 57,` `"total_tokens": 74` `}` `}` ****Watch Video Demo**** : [![]()](https://youtu.be/DKDkqVWj5_I) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/chatgpt-api-full-control/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [Clipboard Copy & Paste](https://rtila.com/docs/clipboard-copy-paste/) [Generate Random Numbers and Text](https://rtila.com/docs/generate-random-numbers-and-text/) --- # Regex & JS Filters | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/regex-js-filters/#content) View Categories ![]() **Description** This Custom Command allows you to apply a selection of Regex filters and Javascript rules to clean or complement your existing data. Simply feed into the Custom Command the text input or a variable value using the syntax: {{VariableName}} and this command will output the filtered version of that input in its name when you alert or call it using: {{JS REGEX FILTERS}} ******How to configure and use this Custom Command**** :** ![]() 1) Specify input (text or variable) 2) Dropdown to specify filters that you want to apply 3) Specify RegEx modifier 4) Supported filters ****Watch Video Demo**** : [![]()](https://youtu.be/zToJgtYcjbU) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/regex-js-filters/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [Generate Random Numbers and Text](https://rtila.com/docs/generate-random-numbers-and-text/) [API Bridge Get Post Requests](https://rtila.com/docs/api-bridge-get-post-requests/) --- # Generate Random Numbers and Text | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/generate-random-numbers-and-text/#content) View Categories ![]() **Description** This new custom command would allow you to create random numbers (integer/positive/negative and other formats like price 0.00 etc..) but also text only, alphanumeric, special character etc… Any possible combination just like the options we have to create random Passwords and we say it should contain this but not that, and should have between X and Y number of characters. So technically 3 inputs fields: 1 Dropdown or better a multi-checkbox/selection where we can choose between different types of content conditions. 1 Input field for the minimum number of characters 1 Input field for the maximum number of characters ******How to configure and use this Custom Command**** :** ![]() 1) Specify the minimum length of the generated value 2) Specify the max length of the generated value 3) Option to generate lowercase characters \[a-z\] 4) Option to generate uppercase characters \[A-Z\] 5) Option for the number \[0-9\] 6) Option for symbols (&,”@, etc) ****Watch Video Demo**** : [![]()](https://youtu.be/6X_XbcNHsUo) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/generate-random-numbers-and-text/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [ChatGPT API Full Control](https://rtila.com/docs/chatgpt-api-full-control/) [Regex & JS Filters](https://rtila.com/docs/regex-js-filters/) --- # WhatsApp API send MSG | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/whatsapp-api-send-msg/#content) View Categories ![]() **Description** This Custom Command allows you to connect to your WhatsApp Business number and API to send messages via RTILA. ******How to configure and use this Custom Command**** :** ![]() 1) API Key: API key from your meta business account. 2) Your Phone Number ID: The Phone Number ID from your meta business account. 3) Recipient Number: recipient’s WhatsApp number with country code. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/whatsapp-api-send-msg/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [API Bridge Get Post Requests](https://rtila.com/docs/api-bridge-get-post-requests/) [GET HTML](https://rtila.com/docs/get-html/) --- # How to target a CSS element | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/target-an-element/#content) View Categories RTILA’s selector panel allows data collection, manipulation, and storage. ![]() The first choice that you need to configure is the dataset type. Usually are 2 different sets, depending on the website’s level of structure. In this case, I switched to **Type: Detail**, as I need to grab data from a detail page, and my information does not come as a List or a Grid. Selector Panel [#](https://rtila.com/docs/target-an-element/#selector-panel) ----------------------------------------------------------------------------- Click on the green + icon to Add a new property. The selector’s menu will be populated with some predefined values, but the most important field to fill is the CSS Selector value. ![]() When you move the mouse over the website, some blocks will be highlighted. ![]() Clicking on them will allow RTILA to try to select your data. You can create as many elements as you need, to store each in different fields (structured data). ![]() As you see, when I clicked on the book price, RTILA chooses the class “.price\_color” and the purple square counts how many instances of that class appear on the page. Probably you expect the value should be 1 when targeting single pieces of information. How is this information populated? RTILA uses CSS Selectors to choose the data. To learn CSS selectors we will see first the HTML structure of a website. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/target-an-element/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 04/03/2023 [Standalone Executable Bots](https://rtila.com/docs/standalone-executable-bots/) [Change default Browser](https://rtila.com/docs/change-default-browser/) --- # Change default Browser | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/change-default-browser/#content) View Categories RTILA has a setting that allows you to change or specify the browser that you want to use for running your automations. This option is available in the RTILA Studio top right corner, click on settings and then select the Browser executable file from your drive. For Windows we select by default and we suggest to use Edge as it offers the best speed/stability conditions at the moment. But RTILA supports Edge, Chrome and most Chromium based browsers. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/change-default-browser/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 08/03/2023 [How to target a CSS element](https://rtila.com/docs/target-an-element/) [Export Results to a CSV file](https://rtila.com/docs/export-results-to-a-csv-file/) --- # Export Results to a CSV file | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/export-results-to-a-csv-file/#content) View Categories Introduction [#](https://rtila.com/docs/export-results-to-a-csv-file/#introduction) ==================================================================================== Once an Automation Run has finished, the results and data gathered by your automation will be made available for you inside the Results Panel. The results can be exported into a CSV file which you can save locally. Got to Results Panel & click PREVIEW & EXPORT [#](https://rtila.com/docs/export-results-to-a-csv-file/#got-to-results-panel--click-preview--export) ==================================================================================================================================================== From the Results Panel, make sure that you are selecting the correct result line for your project, you can use the results number as an indication as well as the Name of the project. Them click on PREVIEW & EXPORT for the result line concerned. ![]() Export All Results [#](https://rtila.com/docs/export-results-to-a-csv-file/#export-all-results) ================================================================================================ You will be presented with a preview of the results which you can navigate using the bottom right pagination. And to export these results click on EXPORT ALL RESULTS ![]() Save results as a local CSV file [#](https://rtila.com/docs/export-results-to-a-csv-file/#save-results-as-a-local-csv-file) ============================================================================================================================ You will be presented with a regular save file window where you can choose the folder location and if needed rename the file before saving it. You can then open this CSV file with Excel or Google Sheet or any txt/tabulation software that accepts the .csv file format. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/export-results-to-a-csv-file/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 11/03/2023 [Change default Browser](https://rtila.com/docs/change-default-browser/) [Profile Session Feature](https://rtila.com/docs/profile-session-feature/) --- # API Bridge Get Post Requests | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/api-bridge-get-post-requests/#content) View Categories ![API Bridge]() **Description** The API Bridge Custom Command is an enormous opportunity as it allows you to send Get and Post requests to external APIs and get the results back into your RTILA flow without having to pay for an external API aggregator like Zapier or Pabbly or Make.com Configure your API Bridget command based on the documentation of your target API, and if needed add the authentication parameters. We will soon provide few templates and examples of how to configure this command on known public APIs. See this documentation on how to import and use a Custom Command: [https://rtila.com/docs/custom-commands](https://rtila.com/docs/custom-commands) ******How to configure and use this Custom Command**** :** ![]() ****Watch Video Demo**** : [![]()](https://youtu.be/eZbfHq7Wuqg) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/api-bridge-get-post-requests/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [Regex & JS Filters](https://rtila.com/docs/regex-js-filters/) [WhatsApp API send MSG](https://rtila.com/docs/whatsapp-api-send-msg/) --- # Custom Commands | RTILA Web Business Automation [Skip to content](https://rtila.com/docs-category/custom-commands/#content) View Categories Custom Commands --------------- * [WordPress Posts via API (beta)](https://rtila.com/docs/wordpress-posts-via-api-beta/) * [Webhook Send Request](https://rtila.com/docs/webhook-send-request/) * [Target Text Before After](https://rtila.com/docs/target-text-before-after/) * [Download File to Folder](https://rtila.com/docs/download-file-to-folder/) * [Clipboard Copy & Paste](https://rtila.com/docs/clipboard-copy-paste/) * [ChatGPT API Full Control](https://rtila.com/docs/chatgpt-api-full-control/) * [Generate Random Numbers and Text](https://rtila.com/docs/generate-random-numbers-and-text/) * [Regex & JS Filters](https://rtila.com/docs/regex-js-filters/) * [API Bridge Get Post Requests](https://rtila.com/docs/api-bridge-get-post-requests/) * [WhatsApp API send MSG](https://rtila.com/docs/whatsapp-api-send-msg/) * [1](https://rtila.com/docs-category/custom-commands/page/1) * [2](https://rtila.com/docs-category/custom-commands/page/2) * [3](https://rtila.com/docs-category/custom-commands/page/3) * [4](https://rtila.com/docs-category/custom-commands/page/4) * [❯](https://rtila.com/docs-category/custom-commands/page/2) --- # Profile Session Feature | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/profile-session-feature/#content) View Categories Definition [#](https://rtila.com/docs/profile-session-feature/#definition) =========================================================================== The Profile Session is a feature that allows you to login into your target websites from our Profile Session browser to create a connection/session which can then be used by RTILA Studio and the Run Automation, thus removing the requirement for you to login to that website. We are constantly adding support for new websites and if this feature is not working with your target website you can add that website to our compatibility list by submitting a ticket via [https://rtila.com/support](https://rtila.com/support) Create a profile session [#](https://rtila.com/docs/profile-session-feature/#create-a-profile-session) ======================================================================================================= To create a Profile Session just navigate to PROFILES and then click on the “Link accounts” icon. This will open a new browser window which you can use to navigate to one or more websites, and log in and wait for your customer dashboard to fully load. Once you are connected to your account(s) you can then close this browser instance. Now when you will go back to the Automation Panels or if you run this Automation, it will piggy back on the Profile Session(s) you had created earlier without the need for you to go through the login step. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/profile-session-feature/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 17/03/2023 [Export Results to a CSV file](https://rtila.com/docs/export-results-to-a-csv-file/) [OCR Feature: read text from images](https://rtila.com/docs/ocr-feature-read-text-from-images/) --- # Auto Download Pinterest Images | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/auto-download-pinterest-images/#content) View Categories Use Case [#](https://rtila.com/docs/auto-download-pinterest-images/#use-case) ============================================================================== This Template is a demo and a learning example on how to download a list of images from any image website such as Pinterest. In our example we are going to scroll down then download all images of this Pinterest collection page: [https://www.pinterest.fr/bidhanbajracharya/mustang/](https://www.pinterest.fr/bidhanbajracharya/mustang/) Set Property & Enable Image Download [#](https://rtila.com/docs/auto-download-pinterest-images/#set-property--enable-image-download) ===================================================================================================================================== Create a DataSet then a property and apply the CSS selector of the images you want to download. This can be achieve by click & point on one of the images or by entering a specific CSS selector such as: \[role\] \[data-grid-item=’true’\] \[fetchpriority\]. See Point 1 for the images selector in action. Once your selector is working you need to enable the Download option (see Point 2). Here you also need to specify at least one word as a block for your local name file, in our example we will use “Mustang”. And then specify the file extension, here it is .jpeg (see Point 3). And finally to differentiate the different images on your local drives we will check the box for the timestamp, so that each download image will have a different timestamp appended to the keyword “Mustang” (see Point 4). ![]() Scroll the Pinterest page then Extract Data [#](https://rtila.com/docs/auto-download-pinterest-images/#scroll-the-pinterest-page-then-extract-data) ==================================================================================================================================================== To get the maximum of images available on that page or collection, you can use our Scroll Command and specify how many scroll actions you want to perform before starting to extract and download the images. Here we are using the Infinite type of scroll (point 1), but we will limit it to 5 scrolls (point 2) and between each scroll down we will wait for 3 seconds (point 3). It is important to wait enough time between each scroll to give enough time for the new images to be properly loaded. ![]() Run the Automation project to get the results [#](https://rtila.com/docs/auto-download-pinterest-images/#run-the-automation-project-to-get-the-results) ======================================================================================================================================================== You can now run the project and wait for all the images to be downloaded. Simply follow the screenshot below and choose Run as local project. ![]() Go to Results to export CSV file with location [#](https://rtila.com/docs/auto-download-pinterest-images/#go-to-results-to-export-csv-file-with-location) ========================================================================================================================================================== After running this project RTILA Studio will save the URL of the images online as well as the local path where it downloaded and saved all the images for this project. To find the data you need to click on the RESULTS panel and then for the concerned project click on PREVIEW & EXPORT ![]() In the first column of the results you will notice that the first part of the local path will differ depending on your computer and operating system. But the second part of the file name is using our keyword “Mustang” as well as a unique timestamp added for each image (to avoid filename duplication). In the second column RTILA has also saved the online URL of each concerned image. ![]() Download, edit & extend this Template [#](https://rtila.com/docs/auto-download-pinterest-images/#download-edit--extend-this-template) ====================================================================================================================================== You can download this Public Template from [this link](https://drive.google.com/file/d/11zSPcd7l9ozEXvi-GDRU5QaNlZeHjYbh/view?usp=sharing) . And you are free to modify it and adapt it to your use case and target Pinterest collection pages. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/auto-download-pinterest-images/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 24/03/2023 [OCR Feature: read text from images](https://rtila.com/docs/ocr-feature-read-text-from-images/) [Save current URL using JavaScript](https://rtila.com/docs/save-current-url/) --- # Working with Arrays and Objects in RTILA | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/working-with-arrays-and-objects-in-rtila/#content) View Categories This guide explores how to manage arrays and objects within your RTILA automation. You’ll learn how to leverage **[Dynamic Variable (JavaScript code](https://rtila.com/docs/dynamic-variables-javascript-code/) **) command to manipulate data structures similar to how you would in JavaScript. ![]() We’ll use the JSONPlaceholder API to retrieve sample data. This API provides a convenient way to access demo user information. You can explore the type of data available by clicking this link/endpoint: [https://jsonplaceholder.typicode.com/users](https://jsonplaceholder.typicode.com/users) . Here’s a sample JavaScript code snippet that fetches user data asynchronously: async function getUsers() { try { const response = await fetch('https://jsonplaceholder.typicode.com/users'); if (!response.ok) { throw new Error(`Error fetching users: ${response.status}`); } const data = await response.json(); return JSON.stringify(data); console.log(data); } catch (error) { console.error('Error:', error); } } VALUE=getUsers(); ![]() So we can now access and manipulate that array anywhere throughout your automation, let’s say you need to save the name of the first user that you would later need to use in the flow or extract in the results. with using the dynamic variable, you can achieve it like this `VALUE={{randomUsers}}[0].name`; `// Access the first object ([0]) in the array and then its "name" property` so here we are basically accessing the first object in the array and then the name of the user. Now we can extract that name with using the variable name `{{firstuser_name}}` ![]() ![]() This approach works for accessing any other piece of information within the fetched data. The structure you used to extract the name can be applied to retrieve other properties of the user objects or elements from the array. here is [**the link to the rtila project template**](https://rtila.com/files-download/Objects-and-Arrays-Manipulation.rtila) ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/working-with-arrays-and-objects-in-rtila/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 17/05/2024 [Error handling Strategy](https://rtila.com/docs/error-handling-strategy/) [Auto Comment On WordPress Posts](https://rtila.com/docs/auto-comment-on-wordpress-posts/) --- # Error handling Strategy | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/error-handling-strategy/#content) View Categories Defintion [#](https://rtila.com/docs/error-handling-strategy/#defintion) ========================================================================= The Error Handling Strategy feature notifies you whenever a command or a selector cannot be found. This proactive alert system helps you quickly identify invalid or outdated CSS selectors, allowing you to update them before your flow fails. By default, the notification will stop execution if it encounters an unexpected or missing selector. However, if the absence of the selector is part of your normal flow (for example, an optional field that may not always appear on the page), you can configure the command or group of commands to “Continue Silently,” allowing your flow to proceed without interruption. Key Benefits [#](https://rtila.com/docs/error-handling-strategy/#key-benefits) =============================================================================== * **Proactive Alerts**: Get immediate notification when a selector is invalid or missing, preventing wasted time on debugging downstream errors. * **Flow Flexibility**: If certain elements are optional in your workflow, you can mark corresponding commands to continue without stopping execution. * **Improved Maintenance**: Quickly adapt CSS selectors to changes in the UI or application structure, reducing downtime and errors. Available Options [#](https://rtila.com/docs/error-handling-strategy/#available-options) ========================================================================================= 1. **Alert and Continue** * **Purpose**: Notifies you that a selector was not found but still continues to the next command. * **Use Case**: Choose this if you want to be informed about non-critical errors without interrupting your flow. 2. **Continue Silently** * **Purpose**: Skips the missing selector without throwing any alert or stopping the flow. * **Use Case**: Ideal for optional elements that you expect may not always be present, such as additional form fields or conditional user interface elements. This ensures your flow completes normally even when certain selectors are absent. 3. **Stop and Exit** * **Purpose**: Halts execution entirely when a selector is missing or invalid. * **Use Case**: Use this setting if the missing element is critical to your workflow and you need to investigate before allowing any further steps to run. ![]() Best Practices [#](https://rtila.com/docs/error-handling-strategy/#best-practices) =================================================================================== * **Use “Alert and Continue” for Non-Critical Issues** If you want to be notified without halting the execution, choose this option. It helps maintain awareness of potential issues while preventing unnecessary interruptions. * **Use “Continue Silently” for Known Optional Elements** This is helpful when your interface includes elements that may or may not appear (e.g., an optional field). Doing so prevents your flow from breaking on valid but non-present selectors. * **Use “Stop and Exit” for Critical Flows** If the missing selector is vital to your process, stopping immediately is safer. This prevents potentially invalid actions from happening afterward and allows you to debug the issue. Example Scenario [#](https://rtila.com/docs/error-handling-strategy/#example-scenario) ======================================================================================= 1. **Optional Field** You have a form that sometimes shows an extra field. If the field isn’t present, you don’t want the flow to fail. Configure the command linked to this field to **Continue Silently** so it’s skipped when not found. 2. **Critical Button** Your flow depends on clicking a specific button to proceed. If that button disappears unexpectedly (e.g., UI changes), set that command to **Stop and Exit** to investigate the issue promptly. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/error-handling-strategy/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/03/2025 [Search & Filter Projects](https://rtila.com/docs/search-filter-projects/) [Working with Arrays and Objects in RTILA](https://rtila.com/docs/working-with-arrays-and-objects-in-rtila/) --- # OCR Feature: read text from images | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/ocr-feature-read-text-from-images/#content) View Categories Use case [#](https://rtila.com/docs/ocr-feature-read-text-from-images/#use-case) ================================================================================= In some instances the data you want to extract or scrape is displayed as an image. Certain classifieds websites for instance would display the phone number as an image instead of plain text. For these cases you can use RTILA OCR feature which is available in the Prospection Panel within the Property settings. In our test case we are loading the image that is available at this URL: [https://b2633864.smushcdn.com/2633864/wp-content/uploads/2017/06/example\_01.png?lossy=1&strip=1&webp=1](https://b2633864.smushcdn.com/2633864/wp-content/uploads/2017/06/example_01.png?lossy=1&strip=1&webp=1) Target Image CSS selector & enable OCR [#](https://rtila.com/docs/ocr-feature-read-text-from-images/#target-image-css-selector--enable-ocr) ============================================================================================================================================ First you need to create a DataSet, then a property. Once the property created you can see in Point 1 that we need to select the image selector (it will highlight the image with a yellowish border). Thanks to this selector we can get the URL of the image, but you can see in the result table that the image text itself is not yet captured by RTILA yet. To be able to read the text in the image you need to click on the OCR tab and check the OCR box as well as select the language in which the text is written (see Point 2). ![]() Extract Results to save image URL & OCR data [#](https://rtila.com/docs/ocr-feature-read-text-from-images/#extract-results-to-save-image-url--ocr-data) ======================================================================================================================================================== On the Command panel you need to use the Extract Results command to execute the image URL and OCR reading and saving of data. See screenshot below. ![]() Run the project to extract the data [#](https://rtila.com/docs/ocr-feature-read-text-from-images/#run-the-project-to-extract-the-data) ======================================================================================================================================= Simply run the project and wait for it to finish. It will execute the commands and save the URL and the OCR text of the target image into the result panel. ![]() Find OCR text value in the Results panel [#](https://rtila.com/docs/ocr-feature-read-text-from-images/#find-ocr-text-value-in-the-results-panel) ================================================================================================================================================= Once the project finishes running you can head to the Results panel, then click on the corresponding result line on PREVIEW & EXPORT. This will open a new panel where you can see the Image URL as well as the OCR text value being added on the 1st column. ![]() Once the project finishes running you can head to the Results panel, then click on the corresponding result line on PREVIEW & EXPORT. This will open a new panel where you can see the Image URL as well as the OCR text value being added on the 1st column with the header “Image Text”. You can see below that our OCR function is able to read text even for images that contain noise. ![]() Download this template and test it [#](https://rtila.com/docs/ocr-feature-read-text-from-images/#download-this-template-and-test-it) ===================================================================================================================================== You can download this template from **[this link](https://drive.google.com/file/d/11Ki_FSYA9kc7Y5UDm_t0ZNtY8xOsfXic/view?usp=sharing) ** and import it as a project to test this OCR feature first hand. You can change the Image URL or even use a List Variable to apply OCR extraction to hundred or even thousand of images. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/ocr-feature-read-text-from-images/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 24/03/2023 [Profile Session Feature](https://rtila.com/docs/profile-session-feature/) [Auto Download Pinterest Images](https://rtila.com/docs/auto-download-pinterest-images/) --- # Save current URL using JavaScript | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/save-current-url/#content) View Categories Use case [#](https://rtila.com/docs/save-current-url/#use-case) ================================================================ As you are crawling a more and more pages you may need to capture the URL that is currently associated with the data you are scraping or interacting with, so that you can later go back to that URL to take further actions. RTILA Studio is able to grab and save the current URL visit it by the Run browser thanks to a simple JavaScript line which you can use in the Property settings. JavaScript Line to catch current URL [#](https://rtila.com/docs/save-current-url/#javascript-line-to-catch-current-url) ======================================================================================================================== Copy CodeCopiedUse a different Browser FIELD_VALUE=window.location.href Add JavaScript line to Property Filters Action [#](https://rtila.com/docs/save-current-url/#add-javascript-line-to-property-filters-action) ============================================================================================================================================ Create a DataSet then a Property that you can name “Current URL” for instance. Then click on Filters and then in the Actions input field add the JavaScript line and click save. Once you add the JS line you will see the URL appearing in the result table. ![]() Use JavaScript line inside a Variable Command [#](https://rtila.com/docs/save-current-url/#use-javascript-line-inside-a-variable-command) ========================================================================================================================================== Inside a variable command you need to use a slightly different JavaScript line, see below the variant to use below. You will notice that we need use VALUE for Automation commands whereas we use FIELD\_VALUE on Properties. Copy CodeCopiedUse a different Browser VALUE=window.location.href [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/save-current-url/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 24/03/2023 [Auto Download Pinterest Images](https://rtila.com/docs/auto-download-pinterest-images/) [Search & Filter Projects](https://rtila.com/docs/search-filter-projects/) --- # List Command | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/list-command/#content) View Categories Use case [#](https://rtila.com/docs/list-command/#use-case) ============================================================ The `List` command in RTILA is one of the most powerful and versatile tools available for handling both small and large datasets in your automation processes. It allows you to **store, display, retrieve, and loop through data** from various sources, making it essential for building dynamic and data-driven workflows. ### Key Features of the List Command: [#](https://rtila.com/docs/list-command/#key-features-of-the-list-command) * **Loop Through Data**: The `List` command enables you to create loops, specifying which data the loop will process. This can include URLs, lists of names, locations, keywords, or any other type of data. Each cycle of the loop runs the nested commands on the current data item, making it ideal for repetitive tasks. * **Data Processing**: The `List` command processes data line by line and, when needed, by column as well. This allows you to handle structured datasets (such as tables) with ease, giving you full control over how the data is accessed and used. * **Flexible Data Input**: You can feed data into the `List` command in two ways: * **Manual Input**: Directly enter your data into the `List` command for smaller datasets. * **Text File Input**: For larger datasets, you can call data from a text file, such as CSV files, or any other delimited format (e.g., using `|`, `,`, or custom separators). This is especially useful when dealing with significant amounts of data. * **Accessing Specific Data**: The `List` command allows you to access specific data values from each row or column. For example, when working with single-column data, you can use `{{List}}` to reference the current value. For multi-column data, you can specify a column by using `{{List|0}}` for the first column, `{{List|1}}` for the second, and so on. ### Practical Applications: [#](https://rtila.com/docs/list-command/#practical-applications) * **Storing and Displaying Data**: You can use the `List` command to store multiple lines or rows of data for later use. This allows you to easily display or call data at any point in your automation process, whether it’s URLs, messages, or even values to populate text fields. * **Dynamic Automation**: The `List` command can be integrated with other RTILA commands, enabling powerful automation scenarios such as triggering alerts, navigating to URLs, or performing actions based on specific data points. ### Summary: [#](https://rtila.com/docs/list-command/#summary) The `List` command is a versatile and essential tool in RTILA for handling data of all sizes and types. Whether you’re looping through data, displaying it, or retrieving it for use in other commands, the `List` command provides the flexibility you need to streamline your automation processes. Whether you manually input data or call it from an external file, this command is invaluable for both small-scale and large-scale automation tasks. Add & configure List command [#](https://rtila.com/docs/list-command/#add-configure-list-command) ================================================================================================== Add [#](https://rtila.com/docs/list-command/#add) -------------------------------------------------- You can easily add the list from the variable tap in the official command of the new command panel. ![]() Configure the list command [#](https://rtila.com/docs/list-command/#configure-the-list-command) ------------------------------------------------------------------------------------------------ The list command includes some configurations that you could use for better control. ![]() 1. Here you find the ID of the command 2. Name your command based on the list content 3. You could either choose to enter data manually or from an external file 4. In case you choose to enter data manually, here is the place to do it 5. This is the symbol that would be used to indicate a new column 6. You can choose from which row you want to start 7. Here you can command RTILA not to go further after reaching this row 8. Check the box in case you don’t want the loop to go through line by line and want to select a random row from the list 9. A sequence of characters that forms a search pattern. For example, you can use regex to find all email addresses in a document or to extract all the numbers in a string. 10. This allows you to combine different pieces of data or text 11. Enabling text spinning in a static var means allowing a static variable to store multiple versions of the same text, each with different wordings and phrasings, so that when the variable is called in a program or script, a different version of the text is returned each time. Here is the syntax on how to enter your strings/words so that they can be spun: {Word1|Word2|Word3} 12. This allows you to choose what action to preform in case the data is not found Video tutorial [#](https://rtila.com/docs/list-command/#video-tutorial) ======================================================================== Be sure to check out our List Command tutorial, where you can see the command in action and learn how to use it effectively. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/list-command/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 15/12/2024 [Wait Commands](https://rtila.com/docs/wait-commands-2/) [Incogniton Anti-detect browser](https://rtila.com/docs/incogniton-anti-detect-browser/) --- # Search & Filter Projects | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/search-filter-projects/#content) View Categories Use Case [#](https://rtila.com/docs/search-filter-projects/#use-case) ====================================================================== As you develop more and more Automation projects it may become difficult to visually find back your projects. For that we have a toggle menu which will open searching and filtering options for you. Toggle the search & filter options [#](https://rtila.com/docs/search-filter-projects/#toggle-the-search--filter-options) ========================================================================================================================= Simply click on the toggle then choose your filtering options and the list of projects will refresh accordingly. In our example we looking for all Automation projects that contain Google as a keyword. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/search-filter-projects/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 24/03/2023 [Save current URL using JavaScript](https://rtila.com/docs/save-current-url/) [Error handling Strategy](https://rtila.com/docs/error-handling-strategy/) --- # How-To & Tutorials | RTILA Web Business Automation [Skip to content](https://rtila.com/docs-category/how-to-tutorials/#content) View Categories How-To & Tutorials ------------------ * [How to target a CSS element](https://rtila.com/docs/target-an-element/) * [Change default Browser](https://rtila.com/docs/change-default-browser/) * [Export Results to a CSV file](https://rtila.com/docs/export-results-to-a-csv-file/) * [Profile Session Feature](https://rtila.com/docs/profile-session-feature/) * [OCR Feature: read text from images](https://rtila.com/docs/ocr-feature-read-text-from-images/) * [Auto Download Pinterest Images](https://rtila.com/docs/auto-download-pinterest-images/) * [Save current URL using JavaScript](https://rtila.com/docs/save-current-url/) * [Search & Filter Projects](https://rtila.com/docs/search-filter-projects/) * [Error handling Strategy](https://rtila.com/docs/error-handling-strategy/) * [Working with Arrays and Objects in RTILA](https://rtila.com/docs/working-with-arrays-and-objects-in-rtila/) * [1](https://rtila.com/docs-category/how-to-tutorials/page/1) * [2](https://rtila.com/docs-category/how-to-tutorials/page/2) * [3](https://rtila.com/docs-category/how-to-tutorials/page/3) * ... * [5](https://rtila.com/docs-category/how-to-tutorials/page/5) * [❯](https://rtila.com/docs-category/how-to-tutorials/page/2) --- # Incogniton Anti-detect browser | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/incogniton-anti-detect-browser/#content) View Categories Incogniton use case in RTILA [#](https://rtila.com/docs/incogniton-anti-detect-browser/#use-case) ================================================================================================== Incogniton, a privacy-focused browser, has partnered with RTILA, to enhance the user experience by facilitating the secure and automated management of user profile sessions. This partnership aims to allow users to store their login information securely and enable automatic logins across various online services, including email platforms like Gmail, social media accounts, and other personalized services. **Objective:** The primary goal of this collaboration is to provide a seamless, secure, and efficient method for managing and recalling user session information across multiple platforms without the need for repeated logins or compromising user data security. **Functionality:** 1. **Session Management:** * Users can save their login sessions directly through the Incogniton application interface. Once a session is saved, RTILA can use the profile ID from incogniton and have access to profile sessions added to that incogniton profile * Each session is associated with a unique profile ID within the Incogniton environment, ensuring that session data can only be accessed by authenticated requests from the corresponding user. 1. **Secure Login Automation:** * Upon activating the Incogniton application, the user is automatically authenticated via a secure, token-based system. * Once authenticated, the application retrieves the encrypted session data for each linked account. This data is then used to automatically log the user into their various online profiles in RTILA without the need to manually enter login credentials. * The process employs advanced encryption and token refresh mechanisms to maintain security and session integrity. 1. **Privacy and Security:** * All data transmitted between Incogniton and RTILA’s API is encrypted using industry-standard security protocols. * Sensitive information, such as passwords and personal identifiers, is never stored in plain text and is only accessible through encrypted sessions. * Regular security audits are conducted to ensure that both Incogniton and RTILA adhere to the latest security standards and practices. **User Benefits:** * **Convenience:** Users enjoy a hassle-free browsing experience without the need to remember and enter login credentials for each session. * **Security:** Enhanced security measures are in place to protect user data from unauthorized access and breaches. * **Privacy & delegation:** Users can manage their online presence discreetly, with all session information securely encrypted and stored, and even delegate sessions to an automation developer who will be given access to the session whiteout having the login credentials. The session could be killed once the job is done and then the developer would no longer have access to the session. This use case outlines how Incogniton and RTILA collaborate to provide a secure, efficient, and user-friendly method of handling online sessions, significantly enhancing user experience while prioritizing data security and privacy. **Example Scenario**: Alice, a project manager, uses over ten different tools daily, including email, collaboration platforms, and social media, and needs to automate some tasks using RTILA. With RTILA and Incogniton’s solution, she logs into these tools once via a secure portal. Her sessions are then securely stored and ready to be automatically initiated whenever she needs them, regardless of the device or network she uses. This system not only simplifies her workflow but also protects her account details from potential security threats commonly associated with less secure environments. How to set up Incogniton with RTILA [#](https://rtila.com/docs/incogniton-anti-detect-browser/#use-case) ========================================================================================================= Download the incogniton browser from here: https://incogniton.com/download-incogniton/, and get a subscription that has the “API ACCESS” feature, without this feature, RTILA will not be able to access the profile sessions in incogniton. Make sure to use the RTILA discount code to get a better deal: **RTILA20** Once you have downloaded and got your subscription, you can create a profile session in incogniton containing the profiles of your wanted session to be used in RTILA. See here how to create a new browser profile in incogniton: [https://incogniton.com/knowledge%20center/creating-a-new-browser-profile/](https://incogniton.com/knowledge%20center/creating-a-new-browser-profile/) When your profile is ready, only two steps are needed : Step 1 : Copy your Incogniton profile ID ![]() Step 2 : Paste The profile ID into the RTILA project settings field named incogniton profile ID and save settings . ![]() Now you are all set, and you can inspect the project and automatically log in to all the sessions in that profile without the need to enter any login credentials. Youtube tutorial [#](https://rtila.com/docs/incogniton-anti-detect-browser/#youtube-tutorial) ============================================================================================== [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/incogniton-anti-detect-browser/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 03/06/2024 [List Command](https://rtila.com/docs/list-command/) [Save results to file command](https://rtila.com/docs/save-results-to-file-command/) --- # Save results to file command | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/save-results-to-file-command/#content) View Categories Use case [#](https://rtila.com/docs/save-results-to-file-command/#use-case) ---------------------------------------------------------------------------- Sometimes you may need to access the results of a first part of your flow within the same project and therefore avoid creating a second project. This is where the Save results to file comes in handy. Add & configure the command [#](https://rtila.com/docs/save-results-to-file-command/#use-case) ----------------------------------------------------------------------------------------------- As seen in the screenshots below, you can search/find/add the Save Results to file command from our usual add command process. You can then configure the following sections: 1) Here you can click and select a specific folder where you want to save the results. You could also enter the path manually into the Selected path entry box. Or, often better, leave it empty so that RTILA can save the file for you in the temporary folder of RTILA local installation, which can then be automatically fed to the next command that may need these results. 2) You can specify the file name manually or dynamically using this syntax: {{VariableX}} 3) Depending on the next steps results format requirement you can choose between CSV/JSON/HTML/PLAIN. If you intend to feed the Save to file results content to a List command we suggest you then choose the CSV format. ![]() ![]() Where & when to use this command [#](https://rtila.com/docs/save-results-to-file-command/#use-case) ---------------------------------------------------------------------------------------------------- Naturally, you can only use or call the “Save results to file” command after the “Extract results” has been executed. The “Save results to file” command will then export all the Extracted results into a local file, which you can then upload/pull and feed to your next commands in your flow. Prepare results file & the next flow [#](https://rtila.com/docs/save-results-to-file-command/#use-case) -------------------------------------------------------------------------------------------------------- You can feed your “Save results to file” file path to the Path input field of a List command that will use the “Import from file” option, but you can also feed this path value to an Upload or FTP command or any other command which that has/needs a path input field. First we need to prepare our “Save results to file” command and the flow that will be fed its path value. In this example we will use the temporary folder to auto-save our results file and we will just specify our filename (resultsXYZ) and the file extension (CSV). Our flow will have the List command pulling the file path of the “Save results to file” command to feed to feed the URL column data to a Dynamic JavaScript command that will sanitize the URL before feeding the sanitized URL value to a GO TO URL command. See screenshots below. ![]() ![]() ### Configure List command [#](https://rtila.com/docs/save-results-to-file-command/#configure-list-command-sanitize-data) Now lets configure the List command, here is how: 1) We need to select and use the “Import from file” option 2) We need to feed the current path of the “Save results to file” into the path input field using: {{Save results to file}} 3) We need to make sure to specify the columns data delimiter, which in the case of a CSV file is a comma “,” Note that the {{Save results to file}} syntax will be able to feed the full path that leads to our results file, and this will include the file name as well as the file extension. So you do not need to add anything after this syntax. ![]() ### Sanitize the data/URLs [#](https://rtila.com/docs/save-results-to-file-command/#configure-list-command-sanitize-data) Before using the URLs we first need to sanitize them and remove any special character that may break the GO TO URL command execution. To achieve this we will use a Dynamic JavaScript command with the following JavaScript code: Copy CodeCopiedUse a different Browser VALUE = {{List|2}}.replace(/[^a-zA-Z0-9\-._~:/?#\[\]@!$&'()*+,;=]/g, ''); Assuming the URLs are in the third column of our results table, we can then use this syntax: {{List|2}} to apply the sanitization rule to the correct column/cell. Otherwise replace the 2 with the concerned column number for your project case. See screenshot on the side. ![]() ### Feed URLs to GO TO URL command [#](https://rtila.com/docs/save-results-to-file-command/#feed-urls-to-go-to-url-command) Finally we can now feed the well targeted URLs column content, that has been sanitized by our Dynamic JavaScript command, to our GO TO URL command using this syntax: {{DynamicJS}} The GO TO URL will now safely execute and load the concerned URL and we can add a Wait for loading time command to make sure our data loads properly. This block will now be executed in a loop that is created by the List command, to load one URL after an other until the full content of URLs of our original “Save results to file” command is finished. ![]() Download & import this as a child project [#](https://rtila.com/docs/save-results-to-file-command/#feed-urls-to-go-to-url-command) ----------------------------------------------------------------------------------------------------------------------------------- As this may sound like a lot of work, do not worry, you can use our “Child Project” import feature, which can conveniently import all this flow into your existing project so that you can make use of the this quickly and exactly where it is needed. [**Click h****ere**](https://rtila.com/downloads/save-results-to-file-list-sanitize-go-to-url/) to download this flow as an .rtila file so you can import it using the Child Project feature Check here on how to enable and use the Child Project feature: **[https://rtila.com/docs/child-project/](https://rtila.com/docs/child-project/) ** [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/save-results-to-file-command/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 10/10/2023 [Incogniton Anti-detect browser](https://rtila.com/docs/incogniton-anti-detect-browser/) [RTILA Cloud API Documentation](https://rtila.com/docs/rtila-cloud-api-documentation-updated/) --- # RTILA Cloud API Documentation | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/rtila-cloud-api-documentation-updated/#content) View Categories The RTILA Cloud API allows you to upload then run projects on our secure clouds and retrieve their extracted results. This API enables seamless integration of RTILA’s automation capabilities into your own applications or other applications via API integrations. Important Note: [#](https://rtila.com/docs/rtila-cloud-api-documentation-updated/#upload-project-get-project-uuid) ------------------------------------------------------------------------------------------------------------------- **For Zapier:** Our App is publicly available see here: [**https://zapier.com/apps/rtila/integrations**](https://zapier.com/apps/rtila/integrations) **For Pabbly:** Click on this [**invite link**](https://connect.pabbly.com/share-app/C0MAMlEGVDdSGAJoVgUFIlxICg4AWVM2BB1VRwAPAXkDTQJXBURaMFwQACJUFwRlBE0CaFEOBWVbT1BUCV8CcVNJAT4GGVcKV2RSF1QLWnALaQB3URpUblIDAjFWHgU_XFMKLQBNUw4EClVrABsBRwNaAnkFX1pUXBwAaFQbBC4EYwJrUQgFJVti) and accept invitation to our App (you need to be logged in already) **For Make:** Access is given on invitation basis for now, [**submit a support ticket**](https://rtila.com/support) & mention your Make account email. For other API aggregators you can always use our Webhooks to interact with your Cloud Bots. This documentation is still in early stage and we will soon release a full eLearning course on our Cloud API feature. The Cloud API is still in beta & made available for free for now. It will later be a pay-as-you-consume mode on similar basis as premium proxying providers where the service is charged per GB of traffic consumed plus a minimal fee per run. Upload Project & get Project uuid [#](https://rtila.com/docs/rtila-cloud-api-documentation-updated/#upload-project-get-project-uuid) ------------------------------------------------------------------------------------------------------------------------------------- The first step is to upload your Automation project to the our secure Cloud and obtain the associated Project unique ID For your concerned project click on the Hamburger menu for “more options” ![]() Then click on get UUID ![]() The wait for few seconds for the Project to upload to the Cloud and the resulting Project uuid will be displayed like this: ![]() Authentication [#](https://rtila.com/docs/rtila-cloud-api-documentation-updated/#2-authentication) --------------------------------------------------------------------------------------------------- ### Get your License Key [#](https://rtila.com/docs/rtila-cloud-api-documentation-updated/#2-authentication) To use the RTILA Cloud API, you need to provide your RTILA license key with every request made. You can find your RTILA license key by logging into your RTILA account at [https://rtila.com/my-account/](https://rtila.com/my-account/) Once logged in click on the “View Licenses” link for your RTILA Studio purchase/order ![]() Then click on the little key icon to display your License key, and copy it to use it in your API calls. ![]() ### Authenticate with license key for queries & webhooks [#](https://rtila.com/docs/rtila-cloud-api-documentation-updated/#2-authentication) To authenticate you just send your license key as a value for a query parameter called: key For example: key: 26deeXXXXXXXd65af082XXXXcf53f42 Or you can just include your license key in your URL when using our API end points as webhooks For example: https://cloud.rtila.net/queue/XXUUID45YY99ZZ&key=26deeXXXXXXXd65af082XXXXcf53f42 Endpoints [#](https://rtila.com/docs/rtila-cloud-api-documentation-updated/#endpoints) --------------------------------------------------------------------------------------- ### Run/Queue Project [#](https://rtila.com/docs/rtila-cloud-api-documentation-updated/#run-queue-project) Endpoint: `https://cloud.rtila.net/queue/Project_uuid` * `Project_uuid`: The project UUID obtained from RTILA by clicking the “More options” button (Hamburger Icon) next to the project and selecting “Get UUID.” * Query Parameter: * `key`: Your RTILA license key. When using webhooks you can use this format: https://cloud.rtila.net/queue/XXUUID45YY99ZZ&key=26deeXXXXXXXd65af082XXXXcf53f42 Replace XXUUID45YY99ZZ with your own Project ID, and replace 26deeXXXXXXXd65af082XXXXcf53f42 with your license key. Once you make this query, you shall receive as a response a Result\_uuid, you need to save this value to later on query for the results of this specific run result. ### Get Extracted Results [#](https://rtila.com/docs/rtila-cloud-api-documentation-updated/#get-extracted-results) Endpoint: `https://cloud.rtila.net/results/Results_uuid` * `Results_uuid`: The Results UUID received in the response when queuing the project. * Query Parameter: * `key`: Your RTILA license key. **Example of query for specific results via Webhook:** https://cloud.rtila.net/results/RESxxxUID45YY99ZZ&key=26deeXXXXXXXd65af082XXXXcf53f42 Replace RESxxxUID45YY99ZZ with the Results uuid you obtained when queuing this project, and replace 26deeXXXXXXXd65af082XXXXcf53f42 with your license key. **Example Response:** `{ "completedAt": "Fri Aug 11 2023 09:20:10 GMT+0000 (Coordinated Universal Time)", "datasets": [ { "name": "Dataset-#1_1691671374161_1691745608512_output.json", "data": [ { "My Variable": "Hello world", "projectId": 533, "datasetId": 1691671374161 } ] } ] } ` Save to grepper The “completedAt” field indicates the time when the automation has finished running. Passing Data to an RTILA Cloud bot: [#](https://rtila.com/docs/rtila-cloud-api-documentation-updated/#passing-data-to-an-rtila-cloud-bot) ------------------------------------------------------------------------------------------------------------------------------------------ When queuing a project using the RTILA Cloud API, you have the option to provide variables that will be used during the project’s execution. These variables are passed in the request body under the “variables” field. It’s essential to note that the variables you send must be prepared and declared in the RTILA Project you are queuing using the “Command-line arguments” command. Add your Command-line arguments variables screenshots: ![]() ![]() **Example Request Body to pass variables data:** { "variables": { "variable1": "Hello world", "variable2": "This is the value of variable2" } } [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/rtila-cloud-api-documentation-updated/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 23/09/2023 [Save results to file command](https://rtila.com/docs/save-results-to-file-command/) [FTP / SFTP Command](https://rtila.com/docs/upload-files-to-ftp-server-using-ftp-sftp-command/) --- # FTP / SFTP Command | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/upload-files-to-ftp-server-using-ftp-sftp-command/#content) View Categories Use Case [#](https://rtila.com/docs/upload-files-to-ftp-server-using-ftp-sftp-command/#use-case) ================================================================================================= the FTP (File Transfer Protocol) and SFTP (Secure File Transfer Protocol) commands commonly used in web automation tools. FTP and SFTP are both protocols used to transfer files between a local machine and a remote server. However, SFTP provides a more secure and encrypted connection compared to plain text FTP. RTILA supports both FTP and SFTP for file transfer and management. Below are some of the common fields that are required for FTP and SFTP operations. Add & Configure FTP / SFTP Commands [#](https://rtila.com/docs/upload-files-to-ftp-server-using-ftp-sftp-command/#add-configure-ftp-sftp-commands) =================================================================================================================================================== Add [#](https://rtila.com/docs/upload-files-to-ftp-server-using-ftp-sftp-command/#add) --------------------------------------------------------------------------------------- In order to add the FTP/SFTP command, you can search for the command on the new command search box and click on the add the command button. The second step will be to add the name and the required FTP parameters to access the FTP server. ![]() Configure [#](https://rtila.com/docs/upload-files-to-ftp-server-using-ftp-sftp-command/#configure) --------------------------------------------------------------------------------------------------- ![]() 1. Edit the name of the FTP / SFTP command 2. The “host” field represents the hostname or IP address of the FTP server. For example, it can be something like `_**ftp.example.com**_` or `_**192.168.0.100**_` 3. his field is optional and denotes the port number on which the FTP server is listening for incoming connections. If not specified, the default FTP port (port 21) is used. 4. The username is a unique identifier that helps the FTP server identify who is trying to establish a connection. It represents your FTP account on the server. 5. The password is a secret and confidential piece of information associated with your FTP account. When you attempt to connect to the FTP server with your username, you must provide the corresponding password to prove your identity and gain access to the account. 6. The remote directory field represents the path to the directory on the FTP server where you want to perform file operations (e.g., upload or download). 7. FTP supports two modes of communication: plain FTP (unencrypted) and FTPS (FTP Secure) which is FTP over TLS/SSL. When FTPS is enabled, the data transferred between the client and server is encrypted, providing an additional layer of security. The Secure TLS field allows you to specify whether to use a secure TLS/SSL connection (often referred to as FTPS) or an unencrypted FTP connection. 8. In this field, you can select the attachment file you want to upload to the FTP server [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/upload-files-to-ftp-server-using-ftp-sftp-command/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 22/09/2023 [RTILA Cloud API Documentation](https://rtila.com/docs/rtila-cloud-api-documentation-updated/) [Custom Commands](https://rtila.com/docs/custom-commands/) --- # Custom Commands | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/custom-commands/#content) View Categories We are thrilled to announce an exciting new feature coming to RTILA: Custom Commands! Designed to provide unparalleled flexibility and enhance the user experience for our pro users. Take full control of RTILA and personalize it to suit your unique needs. Develop, import and use your own commands ! IMPORTANT UPDATE [#](https://rtila.com/docs/custom-commands/#how-to-install-a-custom-command) ---------------------------------------------------------------------------------------------- Although Custom Commands are still available as a feature, it has recently been moved to a GitHub for better control/security verification of new third party commands before use. For now only few select developers can have access to this new method, however we have instead published a new and open way for any use to modify and existing command into their own custom command without breaking the system or needing access to our GitHub. Please refer to this documentation: [COMMAND EDITOR](https://rtila.com/docs/command-editor/) The former method now moved to GitHub is critical only if you need to load an npm package dependency, in which case you need to send us your Custom Command files for us to review/validate and push to the main Git so that RTILA Studio can then load your target packages and have your new functionalities ready for us. Contact us for this level of customization. How to install a Custom Command [#](https://rtila.com/docs/custom-commands/#how-to-install-a-custom-command) ------------------------------------------------------------------------------------------------------------- Custom Commands are delivered as zip files and need to be imported through the Command Panel, from the Custom Tab; From the file selection modal window, go to the folder where you saved the Custom Command zip file and select it and click open. [![]()](https://www.youtube.com/watch?v=oA659hp9aT8) Or see screenshots below: ![]() ![]() How to use a Custom Command [#](https://rtila.com/docs/custom-commands/#how-to-install-a-custom-command) --------------------------------------------------------------------------------------------------------- Once you have imported the Custom Command, it will now appear in your Commands > Custom tab, and you can select it and add it to your flow. You can now configure this Custom Command thanks to the inputs fields and options available in that command. See screenshots below: ![]() ![]() You can now have a whole set of new commands and functionalities immediately, without waiting for them to be developed as native commands by the RTILA team. **IMPORTANT:** The zip folder “MUST” be uploaded/updated/delete only through the Add Command > Custom Tab, and RTILA will unzip and save the files in the proper folder and with the appropriate user rights. For information all Custom Commands are saved in the Documents > RTILA > Commands folder. Updating and deleting a Custom Command should also be done via the Add Command panel to avoid glitches. How to develop a Custom Command [#](https://rtila.com/docs/custom-commands/#how-to-install-a-custom-command) ------------------------------------------------------------------------------------------------------------- We have recently opened our Command engine to be able to accept and use Custom Commands developed by third parties and our community. This presents advantages for everyone, from developers to the ultimate end-user. However as this is an advanced feature, it is made available to developers who are already familiar with JavaScript nodeJS as we do not provide direct support for the development of Custom Commands. ### Composition of a Custom Command [#](https://rtila.com/docs/custom-commands/#how-to-install-a-custom-command) #### The zip file package [#](https://rtila.com/docs/custom-commands/#how-to-install-a-custom-command) The basic structure of a Custom Command is a folder that is named after the command, should be zipped and that should contain at least these 2 files: A config.json and a script.js which we will detail below. #### The config.json file [#](https://rtila.com/docs/custom-commands/#how-to-install-a-custom-command) **The config.json:** This file describes the data structure and fields used within RTILA for the user to input its value and configure the said Custom Command. #### The script.js file [#](https://rtila.com/docs/custom-commands/#how-to-install-a-custom-command) **The script.js:** that will contain both the NodeJS library download/call (if needed) as well as the JavaScript code that will interact with the json form variables that you have set on order to provide the target functionalities. ### Custom Commands types & fields [#](https://rtila.com/docs/custom-commands/#available-fields) You can create different types of Custom Commands and for each type of command we are providing the corresponding fields and JavaScript that can be used to properly develop that type of command. You can download our Test/Demo custom commands from the link below to learn from them, the time that we provide a more detailed documentation: [https://drive.google.com/file/d/1jeUZWQ-knvWiGkEfbe8XHTOw2iYCFR0V/view?usp=sharing](https://drive.google.com/file/d/1jeUZWQ-knvWiGkEfbe8XHTOw2iYCFR0V/view?usp=sharing) #### Action command [#](https://rtila.com/docs/custom-commands/#action-command) **User side fields screenshot:** ![]() **JavaScript file content:** Copy CodeCopiedUse a different Browser // Available global varibales: // page // command const response=await fetch('https://jsonplaceholder.typicode.com/todos/1'); const json=await response.json(); await page.evaluate(function (json) { return alert(JSON.stringify(json)); }, json); **Json file content:** Copy CodeCopiedUse a different Browser { "role": "action", "type": "test-action-addon", "label": "Action Addon", "description": "Test Action Addon Description", "defaultValues": { "testText": "My default message", }, "fields": [\ {\ "type": "text",\ "name": "testText",\ "label": "Test Text",\ "description": "Test Text Description."\ }\ ] } #### Condition command [#](https://rtila.com/docs/custom-commands/#condition-command) **User side fields screenshot:** ![]() **JavaScript file content:** Copy CodeCopiedUse a different Browser // Available global varibales: // page // command // conditionMet conditionMet=(command.testText=="123"); **Json file content:** Copy CodeCopiedUse a different Browser { "role": "condition", "type": "test-condition-addon", "label": "Condition Addon", "description": "Test Condition Addon Description", "defaultValues": { "testText": "", }, "fields": [\ {\ "type": "text",\ "name": "testText",\ "label": "Test Text",\ "description": "Enter the secret number."\ }\ ] } #### Event command [#](https://rtila.com/docs/custom-commands/#event-command) **User side fields screenshot:** ![]() **JavaScript file content:** Copy CodeCopiedUse a different Browser // Available global varibales: // page // command // element // commandCssSelector await page.evaluate(function (element) { element.animate([{ transform: "rotate(0) scale(1)" },{ transform: "rotate(360deg) scale(0)" },], {duration: 2000,iterations: 1,}); }, element); await new Promise((resolve) => setTimeout(resolve, 3000)); // This is optional just to wait for the animation **Json file content:** Copy CodeCopiedUse a different Browser { "role": "event", "type": "test-event-addon", "label": "Event Addon", "description": "Test Event Addon Description", "defaultValues": { }, "fields": [] } #### Loop command [#](https://rtila.com/docs/custom-commands/#loop-command) **User side fields screenshot:** ![]() **JavaScript file content:** Copy CodeCopiedUse a different Browser { "role": "loop", "type": "test-loop-addon", "label": "Loop Addon", "description": "Test Loop Addon Description", "defaultValues": {value1,value2}, "fields": [] } **Json file content:** Copy CodeCopiedUse a different Browser // Available global varibales: // page // command while (1) { // this is the main loop if (Bot.prototype.breakLoopCommand) { Bot.prototype.breakLoopCommand = false; break; } if (!(await Bot.prototype.loopFunction(page, command))) break; } // Another example // for (let index = 0;index <= 10;index += 1) { // if (Bot.prototype.breakLoopCommand) { // Bot.prototype.breakLoopCommand = false; // break; // } // if (!(await Bot.prototype.loopFunction(page, command))) break; // } #### Variable command [#](https://rtila.com/docs/custom-commands/#variable-command) **User side fields screenshot:** ![]() **JavaScript file content:** Copy CodeCopiedUse a different Browser // Available global varibales: // page // command // commandValues commandValues=command.testText.toUpperCase(); // Or as an array // commandValues=[commandValues.toUpperCase()]; **Json file content:** Copy CodeCopiedUse a different Browser { "role": "variable", "type": "test-variable-addon", "label": "Variable Addon", "description": "Test Variable Addon Description", "defaultValues": { "testText": "my variable", }, "fields": [\ {\ "type": "text",\ "name": "testText",\ "label": "Test Text",\ "description": "Enter a variable"\ }\ ] } #### All possible fields [#](https://rtila.com/docs/custom-commands/#available-fields) **User side fields screenshot:** ![]() **JavaScript file content:** Copy CodeCopiedUse a different Browser // -Available global varibales for all roles: // page // command // -Only for events: // element // commandCssSelector // -Only for variables: // commandValues // -Only for conditions: // conditionMet await page.evaluate(function (alertMessage) { return alert(alertMessage); }, command.testText); **Json file content:** Copy CodeCopiedUse a different Browser { "role": "action", "type": "blank-all-available-fields", "label": "All Available Fields", "description": "Blank All Available Fields Description", "defaultValues": { "testText": "Default text", "testCheckbox": true, "testTextarea": "Hello\nworld", "testNumber": 10, "testSelect": "value2", }, "fields": [\ {\ "type": "text",\ "name": "testText",\ "label": "Test Text",\ "description": "Test Text Description."\ },\ {\ "type": "checkbox",\ "name": "testCheckbox",\ "label": "Test Checkbox",\ "description": "Test Checkbox Description."\ },\ {\ "type": "textarea",\ "name": "testTextarea",\ "label": "Test Textarea",\ "attributes": { "wrap": "off", "rows": "6" },\ "style": "resize: none",\ "description": "Test Textarea Description."\ },\ {\ "type": "number",\ "name": "testNumber",\ "label": "Test Number",\ "attributes": { "min": "1" },\ "description": "Test Number Description."\ },\ {\ "name": "testSelect",\ "type": "select",\ "label": "Test Select",\ "options": [\ { "name": "value1", "value": "Value 1" },\ { "name": "value2", "value": "Value 2" },\ { "name": "value3", "value": "Value 3" }\ ],\ "description": "Test Select Description."\ }\ ] } ### NodeJS packages install & use [#](https://rtila.com/docs/custom-commands/#nodejs-packages-install-use) #### Clipboard use case [#](https://rtila.com/docs/custom-commands/#nodejs-packages-install-use) RTILA is able to download and install almost any NodeJS package on the local machine, so that you can then call and use the new “server side” functionalities that would otherwise not be available if using only our classic Execute JavaScript command. This opens up a tremendous opportunity for rapid deployment of new commands and functionalities without waiting for a core update of RTILA software. The Clipboard Copy Paste Custom Command is a good example of how we are downloading and using the “clipboardy” package. You need to make sure to add enough wait time for the package to download and then to be called and executed by the Custom Command. Please reverse-learn from this example the time that we provide a more detailed documentation for developers about this subject. See below the code used and how we download/install then use an external NodeJS package: Copy CodeCopiedUse a different Browser await manager.install("clipboardy", "^2.3.0"); const clipboardy = manager.require("clipboardy"); commandValues = command.inputValue; switch (command.selectMode) { case 'copy': commandValues = command.inputValue; clipboardy.writeSync(commandValues); break; case 'paste': commandValues = clipboardy.readSync(); break; case 'reset': clipboardy.writeSync(""); break; } **[Click here](https://drive.google.com/file/d/1cGvvBntYEJKL7MFEZlTsXfJ89V7kETzl/view?usp=sharing) ** to download the Custom Command for the Clipboard to learn from it and further adapt and enhance it to match your needs. **[Click here](https://drive.google.com/file/d/1JZpAxchxCKeJoyxvAsGr7aYkxTuoH2Af/view?usp=drive_link) ** to download the related automation template for you to see how this works from user side. ### Access to locaStorage variables [#](https://rtila.com/docs/custom-commands/#nodejs-packages-install-use) To be completed by Honore soon… Check the alert custom action to see how to interact with pages. Rather than using alert() you can directly return localStorage value. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/custom-commands/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 22/03/2025 [FTP / SFTP Command](https://rtila.com/docs/upload-files-to-ftp-server-using-ftp-sftp-command/) [Integrations](https://rtila.com/docs/integrations/) --- # Add And Configure Dataset Properties | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/add-and-configure-dataset-properties/#content) View Categories What is a dataset property? [#](https://rtila.com/docs/add-and-configure-dataset-properties/#how-to-add-a-new-property) ======================================================================================================================== The dataset property provides a convenient method for retrieving data from a specific webpage element using its CSS selector. By locating the desired element, you can extract the data and customize it according to your requirements. This can be done through various techniques such as applying regular expressions to extract specific data types or utilizing JavaScript code to gain greater control over the extracted information. Within the RTILA studio inspection panel, you’ll find a range of options designed to simplify the process of data extraction and manipulation. This documentation will comprehensively explain all the functionalities and features available to enhance your workflow. How to add a new property? [#](https://rtila.com/docs/add-and-configure-dataset-properties/#how-to-add-a-new-property) ======================================================================================================================= Once you have added your new Dataset by following this documentation: https://rtila.com/docs/inspection-panel-interface-elements/#add-and-rename-a-new-dataset You can now add a new property, by clicking on the ” new property “button then you can rename the property according to what data it extracts. **Note**: use unique names that describe the property content to avoid having duplicate data. Configure Dataset property [#](https://rtila.com/docs/add-and-configure-dataset-properties/#configure-dataset-property) ======================================================================================================================== Basic Configurations [#](https://rtila.com/docs/add-and-configure-dataset-properties/#basic-configurations) ------------------------------------------------------------------------------------------------------------ Once you have added your new property, you can now start selecting the CSS selector of the desired element and manipulate the extracted data by using the following options. ![]() * **CSS Selector:** The CSS selector field is where you can write, past, or inspect the element CSS selector that will be used to locate the element data. * **Name:** This is where you can edit the name of the property describing the content of the property * **Clear**: Clear button lets you clear the CSS selector field and inspect a new CSS selector for your dataset property * **Default Value**: Setting a default value allows you to fill the property data with the entered value in case the property has no data extracted from the CSS selector * **Content:** This is where you control what kind of content you want to be extracted from the element selected by your CSS selector, There are five possible options: 1. **Link(href):** This extracts the link of the element or the (href) Attribute 2. **Input Value:** Extracted the input value of an input element if available 3. **Inner Text:** Extracts the inner text between the element tags 4. **Inner HTML:** Extracts the inner HTML values of the element { Could be other elements tags and their attributes} 5. **Attribute:** With this option selected, the custom attribute field gets enabled which allows you to select the content of any custom attribute inside the element tags Filter Configurations [#](https://rtila.com/docs/add-and-configure-dataset-properties/#filter-configurations) -------------------------------------------------------------------------------------------------------------- The filter configuration tab provides a range of options and techniques to filter property data. You have the flexibility to select preset data filters, create your own regular expression rules, or even utilize JavaScript code to manipulate the FIELD\_VALUE using a variety of JavaScript methods and string manipulation functions. ![]() 1. **Data Filter:** These are some preset filters you can use to manipulate the data to extract what kind of data you need. 2. **Glue:** This allows you to combine different pieces of data or text together ( for Advanced users ) 3. **Regular Expression**: A sequence of characters that forms a search pattern just like the preset data filters, but here you can enter your custom regular expression manually. 4. Here are some options that control the following Action area Javascript input files 5. **Action:** This is the JavaScript input field that allows you to manipulate the FIELD\_VALUE using a variety of JavaScript methods and string manipulation functions. Condition Configurations [#](https://rtila.com/docs/add-and-configure-dataset-properties/#filter-configurations) ----------------------------------------------------------------------------------------------------------------- The Condition configuration tab allows you to configure some conditions on your dataset property, this could be really helpful when you want to only extract the data that applies to certain conditions such as wanting to extract numbers or strings that start with a certain value or wanting to get data that equals certain value. ![]() 1. **Condition Operator:** This refers to the type of the condition operator, The “**AND**” operator is used to create a condition where all specified criteria must be met for the condition to be true. The “**OR**” operator is used to create a condition where at least one of the specified criteria needs to be met for the condition to be true 2. **Condition Type:** With this dropdown menu, you can select what condition you want to apply to your dataset property 3. **Condition Value:** in some conditions, there must be a value that the condition should apply to this is the value that the condition should meet. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/add-and-configure-dataset-properties/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 23/05/2023 [RPA & Desktop OS Commands](https://rtila.com/docs/desktop-os-commands/) [Inspection Panel Interface & Elements](https://rtila.com/docs/inspection-panel-interface-elements/) --- # RPA & Desktop OS Commands | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/desktop-os-commands/#content) View Categories Use Case [#](https://rtila.com/docs/desktop-os-commands/#use-case) =================================================================== Using desktop OS commands allows you to run the Desktop operating system command in RTILA automation. Although RTILA is a web automation tool , the ” Execute a command ” command lets you launch any command (for Windows, Mac and Linux) to open a software or do anything else. How To Use Desktop OS commands [#](https://rtila.com/docs/desktop-os-commands/#how-to-use-desktop-os-commands) =============================================================================================================== 1\. Search and add the Execute Command [#](https://rtila.com/docs/desktop-os-commands/#search-and-add-the-execute-command) --------------------------------------------------------------------------------------------------------------------------- ![]() 2\. Use chat GPT to find OS commands [#](https://rtila.com/docs/desktop-os-commands/#search-and-add-the-execute-command) ------------------------------------------------------------------------------------------------------------------------- ![]() 3\. Execute Command opening an Edge browser window [#](https://rtila.com/docs/desktop-os-commands/#3-execute-command-opening-an-edge-browser-window) ----------------------------------------------------------------------------------------------------------------------------------------------------- ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/desktop-os-commands/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 25/05/2023 [Integrations](https://rtila.com/docs/integrations/) [Add And Configure Dataset Properties](https://rtila.com/docs/add-and-configure-dataset-properties/) --- # Integrations | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/integrations/#content) View Categories Use Case [#](https://rtila.com/docs/integrations/#use-case) ============================================================ More often than not, your automation project will need to integrate and communicate with external systems to achieve your objectives. RTILA has developed multiple ways for you to integrate with your favorite Apps and websites: **1: Native Integrations:** These are integrations that are to be enabled and configured from the Project settings panel. For example our ChatGPT API integration that you will find in RTILA Studio in Projects Panel > Configure > More Options > ChatGPT. The Native integrations only give you configuration settings such as External system API key or other basic configuration. Only RTILA team is able to update and modify these integrations. **2: CMS Plugins Integrations:** RTILA has developped multiple plugins for WordPress & WooCommerce and will soon release a version of these plugins for Shopify, Magento, Prestashop and other major E-commerce/CMS platforms. **3: Cloud API integrations:** You can use our Cloud API to trigger and retrieve RTILA automation flows and their results, using the various end points we are offering. The Cloud API allows you to specify and send/retrieve your own custom variables. See documentation **[here](https://rtila.com/docs/rtila-cloud-api-documentation/) ** **4: JavaScript Integrations:** These are Integrations that rely on on our Execute JavaScript Command to connect to the target websites APIs and send/retrieve data between your flow and the target system. These JS based integration are very powerful and flexible as they allows you to edit/update and even create your own custom functionalities or Integrations for APIs/Websites that are not yet supported by RTILA. **5: API Aggregators:** RTILA Cloud API is also integrated with the major Integration platforms such as Zapier, Pabbly Connect, or Make/Integromat. When creating your automation flows on those platforms you will be able to search for and find RTILA appearing both as a trigger and also as a result/input App. This approach allows you to immediately involve over 5,000 Apps in your RTILA automation flow. **6: Web Interface Integrations:** For all websites who do not have an API RTILA Studio is able to turn them into an API Like website using the web front-end and or back-end to allow you to extend your automation to almost any website. Native Integrations (7+) [#](https://rtila.com/docs/integrations/#use-case) ============================================================================ Google Sheet (save results) – POST (results web hook) – SMTP/Email Results – FTP (save results files) – 2captcha – Local Files (CSV & TXT) – ChatGPT API – CMS Plugin Integrations (3+) [#](https://rtila.com/docs/integrations/#use-case) ================================================================================ WordPress, WooCommerce. Coming soon: Shopify, Magento, Prestashop and more…. JavaScript Integrations (10+) [#](https://rtila.com/docs/integrations/#use-case) ================================================================================= Google Sheets (lookup, read & write) – ChatGPT API (extended) – Dall-E (text to image) – Azure Computer Vision (image to text) – MySQL & MariaDB – Trello – AirTable – Cloudinary – CloudFlare – … Coming soon: RIKU.ai, HuggingFace etc… API Aggregators (5,000+) [#](https://rtila.com/docs/integrations/#use-case) ============================================================================ Zapier – Pabbly Connect – Make – Integromat (more coming…) Cloud API Integrations (100,000+) [#](https://rtila.com/docs/integrations/#use-case) ===================================================================================== Any website that has an API and offer end points through which data can be send and received will be accessible to your Automation Flows via our Cloud API Web Interface Integrations (1,000,000+) [#](https://rtila.com/docs/integrations/#use-case) =========================================================================================== Any website that displays the target elements or information in their HTML source code can be automated by RTILA, opening the door to millions of websites which can be scrapped and automated both form the front-end and also the back-end even after a login page. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/integrations/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 25/05/2023 [Custom Commands](https://rtila.com/docs/custom-commands/) [RPA & Desktop OS Commands](https://rtila.com/docs/desktop-os-commands/) --- # Inspection Panel Interface & Elements | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/inspection-panel-interface-elements/#content) View Categories Inspection Panel [#](https://rtila.com/docs/inspection-panel-interface-elements/#inspection-panel) =================================================================================================== The inspection panel allows you to edit, add, delete, manipulate, and inspect the data you want to extract from your project. This panel is all about extracting the data you need from any webpage and manipulating this data to be represented in the way that is most useful to your automation project. The process of inspection and data representation could be tricky and hard to work with in some websites with dynamic views and interfaces, but with the help of RTILA, you can inspect the data with the help of the RTILA selector in the browser panel. The inspection panel has many elements and possible configurations that could help you extract and manipulate data. This documentation will help you understand the main aspects of this panel and get familiar with their functionality. Inspection Panel Main Elements [#](https://rtila.com/docs/inspection-panel-interface-elements/#inspection-panel-main-elements) =============================================================================================================================== Add and rename a new dataset [#](https://rtila.com/docs/inspection-panel-interface-elements/#add-and-rename-a-new-dataset) --------------------------------------------------------------------------------------------------------------------------- To add a new dataset you can click on the button ” New Dataset “, Once you click you can see the new dataset in place. To rename the dataset you can click on the “configure dataset ” button and edit the name of your new dataset. Add and configure a new property [#](https://rtila.com/docs/inspection-panel-interface-elements/#add-and-configure-a-new-property) ----------------------------------------------------------------------------------------------------------------------------------- To add a new property, you can click on the ” new property “button then you can rename the property according to what data it extracts Switch dataset type [#](https://rtila.com/docs/inspection-panel-interface-elements/#switch-dataset-type) --------------------------------------------------------------------------------------------------------- Switching dataset type means that you can switch the data of your dataset properties to be shown as a **List** or in **Details** mode which gathers each property values in one row separated by a space Toggle property name [#](https://rtila.com/docs/inspection-panel-interface-elements/#toggle-property-name) ----------------------------------------------------------------------------------------------------------- This feature allows you to switch between showing the property name in each property or showing just the property count [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/inspection-panel-interface-elements/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 21/05/2023 [Add And Configure Dataset Properties](https://rtila.com/docs/add-and-configure-dataset-properties/) [Config & binaries files for Standalone](https://rtila.com/docs/config-binaries-files-for-standalone/) --- # Official Commands | RTILA Web Business Automation [Skip to content](https://rtila.com/docs-category/official-commands/#content) View Categories Official Commands ----------------- * [List Command](https://rtila.com/docs/list-command/) * [Incogniton Anti-detect browser](https://rtila.com/docs/incogniton-anti-detect-browser/) * [Save results to file command](https://rtila.com/docs/save-results-to-file-command/) * [RTILA Cloud API Documentation](https://rtila.com/docs/rtila-cloud-api-documentation-updated/) * [FTP / SFTP Command](https://rtila.com/docs/upload-files-to-ftp-server-using-ftp-sftp-command/) * [Custom Commands](https://rtila.com/docs/custom-commands/) * [Integrations](https://rtila.com/docs/integrations/) * [RPA & Desktop OS Commands](https://rtila.com/docs/desktop-os-commands/) * [Add And Configure Dataset Properties](https://rtila.com/docs/add-and-configure-dataset-properties/) * [Inspection Panel Interface & Elements](https://rtila.com/docs/inspection-panel-interface-elements/) * [1](https://rtila.com/docs-category/official-commands/page/1) * [2](https://rtila.com/docs-category/official-commands/page/2) * [3](https://rtila.com/docs-category/official-commands/page/3) * ... * [6](https://rtila.com/docs-category/official-commands/page/6) * [❯](https://rtila.com/docs-category/official-commands/page/2) --- # GET HTML | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/get-html/#content) View Categories ![]() **Description** This Custom Command allows you to access and save the whole HTML content of the currently loaded page. You can then save this HTML source code into a property, download it as a file, or feed it to another command/flow for further parsing or other actions. ******How to configure and use this Custom Command**** :** ![]() 1) The name of the command that represents the HTML code of the current page. 2) Export the variable in the inspection mode. ****Watch Video Demo**** : [![]()](https://youtu.be/tFdC2IrbYuo) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/get-html/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [WhatsApp API send MSG](https://rtila.com/docs/whatsapp-api-send-msg/) [Slack Notification Command](https://rtila.com/docs/slack-notification-command-2/) --- # Mac OS Installation Warning | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/mac-os-installation-warning/#content) View Categories Issue description [#](https://rtila.com/docs/mac-os-installation-warning/#issue-description) ============================================================================================= We are in the process of obtaining a certified Apple Developer account to be able to digitally sign our software for Mac OS. But the compliance process is a lengthy one and in the meantime we call upon your patience to follow the below procedure to be able to launch RTILA Studio on Mac OS. For the moment you can follow the Apple instructions on how to launch Apps from unidentified developers see here: [https://support.apple.com/en-ke/guide/mac-help/mh40616/mac](https://support.apple.com/en-ke/guide/mac-help/mh40616/mac) About the warning [#](https://rtila.com/docs/mac-os-installation-warning/#about-the-warning) ============================================================================================= ![]() The warning detailed in the screenshot beside is a common warning for mac applications that have been created by developers who do not have a verified Apple developer account. RTILA is still in the process of getting its Apple Developer account validated and this situation is a temporary one. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/mac-os-installation-warning/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 26/06/2023 [AppSumo Code Stacking & Upgrade](https://rtila.com/docs/appsumo-code-stacking-upgrade/) [Deactivate V8 License](https://rtila.com/docs/deactivate-v8-license/) --- # Directory Get Files Path | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/directory-get-files-path/#content) View Categories ![Directory Get Files Path]() **Description** This custom command will allow you to output the files path of all or specific files from a chosen folder, based on the file type or keywords contained or not contained in the file name. You can then feed this command value into a List or other command flows to pull the content from or apply changes to these selected files. ******How to configure and use this Custom Command**** :** ![]() 1) Select any file of a Folder to target it. 2) Specify file extension if needed. 3) A keyword that should be in filename. 4) A keyword that should not be in filename. ****Watch Video Demo**** : [![]()](https://youtu.be/wEXh3fNNaDY) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/directory-get-files-path/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Target Elements With Text Value](https://rtila.com/docs/target-elements-with-text-value/) [Folder and File Monitoring](https://rtila.com/docs/folder-and-file-monitoring/) --- # Target Elements With Text Value | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/target-elements-with-text-value/#content) View Categories ![Target Elements with text value]() **Description** This custom command will allow you to target and interact with an element based on its text content. A dropdown option will allow you specify if you are looking for the text value in the innerText (visible text) or any other attribute such as href or src… And if there are more than 1 element containing that text value in that given attribute in the source code, you have the option to select if you want to interact with all the occurrences (Multiple) or you can select one specific occurrence (Single) by specifying it’s position: 1 for the 1st occurrence etc… This essentially allows you to target one specific element, or a series of element based on their specific text content and then feed the results to List to create a loop of actions on those elements. You also have the possibility to specify if you want case-sensitivity or not and if you want partial of exact match for the target text you have chosen. Last but not least you can specify a “negative keyword” that you do not want to be present in the target element attribute. ******How to configure and use this Custom Command**** :** ![]() 1) Specify action : Read or Click. 2) Text you target. 3) Specify position of occurrence or leave empty to catch all. ![]() 4) Target inner text value or a specific attribute. 4.1) Specify attribute if chose Custom. 5) Return one value or a specific position if configured or all if position field is empty. 6) Your case-sensitiveness requirement. 7) Target exact or partial match. ****Watch Video Demo****: [![]()](https://youtu.be/i6yMC_Y_P2E) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/target-elements-with-text-value/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Slack Notification Command](https://rtila.com/docs/slack-notification-command-2/) [Directory Get Files Path](https://rtila.com/docs/directory-get-files-path/) --- # Slack Notification Command | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/slack-notification-command-2/#content) View Categories ![]() **Description** Slack notification command is a feature that allow you to send automated notifications to a specific channel or person in Slack using Rtila automation through the webhook URL of your slack application or channel. ******How to configure and use this Custom Command**** :** ![]() You can use the “Slack notification” command by adding it from the action tap of new command interface , once added there are some fields that need to be edited to be able to send slack notification. ![]() 1 ) Edit the name of the slack notification command 2) Enter your webhook URL (if you don’t know how to get it , read the next block ) 3) Write the text or message you want to send using the slack notification. **How to get the webhook URL**: Create a new webhook URL for your Slack workspace: 1\. Go to [https://api.slack.com/apps](https://api.slack.com/apps) , and sign in to your Slack account 2\. Create a new app or select an existing one 3\. Go to the “Incoming Webhooks” section and activate it 4\. Click on “Add New Webhook to Workspace” and select the channel you want to post messages to 5\. Copy the generated webhook URL Paste the webhook URL in the second field **Screenshot of Slack Custom command in action** ![]() ****Watch Video Demo**** : [![]()](https://youtu.be/8VEr2m45rBg) **How to get the Webhook URL** [![]()](https://youtu.be/Oh0_0R4mffA) **How to Run the command** [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/slack-notification-command-2/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 06/01/2025 [GET HTML](https://rtila.com/docs/get-html/) [Target Elements With Text Value](https://rtila.com/docs/target-elements-with-text-value/) --- # Folder and File Monitoring | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/folder-and-file-monitoring/#content) View Categories ![Folder & File Monitoring]() **Description** This Custom Command is like a bridge or universal integration with any Desktop or RPA Software or any Python or other scripts that do something somewhere and then create files/folders. RTILA can then, upon the creation, edition of deletion of a given file in a given folder, recognize the change and feed the file path to an RTILA Flow that could then read/use the content of those files to do something and then you can use our other RPA Files commands to rename, move or trash the files that had the initial change detected. This custom commands opens up so many possibilities of involving other processes into your RTILA flows. ******How to configure and use this Custom Command**** :** ![]() 1) Select any file in target folder. 2) Type of change to monitor. 3) Specify file type if needed. ********Watch Video Demo********: [![]()](https://youtu.be/UGc1GAkSjhQ) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/folder-and-file-monitoring/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Directory Get Files Path](https://rtila.com/docs/directory-get-files-path/) [Get iFrame URL](https://rtila.com/docs/get-iframe-url/) --- # Get File Content | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/get-file-content/#content) View Categories ![]() **Description** This command allows you to specify a file path and RTILA will go get the file content and serve it as the output value of this command. At the moment this command supports only .csv and .txt formats but we will be adding more file formats as we go. ******How to configure and use this Custom Command**** :** ![]() 1) Choose file or paste file path. _Following steps are optional_ 2) Character(s) you need to replace in the returned content 3) Character to replace with 4) Separator, for instance if you wish to find and replace many characters in field 2 ex: `#;$;&` then the separator is `;` ****Watch Video Demo**** : [![]()](https://youtu.be/3_XM-NdX8kM) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/get-file-content/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Get iFrame URL](https://rtila.com/docs/get-iframe-url/) [Verify License Easy Digital Downloads](https://rtila.com/docs/verify-license-easy-digital-downloads/) --- # Get iFrame URL | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/get-iframe-url/#content) View Categories ![Get iFrame URL]() **Description** This custom command will read the source code and find all the iframes and feedback each iframe with its unique CSS locator as well as its URL. You can select to get all the existing iFrames or specify the position of the one you want, for example the first or the second iframe that appears in the source code. ******How to configure and use this Custom Command**** :** ![]() 1) Specify the position of the iframe or 0 to get all iframes that exists on the page ****Watch Video Demo**** ( Coming Soon ) : ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/get-iframe-url/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Folder and File Monitoring](https://rtila.com/docs/folder-and-file-monitoring/) [Get File Content](https://rtila.com/docs/get-file-content/) --- # Save Variable to File | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/save-variable-to-file/#content) View Categories ![]() **Description** This Custom Command allows you to save dynamic content into a file. ******How to configure and use this Custom Command**** :** ![]() 1) Paste the directory path or choose a random file within the directory where you intend to save the file containing your dynamic content. 2) The variable containing the content or the content itself. 3) The file name or leave empty to use default filename. 4) The file format you wish to use for saving your file. ****Watch Video Demo**** : [![]()](https://youtu.be/X-jyl9Yebic) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/save-variable-to-file/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Verify License Easy Digital Downloads](https://rtila.com/docs/verify-license-easy-digital-downloads/) [Rename File](https://rtila.com/docs/rename-file/) --- # Rename File | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/rename-file/#content) View Categories ![]() **Description** This Custom Command allows you to rename a file and optionally modify its extension. ******How to configure and use this Custom Command**** :** ![]() 1) Select the file you wish to rename. 2) New filename. 3) New file extension (optional) ****Watch Video Demo**** : [![]()](https://youtu.be/7bC4iv3xDMI) **Rename File Using Static File Path** [![]()](https://youtu.be/F2iOUE3tv1s) **Rename File Using Dynamic File Path** [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/rename-file/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Save Variable to File](https://rtila.com/docs/save-variable-to-file/) [Move File to New Directory](https://rtila.com/docs/move-file-to-new-directory/) --- # Verify License Easy Digital Downloads | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/verify-license-easy-digital-downloads/#content) View Categories ![]() **Description** This custom command allows you to secure your premium template and standalone bot to only run if your end-user has a valid license. This command is based on the EasyDigitalDownloads (EDD) plugin for WordPress which is a very good license management for software and donwloads. You can configure the command to check either your software if listed on our Marketplace, or replace the base URL with your own EDD instance. ******How to configure and use this Custom Command**** :** ![]() 1) – Name of your standalone bot. 2) – The base URL with your EDD instance. 3) – ID of your premium template or standalone bot listing. 4) – User’s license key which will be entered from a prompt. 5) – User’s email associated with the license key. ****Watch Video Demo**** : [![]()](https://youtu.be/ZydU0rKwumc) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/verify-license-easy-digital-downloads/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Get File Content](https://rtila.com/docs/get-file-content/) [Save Variable to File](https://rtila.com/docs/save-variable-to-file/) --- # Move File to New Directory | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/move-file-to-new-directory/#content) View Categories ![]() **Description** This Custom Command allows you move a file to another folder. ******How to configure and use this Custom Command**** :** ![]() 1) File you need to move to another directory. 2) Destination directory; you can paste the path here or just select a random file in that directory. ****Watch Video Demo**** : [![]()](https://youtu.be/0KFMlOFBR6k) **How to Move File to New Directory Using Static File Path** [![]()](https://youtu.be/fkGsfu43mN4) **How to Move File to New Directory Using Dynamic File Path** [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/move-file-to-new-directory/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Rename File](https://rtila.com/docs/rename-file/) [Delete File](https://rtila.com/docs/delete-file/) --- # Mouse Events | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/mouse-events/#content) View Categories ![]() **Description** This custom command allows you to reproduce all the mouse events such as: click, right-click, double-click, mouse up, mouse down, mouse move, mouse over, mouse out, mouse enter, mouse leave ******How to configure and use this Custom Command**** :** ![]() 1\. CSS selector of the element 2\. Choose the event from the list of events ****Watch Video Demo**** : [![]()](https://youtu.be/DFq_ncUVOyY) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/mouse-events/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Delete File](https://rtila.com/docs/delete-file/) [Get System Info](https://rtila.com/docs/get-system-info/) --- # Airtable Get & Update Records | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/airtable-get-update-records/#content) View Categories ![]() **Description** This Custom Command allows you to interact with Airtable databases, offering two key functionalities: **1\. Data Retrieval Mode:** This mode enables users to extract specific data from Airtable tables based on defined criteria. Users can effortlessly retrieve information such as customer profiles, inventory records, or project statuses, streamlining the process of accessing relevant data for analysis or integration into automation workflow. **2\. Data Update Mode:** With the data update mode, users can seamlessly modify existing records within their Airtable database. Whether it’s updating contact information, adjusting inventory levels, or marking tasks as complete, this command allows users to maintain accurate and up-to-date data directly from the RTILA interface, facilitating efficient data management processes. In essence, the Airtable command in RTILA offers a comprehensive suite of tools for both retrieving and updating data within Airtable databases, and enabling smoother workflow automation. ******How to configure and use this Custom Command**** :** **Configure AirTable Get/Update Records Command** ![]() 1) Optionally rename the command. 2) Get the Airtable token and paste it here. 3) The airtable base ID is found in the airtable URL and it starts with “app” and ends before the “/”. 4) Here you need to enter the table name exactly as it shown in the Airtable website. 5) Select the operation mode between Get Records or Update Records. ![]() 6) Here you need to specify the column name in case you need to search in one column , but in case you didn’t specify then the command will search in the whole table. 7) In this field you can specify a value to be searched, just like shown in the picture, you can get all rows that has “example@gmail.com” value in their emails. 8) Here you can select what data columns to retrieve separated by ” , “ 9) Here you can specify which columns to update of the rows that matches your search criteria , Enter the column – value pairs separated by comma N.B: To update values you have to select operation mode as **“Update Records**” on step 5. ****Watch Video Demo**** : [![]()](https://youtu.be/vGTiTxIUUmk) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/airtable-get-update-records/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Get System Info](https://rtila.com/docs/get-system-info/) [Email Send Via SMTP](https://rtila.com/docs/email-send-via-smtp/) --- # Delete File | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/delete-file/#content) View Categories ![]() **Description** This Custom Command allows you delete a file by specifying its path. ******How to configure and use this Custom Command**** :** ![]() 1) The path of the file you wish to delete ****Watch Video Demo**** : [![]()](https://www.youtube.com/watch?v=T_aXq5zY6iU) **How to Delete File Using Static File Path** [![]()](https://www.youtube.com/watch?v=egiL1MWwzlc) **How to Delete File Using Dynamic File Path** [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/delete-file/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Move File to New Directory](https://rtila.com/docs/move-file-to-new-directory/) [Mouse Events](https://rtila.com/docs/mouse-events/) --- # Get System Info | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/get-system-info/#content) View Categories ![]() **Description** This custom command allows you to get most of the information about your Desktop hardware and system. This can be used to create a conditional logic and flow that is adapted to the operating system of the machine where the automation is run. **This Custom Command scrapes the following data properties:** OS Name Version Build Number Manufacturer Model CPU Manufacturer CPU Brand Total Memory (RAM) Available Memory (RAM) Disk Type Disk Name Disk Vendor Disk Size ******How to configure and use this Custom Command**** :** ![]() ****Watch Video Demo**** : [![]()](https://youtu.be/6qwGW43eL9w) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/get-system-info/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Mouse Events](https://rtila.com/docs/mouse-events/) [Airtable Get & Update Records](https://rtila.com/docs/airtable-get-update-records/) --- # Email Send Via SMTP | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/email-send-via-smtp/#content) View Categories ![]() **Description** This custom command allows to send emails directly from RTILA automation flows using either Gmail SMTP or custom domain mail servers. ******How to configure and use this Custom Command**** :** ![]() 1) The SMTP server host address. 2) The port number on the SMTP server to establish the connection for sending the email. Common values are 25, 465 (for SSL), or 587 (for TLS). 3) A boolean value indicating whether to use a secure connection (SSL/TLS) when communicating with the SMTP server. Set to `True` for secure connections and `False` for insecure connections. This should be determined based on the configuration of your SMTP server. Some servers may require a secure connection while others may not. It’s essential to consult your server’s documentation or contact your email service provider to determine the appropriate value for this field based on your server’s configuration. 4) The username or email address used for authentication when connecting to the SMTP server. 5) The password associated with the username/email address for authentication when connecting to the SMTP server. Note that If using Gmail SMTP, the password should be an Application Password generated from your Google account, not the plain email account password. You can generate an application password through your Google account settings. For more information on how to generate it you can refer to the [Google Account Help documentation.](https://support.google.com/accounts/answer/185833?hl=en) ![]() 6) The email addresses of the recipients who will receive the email. Multiple recipients can be separated by commas or new lines. 7) Optional. Carbon copy recipients’ email addresses. Similar to `recipients`, multiple addresses can be separated by commas or new lines. 8) Optional. Blind carbon copy recipients’ email addresses. Similar to `cc`, multiple addresses can be separated by commas or new lines. 9) The subject line of the email. ![]() 10) The content type of the email body. It can be either HTML content or plain text content. 11) The main content of the email message. It can be either HTML or plain text, depending on the content type you selected. 12) Optional. The file path to the attachment that will be included with the email.. ****Watch Video Demo****) : [![]()](https://youtu.be/_DoMwOmBVk4) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/email-send-via-smtp/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Airtable Get & Update Records](https://rtila.com/docs/airtable-get-update-records/) [Wait For Element to disappear](https://rtila.com/docs/wait-for-element-to-disappear/) --- # OCR Passport Reader | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/ocr-passport-reader/#content) View Categories ![OCR Passport Reader]() **Description** This custom command allows you to extract and read detailed passport information from an image or PDF file stored on your local computer. Simply provide the file path, your RTILA Prime License Key, and the associated email. It processes the document to retrieve information such as country, expiry date, gender, given names, surname, birth date, birth place, ID number, issuance date, and machine-readable zone (MRZ) data. This is a secure and efficient way to digitize passport details for your records. ******How to configure and use this Custom Command**** :** ![]() 1) Provide the file path to your passport image or PDF. 2) Enter your RTILA Prime License Key. 3) Input the email associated with your RTILA Prime License. ****Watch Video Demo**** : [![]()](https://youtu.be/T1LSATDTtOA) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/ocr-passport-reader/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Wait For Element to disappear](https://rtila.com/docs/wait-for-element-to-disappear/) [Target Element in Shadow Dom](https://rtila.com/docs/target-element-in-shadow-dom/) --- # Wait For Element to disappear | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/wait-for-element-to-disappear/#content) View Categories ![]() **Description** By using this custom command, you can avoid the hassle of adding multiple wait times or dealing with dynamic timing changes. You just need to pass an element (CSS selector) that shows up.  Some websites have spinners or other elements that appear and you need to wait for them to disappear so that you do your next automation but, it’s difficult to estimate how long it will take for them to disappear. Instead of manually calculating or estimating the wait time, you can use this command to automate the process. ******How to configure and use this Custom Command**** :** ![]() 1) Target element CSS selector 2) Timeout of checking. 3) Delay before command start check (in seconds). **Watch Video Demo :** [![]()](https://youtu.be/14DhW8eQ5gA) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/wait-for-element-to-disappear/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Email Send Via SMTP](https://rtila.com/docs/email-send-via-smtp/) [OCR Passport Reader](https://rtila.com/docs/ocr-passport-reader/) --- # Airtable Update Records | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/airtable-update-records/#content) View Categories ![]() **Description** This Custom Command allows you to parse any web page and find specific URLs that you want to capture and later feed to an other command or flow. This for instance can be used to get all the URLs of products listings in a given page or can be used to get specific URLs from an xml sitemap… Various options detailed below will allow you to specify your URL targeting and even find, replace, append or postpend data to URLs that would otherwise be invalid or incomplete. ******How to configure and use this Custom Command**** :** ![]() 1) Specify a keyword that the URL must contain. 2) Specify the file extension that you want to target, for example only .html pages, or only .mpg or .php etc… 3) Sometimes only the relative url is in the source code and you may want to append it with the main domain name/URL so that the final URL will start with https://website.com/folder/url-slug-extracted.php 4) In some other cases you may want to add some text at the end of the URL (Postpend) for example adding “/index.html” to specifically load a file in that original folder ![]() 5) – In some cases multiple URLs can be contained in the same element. For instance an image may have a URL in it’s src as well as a different URL in it’s srcset attribute. By choosing “ALL” you will get both URLs. By choosing “Custom Attribute” only the URL of the attribute you specify in point 6 would be targeted. 6) – If you chose “Custom Attribute” in Point 5 then specify the target attribute here. 7) – If you want certain characters to be removed or replaced specify them here 8) – Add here the replacement characters or leave empty to delete the characters specified in point 7 9) – Often the same URL can be present more than once on the same page, choose “Yes” if you wish to automatically remove/avoid duplicates. ****Watch Video Demo**** : ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/airtable-update-records/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Airtable Get Records](https://rtila.com/docs/airtable-get-records/) [Sanitize URL](https://rtila.com/docs/sanitize-url/) --- # Target Element in Shadow Dom | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/target-element-in-shadow-dom/#content) View Categories ![Target Element in Shadow DOM]() **Definition:** Shadow DOM is a web standard that creates hidden, encapsulated DOM trees, preventing styles and content from being accessed or modified by external scripts, which can complicate web scraping efforts. **Description**: This command allows you to target and interact with an element even if it is hidden/contained within a Shadow DOM which usually makes that element not accessible to automation tools. With this command you will be able to Get/Read, Insert/Write, Click or Double Click that element and keep your automation flow going. **Note**: This functionality is only supported when the Shadow DOM is in “**open**” mode.If the Shadow DOM is in “**closed**” mode, it will not be accessible to external automation tools or scripts due to the strict encapsulation of the DOM’s structure. ![]() Explanations: [#](https://rtila.com/docs/target-element-in-shadow-dom/#explanations) ------------------------------------------------------------------------------------- You will find below guidance as to what each configuration point allows you to do. Point 1: Command name, you can rename it to better document your flow Point 2: The element that hosts and contains the shadow DOM code Point 3: The element within the shadow DOM that you target Point 4: Text value to input in the shadow element (if applicable) Point 5: The attribute of the target element you want (src, href etc.) Point 6: The action you want to apply to the target element/attribute **This template scrapes the following data properties:** Property ****This template uses the following commands & functions:**** [Login Setup](https://rtila.com/docs/go-to-url-command/) [Populate Login](https://rtila.com/docs/populate-text-field-command/) [Click on Continue](https://rtila.com/docs/click-on-an-element-event/) [Populate Password](https://rtila.com/docs/populate-text-field-command/) [Click on Submit Button](https://rtila.com/docs/click-on-an-element-event/) [Wait for Page to Load](https://rtila.com/docs/wait-commands-2/#wait-time) [Click People Directory](https://rtila.com/docs/click-on-an-element-event/) [Click on Cards](https://rtila.com/docs/click-on-an-element-event/) [Wait Time](https://rtila.com/docs/wait-commands-2/#wait-time) [Populate Comment](https://rtila.com/docs/populate-text-field-command/) [Click on Send Arrow Comment](https://rtila.com/docs/click-on-an-element-event/) [Press Escape](https://rtila.com/docs/press-a-keyboard-key-command/) ****Watch Video Demo**** : [![]()](https://www.youtube.com/watch?v=iOcgw6C3-aI) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/target-element-in-shadow-dom/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [OCR Passport Reader](https://rtila.com/docs/ocr-passport-reader/) [Airtable Get Records](https://rtila.com/docs/airtable-get-records/) --- # Sanitize URL | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/sanitize-url/#content) View Categories This custom command validates and sanitizes a given URL string, ensuring it is well-formed and safe for use. It trims any whitespace, validates the URL format, and returns a sanitized version as a string. If the input is invalid, it throws an error with a descriptive message. ******How to configure and use this Custom Command**** :** ![]() 1) Pass a raw URL to sanitize. ****Watch Video Demo**** : [![]()](https://youtu.be/ADe4M4Ka2d0) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/sanitize-url/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Airtable Update Records](https://rtila.com/docs/airtable-update-records/) [Email Verification](https://rtila.com/docs/email-verification/) --- # Airtable Get Records | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/airtable-get-records/#content) View Categories ![]() **Description** This Custom Command allows you to parse any web page and find specific URLs that you want to capture and later feed to an other command or flow. This for instance can be used to get all the URLs of products listings in a given page or can be used to get specific URLs from an xml sitemap… Various options detailed below will allow you to specify your URL targeting and even find, replace, append or postpend data to URLs that would otherwise be invalid or incomplete. ******How to configure and use this Custom Command**** :** ![]() 1) Specify a keyword that the URL must contain. 2) Specify the file extension that you want to target, for example only .html pages, or only .mpg or .php etc… 3) Sometimes only the relative url is in the source code and you may want to append it with the main domain name/URL so that the final URL will start with https://website.com/folder/url-slug-extracted.php 4) In some other cases you may want to add some text at the end of the URL (Postpend) for example adding “/index.html” to specifically load a file in that original folder ![]() 5) – In some cases multiple URLs can be contained in the same element. For instance an image may have a URL in it’s src as well as a different URL in it’s srcset attribute. By choosing “ALL” you will get both URLs. By choosing “Custom Attribute” only the URL of the attribute you specify in point 6 would be targeted. 6) – If you chose “Custom Attribute” in Point 5 then specify the target attribute here. 7) – If you want certain characters to be removed or replaced specify them here 8) – Add here the replacement characters or leave empty to delete the characters specified in point 7 9) – Often the same URL can be present more than once on the same page, choose “Yes” if you wish to automatically remove/avoid duplicates. ****Watch Video Demo**** : ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/airtable-get-records/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Target Element in Shadow Dom](https://rtila.com/docs/target-element-in-shadow-dom/) [Airtable Update Records](https://rtila.com/docs/airtable-update-records/) --- # Get Hardware ID HWID | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/get-hardware-id-hwid/#content) View Categories **Description** This Custom Command allows you check and get the Hardware ID or HWID of the device where this command is run. This can allow you for instance to offer access to certain automations, or flows based on the HWID of your user and you could check this HWID against an external licensing or validation API system. The HWID is a unique identifier for a given device or computer and it can be useful if you want to license or protect your automations or Standalone bots to only run for certain devices based on their HWID. ******How to configure and use this Custom Command**** :** ![]() 1) Make sure the tick mark on Show Console Logs. 2) Please see the **[video demo](https://youtu.be/ZCG7ny0ucVQ)** to get the details process ****Watch Video Demo**** : [![]()](https://youtu.be/ZCG7ny0ucVQ) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/get-hardware-id-hwid/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Email Verification](https://rtila.com/docs/email-verification/) [Timestamp Unix and UTC](https://rtila.com/docs/timestamp-unix-and-utc/) --- # Email Verification | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/email-verification/#content) View Categories **Description** This command validates the reachability of an email address by performing few checks: ✅ Check email address validity (regex) ✅ Check email address domain validity in domain TLD list ✅ Check email address MX DNS records ✅ Check email address SMTP connection It will return a 3 parts result separated with a pipe, like follows: Email-format-Valid|MX-Valid|SMTP-Valid The first part of the string is about the type of test, for instance Email-format, then we use a hyphen and display Valid or Invalid for each specific type of test result. ******Console log preview of results**** :** ![]() ******How to configure and use this Custom Command**** :** ![]() 1) Email To Verify: Here you can manually enter the email address you want to verify of you can call a command/variable using our double curly bracket syntax, for example to call the current value of List use this: {{List}} 2) Action: In this dropdown you can select which types of verification you wish to do, you have the choice between: Verify Format, Verify MX, Verify SMTP or Verify All 3) Show Console Logs: If you select this option, this command will print the results in your browser console log. For Windows/Linux use Ctrl + Shift + J to open the console log. For Mac use Command + Option + J ****Watch Video Demo & Tutorial**** : [![]()](https://youtu.be/aMulbJc6eHI) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/email-verification/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Sanitize URL](https://rtila.com/docs/sanitize-url/) [Get Hardware ID HWID](https://rtila.com/docs/get-hardware-id-hwid/) --- # Timestamp Unix and UTC | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/timestamp-unix-and-utc/#content) View Categories ![Timestamp_Unix_UTC]() **Description** This Custom Command is very straight forward as it allows you to record the current time in the Unix or the YY-MM-DD HH:MM:SS formats, and you can also specify which timezone you want this Timestamp to be aligned with. We have chosen these 2 formats as they are the most easy and precise formats that allow for time comparison operations at the level of seconds, and remain compute efficient. ******How to configure and use this Custom Command**** :** ![]() ****Watch Video Demo**** : [![]()](https://youtu.be/Xna6GpgNX4A) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/timestamp-unix-and-utc/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Get Hardware ID HWID](https://rtila.com/docs/get-hardware-id-hwid/) [Switch Tab Focus Command](https://rtila.com/docs/switch-tab-focus-command/) --- # Auto Comment On WordPress Posts | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/auto-comment-on-wordpress-posts/#content) View Categories Use Case [#](https://rtila.com/docs/auto-comment-on-wordpress-posts/#use-case) =============================================================================== This Template is one of many RTILA templates created to automate tasks that may require some time but with the help of RTILA, you can now automate comments on any post on WordPress. All you are required to do is just have the post’s URL and the comments you need to share on that post or post. The template is built to have a list of URLs which represents the post’s URLs and another list of comments that contains the comments you want to share on that post. How To Use? [#](https://rtila.com/docs/auto-comment-on-wordpress-posts/#how-to-use) ==================================================================================== When working with RTILA templates, the “How to use ?” is pretty simple, you only need to add your own data that you need the template to work with. In this case, There are two types of data that you need to modify on this template. Add Post’s URLs [#](https://rtila.com/docs/auto-comment-on-wordpress-posts/#add-post-s-urls) --------------------------------------------------------------------------------------------- To add the URLs of your wanted posts, you have two options. You can either: call the URLs from a text file in your local storage as in point 1, or just paste them into the URLs List Variable on the template as in point 2. ![]() Add Post’s Comments [#](https://rtila.com/docs/auto-comment-on-wordpress-posts/#add-post-s-urls) ------------------------------------------------------------------------------------------------- To add the Comments, the process is pretty much the same using another List Variable which in this case named “Comments”, You can add the comments manually or import them from a text file as well. ![]() Edit Commenter Name & Email [#](https://rtila.com/docs/auto-comment-on-wordpress-posts/#edit-commenter-name-email) ------------------------------------------------------------------------------------------------------------------- To edit the name and the email of the commenter , you can head to the populate Email and Username commands then change the value with your own ![]() ![]() Template In Action [#](https://rtila.com/docs/auto-comment-on-wordpress-posts/#template-in-action) =================================================================================================== [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/auto-comment-on-wordpress-posts/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 14/10/2023 [Working with Arrays and Objects in RTILA](https://rtila.com/docs/working-with-arrays-and-objects-in-rtila/) [Run Automations in Silent Mode](https://rtila.com/docs/run-automations-in-silent-mode-no-browser-opening/) --- # Switch Tab Focus Command | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/switch-tab-focus-command/#content) View Categories ![Browser Tabs Switch Focus]() **Description** The “Switch Tab Focus” command brings a specific tab into focus during automation. This is particularly useful when your automation involves multiple tabs performing different processes and you need to concentrate on a specific one. For instance, you may want to refocus on the main tab—the one from which other tabs were opened. Another example is handling alerts or pop-ups that appear in the main tab, requiring you to keep it in focus to ensure proper interaction. ******How to configure and use this Custom Command**** :** ![]() 1. Name the command with a meaningful name. 2. Add the tab ID between the {{}} symbols, the ID is the exact name of a GO TO URL command that you could add to go to a specific URL. 3. Choose what you would like RTILA to do in case of an error. ****Watch Video Demo (coming soon)**** : ![]() **Note:** If you find our template useful and like it, please give us a favor by sharing this template with your community for wide circulation. Thanks Share on FacebookShare on X (Twitter)Share on PinterestShare on WhatsappShare on LinkedinCopy LinkLink is Copied!Share on EmailShare on Bluesky [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/switch-tab-focus-command/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/01/2025 [Timestamp Unix and UTC](https://rtila.com/docs/timestamp-unix-and-utc/) [WordPress Posts via API (beta)](https://rtila.com/docs/wordpress-posts-via-api-beta/) --- # License Check for Standalone Executables | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/license-check-for-standalone-executables/#content) View Categories Use Case [#](https://rtila.com/docs/license-check-for-standalone-executables/#use-case) ======================================================================================== For RTILA users who are building and compiling their own Standalone Automation Software and want to sell them and control access to these automation, we have prepared a first version of a License Check Child Project. This Child Project can be inserted at the top of any of your Standalone Automation project and it will add a step whereby it will read the credentials of your client from the credentials.txt file and check with our License API if the license key and email address of your client are matching and active. Only if both the client email address and the License key are valid and matching will the rest of the automation kick off. For the moment this is using our License API but this can be adapted to call/use any other license check APIs Download Templates & Files [#](https://rtila.com/docs/license-check-for-standalone-executables/#download-templates-files) ========================================================================================================================== This content/page needs to be updated as we have changed the way Standalone Bots are launched and release a new free software called RTILA Bot Launcher that facilitates the launch of standalone bots. You can download the Launcher form here: [https://github.com/IKAJIAN/rtila-bot-launcher](https://github.com/IKAJIAN/rtila-bot-launcher) As for the License check we are preparing the release of a custom command which will facilitate and enhance the License check feature for Standalone bots. To start experimenting with this feature you need to download this folder which contains the following: 1- The config file, which contains the steps of the automation (do not edit it) 2- The .rtila file with the Child Project so that you can import it into your existing automation projects 3- The license.txt file where the end-user needs to update the email and related license key 4- The binary executable files for Windows, Mac & Linux which will launch the Standalone bot [Download the whole folder from here](https://drive.google.com/file/d/1xvWIaUX5T_5zSxfV3T1SD5RZ2U3rmT47/view?usp=sharing) ![]() Update the License.txt data [#](https://rtila.com/docs/license-check-for-standalone-executables/#update-the-license-txt-data) ============================================================================================================================== You can experiment with the correct and an incorrect set of email and license key to see how this License check automation behaves. Simply open the .txt file and replace with different email address and or license key. The default email address and license key we are using are valid and will give a positive result. The email address and the license key need to be separated by a “;” with no leading or tailing spaces. ![]() Send Request command to License API endpoint [#](https://rtila.com/docs/license-check-for-standalone-executables/#send-request-command-to-license-api-endpoint) ================================================================================================================================================================ We are using the Send Request command which allows us to send a GET request using a URL that calls our License API end point sending it 2 variables; The license key (reading it from the license.txt file) and the standalone DownloadID (will be given by our marketplace once you upload your Standalone). ![]() ![]() Check the result received from License endpoint [#](https://rtila.com/docs/license-check-for-standalone-executables/#check-the-result-received-from-license-endpoint) ====================================================================================================================================================================== Thanks to our “Convert JSON to Html” setting RTILA is converting the JSON response received from the License endpoint into an html table, which you can then use to read the relevant cells and compare their value with static values to build the verification logic. First you need to make sure the “Convert JSON to Html” setting is activated in your project, see below screenshot. ![]() Once the “Convert JSON to Html” setting is active, the response from our License API will appear as table. In the case that the license or email address sent is not valid it will return the table below where the first column gives “invalid” as a response. And from the user side it will show an alert that the License is not valid ![]() Now if the License and email address contained in the license.txt are valid and matching it will then results more information about the license, see below screenshot where the first column (and cell) gives “true” as a result which is a positive response. it will also return the email address related to this license key so that we can compare it to the email address contained in the license.txt file. And you can display a congratulation page or just skip and kick off the Standalone automation. ![]() ![]() Conditional logic using API response [#](https://rtila.com/docs/license-check-for-standalone-executables/#conditional-logic-using-api-response) ================================================================================================================================================ We created a number of static and dynamic variables to be able to compare the response elements we get from the License API and the content of the license.txt file. You can open the nested Conditional logic blocks to learn from our example and modify improve where you see fit. The basic principle is that if both the License key is valid and the email contained in the license.txt file is equal to the email address returned by the License API end point, then we consider that this user has a valid access to this Standalone software, and in that case the automation sequence that follows the license verification block will be called. If not the automation will be stopped and an alert displayed about the invalid status of the license key or of the email address. ![]() ![]() Adapt, update and improve [#](https://rtila.com/docs/license-check-for-standalone-executables/#adapt-update-and-improve) ========================================================================================================================= This is a learning case and a rather simple one using our own soon to be launched Software Marketplace licensing API. But you can use a different licensing system which provides API and also add more sophisticated ways of checking the license validity. You can also use your own verification and results page with your look & feel to personalize the user experience. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/license-check-for-standalone-executables/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/09/2023 [Run Automations in Silent Mode](https://rtila.com/docs/run-automations-in-silent-mode-no-browser-opening/) [Trigger Standalone Bots via Command lines](https://rtila.com/docs/trigger-standalone-bots-via-command-lines/) --- # How To Find Custom Collections For List type Datasets | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/how-to-find-custom-collections-for-list-type-datasets/#content) View Categories What are custom collections In RTILA? [#](https://rtila.com/docs/how-to-find-custom-collections-for-list-type-datasets/#what-are-custom-collections-in-rtila) ============================================================================================================================================================== Custom collections in RTILA refer to a feature that allows users to organize and manage the data they extract from websites in a structured and personalized manner. RTILA is used to automate the process of gathering information from websites, and custom collections enhance the efficiency and usability of this data extraction by providing a way to categorize, filter, and store the scraped data according to the user’s preferences. Overall, custom collections in RTILA provide a powerful way to efficiently manage and make sense of the vast amounts of data collected from the web. They contribute to better organization, personalized workflows, and enhanced collaboration, making the process of web scraping more productive and user-friendly. Why do we need to find a custom collection? [#](https://rtila.com/docs/how-to-find-custom-collections-for-list-type-datasets/#why-do-we-need-to-find-a-custom-collection) ========================================================================================================================================================================== In RTILA a custom collection refers to a specific set of data or information that you want to extract from a website. Custom collections are essential to focus on a specific element in a web page. They help you obtain the specific information you need while avoiding unnecessary complications and ethical concerns associated with scraping irrelevant data. Let’s say that a website has a list of products for example the App Sumo all products page, and we have already chosen the right CSS selector for each page just like the shown example in this picture : ![]() you can see that we are missing some data in the red shapes, in this case, we are collecting each product data from a list of products and these products are displayed in div elements as you can see the green rectangular in the middle of the page. **_So what do we need to do in this case?_** Yes, you probably have thought about it. We need to tell RTILA to focus only on elements in these green rectangular and avoid anything else on the page since all of our needed data is displayed there. **How do we do that?!** Very simple! Just follow the upcoming steps on How to find & set the right custom collection. How To Find & Set the Right Custom Collection? [#](https://rtila.com/docs/how-to-find-custom-collections-for-list-type-datasets/#how-to-find-set-the-right-custom-collection) ============================================================================================================================================================================== As we have already discussed, we now need to find the custom collection of the wanted element ( in this case the product Div element). Here are the two steps we need to solve this issue and get all the data to show up in our dataset properties: Find the right custom collection [#](https://rtila.com/docs/how-to-find-custom-collections-for-list-type-datasets/#find-the-right-custom-collection) ----------------------------------------------------------------------------------------------------------------------------------------------------- In order to find our custom collection we might need to use one of the internet browsers such as Chrome, Firefox, and Edge in case we were not able to select the div elements of each product using the CSS inspector in RTILA. Open the page in your browser and click on the right mouse click on the wanted element, then click on inspect. you can now see the page source code. ![]() As you can see in the right section there are multiple div elements with the same class! **what do you think these divs represent?** Yes each div represents one product and you can find each product’s details within its div elements, but in this case, we only need to find the custom collection which is applied and used in each product element. In this case, you can see that our wanted custom collection is the ( **class=”relative h-full”** ) or similarly as shown in the left side ( **div.relative.h-full** ) Now that we have found our custom collection we can move to the next step. Set the Right Custom Collection [#](https://rtila.com/docs/how-to-find-custom-collections-for-list-type-datasets/#set-the-right-custom-collection) --------------------------------------------------------------------------------------------------------------------------------------------------- Since we have already found our custom collection, all we need to do now is to convert this custom collection from the right section into an acceptable format in this case ( **div\[class\*=”relative h-full”\]** ), you can find all about CSS selector format from here: https://www.w3schools.com/cssref/css\_selectors.php Alternatively, we can use the shown CSS selector on the left side which is ( **div.relative.h-full** ) in some cases it may be better to use the first method. Now we are ready to set the custom collection by clicking on the configure dataset button and then past that custom collection on its field. ![]() As you can see once we added the custom collection all the data showed up and there was no loss of any property. Training Demo On How to Find Custom Collection [#](https://rtila.com/docs/how-to-find-custom-collections-for-list-type-datasets/#training-demo-on-how-to-find-custom-collection) ================================================================================================================================================================================= Here is another training demo of the website : [https://park.io/domains](https://park.io/domains) that shows how to find and set the right custom collection for your project. You can look at the first picture and see how did we get the Domain name property by finding the CCS Selector manually using the developer tools inside the RTILA browser panel ![]() In the second picture, you can see how we find the custom collection by looking at the source code of the table element, in this case ( **tbody > tr** ) element that represents each row in the table, we could command the dataset property inspection to ignore anything else and only focus on each row of the table since all the data we need is in that element. ![]() **Note**: Finding a custom collection for some websites could be challenging for users who have no basic knowledge of web development or CSS, but don’t worry. If you have purchased RTILA and you are not using a free plan, you can always submit a support ticket at [https://rtila.com/support/](https://rtila.com/support/) RTILA’s support team is always happy to help you out. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/how-to-find-custom-collections-for-list-type-datasets/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 13/11/2023 [Trigger Standalone Bots via Command lines](https://rtila.com/docs/trigger-standalone-bots-via-command-lines/) [Correcting & Completing Auto-Recorder Commands](https://rtila.com/docs/correcting-completing-auto-recorder-commands/) --- # Run Automations in Silent Mode | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/run-automations-in-silent-mode-no-browser-opening/#content) View Categories Use case [#](https://rtila.com/docs/run-automations-in-silent-mode-no-browser-opening/#use-case) ================================================================================================= In some instances you may want to run some automations without opening a browser or multiple tabs, and have it run in the background without disturbing your desktop environment. RTILA Studio has a project setting that allows you to run automations in the background and in a silent mode, whereby it will not open a new browser window yet will perform the automation and get the results. Enable Silent Mode in Project Settings [#](https://rtila.com/docs/run-automations-in-silent-mode-no-browser-opening/#enable-silent-mode-in-project-settings) ============================================================================================================================================================= First you need to go to the Project settings for your concerned project. You can do so by clicking on the Gear icon, see below. ![]() Once in the project settings you can check and enable the option for Silent Mode then click on SAVE ALL SETTINGS. See screenshot below. Now when you will run this project, it will not open any browser window, instead it will display a new results entry once the automations finishes. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/run-automations-in-silent-mode-no-browser-opening/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 22/09/2023 [Auto Comment On WordPress Posts](https://rtila.com/docs/auto-comment-on-wordpress-posts/) [License Check for Standalone Executables](https://rtila.com/docs/license-check-for-standalone-executables/) --- # Trigger Standalone Bots via Command lines | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/trigger-standalone-bots-via-command-lines/#content) View Categories Download RTILA Bot Launcher [#](https://rtila.com/docs/trigger-standalone-bots-via-command-lines/#download-rtila-bot-launcher) =============================================================================================================================== RTILA Studio is the software to design and test-run your automations and then compile them into Standalone executable software. And we have recently release an additional piece of software to ease the way to run and execute Standalone, it is called the Bot Launcher and it can be downloaded from here: [https://github.com/IKAJIAN/rtila-bot-launcher](https://github.com/IKAJIAN/rtila-bot-launcher) Create Argument Variables [#](https://rtila.com/docs/trigger-standalone-bots-via-command-lines/#launch-bots-via-command-lines) =============================================================================================================================== Before you can pass variables data to your Standalone bot you need to first create Argument variables which are the type of variables that are accessible to external systems and APIs, refer to the Cloud API documentation on how to create Argument variables: See here Launch Bots via command lines [#](https://rtila.com/docs/trigger-standalone-bots-via-command-lines/#launch-bots-via-command-lines) =================================================================================================================================== Once you have installed the Bot Launcher you can use the following command lines to trigger the bot and pass variable to it before it executes Copy CodeCopiedUse a different Browser Bot-Launcher.exe --config-file=automation1.bot --myvar=testdata or Bot-Launcher.exe --bot-file=automation1.bot --myvar=testdata [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/trigger-standalone-bots-via-command-lines/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 14/12/2023 [License Check for Standalone Executables](https://rtila.com/docs/license-check-for-standalone-executables/) [How To Find Custom Collections For List type Datasets](https://rtila.com/docs/how-to-find-custom-collections-for-list-type-datasets/) --- # Correcting & Completing Auto-Recorder Commands | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/correcting-completing-auto-recorder-commands/#content) View Categories What is the Auto-Recorder? [#](https://rtila.com/docs/correcting-completing-auto-recorder-commands/#what-is-the-auto-recorder) =============================================================================================================================== The “Auto Recorder” feature in the RTILA automation tool is a functionality that allows users to easily record and generate automation commands based on their interactions with a web application or website. It simplifies the process of creating automation scripts by capturing the user’s actions and translating them into executable commands. The Auto Recorder feature is particularly beneficial for users who may not have extensive programming knowledge or experience in creating automation scripts from scratch. It provides a more intuitive and user-friendly approach to automating web tasks by capturing and translating their manual interactions into executable commands. This feature can significantly reduce the time and effort required to create robust automation scripts, enabling users to streamline repetitive tasks and improve their productivity. Start Recording Commands [#](https://rtila.com/docs/correcting-completing-auto-recorder-commands/#start-recording-commands) ============================================================================================================================ To start recording your commands and creating your automation, you will only need to click on the RECORD button in the bottom right corner of the automation panel. Once you have clicked on the record button, the recorder will be capturing each interaction you do in the browser panel and start creating the commands based on your actions. **Note:** Please note that there are some limitations on the record commands feature and some commands may not be captured and translated, so we will be explaining how correct and complete these commands manually in the next section. Correct & Complete Auto-Recorder Commands [#](https://rtila.com/docs/correcting-completing-auto-recorder-commands/#correct-complete-auto-recorder-commands) ============================================================================================================================================================ The Auto-Recorder feature is not flawless and it may not be able to capture and translated all commands, that’s why we may need some editing to do in order to complete the automation. The edits we might need can be : * Deleting unnecessary commands * Capturing the CSS selectors from the automated commands created by the recorder * Adding the missing commands which have been missed by the recorder Here is our Video tutorial for correcting and completing a simple google search automation [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/correcting-completing-auto-recorder-commands/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 25/05/2023 [How To Find Custom Collections For List type Datasets](https://rtila.com/docs/how-to-find-custom-collections-for-list-type-datasets/) [RTILA WordPress Plugin installation & configuration](https://rtila.com/docs/rtila-wordpress-plugin-installation-configuration/) --- # RTILA WordPress Plugin installation & configuration | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/rtila-wordpress-plugin-installation-configuration/#content) View Categories Installation [#](https://rtila.com/docs/rtila-wordpress-plugin-installation-configuration/#installation) --------------------------------------------------------------------------------------------------------- 1. Download the Plugin 2. Access Your WordPress Dashboard 3. Navigate to the Plugins Section 4. Upload the Plugin: 5. Activate the Plugin Configuration [#](https://rtila.com/docs/rtila-wordpress-plugin-installation-configuration/#configuration) ----------------------------------------------------------------------------------------------------------- Once you have successfully activated the plugin, go to the admin menu labeled “**Settings**” and select “**RTILA Settings**“ ![]() Here is RTILA Settings Page ![]() * **License Key**: Valid RTILA License Key from your user account. * **Project UUID**: UUID of the RTILA project you want to run when there is an new order or User Registration. * **Delay Time**: How long should it wait to get the results, may vary depending on the time taken by the automation process to complete. * **Enable Email Notification**: When enabled, you will get Notified after the Delay time with results, this allows you to determine if the set delay time is sufficient and if the automation process has been successfully completed. * **Email To Notify:** In case you don’t specify an alternative email address for notification, the default behavior is to notify the admin email when the Email Notification feature is enabled. * **Variables to send on a new order or new user registration:** are available for access in the RTILA Automation Project. You need to declare them as Argument Variables within the project. Please refer to the provided image for further clarification. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/rtila-wordpress-plugin-installation-configuration/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 19/05/2023 [Correcting & Completing Auto-Recorder Commands](https://rtila.com/docs/correcting-completing-auto-recorder-commands/) [Using Developer Tools In RTILA Studio](https://rtila.com/docs/using-developer-tools-in-rtila-studio/) --- # Using Developer Tools In RTILA Studio | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/using-developer-tools-in-rtila-studio/#content) View Categories Use Case [#](https://rtila.com/docs/using-developer-tools-in-rtila-studio/#use-case) ===================================================================================== Using developer tools allows you to inspect the webpage elements within the RTILA browser panel. This could be so helpful when you need to catch a CSS selector manually from the webpage HTML source. Sometimes it could be better to inspect the elements manually to get a precise CSS selector or even a better CSS selector that serves your automation for the long term as CSS selectors can be dynamic in some websites that keeps on changing . Using the manual way of finding a CSS selector by locating the tags and attributes of the element is more preferable with these dynamic websites How To Use Developer Tools In RTILA [#](https://rtila.com/docs/using-developer-tools-in-rtila-studio/#how-to-use-developer-tools-in-rtila) =========================================================================================================================================== In order to use the ” Developer Tools ” feature in RTILA , you just need to right click on the webpage in the browser panel then click on developers tools. You can see the developer tools on the right and brows the HTML source code to choose the CSS selectors you want. ![]() Using Developer Tools To get the CSS selectors [#](https://rtila.com/docs/using-developer-tools-in-rtila-studio/#using-developer-tools-to-get-the-css-selectors) ================================================================================================================================================================= Now that you have been able to open the “Developer Tools” , you have nothing stopping you from getting the CSS selectors manually and creating the automations you need without automatically inspecting elements CSS selectors. Here is an example of extracting the CSS selector of the search bar input field in the Google search homepage then using the developers tools to locate the element and get it’s CSS selector . Then copy and CSS selector ( in this case we used the class name because it’s unique and there is no other element with the same class , but you may use other tags or attribute if the class is not unique for the element you need ) [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/using-developer-tools-in-rtila-studio/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 16/05/2023 [RTILA WordPress Plugin installation & configuration](https://rtila.com/docs/rtila-wordpress-plugin-installation-configuration/) [Create A Project From Scratch](https://rtila.com/docs/create-a-project-from-scratch/) --- # Create A Project From Scratch | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/create-a-project-from-scratch/#content) View Categories In this documentation , we will be creating a project in RTILA Studio from scratch and showing the basic configurations of RTILA projects Create a New Project [#](https://rtila.com/docs/create-a-project-from-scratch/#create-a-new-project) ===================================================================================================== to create a new project in RTILA , all you have to do is to head to the “Home” tab and set : 1. A unique name to your project to avoid conflict with other projects. 2. Webpage URL in which you want to start your automation in ( In case you don’t have a starting webpage of your project , you can just leave it to “https://www.google.com/” then use the “Go To URL ” command ) ![]() Get Familiar With The Project Interface [#](https://rtila.com/docs/create-a-project-from-scratch/#get-familiar-with-the-project-interface) =========================================================================================================================================== Once you have created your project , you can now start creating your automation project . There are few main elements in the project interface that could help get all you need from Web Automation . As you can see in the project interface there are three main panels : * The Browser Panel : This is the area where the webpages are previewed and used to inspect the elements of your automation project * The Automation Panel : This is where the work is done , In this panel you can add and configure the Datasets and Automation Commands of your project * The Dataset Preview Panel : Here you can have preview of the project’s datasets and make sure you have selected the right CSS selectors that represent the correct data you need to extract . ![]() Project Interface Basic Elements [#](https://rtila.com/docs/create-a-project-from-scratch/#project-interface-basic-elements) ============================================================================================================================= Now that you became more familiar with the interface , there are some elements in each panel that will be explained in this section . New Command [#](https://rtila.com/docs/create-a-project-from-scratch/#new-command) ----------------------------------------------------------------------------------- The new command button allows you to open the new command interface and select the command you want to add to your automation project Record [#](https://rtila.com/docs/create-a-project-from-scratch/#new-command) ------------------------------------------------------------------------------ The record button creates a set of commands based on your interactions on the browsers panel, it records each action made in the browser and creates the automation commands for each interaction. Look at the example below to better understand how the record feature works Switch To Inspection & Switch to Automation [#](https://rtila.com/docs/create-a-project-from-scratch/#new-command) ------------------------------------------------------------------------------------------------------------------- This button allows you t switch the Automation panel between the inspection panel that is used to create datasets and control results and the automation panel that used to create automation commands Hide & Show Preview [#](https://rtila.com/docs/create-a-project-from-scratch/#hide-show-preview) ------------------------------------------------------------------------------------------------- With this button, you can either choose to hide the preview Button to get more space for the Browser Panel or show the Preview Panel to work with the datasets and check their properties values [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/create-a-project-from-scratch/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 21/05/2023 [Using Developer Tools In RTILA Studio](https://rtila.com/docs/using-developer-tools-in-rtila-studio/) [Bring back disappearing commands & properties](https://rtila.com/docs/bring-back-disappearing-commands-properties/) --- # Bring back disappearing commands & properties | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/bring-back-disappearing-commands-properties/#content) View Categories Use case and solution: [#](https://rtila.com/docs/bring-back-disappearing-commands-properties/#use-case-and-solution) ====================================================================================================================== Depending on the web page and your operating system as well as internet speed, it may happen that your commands and properties do not appear properly when you open the RTILA Studio Inspection panels. As we are working on a permanent fix you can for the moment refresh the loading of the web page to force the re-display of the commands and properties. Do not create new commands or properties while the initial ones are not being displayed as that will re-write your existing but hiding commands/properties. Instead refresh multiple times or if necessary close the Inspection panel and re-launch it multiple times to force the reload process. See screenshot below as to where and how to refresh the current page. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/bring-back-disappearing-commands-properties/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 05/05/2023 [Create A Project From Scratch](https://rtila.com/docs/create-a-project-from-scratch/) [Export & share an RTILA project file](https://rtila.com/docs/export-share-an-rtila-project-file/) --- # Export & share an RTILA project file | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/export-share-an-rtila-project-file/#content) View Categories Use Case [#](https://rtila.com/docs/export-share-an-rtila-project-file/#use-case) ================================================================================== As you are developing your automations you may need to share your automation project with third parties to get assistance or to deliver it as an automation template to a client/user. For that case you can export your automation project into a .rtila file, and share it with the concerned parties. Export the project file form Projects Panel [#](https://rtila.com/docs/export-share-an-rtila-project-file/#use-case) ===================================================================================================================== In the Projects panel you will find the list of our automation projects. For the concerned project line click on the “more options” toggle button then click on “Export to .RTILA”. This will open a regular window to save a file where you can rename the file and choose the location where to save it. Please do not change the extension file .rtila otherwise it will not be recognized by RTILA Studio when opened. See the screenshot below ![]() Zip the file before sharing it [#](https://rtila.com/docs/export-share-an-rtila-project-file/#use-case) ======================================================================================================== As we are using a unique file extension, sharing this kind of files via FaceBook, WhatsApp or other messengers and potentially email services may fail. For this reason we advise that you zip your .rtila file into a zip file, and share it as a zip file. This will allow you and your partners to exchange RTILA project files without limitations about which channel to use to send and receive the files. To zip a file simply right click and select “Compress as ZIP file”. See screenshot below of how to zip a file on Windows. You can use other common compression files such as .rar for instance but the .zip format is the most commonly allowed by almost any system. ![]() [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/export-share-an-rtila-project-file/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 22/04/2023 [Bring back disappearing commands & properties](https://rtila.com/docs/bring-back-disappearing-commands-properties/) [Install Browser Extensions using Profile Session](https://rtila.com/docs/install-browser-extensions-using-profile-session/) --- # Install Browser Extensions using Profile Session | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/install-browser-extensions-using-profile-session/#content) View Categories Use Case [#](https://rtila.com/docs/install-browser-extensions-using-profile-session/#use-case) ================================================================================================ In some instances you may need to install some useful browser extensions that can help your automation flow. RTILA Studio has the possibility to install such extensions using the Profile Session browser. This allows you to install and have different browser extensions for different Profile Session. Launch Profile Session Browser [#](https://rtila.com/docs/install-browser-extensions-using-profile-session/#launch-profile-session-browser) ============================================================================================================================================ Go to Profiles then launch the Profile Session for your target project, by clicking the small browser icon. ![]() Install your extensions [#](https://rtila.com/docs/install-browser-extensions-using-profile-session/#install-your-extensions) ============================================================================================================================== Once the Profile Session browser opened, you can manually navigate to and install one or more extensions. Just navigate to the chrome or edge extension store and install the extensions you need. In our case we will install an anti-pop extension ![]() ![]() ![]() Now that the extension is installed it will be launched or active for all the RUNs of this project, effectively here blocking popups if any appear in our automation flow. If you wish to delete this extension just re-open the concerned Profile Session browser and delete it from there just as you would do with a normal browser. [Still stuck? How can we help?](https://rtila.com/support) [](https://rtila.com/docs/install-browser-extensions-using-profile-session/#) How can we help? ---------------- Name: \* Email: \* Message: \* Updated on 15/04/2023 [Export & share an RTILA project file](https://rtila.com/docs/export-share-an-rtila-project-file/) [How To Fill a Form Using Generic Form Filler Child-Project](https://rtila.com/docs/how-to-fill-a-form-using-generic-form-filler-child-project/) --- # How To Fill a Form Using Generic Form Filler Child-Project | RTILA Web Business Automation [Skip to content](https://rtila.com/docs/how-to-fill-a-form-using-generic-form-filler-child-project/#content) View Categories Use Case [#](https://rtila.com/docs/how-to-fill-a-form-using-generic-form-filler-child-project/#use-case) ========================================================================================================== Using a Generic form filler from a child project is the idea of using a preconfigured form filler that takes common CSS input field selectors. These form fillers are meant to work with most site forms that have similar input field attributes or tags, so the approach is to use CSS locators that can include the different tags/attributes that an input field may have. Just like most forms have a “First Name “, a “Last Name “, and an “Email” input field, these input fields mostly contain the same attributes in many different forms. Therefore, This would act like using a ” Smart” CSS field identification CSS locator. How To Use Form Filler Child-Projects [#](https://rtila.com/docs/how-to-fill-a-form-using-generic-form-filler-child-project/#how-to-use-form-filler-childprojects-) ==================================================================================================================================================================== In order to use these form templates, you can enable the child project feature from the project settings. Once you have enabled it, you can call the form filler child project template and use its preconfigured commands with preconfigured values without having to create each input command with the same values repeatedly. ![]() ![]() ![]() You can see the commands we have imported from the form filler child project and how they were used to fill the input fields of the form as if we created these commands from scratch and specifically for the shown form. This shows how easy it could get using these form fillers could be and how it could save some time in creating such commands that could easily be imported using these templates Input Field Smart CSS Selector [#](https://rtila.com/docs/how-to-fill-a-form-using-generic-form-filler-child-project/#input-field-smart-css-selector-) ======================================================================================================================================================= As mentioned earlier, the approach to making the preconfigured form-filler templates is to choose an input field CSS selector that contains different tags and attributes, this CSS locator would have multiple and slightly different tags CSS selector combined, then when a form input field is found with one of CSS locators that is similar to the preconfigured input field with “Smart” CSS selectors, that input field would be selected automatically and the preconfigured value would be inputted to that form input field. This is a very helpful technique that can help you set a ” Form-fillers” template on your own for forms that you constantly work with, so you won’t have to manually enter each data repeatedly. Smart CSS Selector Example For Common “First Name” Input Field [#](https://rtila.com/docs/how-to-fill-a-form-using-generic-form-filler-child-project/#smart-css-selector-example-for-common-first-name-input-field) -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Here is an example of creating a smart CSS selector for the commonly encountered “First Name” input field. As you can see in this CSS selector there are multiple different CSS locators with slightly different attributes and tags separated by a comma, these different CSS locators can include the ones used in many website forms with the ” First Name “input field. Copy CodeCopiedUse a different Browser input[type="text"][id*="name" i], input[type="text"][placeholder*="name" i], input[type="text"][class*="name" i], input[type="text"][name*="name" i], input[type="text"][aria-label*="name" i] Here is a detailed explanation of the previous CSS selector : This CSS selector targets all input elements of type=”text” that have certain attributes that contain the string “name” in a case-insensitive manner. Specifically, it targets input elements that meet any of the following conditions: * id attribute contains the string “name” * placeholder attribute contains the string “name” * the class attribute contains the string “name” * the name attribute contains the string “name” * the aria-label attribute contains the string “name” The \*= selector checks for the presence of the specified string in any part of the attribute value. The “I” flag at the end of each attribute selector indicates that the search should not be case-insensitive, meaning that it will match strings regardless of whether they use uppercase or lowercase letters. So, the entire selector targets any element with a attribute of text that has an “id”, “placeholder”, “class”, “name”, or “aria-label” containing the substring “name”. Exclude Certain Tags and Attribute from CSS Selector [#](https://rtila.com/docs/how-to-fill-a-form-using-generic-form-filler-child-project/#exclude-certain-tags-and-attribute-from-css-selector-) --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- In some cases, we might need to tell the CSS selector to exclude some tags and words from a certain input field, this can be done by using this format **_“: not(\[attribute=what-i-do-not-want-to-target\])”_**. This is helpful to ignore the input field with such tags and attributes and give the CSS selector a better chance of finding the correct element. Here is an example of using the “Description” input field smart CSS selector and setting it to exclude some tags and attributes as explained after the code snippet Copy CodeCopiedUse a different Browser input[type="text"]:not(textarea):not([id*="name" i]):not([placeholder*="name" i]):not([class*="name" i]):not([name*="name" i]):not([aria-label*="name" i]):not([type="email"]), input[inputmode="text"]:not([id*="name" i]):not([placeholder*="name" i]):not([class*="name" i]):not([name*="name" i]):not([aria-label*="name" i]):not([type="email"]) This CSS selector targets all elements with a attribute set to “text” or an ‘input mode ‘ attribute set to “text”, except for those that are elements or have an ‘id’, ‘placeholder’, ‘class’, ‘name’, ‘aria-label’, or attribute containing the string “name” or have a type attribute set to “email”. * The input\[type=”text”\] and input\[inputmode=”text”\] selectors target elements with type=”text” and inputmode=”text”, respectively. * The ‘: not(textarea)’ selector excludes