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!')
// webdriver.io example
$("~SomeAccessibilityId").addValue("Enter");
// 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");
//Example
MobileElement el = driver.FindElement(MobileById("Some ID");
el.SendKeys("Hello World");
Description
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)
Support
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 | seleniumhq.github.io |
| Python | All | selenium-python.readthedocs.io |
| Javascript (WebdriverIO) | All | |
| Javascript (WD) | All | github.com |
| Ruby | All | www.rubydoc.info |
| C# | All | github.com |
HTTP API Specifications
Endpoint
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 |
Response
null