openapi: 3.0.0
info:
version: 2015-06-23
x-release: v4
title: 'AWS Device Farm #X Amz Target=DeviceFarm 20150623.CreateDevicePool #X Amz Target=DeviceFarm 20150623.CreateDevicePool #X Amz Target=DeviceFarm 20150623.GetDevicePoolCompatibility API'
description:
Welcome to the AWS Device Farm API documentation, which contains APIs for:
-
Testing on desktop browsers
Device Farm makes it possible for you to test your web applications on desktop browsers using Selenium. The APIs for desktop browser testing contain TestGrid in their names. For more information, see Testing Web Applications on Selenium with Device Farm.
-
Testing on real mobile devices
Device Farm makes it possible for you to test apps on physical phones, tablets, and other devices in the cloud. For more information, see the Device Farm Developer Guide.
x-logo:
url: https://api.apis.guru/v2/cache/logo/https_twitter.com_awscloud_profile_image.png
backgroundColor: '#FFFFFF'
termsOfService: https://aws.amazon.com/service-terms/
contact:
name: Mike Ralphson
email: mike.ralphson@gmail.com
url: https://github.com/mermade/aws2openapi
x-twitter: PermittedSoc
license:
name: Apache 2.0 License
url: http://www.apache.org/licenses/
x-providerName: amazonaws.com
x-serviceName: devicefarm
x-origin:
- contentType: application/json
url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/devicefarm-2015-06-23.normal.json
converter:
url: https://github.com/mermade/aws2openapi
version: 1.0.0
x-apisguru-driver: external
x-apiClientRegistration:
url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct
x-apisguru-categories:
- cloud
x-preferred: true
servers:
- url: http://devicefarm.{region}.amazonaws.com
variables:
region:
description: The AWS region
enum:
- us-east-1
- us-east-2
- us-west-1
- us-west-2
- us-gov-west-1
- us-gov-east-1
- ca-central-1
- eu-north-1
- eu-west-1
- eu-west-2
- eu-west-3
- eu-central-1
- eu-south-1
- af-south-1
- ap-northeast-1
- ap-northeast-2
- ap-northeast-3
- ap-southeast-1
- ap-southeast-2
- ap-east-1
- ap-south-1
- sa-east-1
- me-south-1
default: us-east-1
description: The AWS Device Farm multi-region endpoint
- url: https://devicefarm.{region}.amazonaws.com
variables:
region:
description: The AWS region
enum:
- us-east-1
- us-east-2
- us-west-1
- us-west-2
- us-gov-west-1
- us-gov-east-1
- ca-central-1
- eu-north-1
- eu-west-1
- eu-west-2
- eu-west-3
- eu-central-1
- eu-south-1
- af-south-1
- ap-northeast-1
- ap-northeast-2
- ap-northeast-3
- ap-southeast-1
- ap-southeast-2
- ap-east-1
- ap-south-1
- sa-east-1
- me-south-1
default: us-east-1
description: The AWS Device Farm multi-region endpoint
- url: http://devicefarm.{region}.amazonaws.com.cn
variables:
region:
description: The AWS region
enum:
- cn-north-1
- cn-northwest-1
default: cn-north-1
description: The AWS Device Farm endpoint for China (Beijing) and China (Ningxia)
- url: https://devicefarm.{region}.amazonaws.com.cn
variables:
region:
description: The AWS region
enum:
- cn-north-1
- cn-northwest-1
default: cn-north-1
description: The AWS Device Farm endpoint for China (Beijing) and China (Ningxia)
security:
- hmac: []
tags:
- name: '#X Amz Target=DeviceFarm 20150623.GetDevicePoolCompatibility'
paths:
/#X-Amz-Target=DeviceFarm_20150623.GetDevicePoolCompatibility:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
- $ref: '#/components/parameters/X-Amz-Date'
- $ref: '#/components/parameters/X-Amz-Algorithm'
- $ref: '#/components/parameters/X-Amz-Credential'
- $ref: '#/components/parameters/X-Amz-Security-Token'
- $ref: '#/components/parameters/X-Amz-Signature'
- $ref: '#/components/parameters/X-Amz-SignedHeaders'
post:
operationId: GetDevicePoolCompatibility
description: Gets information about compatibility with a device pool.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GetDevicePoolCompatibilityResult'
'480':
description: ArgumentException
content:
application/json:
schema:
$ref: '#/components/schemas/ArgumentException'
'481':
description: NotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundException'
'482':
description: LimitExceededException
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededException'
'483':
description: ServiceAccountException
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceAccountException'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/GetDevicePoolCompatibilityRequest'
parameters:
- name: X-Amz-Target
in: header
required: true
schema:
type: string
enum:
- DeviceFarm_20150623.GetDevicePoolCompatibility
tags:
- '#X Amz Target=DeviceFarm 20150623.GetDevicePoolCompatibility'
components:
schemas:
Long:
type: integer
DevicePlatform:
type: string
enum:
- ANDROID
- IOS
InstanceLabels:
type: array
items:
$ref: '#/components/schemas/String'
IncompatibilityMessages:
type: array
items:
$ref: '#/components/schemas/IncompatibilityMessage'
String:
type: string
DeviceAvailability:
type: string
enum:
- TEMPORARY_NOT_AVAILABLE
- BUSY
- AVAILABLE
- HIGHLY_AVAILABLE
Integer:
type: integer
Message:
type: string
minLength: 0
maxLength: 16384
AndroidPaths:
type: array
items:
$ref: '#/components/schemas/String'
DeviceFormFactor:
type: string
enum:
- PHONE
- TABLET
GetDevicePoolCompatibilityRequest:
type: object
required:
- devicePoolArn
title: GetDevicePoolCompatibilityRequest
properties:
devicePoolArn:
allOf:
- $ref: '#/components/schemas/AmazonResourceName'
- description: The device pool's ARN.
appArn:
allOf:
- $ref: '#/components/schemas/AmazonResourceName'
- description: The ARN of the app that is associated with the specified device pool.
testType:
allOf:
- $ref: '#/components/schemas/TestType'
- description: The test type for the specified device pool.
Allowed values include the following:
test:
allOf:
- $ref: '#/components/schemas/ScheduleRunTest'
- description: Information about the uploaded test to be run against the device pool.
configuration:
allOf:
- $ref: '#/components/schemas/ScheduleRunConfiguration'
- description: An object that contains information about the settings for a run.
description: Represents a request to the get device pool compatibility operation.
InstanceProfile:
type: object
properties:
arn:
allOf:
- $ref: '#/components/schemas/AmazonResourceName'
- description: The Amazon Resource Name (ARN) of the instance profile.
packageCleanup:
allOf:
- $ref: '#/components/schemas/Boolean'
- description: When set to true, Device Farm removes app packages after a test run. The default value is false for private devices.
excludeAppPackagesFromCleanup:
allOf:
- $ref: '#/components/schemas/PackageIds'
- description: An array of strings containing the list of app packages that should not be cleaned up from the device after a test run completes.
The list of packages is considered only if you set packageCleanup to true.
rebootAfterUse:
allOf:
- $ref: '#/components/schemas/Boolean'
- description: When set to true, Device Farm reboots the instance after a test run. The default value is true.
name:
allOf:
- $ref: '#/components/schemas/Name'
- description: The name of the instance profile.
description:
allOf:
- $ref: '#/components/schemas/Message'
- description: The description of the instance profile.
description: Represents the instance profile.
Location:
type: object
required:
- latitude
- longitude
properties:
latitude:
allOf:
- $ref: '#/components/schemas/Double'
- description: The latitude.
longitude:
allOf:
- $ref: '#/components/schemas/Double'
- description: The longitude.
description: Represents a latitude and longitude pair, expressed in geographic coordinate system degrees (for example, 47.6204, -122.3491).
Elevation is currently not supported.
Boolean:
type: boolean
AmazonResourceNames:
type: array
items:
$ref: '#/components/schemas/AmazonResourceName'
DeviceInstance:
type: object
properties:
arn:
allOf:
- $ref: '#/components/schemas/AmazonResourceName'
- description: The Amazon Resource Name (ARN) of the device instance.
deviceArn:
allOf:
- $ref: '#/components/schemas/AmazonResourceName'
- description: The ARN of the device.
labels:
allOf:
- $ref: '#/components/schemas/InstanceLabels'
- description: An array of strings that describe the device instance.
status:
allOf:
- $ref: '#/components/schemas/InstanceStatus'
- description: The status of the device instance. Valid values are listed here.
udid:
allOf:
- $ref: '#/components/schemas/String'
- description: Unique device identifier for the device instance.
instanceProfile:
allOf:
- $ref: '#/components/schemas/InstanceProfile'
- description: A object that contains information about the instance profile.
description: Represents the device instance.
LimitExceededException: {}
ScheduleRunTest:
type: object
required:
- type
properties:
type:
allOf:
- $ref: '#/components/schemas/TestType'
- description: The test's type.
Must be one of the following values:
testPackageArn:
allOf:
- $ref: '#/components/schemas/AmazonResourceName'
- description: The ARN of the uploaded test to be run.
testSpecArn:
allOf:
- $ref: '#/components/schemas/AmazonResourceName'
- description: The ARN of the YAML-formatted test specification.
filter:
allOf:
- $ref: '#/components/schemas/Filter'
- description: The test's filter.
parameters:
allOf:
- $ref: '#/components/schemas/TestParameters'
- description: 'The test''s parameters, such as test framework parameters and fixture settings. Parameters are represented by name-value pairs of strings.
For all tests:
For Calabash tests:
-
profile: A cucumber profile (for example, my_profile_name).
-
tags: You can limit execution to features or scenarios that have (or don''t have) certain tags (for example, @smoke or @smoke,~@wip).
For Appium tests (all types):
For fuzz tests (Android only):
-
event_count: The number of events, between 1 and 10000, that the UI fuzz test should perform.
-
throttle: The time, in ms, between 0 and 1000, that the UI fuzz test should wait between events.
-
seed: A seed to use for randomizing the UI fuzz test. Using the same seed value between tests ensures identical event sequences.
For Explorer tests:
-
username: A user name to use if the Explorer encounters a login form. If not supplied, no user name is inserted.
-
password: A password to use if the Explorer encounters a login form. If not supplied, no password is inserted.
For Instrumentation:
For XCTest and XCTestUI:
For UIAutomator:
'
description: Represents test settings. This data structure is passed in as the test parameter to ScheduleRun. For an example of the JSON request syntax, see ScheduleRun.
IncompatibilityMessage:
type: object
properties:
message:
allOf:
- $ref: '#/components/schemas/Message'
- description: A message about the incompatibility.
type:
allOf:
- $ref: '#/components/schemas/DeviceAttribute'
- description: The type of incompatibility.
Allowed values include:
-
ARN
-
FORM_FACTOR (for example, phone or tablet)
-
MANUFACTURER
-
PLATFORM (for example, Android or iOS)
-
REMOTE_ACCESS_ENABLED
-
APPIUM_VERSION
description: Represents information about incompatibility.
DeviceHostPaths:
type: array
items:
$ref: '#/components/schemas/String'
Filter:
type: string
minLength: 0
maxLength: 8192
CustomerArtifactPaths:
type: object
properties:
iosPaths:
allOf:
- $ref: '#/components/schemas/IosPaths'
- description: Comma-separated list of paths on the iOS device where the artifacts generated by the customer's tests are pulled from.
androidPaths:
allOf:
- $ref: '#/components/schemas/AndroidPaths'
- description: Comma-separated list of paths on the Android device where the artifacts generated by the customer's tests are pulled from.
deviceHostPaths:
allOf:
- $ref: '#/components/schemas/DeviceHostPaths'
- description: Comma-separated list of paths in the test execution environment where the artifacts generated by the customer's tests are pulled from.
description: A JSON object that specifies the paths where the artifacts generated by the customer's tests, on the device or in the test environment, are pulled from.
Specify deviceHostPaths and optionally specify either iosPaths or androidPaths.
For web app tests, you can specify both iosPaths and androidPaths.
CPU:
type: object
properties:
frequency:
allOf:
- $ref: '#/components/schemas/String'
- description: The CPU's frequency.
architecture:
allOf:
- $ref: '#/components/schemas/String'
- description: The CPU's architecture (for example, x86 or ARM).
clock:
allOf:
- $ref: '#/components/schemas/Double'
- description: The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.
description: Represents the amount of CPU that an app is using on a physical device. Does not represent system-wide CPU usage.
PackageIds:
type: array
items:
$ref: '#/components/schemas/String'
ScheduleRunConfiguration:
type: object
properties:
extraDataPackageArn:
allOf:
- $ref: '#/components/schemas/AmazonResourceName'
- description: The ARN of the extra data for the run. The extra data is a .zip file that AWS Device Farm extracts to external data for Android or the app's sandbox for iOS.
networkProfileArn:
allOf:
- $ref: '#/components/schemas/AmazonResourceName'
- description: Reserved for internal use.
locale:
allOf:
- $ref: '#/components/schemas/String'
- description: Information about the locale that is used for the run.
location:
allOf:
- $ref: '#/components/schemas/Location'
- description: Information about the location that is used for the run.
vpceConfigurationArns:
allOf:
- $ref: '#/components/schemas/AmazonResourceNames'
- description: An array of ARNs for your VPC endpoint configurations.
customerArtifactPaths:
allOf:
- $ref: '#/components/schemas/CustomerArtifactPaths'
- description: Input CustomerArtifactPaths object for the scheduled run configuration.
radios:
allOf:
- $ref: '#/components/schemas/Radios'
- description: Information about the radio states for the run.
auxiliaryApps:
allOf:
- $ref: '#/components/schemas/AmazonResourceNames'
- description: A list of upload ARNs for app packages to be installed with your app.
billingMethod:
allOf:
- $ref: '#/components/schemas/BillingMethod'
- description: 'Specifies the billing method for a test run: metered or unmetered. If the parameter is not specified, the default value is metered.
If you have purchased unmetered device slots, you must set this parameter to unmetered to make use of them. Otherwise, your run counts against your metered time.
'
description: Represents the settings for a run. Includes things like location, radio states, auxiliary apps, and network profiles.
GetDevicePoolCompatibilityResult:
type: object
example:
compatibleDevices: []
incompatibleDevices: []
properties:
compatibleDevices:
allOf:
- $ref: '#/components/schemas/DevicePoolCompatibilityResults'
- description: Information about compatible devices.
incompatibleDevices:
allOf:
- $ref: '#/components/schemas/DevicePoolCompatibilityResults'
- description: Information about incompatible devices.
description: Represents the result of describe device pool compatibility request.
DevicePoolCompatibilityResult:
type: object
properties:
device:
allOf:
- $ref: '#/components/schemas/Device'
- description: The device (phone or tablet) to return information about.
compatible:
allOf:
- $ref: '#/components/schemas/Boolean'
- description: Whether the result was compatible with the device pool.
incompatibilityMessages:
allOf:
- $ref: '#/components/schemas/IncompatibilityMessages'
- description: Information about the compatibility.
description: Represents a device pool compatibility result.
TestType:
type: string
enum:
- BUILTIN_FUZZ
- BUILTIN_EXPLORER
- WEB_PERFORMANCE_PROFILE
- APPIUM_JAVA_JUNIT
- APPIUM_JAVA_TESTNG
- APPIUM_PYTHON
- APPIUM_NODE
- APPIUM_RUBY
- APPIUM_WEB_JAVA_JUNIT
- APPIUM_WEB_JAVA_TESTNG
- APPIUM_WEB_PYTHON
- APPIUM_WEB_NODE
- APPIUM_WEB_RUBY
- CALABASH
- INSTRUMENTATION
- UIAUTOMATION
- UIAUTOMATOR
- XCTEST
- XCTEST_UI
- REMOTE_ACCESS_RECORD
- REMOTE_ACCESS_REPLAY
ServiceAccountException: {}
NotFoundException: {}
IosPaths:
type: array
items:
$ref: '#/components/schemas/String'
DevicePoolCompatibilityResults:
type: array
items:
$ref: '#/components/schemas/DevicePoolCompatibilityResult'
AmazonResourceName:
type: string
pattern: ^arn:.+
minLength: 32
maxLength: 1011
Double:
type: number
format: double
Radios:
type: object
properties:
wifi:
allOf:
- $ref: '#/components/schemas/Boolean'
- description: True if Wi-Fi is enabled at the beginning of the test. Otherwise, false.
bluetooth:
allOf:
- $ref: '#/components/schemas/Boolean'
- description: True if Bluetooth is enabled at the beginning of the test. Otherwise, false.
nfc:
allOf:
- $ref: '#/components/schemas/Boolean'
- description: True if NFC is enabled at the beginning of the test. Otherwise, false.
gps:
allOf:
- $ref: '#/components/schemas/Boolean'
- description: True if GPS is enabled at the beginning of the test. Otherwise, false.
description: Represents the set of radios and their states on a device. Examples of radios include Wi-Fi, GPS, Bluetooth, and NFC.
InstanceStatus:
type: string
enum:
- IN_USE
- PREPARING
- AVAILABLE
- NOT_AVAILABLE
DeviceInstances:
type: array
items:
$ref: '#/components/schemas/DeviceInstance'
Name:
type: string
minLength: 0
maxLength: 256
Device:
type: object
properties:
arn:
allOf:
- $ref: '#/components/schemas/AmazonResourceName'
- description: The device's ARN.
name:
allOf:
- $ref: '#/components/schemas/Name'
- description: The device's display name.
manufacturer:
allOf:
- $ref: '#/components/schemas/String'
- description: The device's manufacturer name.
model:
allOf:
- $ref: '#/components/schemas/String'
- description: The device's model name.
modelId:
allOf:
- $ref: '#/components/schemas/String'
- description: The device's model ID.
formFactor:
allOf:
- $ref: '#/components/schemas/DeviceFormFactor'
- description: The device's form factor.
Allowed values include:
platform:
allOf:
- $ref: '#/components/schemas/DevicePlatform'
- description: The device's platform.
Allowed values include:
os:
allOf:
- $ref: '#/components/schemas/String'
- description: The device's operating system type.
cpu:
allOf:
- $ref: '#/components/schemas/CPU'
- description: Information about the device's CPU.
resolution:
allOf:
- $ref: '#/components/schemas/Resolution'
- description: The resolution of the device.
heapSize:
allOf:
- $ref: '#/components/schemas/Long'
- description: The device's heap size, expressed in bytes.
memory:
allOf:
- $ref: '#/components/schemas/Long'
- description: The device's total memory size, expressed in bytes.
image:
allOf:
- $ref: '#/components/schemas/String'
- description: The device's image name.
carrier:
allOf:
- $ref: '#/components/schemas/String'
- description: The device's carrier.
radio:
allOf:
- $ref: '#/components/schemas/String'
- description: The device's radio.
remoteAccessEnabled:
allOf:
- $ref: '#/components/schemas/Boolean'
- description: Specifies whether remote access has been enabled for the specified device.
remoteDebugEnabled:
allOf:
- $ref: '#/components/schemas/Boolean'
- description: This flag is set to true if remote debugging is enabled for the device.
Remote debugging is no longer supported.
fleetType:
allOf:
- $ref: '#/components/schemas/String'
- description: The type of fleet to which this device belongs. Possible values are PRIVATE and PUBLIC.
fleetName:
allOf:
- $ref: '#/components/schemas/String'
- description: The name of the fleet to which this device belongs.
instances:
allOf:
- $ref: '#/components/schemas/DeviceInstances'
- description: The instances that belong to this device.
availability:
allOf:
- $ref: '#/components/schemas/DeviceAvailability'
- description: Indicates how likely a device is available for a test run. Currently available in the ListDevices and GetDevice API methods.
description: Represents a device type that an app is tested against.
DeviceAttribute:
type: string
enum:
- ARN
- PLATFORM
- FORM_FACTOR
- MANUFACTURER
- REMOTE_ACCESS_ENABLED
- REMOTE_DEBUG_ENABLED
- APPIUM_VERSION
- INSTANCE_ARN
- INSTANCE_LABELS
- FLEET_TYPE
- OS_VERSION
- MODEL
- AVAILABILITY
BillingMethod:
type: string
enum:
- METERED
- UNMETERED
Resolution:
type: object
properties:
width:
allOf:
- $ref: '#/components/schemas/Integer'
- description: The screen resolution's width, expressed in pixels.
height:
allOf:
- $ref: '#/components/schemas/Integer'
- description: The screen resolution's height, expressed in pixels.
description: Represents the screen resolution of a device in height and width, expressed in pixels.
ArgumentException: {}
TestParameters:
type: object
additionalProperties:
$ref: '#/components/schemas/String'
parameters:
X-Amz-Algorithm:
name: X-Amz-Algorithm
in: header
schema:
type: string
required: false
X-Amz-Credential:
name: X-Amz-Credential
in: header
schema:
type: string
required: false
X-Amz-Content-Sha256:
name: X-Amz-Content-Sha256
in: header
schema:
type: string
required: false
X-Amz-Security-Token:
name: X-Amz-Security-Token
in: header
schema:
type: string
required: false
X-Amz-SignedHeaders:
name: X-Amz-SignedHeaders
in: header
schema:
type: string
required: false
X-Amz-Date:
name: X-Amz-Date
in: header
schema:
type: string
required: false
X-Amz-Signature:
name: X-Amz-Signature
in: header
schema:
type: string
required: false
securitySchemes:
hmac:
type: apiKey
name: Authorization
in: header
description: Amazon Signature authorization v4
x-amazon-apigateway-authtype: awsSigv4
externalDocs:
description: Amazon Web Services documentation
url: https://docs.aws.amazon.com/devicefarm/
x-hasEquivalentPaths: true