This documentation is deprecated. Please refer to the README in the Appium repository or Appium 2.0 documentation.

  Edit this Doc Send Keys

Send a sequence of key strokes to an element

Example Usage

MobileElement element = (MobileElement) driver.findElementByAccessibilityId("SomeAccessibilityID");
element.sendKeys("Hello world!");

self.driver.find_element(by=AppiumBy.ACCESSIBILITY_ID, value="SomeAccessibilityID").send_keys('Hello world!')

// example

// wd example
let element = await driver.elementByAccessibilityId("SomeAccessibilityID");
await element.type("Hello world!")

# ruby_lib example
find_element(:accessibility_id, "SomeAccessibilityID").send_keys("Hello World!")

# ruby_lib_core example
@driver.find_element(:accessibility_id, "SomeAccessibilityID").send_keys("Hello World!")

MobileElement el = driver.FindElement(MobileByAccessibilityID("Some ID");
el.SendKeys("Some Text");

MobileElement el = driver.FindElement(MobileById("Some ID");
el.SendKeys("Hello World");


Any UTF-8 character may be specified, however, if the server does not support native key events, it should simulate key strokes for a standard US keyboard layout. The Unicode Private Use Area code points, 0xE000-0xF8FF, are used to represent pressable, non-text keys (see table below). (See Unicode document for information on Unicode characters)


Appium Server

Platform Driver Platform Versions Appium Version Driver Version
iOS XCUITest 9.3+ 1.6.0+ All
UIAutomation 8.0 to 9.3 All All
Android Espresso ?+ 1.9.0+ All
UiAutomator2 ?+ 1.6.0+ All
UiAutomator 4.3+ All All
Mac Mac ?+ 1.6.4+ All
Windows Windows 10+ 1.6.0+ All

Appium Clients

Language Support Documentation
Java All
Python All
Javascript (WebdriverIO) All
Javascript (WD) All
Ruby All
C# All

HTTP API Specifications


POST /session/:session_id/element/:element_id/value

URL Parameters

name description
session_id ID of the session to route the command to
element_id ID of the element to send keys to.

JSON Parameters

name type description
value array<string> (MJSONWP) The sequence of keys to type. An array must be provided. The server should flatten the array items to a single string to be typed
text string (W3C) A single string to be typed



See Also