Appium Appium Device API

Appium-specific device commands (app management, files, keyboard)

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/appium-appium-device-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

appium-appium-device-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Appium Server Actions Appium Device API
  description: The Appium Server API implements the W3C WebDriver protocol for mobile, web, desktop, and TV app automation. It provides endpoints for session management, element interaction, actions, screenshots, and Appium-specific device commands.
  version: 2.0.0
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  contact:
    name: Appium Community
    url: https://discuss.appium.io/
  x-generated-from: documentation
servers:
- url: http://localhost:4723
  description: Local Appium server (default port)
tags:
- name: Appium Device
  description: Appium-specific device commands (app management, files, keyboard)
paths:
  /session/{sessionId}/appium/device/activate_app:
    post:
      operationId: activateApp
      summary: Appium Activate App
      description: Brings the specified app to the foreground. The app must already be installed.
      tags:
      - Appium Device
      parameters:
      - $ref: '#/components/parameters/SessionId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppIdRequest'
            examples:
              ActivateAppRequestExample:
                summary: Default activateApp request
                x-microcks-default: true
                value:
                  appId: com.example.app
      responses:
        '200':
          description: App activated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyValueResponse'
              examples:
                ActivateApp200Example:
                  summary: Default activateApp 200 response
                  x-microcks-default: true
                  value:
                    value: null
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /session/{sessionId}/appium/device/terminate_app:
    post:
      operationId: terminateApp
      summary: Appium Terminate App
      description: Terminates the specified app if it is running.
      tags:
      - Appium Device
      parameters:
      - $ref: '#/components/parameters/SessionId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppIdRequest'
            examples:
              TerminateAppRequestExample:
                summary: Default terminateApp request
                x-microcks-default: true
                value:
                  appId: com.example.app
      responses:
        '200':
          description: App terminated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BooleanValueResponse'
              examples:
                TerminateApp200Example:
                  summary: Default terminateApp 200 response
                  x-microcks-default: true
                  value:
                    value: true
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /session/{sessionId}/appium/device/install_app:
    post:
      operationId: installApp
      summary: Appium Install App
      description: Installs the app from the given path on the device.
      tags:
      - Appium Device
      parameters:
      - $ref: '#/components/parameters/SessionId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - appPath
              properties:
                appPath:
                  type: string
                  description: Path to the app to install (local path or URL)
                  example: /path/to/app.apk
                options:
                  type: object
                  description: Platform-specific installation options
      responses:
        '200':
          description: App installed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyValueResponse'
              examples:
                InstallApp200Example:
                  summary: Default installApp 200 response
                  x-microcks-default: true
                  value:
                    value: null
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /session/{sessionId}/appium/device/remove_app:
    post:
      operationId: removeApp
      summary: Appium Remove App
      description: Uninstalls the specified app from the device.
      tags:
      - Appium Device
      parameters:
      - $ref: '#/components/parameters/SessionId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppIdRequest'
      responses:
        '200':
          description: App removed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BooleanValueResponse'
              examples:
                RemoveApp200Example:
                  summary: Default removeApp 200 response
                  x-microcks-default: true
                  value:
                    value: true
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /session/{sessionId}/appium/device/is_keyboard_shown:
    get:
      operationId: isKeyboardShown
      summary: Appium Is Keyboard Shown
      description: Returns whether the soft keyboard is currently visible on the device.
      tags:
      - Appium Device
      parameters:
      - $ref: '#/components/parameters/SessionId'
      responses:
        '200':
          description: Keyboard visibility state returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BooleanValueResponse'
              examples:
                IsKeyboardShown200Example:
                  summary: Default isKeyboardShown 200 response
                  x-microcks-default: true
                  value:
                    value: false
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /session/{sessionId}/appium/device/system_time:
    get:
      operationId: getDeviceTime
      summary: Appium Get Device Time
      description: Returns the current date and time from the device.
      tags:
      - Appium Device
      parameters:
      - $ref: '#/components/parameters/SessionId'
      responses:
        '200':
          description: Device time returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StringValueResponse'
              examples:
                GetDeviceTime200Example:
                  summary: Default getDeviceTime 200 response
                  x-microcks-default: true
                  value:
                    value: '2025-03-15T14:30:00Z'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /session/{sessionId}/orientation:
    get:
      operationId: getOrientation
      summary: Appium Get Orientation
      description: Returns the current device orientation (LANDSCAPE or PORTRAIT).
      tags:
      - Appium Device
      parameters:
      - $ref: '#/components/parameters/SessionId'
      responses:
        '200':
          description: Device orientation returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StringValueResponse'
              examples:
                GetOrientation200Example:
                  summary: Default getOrientation 200 response
                  x-microcks-default: true
                  value:
                    value: PORTRAIT
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    post:
      operationId: setOrientation
      summary: Appium Set Orientation
      description: Sets the device orientation to LANDSCAPE or PORTRAIT.
      tags:
      - Appium Device
      parameters:
      - $ref: '#/components/parameters/SessionId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - orientation
              properties:
                orientation:
                  type: string
                  enum:
                  - LANDSCAPE
                  - PORTRAIT
                  description: The desired device orientation
                  example: LANDSCAPE
      responses:
        '200':
          description: Orientation set successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyValueResponse'
              examples:
                SetOrientation200Example:
                  summary: Default setOrientation 200 response
                  x-microcks-default: true
                  value:
                    value: null
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    BooleanValueResponse:
      title: BooleanValueResponse
      description: Standard response with a boolean value
      type: object
      properties:
        value:
          type: boolean
          description: The returned boolean value
    EmptyValueResponse:
      title: EmptyValueResponse
      description: Standard response with null value
      type: object
      properties:
        value:
          nullable: true
          description: Always null for commands that have no return value
    StringValueResponse:
      title: StringValueResponse
      description: Standard response with a string value
      type: object
      properties:
        value:
          type: string
          description: The returned string value
    AppIdRequest:
      title: AppIdRequest
      description: Request body identifying an app by package name or bundle ID
      type: object
      properties:
        appId:
          type: string
          description: App package name (Android) or bundle ID (iOS)
          example: com.example.app
        bundleId:
          type: string
          description: iOS bundle identifier
          example: com.example.app
  parameters:
    SessionId:
      name: sessionId
      in: path
      required: true
      description: The unique session identifier
      schema:
        type: string
      example: a1b2c3d4-e5f6-7890-abcd-ef1234567890