RPA Input and Output Actions

Input actions send data into an application — typing text, clicking buttons, selecting from dropdowns, uploading files. Output actions read data from an application — getting text from a field, scraping a table, reading a label, or capturing a value from a screen. Together, input and output actions form the communication layer between your bot and any software it works with.

Input Actions

Type Into (Keyboard Input)

The Type Into activity sends keystrokes to a text field. It works like you pressing keys on the keyboard. You specify the target field using a selector and the text to type — which is usually a variable rather than a hardcoded value.

 Type Into [Username Field]
 Text: in_Username   ← value comes from a variable

 Type Into [Amount Field]
 Text: invoiceAmount.ToString()   ← convert number to text before typing

Send Hotkey

Send Hotkey simulates keyboard shortcuts. Use it for actions like pressing Tab to move between fields, Enter to submit a form, or Ctrl+S to save a document.

 Send Hotkey: [Tab]         → Move to next field
 Send Hotkey: [Enter]       → Submit form or confirm dialog
 Send Hotkey: [Ctrl] + [A]  → Select all text in a field
 Send Hotkey: [Ctrl] + [S]  → Save current document

Click

The Click activity moves the mouse to a screen element and performs a left-click. You can configure it for left-click, right-click, or double-click. The target is identified by a selector.

 Click [Submit Button]   → Standard left-click
 Click [Menu Item]       → Single click to open
 Double Click [File]     → Open a file in Explorer
 Right Click [Cell]      → Open context menu

Select Item

Select Item picks a value from a dropdown list. You specify the dropdown element and the value to select — either by the visible text or by the item's index position.

 Select Item [Country Dropdown]
 Value: "India"
 → The dropdown now shows "India" as selected

 Select Item [Month Dropdown]
 Index: 3   → Selects the third item in the list

Check / Uncheck

This activity interacts with checkboxes and radio buttons. You set the desired state: checked (True) or unchecked (False).

 Check [Terms and Conditions checkbox]
 State: True   → Box is now ticked

 Check [Newsletter Subscription]
 State: False  → Box is now unticked

Set Text / Clear Field

Set Text replaces the existing content of a field with new text immediately, without simulating keystrokes. Clear Field removes all content from a text field before typing new data.

Output Actions (Reading Data)

Get Text

Get Text reads the visible text from a UI element and stores it in a variable. Use it to capture labels, confirmation messages, error text, or any value displayed on screen.

 Get Text [SAP Confirmation Message]
 Output → sapMessage   (variable)

 Example value: "Document 1900034521 was posted."

Get Value

Get Value reads the value property of a form field — such as the content typed into a text box or the currently selected dropdown option.

 Get Value [Amount Field]
 Output → currentAmount   (variable)
 Result: "1500.75"

Get Attribute

Get Attribute reads a specific property (attribute) of a UI element. Useful for checking whether a button is enabled or disabled, or reading a hidden value like an element's ID.

 Get Attribute [Submit Button]
 Attribute: "IsEnabled"
 Output → isButtonEnabled   (Boolean variable)
 Result: True or False

Find Element / Element Exists

Element Exists checks whether a specific element is present on the screen and returns True or False. Find Element waits for an element to appear before the bot continues. Both are used to synchronise the bot with the application.

 Element Exists [Error Message Label]
 Output → hasError   (Boolean)

 IF hasError = True THEN
    Get Text [Error Message Label] → errorText
    Handle exception...

Screenshot

The Screenshot activity captures an image of the current screen state. Use it for logging evidence of what the bot saw at a given moment, particularly during error handling.

Input/Output Action Flow Example

Here is a complete example showing input and output actions working together in a login and data capture sequence:

 GOAL: Log into a web portal, find a customer account,
       and read the current balance.

 1. OUTPUT:  Element Exists [Login Page] → wait for page to load
 2. INPUT:   Type Into [Username Field] → in_Username variable
 3. INPUT:   Type Into [Password Field] → in_Password variable
 4. INPUT:   Click [Login Button]
 5. OUTPUT:  Element Exists [Dashboard] → confirm login succeeded
 6. INPUT:   Type Into [Search Field] → customerAccountNo variable
 7. INPUT:   Click [Search Button]
 8. OUTPUT:  Get Text [Balance Label] → currentBalance variable
 9. OUTPUT:  Get Text [Last Transaction Date] → lastTxnDate variable
10. INPUT:   Click [Logout Button]
11. STORE:   Write currentBalance + lastTxnDate to Excel log row

Handling Input Timing Issues

Applications sometimes take time to respond — a page loads, a field becomes available, or a dialog appears. If the bot types or clicks before the element is ready, the action fails. Use these strategies to handle timing:

  • WaitForReady: Set this property to "Complete" on Click and Type Into activities to make the bot wait until the application is idle before acting.
  • Element Exists with Timeout: Wait up to a defined number of seconds for an element to appear before proceeding.
  • Delay Activity: Insert a fixed wait (use sparingly — variable delays are preferable to hardcoded ones).

Input Method Types in UiPath

Input MethodHow It WorksBest For
DefaultSimulates real mouse/keyboard eventsMost standard applications
Window MessagesSends messages directly to the window handleDesktop apps (faster, works in background)
SimulateInjects values directly into the elementWeb apps (fastest, no focus needed)

Summary

Input actions send data to applications — through typing, clicking, selecting, and hotkeys. Output actions read data from applications — through Get Text, Get Value, Get Attribute, and Element Exists. Every meaningful bot workflow combines both: reading data from one place and writing it somewhere else. Proper timing management using WaitForReady and Element Exists prevents the most common input/output failures in production bots.

Leave a Comment

Your email address will not be published. Required fields are marked *