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

  Edit this Doc Take Screenshot

Take a screenshot of the current viewport/window/page

Example Usage

File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);

screenshotBase64 = self.driver.get_screenshot_as_base64()

// example
let screenshot = driver.takeScreenshot();

// wd example
let screenshot = await driver.takeScreenshot();

# ruby_lib example
driver.screenshot_as(:base64) # via core_lib

# ruby_lib_core example

Screenshot screenshot = driver.GetScreenshot();


Takes a screenshot of the viewport in a native context (iOS, Android) and takes a screenshot of the window in web context

Note that some platforms may have settings that prevent screenshots from being taken, for security reason. One such feature is the Android FLAG_SECURE layout parameter


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


GET /session/:session_id/screenshot

URL Parameters

name description
session_id ID of the session to route the command to

JSON Parameters



The screenshot as a base64 encoded PNG (string)

See Also