Appium website screenshot

Appium

Appium is an open-source test automation framework governed by the OpenJS Foundation, designed to facilitate UI automation of many app platforms including mobile (iOS, Android), browser (Chrome, Firefox, Safari), desktop (macOS, Windows), and TV (Roku, tvOS, Android TV). It implements the W3C WebDriver protocol and provides an extensible ecosystem of drivers, clients, and plugins.

Appium publishes 10 APIs on the APIs.io network, including Actions API, Alerts API, Appium Device API, and 7 more. Tagged areas include Android, Cross-Platform, iOS, Mobile Testing, and Open Source.

The Appium catalog on APIs.io includes 1 JSON-LD context and 2 Spectral governance rulesets.

Appium’s developer surface includes getting-started guide, documentation, support, Stack Overflow tag, YouTube channel, changelog, tooling, and 13 more developer resources.

49.4/100 developing ▼ -7.6 Agent 43/100 agent ready Full breakdown ↓
scored 2026-07-28 · rubric v0.6
AccessFree
13 APIs 1 MCP Servers 10 Agent Skills 7 Features 5 Use Cases
AndroidCross-PlatformiOSMobile TestingOpen SourceOpenJS FoundationTest AutomationWebDriver

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-07-28 · rubric v0.6
Composite quality — 49.4/100 · developing
Contract Quality 13.1 / 25
Developer Ergonomics 9.6 / 20
Commercial Clarity 5.8 / 20
Operational Transparency 5.5 / 13
Governance 8.3 / 12
Discoverability 7.2 / 10
Agent readiness — 43/100 · agent ready
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
MCP Server 12 / 12
Machine-Readable Auth 0 / 10
Idempotency 0 / 9
Stable Error Semantics 0 / 8
Request/Response Examples 7 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 0 / 6
Agent Skills 5 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 0 / 4
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/appium: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 13

Individual APIs this provider publishes, each with its own machine-readable definition.

Appium Inspector

Standalone GUI inspector for mobile apps that communicates with an Appium server, enabling visual element inspection and XPath generation for test authoring.

Appium UiAutomator2 Driver

The primary Appium driver for Android automation, backed by Google's UiAutomator2 framework. Supports Android 5.0+ devices and emulators.

Appium XCUITest Driver

The primary Appium driver for iOS and tvOS automation, backed by Apple's XCTest framework. Supports iOS 12+ and macOS Sequoia.

Appium Actions API

W3C Actions API for complex input sequences

Appium Alerts API

Dialog and alert handling

Appium Appium Device API

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

Appium Appium Session API

Appium session settings and capabilities

Appium Cookies API

Cookie management

Appium Elements API

Element discovery and interaction

Appium Navigation API

Browser and app navigation commands

Appium Screenshots API

Screenshot capture

Appium Server API

Server status and session listing

Appium Sessions API

WebDriver session lifecycle management

Scroll for all 13

MCP Servers 1

Model Context Protocol servers that expose these APIs to AI agents.

MCP Server

MCP SERVER

Agent Skills 10

Packaged agent skills for driving this provider's APIs from an AI assistant.

Scroll for all 10

Pricing Plans 1

Published pricing tiers and plan structures.

Appium Plans Pricing

1 plans

PLANS

Rate Limits 1

Documented rate limits and quota policies.

Appium Rate Limits

2 limits

RATE LIMITS

FinOps 1

Cost, billing, and metering signals for API financial operations.

Features 7

Notable capabilities this provider offers.

Multi-Platform Support

Automate iOS, Android, Windows, macOS, web browsers, and TV platforms from a single framework

WebDriver Protocol

Implements the W3C WebDriver protocol for standard, cross-platform automation

Extensible Driver Architecture

Plugin-based driver system supports any platform through community and official drivers

Multiple Language Clients

Official client libraries for Python, Java, JavaScript, Ruby, .NET, and more

WebDriver BiDi Support

Supports the next-generation WebDriver BiDi bidirectional protocol

MCP Server

Model Context Protocol server for AI-assisted test automation

Inspector GUI

Visual app inspector for element discovery and XPath/accessibility ID generation

Scroll for all 7

Semantic Vocabularies 1

JSON-LD contexts and semantic vocabularies used across these APIs.

Appium Server Context

7 classes · 15 properties

JSON-LD

Spectral Rules 2

Spectral governance rulesets for linting and validating these APIs.

Appium API Rules

5 rules · 3 warnings 2 info

SPECTRAL

Appium API Rules

30 rules · 10 errors 18 warnings 2 info

SPECTRAL

JSON Schema 6

Standalone JSON Schema definitions for this provider's data models.

ActionSequence

4 properties

JSON SCHEMA

AppIdRequest

3 properties

JSON SCHEMA

Cookie

7 properties

JSON SCHEMA

ErrorResponse

1 properties

JSON SCHEMA

FindElementRequest

2 properties

JSON SCHEMA

SessionInfo

2 properties

JSON SCHEMA

JSON Structure 6

JSON Structure definitions describing this provider's data shapes.

Appium Server Action Sequence Structure

4 properties

JSON STRUCTURE

Appium Server App Id Request Structure

3 properties

JSON STRUCTURE

Appium Server Cookie Structure

7 properties

JSON STRUCTURE

Appium Server Error Response Structure

1 properties

JSON STRUCTURE

Appium Server Session Info Structure

2 properties

JSON STRUCTURE

Examples 6

Example request and response payloads for these APIs.

Security Posture 1

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Appium Domain Security

TLSv1.2 · DMARC

SECURITY

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Appium Agentic Access

32 operations · 18 acting · 1 human-in-the-loop

32 operations · 18 acting

AGENTIC

Use Cases 5

What developers build with this provider.

Mobile App Testing

Automated functional and regression testing of iOS and Android native apps

Cross-Platform Test Suites

Single test codebase targeting multiple platforms and devices

CI/CD Integration

Running automated mobile tests in continuous integration pipelines

Web Automation

Browser automation on mobile and desktop via WebDriver

AI-Assisted Testing

Using the MCP server to enable AI agents to drive test execution

Integrations 7

Pre-built integrations with other platforms and tools.

BrowserStack

Cloud device farm integration for running Appium tests on real devices

Sauce Labs

Cloud testing platform with Appium support for real and virtual devices

LambdaTest

Cloud test execution platform with Appium integration

TestNG

Java testing framework commonly used with Appium Java client

pytest

Python testing framework used with the Appium Python client

WebdriverIO

JavaScript test automation framework with built-in Appium support

Selenium Grid

Distributed test execution grid compatible with Appium sessions

Scroll for all 7

Resources

Get Started 1

Portal, sign-up, and the first successful call

Documentation 1

Reference material describing how the API behaves

Agent Surfaces 3

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 2

Pagination, idempotency, versioning, errors, and events

Build 6

SDKs, sample code, and the tooling you integrate with

Access & Security 1

Authentication, authorization, and security posture

Learn 1

Tutorials, courses, talks, and written guidance

Operate 4

Status, limits, changes, and where to get help

Company 1

The organization behind the API

Source (apis.yml)

apis.yml Raw ↑
name: Appium
description: Appium is an open-source test automation framework governed by the OpenJS Foundation, designed to facilitate
  UI automation of many app platforms including mobile (iOS, Android), browser (Chrome, Firefox, Safari), desktop (macOS,
  Windows), and TV (Roku, tvOS, Android TV). It implements the W3C WebDriver protocol and provides an extensible ecosystem
  of drivers, clients, and plugins.
accessModel:
  pricing: free
  onboarding: unknown
  trial: false
  try_now: false
  public: false
  label: Free
  confidence: medium
  source:
  - plans
  generated: '2026-07-22'
  method: derived
image: https://appium.io/docs/en/latest/assets/images/appium-logo.png
created: '2024-01-15'
modified: '2026-05-19'
specificationVersion: '0.18'
url: https://appium.io/apis.json
apis:
- name: Appium Inspector
  description: Standalone GUI inspector for mobile apps that communicates with an Appium server, enabling visual element inspection
    and XPath generation for test authoring.
  humanURL: https://github.com/appium/appium-inspector
  baseURL: https://github.com/appium/appium-inspector/releases
  tags:
  - Debugging
  - GUI
  - Inspector
  - Mobile Testing
  properties:
  - type: GitHubRepository
    url: https://github.com/appium/appium-inspector
  - type: SDKs
    url: https://github.com/appium/appium-inspector/releases
    title: Desktop App Downloads
- name: Appium UiAutomator2 Driver
  description: The primary Appium driver for Android automation, backed by Google's UiAutomator2 framework. Supports Android
    5.0+ devices and emulators.
  humanURL: https://github.com/appium/appium-uiautomator2-driver
  baseURL: http://localhost:4723
  tags:
  - Android
  - Automation
  - Driver
  - Mobile Testing
  properties:
  - type: GitHubRepository
    url: https://github.com/appium/appium-uiautomator2-driver
  - type: Documentation
    url: https://github.com/appium/appium-uiautomator2-driver#readme
- name: Appium XCUITest Driver
  description: The primary Appium driver for iOS and tvOS automation, backed by Apple's XCTest framework. Supports iOS 12+
    and macOS Sequoia.
  humanURL: https://github.com/appium/appium-xcuitest-driver
  baseURL: http://localhost:4723
  tags:
  - Automation
  - Driver
  - iOS
  - Mobile Testing
  - tvOS
  properties:
  - type: GitHubRepository
    url: https://github.com/appium/appium-xcuitest-driver
  - type: Documentation
    url: https://github.com/appium/appium-xcuitest-driver#readme
- aid: appium:appium-actions-api
  name: Appium Actions API
  description: W3C Actions API for complex input sequences
  humanURL: https://appium.io/
  baseURL: http://localhost:4723
  tags:
  - Actions
  properties:
  - type: OpenAPI
    url: openapi/appium-actions-api-openapi.yml
  - type: Documentation
    url: https://appium.io/docs/en/latest/
  - type: GitHubRepository
    url: https://github.com/appium/appium
  - type: APIReference
    url: https://appium.io/docs/en/latest/reference/
  - type: JSONSchema
    url: json-schema/appium-server-session-info-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-find-element-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-app-id-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-action-sequence-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-cookie-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-error-response-schema.json
- aid: appium:appium-alerts-api
  name: Appium Alerts API
  description: Dialog and alert handling
  humanURL: https://appium.io/
  baseURL: http://localhost:4723
  tags:
  - Alerts
  properties:
  - type: OpenAPI
    url: openapi/appium-alerts-api-openapi.yml
  - type: Documentation
    url: https://appium.io/docs/en/latest/
  - type: GitHubRepository
    url: https://github.com/appium/appium
  - type: APIReference
    url: https://appium.io/docs/en/latest/reference/
  - type: JSONSchema
    url: json-schema/appium-server-session-info-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-find-element-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-app-id-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-action-sequence-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-cookie-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-error-response-schema.json
- aid: appium:appium-appium-device-api
  name: Appium Appium Device API
  description: Appium-specific device commands (app management, files, keyboard)
  humanURL: https://appium.io/
  baseURL: http://localhost:4723
  tags:
  - Appium Device
  properties:
  - type: OpenAPI
    url: openapi/appium-appium-device-api-openapi.yml
  - type: Documentation
    url: https://appium.io/docs/en/latest/
  - type: GitHubRepository
    url: https://github.com/appium/appium
  - type: APIReference
    url: https://appium.io/docs/en/latest/reference/
  - type: JSONSchema
    url: json-schema/appium-server-session-info-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-find-element-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-app-id-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-action-sequence-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-cookie-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-error-response-schema.json
- aid: appium:appium-appium-session-api
  name: Appium Appium Session API
  description: Appium session settings and capabilities
  humanURL: https://appium.io/
  baseURL: http://localhost:4723
  tags:
  - Appium Session
  properties:
  - type: OpenAPI
    url: openapi/appium-appium-session-api-openapi.yml
  - type: Documentation
    url: https://appium.io/docs/en/latest/
  - type: GitHubRepository
    url: https://github.com/appium/appium
  - type: APIReference
    url: https://appium.io/docs/en/latest/reference/
  - type: JSONSchema
    url: json-schema/appium-server-session-info-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-find-element-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-app-id-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-action-sequence-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-cookie-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-error-response-schema.json
- aid: appium:appium-cookies-api
  name: Appium Cookies API
  description: Cookie management
  humanURL: https://appium.io/
  baseURL: http://localhost:4723
  tags:
  - Cookies
  properties:
  - type: OpenAPI
    url: openapi/appium-cookies-api-openapi.yml
  - type: Documentation
    url: https://appium.io/docs/en/latest/
  - type: GitHubRepository
    url: https://github.com/appium/appium
  - type: APIReference
    url: https://appium.io/docs/en/latest/reference/
  - type: JSONSchema
    url: json-schema/appium-server-session-info-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-find-element-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-app-id-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-action-sequence-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-cookie-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-error-response-schema.json
- aid: appium:appium-elements-api
  name: Appium Elements API
  description: Element discovery and interaction
  humanURL: https://appium.io/
  baseURL: http://localhost:4723
  tags:
  - Elements
  properties:
  - type: OpenAPI
    url: openapi/appium-elements-api-openapi.yml
  - type: Documentation
    url: https://appium.io/docs/en/latest/
  - type: GitHubRepository
    url: https://github.com/appium/appium
  - type: APIReference
    url: https://appium.io/docs/en/latest/reference/
  - type: JSONSchema
    url: json-schema/appium-server-session-info-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-find-element-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-app-id-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-action-sequence-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-cookie-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-error-response-schema.json
- aid: appium:appium-navigation-api
  name: Appium Navigation API
  description: Browser and app navigation commands
  humanURL: https://appium.io/
  baseURL: http://localhost:4723
  tags:
  - Navigation
  properties:
  - type: OpenAPI
    url: openapi/appium-navigation-api-openapi.yml
  - type: Documentation
    url: https://appium.io/docs/en/latest/
  - type: GitHubRepository
    url: https://github.com/appium/appium
  - type: APIReference
    url: https://appium.io/docs/en/latest/reference/
  - type: JSONSchema
    url: json-schema/appium-server-session-info-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-find-element-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-app-id-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-action-sequence-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-cookie-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-error-response-schema.json
- aid: appium:appium-screenshots-api
  name: Appium Screenshots API
  description: Screenshot capture
  humanURL: https://appium.io/
  baseURL: http://localhost:4723
  tags:
  - Screenshots
  properties:
  - type: OpenAPI
    url: openapi/appium-screenshots-api-openapi.yml
  - type: Documentation
    url: https://appium.io/docs/en/latest/
  - type: GitHubRepository
    url: https://github.com/appium/appium
  - type: APIReference
    url: https://appium.io/docs/en/latest/reference/
  - type: JSONSchema
    url: json-schema/appium-server-session-info-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-find-element-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-app-id-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-action-sequence-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-cookie-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-error-response-schema.json
- aid: appium:appium-server-api
  name: Appium Server API
  description: Server status and session listing
  humanURL: https://appium.io/
  baseURL: http://localhost:4723
  tags:
  - Server
  properties:
  - type: OpenAPI
    url: openapi/appium-server-api-openapi.yml
  - type: Documentation
    url: https://appium.io/docs/en/latest/
  - type: GitHubRepository
    url: https://github.com/appium/appium
  - type: APIReference
    url: https://appium.io/docs/en/latest/reference/
  - type: JSONSchema
    url: json-schema/appium-server-session-info-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-find-element-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-app-id-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-action-sequence-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-cookie-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-error-response-schema.json
- aid: appium:appium-sessions-api
  name: Appium Sessions API
  description: WebDriver session lifecycle management
  humanURL: https://appium.io/
  baseURL: http://localhost:4723
  tags:
  - Sessions
  properties:
  - type: OpenAPI
    url: openapi/appium-sessions-api-openapi.yml
  - type: Documentation
    url: https://appium.io/docs/en/latest/
  - type: GitHubRepository
    url: https://github.com/appium/appium
  - type: APIReference
    url: https://appium.io/docs/en/latest/reference/
  - type: JSONSchema
    url: json-schema/appium-server-session-info-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-find-element-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-app-id-request-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-action-sequence-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-cookie-schema.json
  - type: JSONSchema
    url: json-schema/appium-server-error-response-schema.json
maintainers:
- FN: Appium Contributors
  email: appium@googlegroups.com
  url: https://github.com/appium/appium/graphs/contributors
tags:
- Android
- Cross-Platform
- iOS
- Mobile Testing
- Open Source
- OpenJS Foundation
- Test Automation
- WebDriver
common:
- type: AgenticAccess
  url: agentic-access/appium-agentic-access.yml
- type: DomainSecurity
  url: security/appium-domain-security.yml
- type: LinkedIn
  url: https://www.linkedin.com/company/appium
- type: GettingStarted
  url: https://appium.io/docs/en/latest/quickstart/
- type: GitHubOrganization
  url: https://github.com/appium
- type: Documentation
  url: https://appium.io/docs/en/latest/
- type: Support
  url: https://discuss.appium.io/
- type: Slack
  url: http://appium.slack.com
- type: StackOverflow
  url: https://stackoverflow.com/questions/tagged/appium
- type: YouTube
  url: https://www.youtube.com/c/AppiumConf
- type: ChangeLog
  url: https://github.com/appium/appium/blob/master/CHANGELOG.md
- type: SDKs
  url: https://github.com/appium/python-client
  title: Python Client
- type: SDKs
  url: https://github.com/appium/java-client
  title: Java Client
- type: SDKs
  url: https://github.com/appium/ruby_lib_core
  title: Ruby Client
- type: SDKs
  url: https://github.com/appium/dotnet-client
  title: .NET Client
- type: Tools
  url: https://github.com/appium/appium-mcp
  title: MCP Server
- type: SpectralRules
  url: rules/appium-spectral-rules.yml
- type: Vocabulary
  url: vocabulary/appium-vocabulary.yaml
- type: Features
  data:
  - name: Multi-Platform Support
    description: Automate iOS, Android, Windows, macOS, web browsers, and TV platforms from a single framework
  - name: WebDriver Protocol
    description: Implements the W3C WebDriver protocol for standard, cross-platform automation
  - name: Extensible Driver Architecture
    description: Plugin-based driver system supports any platform through community and official drivers
  - name: Multiple Language Clients
    description: Official client libraries for Python, Java, JavaScript, Ruby, .NET, and more
  - name: WebDriver BiDi Support
    description: Supports the next-generation WebDriver BiDi bidirectional protocol
  - name: MCP Server
    description: Model Context Protocol server for AI-assisted test automation
  - name: Inspector GUI
    description: Visual app inspector for element discovery and XPath/accessibility ID generation
- type: UseCases
  data:
  - name: Mobile App Testing
    description: Automated functional and regression testing of iOS and Android native apps
  - name: Cross-Platform Test Suites
    description: Single test codebase targeting multiple platforms and devices
  - name: CI/CD Integration
    description: Running automated mobile tests in continuous integration pipelines
  - name: Web Automation
    description: Browser automation on mobile and desktop via WebDriver
  - name: AI-Assisted Testing
    description: Using the MCP server to enable AI agents to drive test execution
- type: Integrations
  data:
  - name: BrowserStack
    description: Cloud device farm integration for running Appium tests on real devices
  - name: Sauce Labs
    description: Cloud testing platform with Appium support for real and virtual devices
  - name: LambdaTest
    description: Cloud test execution platform with Appium integration
  - name: TestNG
    description: Java testing framework commonly used with Appium Java client
  - name: pytest
    description: Python testing framework used with the Appium Python client
  - name: WebdriverIO
    description: JavaScript test automation framework with built-in Appium support
  - name: Selenium Grid
    description: Distributed test execution grid compatible with Appium sessions
- name: MCP Server
  url: https://github.com/appium/appium-mcp
  type: MCPServer
- name: Agent Skills
  url: https://github.com/appium/skills
  type: AgentSkills