Class: AWS.DeviceFarm

Inherits:
AWS.Service show all
Identifier:
devicefarm
API Version:
2015-06-23
Defined in:
(unknown)

Overview

Constructs a service interface object. Each API operation is exposed as a function on service.

Sending a Request Using DeviceFarm

var devicefarm = new AWS.DeviceFarm();
devicefarm.createDevicePool(params, function (err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Locking the API Version

In order to ensure that the DeviceFarm object uses this specific API, you can construct the object by passing the apiVersion option to the constructor:

var devicefarm = new AWS.DeviceFarm({apiVersion: '2015-06-23'});

You can also set the API version globally in AWS.config.apiVersions using the devicefarm service identifier:

AWS.config.apiVersions = {
  devicefarm: '2015-06-23',
  // other service API versions
};

var devicefarm = new AWS.DeviceFarm();

Version:

  • 2015-06-23

Constructor Summary collapse

Property Summary collapse

Properties inherited from AWS.Service

apiVersions

Method Summary collapse

Methods inherited from AWS.Service

makeRequest, makeUnauthenticatedRequest, waitFor, setupRequestListeners, defineService

Constructor Details

new AWS.DeviceFarm(options = {}) ⇒ Object

Constructs a service object. This object has one method for each API operation.

Examples:

Constructing a DeviceFarm object

var devicefarm = new AWS.DeviceFarm({apiVersion: '2015-06-23'});

Options Hash (options):

  • params (map)

    An optional map of parameters to bind to every request sent by this service object. For more information on bound parameters, see "Working with Services" in the Getting Started Guide.

  • endpoint (String)

    The endpoint URI to send requests to. The default endpoint is built from the configured region. The endpoint should be a string like 'https://{service}.{region}.amazonaws.com'.

  • accessKeyId (String)

    your AWS access key ID.

  • secretAccessKey (String)

    your AWS secret access key.

  • sessionToken (AWS.Credentials)

    the optional AWS session token to sign requests with.

  • credentials (AWS.Credentials)

    the AWS credentials to sign requests with. You can either specify this object, or specify the accessKeyId and secretAccessKey options directly.

  • credentialProvider (AWS.CredentialProviderChain)

    the provider chain used to resolve credentials if no static credentials property is set.

  • region (String)

    the region to send service requests to. See AWS.DeviceFarm.region for more information.

  • maxRetries (Integer)

    the maximum amount of retries to attempt with a request. See AWS.DeviceFarm.maxRetries for more information.

  • maxRedirects (Integer)

    the maximum amount of redirects to follow with a request. See AWS.DeviceFarm.maxRedirects for more information.

  • sslEnabled (Boolean)

    whether to enable SSL for requests.

  • paramValidation (Boolean|map)

    whether input parameters should be validated against the operation description before sending the request. Defaults to true. Pass a map to enable any of the following specific validation features:

    • min [Boolean] — Validates that a value meets the min constraint. This is enabled by default when paramValidation is set to true.
    • max [Boolean] — Validates that a value meets the max constraint.
    • pattern [Boolean] — Validates that a string value matches a regular expression.
    • enum [Boolean] — Validates that a string value matches one of the allowable enum values.
  • computeChecksums (Boolean)

    whether to compute checksums for payload bodies when the service accepts it (currently supported in S3 only)

  • convertResponseTypes (Boolean)

    whether types are converted when parsing response data. Currently only supported for JSON based services. Turning this off may improve performance on large response payloads. Defaults to true.

  • correctClockSkew (Boolean)

    whether to apply a clock skew correction and retry requests that fail because of an skewed client clock. Defaults to false.

  • s3ForcePathStyle (Boolean)

    whether to force path style URLs for S3 objects.

  • s3BucketEndpoint (Boolean)

    whether the provided endpoint addresses an individual bucket (false if it addresses the root API endpoint). Note that setting this configuration option requires an endpoint to be provided explicitly to the service constructor.

  • s3DisableBodySigning (Boolean)

    whether S3 body signing should be disabled when using signature version v4. Body signing can only be disabled when using https. Defaults to true.

  • retryDelayOptions (map)

    A set of options to configure the retry delay on retryable errors. Currently supported options are:

    • base [Integer] — The base number of milliseconds to use in the exponential backoff for operation retries. Defaults to 100 ms for all services except DynamoDB, where it defaults to 50ms.
    • customBackoff [function] — A custom function that accepts a retry count and returns the amount of time to delay in milliseconds. The base option will be ignored if this option is supplied.
  • httpOptions (map)

    A set of options to pass to the low-level HTTP request. Currently supported options are:

    • proxy [String] — the URL to proxy requests through
    • agent [http.Agent, https.Agent] — the Agent object to perform HTTP requests with. Used for connection pooling. Defaults to the global agent (http.globalAgent) for non-SSL connections. Note that for SSL connections, a special Agent object is used in order to enable peer certificate verification. This feature is only available in the Node.js environment.
    • connectTimeout [Integer] — Sets the socket to timeout after failing to establish a connection with the server after connectTimeout milliseconds. This timeout has no effect once a socket connection has been established.
    • timeout [Integer] — Sets the socket to timeout after timeout milliseconds of inactivity on the socket. Defaults to two minutes (120000).
    • xhrAsync [Boolean] — Whether the SDK will send asynchronous HTTP requests. Used in the browser environment only. Set to false to send requests synchronously. Defaults to true (async on).
    • xhrWithCredentials [Boolean] — Sets the "withCredentials" property of an XMLHttpRequest object. Used in the browser environment only. Defaults to false.
  • apiVersion (String, Date)

    a String in YYYY-MM-DD format (or a date) that represents the latest possible API version that can be used in all services (unless overridden by apiVersions). Specify 'latest' to use the latest possible version.

  • apiVersions (map<String, String|Date>)

    a map of service identifiers (the lowercase service class name) with the API version to use when instantiating a service. Specify 'latest' for each individual that can use the latest available version.

  • logger (#write, #log)

    an object that responds to .write() (like a stream) or .log() (like the console object) in order to log information about requests

  • systemClockOffset (Number)

    an offset value in milliseconds to apply to all signing times. Use this to compensate for clock skew when your system may be out of sync with the service time. Note that this configuration option can only be applied to the global AWS.config object and cannot be overridden in service-specific configuration. Defaults to 0 milliseconds.

  • signatureVersion (String)

    the signature version to sign requests with (overriding the API configuration). Possible values are: 'v2', 'v3', 'v4'.

  • signatureCache (Boolean)

    whether the signature to sign requests with (overriding the API configuration) is cached. Only applies to the signature version 'v4'. Defaults to true.

  • dynamoDbCrc32 (Boolean)

    whether to validate the CRC32 checksum of HTTP response bodies returned by DynamoDB. Default: true.

Property Details

endpointAWS.Endpoint (readwrite)

Returns an Endpoint object representing the endpoint URL for service requests.

Returns:

  • (AWS.Endpoint)

    an Endpoint object representing the endpoint URL for service requests.

Method Details

createDevicePool(params = {}, callback) ⇒ AWS.Request

Creates a device pool.

Service Reference:

Examples:

To create a new device pool


/* The following example creates a new device pool named MyDevicePool inside an existing project. */

 var params = {
  name: "MyDevicePool", // A device pool contains related devices, such as devices that run only on Android or that run only on iOS.
  description: "My Android devices", 
  projectArn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", // You can get the project ARN by using the list-projects CLI command.
  rules: [
  ]
 };
 devicefarm.createDevicePool(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    devicePool: {
    }
   }
   */
 });

Calling the createDevicePool operation

var params = {
  name: 'STRING_VALUE', /* required */
  projectArn: 'STRING_VALUE', /* required */
  rules: [ /* required */
    {
      attribute: ARN | PLATFORM | FORM_FACTOR | MANUFACTURER | REMOTE_ACCESS_ENABLED | APPIUM_VERSION,
      operator: EQUALS | LESS_THAN | GREATER_THAN | IN | NOT_IN | CONTAINS,
      value: 'STRING_VALUE'
    },
    /* more items */
  ],
  description: 'STRING_VALUE'
};
devicefarm.createDevicePool(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • projectArn — (String)

      The ARN of the project for the device pool.

    • name — (String)

      The device pool's name.

    • description — (String)

      The device pool's description.

    • rules — (Array<map>)

      The device pool's rules.

      • attribute — (String)

        The rule's stringified attribute. For example, specify the value as "\"abc\"".

        Allowed values include:

        • ARN: The ARN.

        • FORM_FACTOR: The form factor (for example, phone or tablet).

        • MANUFACTURER: The manufacturer.

        • PLATFORM: The platform (for example, Android or iOS).

        • REMOTE_ACCESS_ENABLED: Whether the device is enabled for remote access.

        • APPIUM_VERSION: The Appium version for the test.

        Possible values include:
        • "ARN"
        • "PLATFORM"
        • "FORM_FACTOR"
        • "MANUFACTURER"
        • "REMOTE_ACCESS_ENABLED"
        • "APPIUM_VERSION"
      • operator — (String)

        The rule's operator.

        • EQUALS: The equals operator.

        • GREATER_THAN: The greater-than operator.

        • IN: The in operator.

        • LESS_THAN: The less-than operator.

        • NOT_IN: The not-in operator.

        • CONTAINS: The contains operator.

        Possible values include:
        • "EQUALS"
        • "LESS_THAN"
        • "GREATER_THAN"
        • "IN"
        • "NOT_IN"
        • "CONTAINS"
      • value — (String)

        The rule's value.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • devicePool — (map)

        The newly created device pool.

        • arn — (String)

          The device pool's ARN.

        • name — (String)

          The device pool's name.

        • description — (String)

          The device pool's description.

        • type — (String)

          The device pool's type.

          Allowed values include:

          • CURATED: A device pool that is created and managed by AWS Device Farm.

          • PRIVATE: A device pool that is created and managed by the device pool developer.

          Possible values include:
          • "CURATED"
          • "PRIVATE"
        • rules — (Array<map>)

          Information about the device pool's rules.

          • attribute — (String)

            The rule's stringified attribute. For example, specify the value as "\"abc\"".

            Allowed values include:

            • ARN: The ARN.

            • FORM_FACTOR: The form factor (for example, phone or tablet).

            • MANUFACTURER: The manufacturer.

            • PLATFORM: The platform (for example, Android or iOS).

            • REMOTE_ACCESS_ENABLED: Whether the device is enabled for remote access.

            • APPIUM_VERSION: The Appium version for the test.

            Possible values include:
            • "ARN"
            • "PLATFORM"
            • "FORM_FACTOR"
            • "MANUFACTURER"
            • "REMOTE_ACCESS_ENABLED"
            • "APPIUM_VERSION"
          • operator — (String)

            The rule's operator.

            • EQUALS: The equals operator.

            • GREATER_THAN: The greater-than operator.

            • IN: The in operator.

            • LESS_THAN: The less-than operator.

            • NOT_IN: The not-in operator.

            • CONTAINS: The contains operator.

            Possible values include:
            • "EQUALS"
            • "LESS_THAN"
            • "GREATER_THAN"
            • "IN"
            • "NOT_IN"
            • "CONTAINS"
          • value — (String)

            The rule's value.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createNetworkProfile(params = {}, callback) ⇒ AWS.Request

Creates a network profile.

Service Reference:

Examples:

Calling the createNetworkProfile operation

var params = {
  name: 'STRING_VALUE', /* required */
  projectArn: 'STRING_VALUE', /* required */
  description: 'STRING_VALUE',
  downlinkBandwidthBits: 0,
  downlinkDelayMs: 0,
  downlinkJitterMs: 0,
  downlinkLossPercent: 0,
  type: CURATED | PRIVATE,
  uplinkBandwidthBits: 0,
  uplinkDelayMs: 0,
  uplinkJitterMs: 0,
  uplinkLossPercent: 0
};
devicefarm.createNetworkProfile(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • projectArn — (String)

      The Amazon Resource Name (ARN) of the project for which you want to create a network profile.

    • name — (String)

      The name you wish to specify for the new network profile.

    • description — (String)

      The description of the network profile.

    • type — (String)

      The type of network profile you wish to create. Valid values are listed below.

      Possible values include:
      • "CURATED"
      • "PRIVATE"
    • uplinkBandwidthBits — (Integer)

      The data throughput rate in bits per second, as an integer from 0 to 104857600.

    • downlinkBandwidthBits — (Integer)

      The data throughput rate in bits per second, as an integer from 0 to 104857600.

    • uplinkDelayMs — (Integer)

      Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

    • downlinkDelayMs — (Integer)

      Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

    • uplinkJitterMs — (Integer)

      Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

    • downlinkJitterMs — (Integer)

      Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

    • uplinkLossPercent — (Integer)

      Proportion of transmitted packets that fail to arrive from 0 to 100 percent.

    • downlinkLossPercent — (Integer)

      Proportion of received packets that fail to arrive from 0 to 100 percent.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • networkProfile — (map)

        The network profile that is returned by the create network profile request.

        • arn — (String)

          The Amazon Resource Name (ARN) of the network profile.

        • name — (String)

          The name of the network profile.

        • description — (String)

          The description of the network profile.

        • type — (String)

          The type of network profile. Valid values are listed below.

          Possible values include:
          • "CURATED"
          • "PRIVATE"
        • uplinkBandwidthBits — (Integer)

          The data throughput rate in bits per second, as an integer from 0 to 104857600.

        • downlinkBandwidthBits — (Integer)

          The data throughput rate in bits per second, as an integer from 0 to 104857600.

        • uplinkDelayMs — (Integer)

          Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

        • downlinkDelayMs — (Integer)

          Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

        • uplinkJitterMs — (Integer)

          Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

        • downlinkJitterMs — (Integer)

          Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

        • uplinkLossPercent — (Integer)

          Proportion of transmitted packets that fail to arrive from 0 to 100 percent.

        • downlinkLossPercent — (Integer)

          Proportion of received packets that fail to arrive from 0 to 100 percent.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createProject(params = {}, callback) ⇒ AWS.Request

Creates a new project.

Service Reference:

Examples:

To create a new project


/* The following example creates a new project named MyProject. */

 var params = {
  name: "MyProject"// A project in Device Farm is a workspace that contains test runs. A run is a test of a single app against one or more devices.
 };
 devicefarm.createProject(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    project: {
     name: "MyProject", 
     arn: "arn:aws:devicefarm:us-west-2:123456789101:project:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE", 
     created: <Date Representation>
    }
   }
   */
 });

Calling the createProject operation

var params = {
  name: 'STRING_VALUE', /* required */
  defaultJobTimeoutMinutes: 0
};
devicefarm.createProject(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • name — (String)

      The project's name.

    • defaultJobTimeoutMinutes — (Integer)

      Sets the execution timeout value (in minutes) for a project. All test runs in this project will use the specified execution timeout value unless overridden when scheduling a run.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • project — (map)

        The newly created project.

        • arn — (String)

          The project's ARN.

        • name — (String)

          The project's name.

        • defaultJobTimeoutMinutes — (Integer)

          The default number of minutes (at the project level) a test run will execute before it times out. Default value is 60 minutes.

        • created — (Date)

          When the project was created.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createRemoteAccessSession(params = {}, callback) ⇒ AWS.Request

Specifies and starts a remote access session.

Service Reference:

Examples:

To create a remote access session


/* The following example creates a remote access session named MySession. */

 var params = {
  name: "MySession", 
  configuration: {
   billingMethod: "METERED"
  }, 
  deviceArn: "arn:aws:devicefarm:us-west-2::device:123EXAMPLE", // You can get the device ARN by using the list-devices CLI command.
  projectArn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456"// You can get the project ARN by using the list-projects CLI command.
 };
 devicefarm.createRemoteAccessSession(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    remoteAccessSession: {
    }
   }
   */
 });

Calling the createRemoteAccessSession operation

var params = {
  deviceArn: 'STRING_VALUE', /* required */
  projectArn: 'STRING_VALUE', /* required */
  configuration: {
    billingMethod: METERED | UNMETERED
  },
  name: 'STRING_VALUE'
};
devicefarm.createRemoteAccessSession(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • projectArn — (String)

      The Amazon Resource Name (ARN) of the project for which you want to create a remote access session.

    • deviceArn — (String)

      The Amazon Resource Name (ARN) of the device for which you want to create a remote access session.

    • name — (String)

      The name of the remote access session that you wish to create.

    • configuration — (map)

      The configuration information for the remote access session request.

      • billingMethod — (String)

        Returns the billing method for purposes of configuring a remote access session.

        Possible values include:
        • "METERED"
        • "UNMETERED"

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • remoteAccessSession — (map)

        A container that describes the remote access session when the request to create a remote access session is sent.

        • arn — (String)

          The Amazon Resource Name (ARN) of the remote access session.

        • name — (String)

          The name of the remote access session.

        • created — (Date)

          The date and time the remote access session was created.

        • status — (String)

          The status of the remote access session. Can be any of the following:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The result of the remote access session. Can be any of the following:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • message — (String)

          A message about the remote access session.

        • started — (Date)

          The date and time the remote access session was started.

        • stopped — (Date)

          The date and time the remote access session was stopped.

        • device — (map)

          The device (phone or tablet) used in the remote access session.

          • arn — (String)

            The device's ARN.

          • name — (String)

            The device's display name.

          • manufacturer — (String)

            The device's manufacturer name.

          • model — (String)

            The device's model name.

          • formFactor — (String)

            The device's form factor.

            Allowed values include:

            • PHONE: The phone form factor.

            • TABLET: The tablet form factor.

            Possible values include:
            • "PHONE"
            • "TABLET"
          • platform — (String)

            The device's platform.

            Allowed values include:

            • ANDROID: The Android platform.

            • IOS: The iOS platform.

            Possible values include:
            • "ANDROID"
            • "IOS"
          • os — (String)

            The device's operating system type.

          • cpu — (map)

            Information about the device's CPU.

            • frequency — (String)

              The CPU's frequency.

            • architecture — (String)

              The CPU's architecture, for example x86 or ARM.

            • clock — (Float)

              The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

          • resolution — (map)

            The resolution of the device.

            • width — (Integer)

              The screen resolution's width, expressed in pixels.

            • height — (Integer)

              The screen resolution's height, expressed in pixels.

          • heapSize — (Integer)

            The device's heap size, expressed in bytes.

          • memory — (Integer)

            The device's total memory size, expressed in bytes.

          • image — (String)

            The device's image name.

          • carrier — (String)

            The device's carrier.

          • radio — (String)

            The device's radio.

          • remoteAccessEnabled — (Boolean)

            Specifies whether remote access has been enabled for the specified device.

          • fleetType — (String)

            The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

          • fleetName — (String)

            The name of the fleet to which this device belongs.

        • billingMethod — (String)

          The billing method of the remote access session. Possible values include METERED or UNMETERED. For more information about metered devices, see AWS Device Farm terminology."

          Possible values include:
          • "METERED"
          • "UNMETERED"
        • deviceMinutes — (map)

          The number of minutes a device is used in a remote access sesssion (including setup and teardown minutes).

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

        • endpoint — (String)

          The endpoint for the remote access sesssion.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createUpload(params = {}, callback) ⇒ AWS.Request

Uploads an app or test scripts.

Service Reference:

Examples:

To create a new test package upload


/* The following example creates a new Appium Python test package upload inside an existing project. */

 var params = {
  name: "MyAppiumPythonUpload", 
  type: "APPIUM_PYTHON_TEST_PACKAGE", 
  projectArn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456"// You can get the project ARN by using the list-projects CLI command.
 };
 devicefarm.createUpload(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    upload: {
     name: "MyAppiumPythonUpload", 
     type: "APPIUM_PYTHON_TEST_PACKAGE", 
     arn: "arn:aws:devicefarm:us-west-2:123456789101:upload:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/b5340a65-3da7-4da6-a26e-12345EXAMPLE", 
     created: <Date Representation>, 
     status: "INITIALIZED", 
     url: "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/arn%3Aaws%3Adevicefarm%3Aus-west-2%3A123456789101%3Aproject%3A5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE/uploads/arn%3Aaws%3Adevicefarm%3Aus-west-2%3A123456789101%3Aupload%3A5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/b5340a65-3da7-4da6-a26e-12345EXAMPLE/MyAppiumPythonUpload?AWSAccessKeyId=1234567891011EXAMPLE&Expires=1472747804&Signature=1234567891011EXAMPLE"
    }
   }
   */
 });

Calling the createUpload operation

var params = {
  name: 'STRING_VALUE', /* required */
  projectArn: 'STRING_VALUE', /* required */
  type: ANDROID_APP | IOS_APP | WEB_APP | EXTERNAL_DATA | APPIUM_JAVA_JUNIT_TEST_PACKAGE | APPIUM_JAVA_TESTNG_TEST_PACKAGE | APPIUM_PYTHON_TEST_PACKAGE | APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE | APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE | APPIUM_WEB_PYTHON_TEST_PACKAGE | CALABASH_TEST_PACKAGE | INSTRUMENTATION_TEST_PACKAGE | UIAUTOMATION_TEST_PACKAGE | UIAUTOMATOR_TEST_PACKAGE | XCTEST_TEST_PACKAGE | XCTEST_UI_TEST_PACKAGE, /* required */
  contentType: 'STRING_VALUE'
};
devicefarm.createUpload(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • projectArn — (String)

      The ARN of the project for the upload.

    • name — (String)

      The upload's file name. The name should not contain the '/' character. If uploading an iOS app, the file name needs to end with the .ipa extension. If uploading an Android app, the file name needs to end with the .apk extension. For all others, the file name must end with the .zip file extension.

    • type — (String)

      The upload's upload type.

      Must be one of the following values:

      • ANDROID_APP: An Android upload.

      • IOS_APP: An iOS upload.

      • WEB_APP: A web appliction upload.

      • EXTERNAL_DATA: An external data upload.

      • APPIUM_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

      • APPIUM_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

      • APPIUM_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

      • APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

      • APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

      • APPIUM_WEB_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

      • CALABASH_TEST_PACKAGE: A Calabash test package upload.

      • INSTRUMENTATION_TEST_PACKAGE: An instrumentation upload.

      • UIAUTOMATION_TEST_PACKAGE: A uiautomation test package upload.

      • UIAUTOMATOR_TEST_PACKAGE: A uiautomator test package upload.

      • XCTEST_TEST_PACKAGE: An XCode test package upload.

      • XCTEST_UI_TEST_PACKAGE: An XCode UI test package upload.

      Note If you call CreateUpload with WEB_APP specified, AWS Device Farm throws an ArgumentException error.

      Possible values include:
      • "ANDROID_APP"
      • "IOS_APP"
      • "WEB_APP"
      • "EXTERNAL_DATA"
      • "APPIUM_JAVA_JUNIT_TEST_PACKAGE"
      • "APPIUM_JAVA_TESTNG_TEST_PACKAGE"
      • "APPIUM_PYTHON_TEST_PACKAGE"
      • "APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE"
      • "APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE"
      • "APPIUM_WEB_PYTHON_TEST_PACKAGE"
      • "CALABASH_TEST_PACKAGE"
      • "INSTRUMENTATION_TEST_PACKAGE"
      • "UIAUTOMATION_TEST_PACKAGE"
      • "UIAUTOMATOR_TEST_PACKAGE"
      • "XCTEST_TEST_PACKAGE"
      • "XCTEST_UI_TEST_PACKAGE"
    • contentType — (String)

      The upload's content type (for example, "application/octet-stream").

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • upload — (map)

        The newly created upload.

        • arn — (String)

          The upload's ARN.

        • name — (String)

          The upload's file name.

        • created — (Date)

          When the upload was created.

        • type — (String)

          The upload's type.

          Must be one of the following values:

          • ANDROID_APP: An Android upload.

          • IOS_APP: An iOS upload.

          • WEB_APP: A web appliction upload.

          • EXTERNAL_DATA: An external data upload.

          • APPIUM_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

          • APPIUM_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

          • APPIUM_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

          • APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

          • APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

          • APPIUM_WEB_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

          • CALABASH_TEST_PACKAGE: A Calabash test package upload.

          • INSTRUMENTATION_TEST_PACKAGE: An instrumentation upload.

          • UIAUTOMATION_TEST_PACKAGE: A uiautomation test package upload.

          • UIAUTOMATOR_TEST_PACKAGE: A uiautomator test package upload.

          • XCTEST_TEST_PACKAGE: An XCode test package upload.

          • XCTEST_UI_TEST_PACKAGE: An XCode UI test package upload.

          Possible values include:
          • "ANDROID_APP"
          • "IOS_APP"
          • "WEB_APP"
          • "EXTERNAL_DATA"
          • "APPIUM_JAVA_JUNIT_TEST_PACKAGE"
          • "APPIUM_JAVA_TESTNG_TEST_PACKAGE"
          • "APPIUM_PYTHON_TEST_PACKAGE"
          • "APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE"
          • "APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE"
          • "APPIUM_WEB_PYTHON_TEST_PACKAGE"
          • "CALABASH_TEST_PACKAGE"
          • "INSTRUMENTATION_TEST_PACKAGE"
          • "UIAUTOMATION_TEST_PACKAGE"
          • "UIAUTOMATOR_TEST_PACKAGE"
          • "XCTEST_TEST_PACKAGE"
          • "XCTEST_UI_TEST_PACKAGE"
        • status — (String)

          The upload's status.

          Must be one of the following values:

          • FAILED: A failed status.

          • INITIALIZED: An initialized status.

          • PROCESSING: A processing status.

          • SUCCEEDED: A succeeded status.

          Possible values include:
          • "INITIALIZED"
          • "PROCESSING"
          • "SUCCEEDED"
          • "FAILED"
        • url — (String)

          The pre-signed Amazon S3 URL that was used to store a file through a corresponding PUT request.

        • metadata — (String)

          The upload's metadata. For example, for Android, this contains information that is parsed from the manifest and is displayed in the AWS Device Farm console after the associated app is uploaded.

        • contentType — (String)

          The upload's content type (for example, "application/octet-stream").

        • message — (String)

          A message about the upload's result.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteDevicePool(params = {}, callback) ⇒ AWS.Request

Deletes a device pool given the pool ARN. Does not allow deletion of curated pools owned by the system.

Service Reference:

Examples:

To delete a device pool


/* The following example deletes a specific device pool. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2::devicepool:123-456-EXAMPLE-GUID"// You can get the device pool ARN by using the list-device-pools CLI command.
 };
 devicefarm.deleteDevicePool(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
   }
   */
 });

Calling the deleteDevicePool operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.deleteDevicePool(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      Represents the Amazon Resource Name (ARN) of the Device Farm device pool you wish to delete.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteNetworkProfile(params = {}, callback) ⇒ AWS.Request

Deletes a network profile.

Service Reference:

Examples:

Calling the deleteNetworkProfile operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.deleteNetworkProfile(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the network profile you want to delete.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteProject(params = {}, callback) ⇒ AWS.Request

Deletes an AWS Device Farm project, given the project ARN.

Note Deleting this resource does not stop an in-progress run.

Service Reference:

Examples:

To delete a project


/* The following example deletes a specific project. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456"// You can get the project ARN by using the list-projects CLI command.
 };
 devicefarm.deleteProject(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
   }
   */
 });

Calling the deleteProject operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.deleteProject(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      Represents the Amazon Resource Name (ARN) of the Device Farm project you wish to delete.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteRemoteAccessSession(params = {}, callback) ⇒ AWS.Request

Deletes a completed remote access session and its results.

Service Reference:

Examples:

To delete a specific remote access session


/* The following example deletes a specific remote access session. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:session:EXAMPLE-GUID-123-456"// You can get the remote access session ARN by using the list-remote-access-sessions CLI command.
 };
 devicefarm.deleteRemoteAccessSession(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
   }
   */
 });

Calling the deleteRemoteAccessSession operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.deleteRemoteAccessSession(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the sesssion for which you want to delete remote access.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteRun(params = {}, callback) ⇒ AWS.Request

Deletes the run, given the run ARN.

Note Deleting this resource does not stop an in-progress run.

Service Reference:

Examples:

To delete a run


/* The following example deletes a specific test run. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:run:EXAMPLE-GUID-123-456"// You can get the run ARN by using the list-runs CLI command.
 };
 devicefarm.deleteRun(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
   }
   */
 });

Calling the deleteRun operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.deleteRun(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) for the run you wish to delete.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteUpload(params = {}, callback) ⇒ AWS.Request

Deletes an upload given the upload ARN.

Service Reference:

Examples:

To delete a specific upload


/* The following example deletes a specific upload. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:upload:EXAMPLE-GUID-123-456"// You can get the upload ARN by using the list-uploads CLI command.
 };
 devicefarm.deleteUpload(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
   }
   */
 });

Calling the deleteUpload operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.deleteUpload(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      Represents the Amazon Resource Name (ARN) of the Device Farm upload you wish to delete.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getAccountSettings(params = {}, callback) ⇒ AWS.Request

Returns the number of unmetered iOS and/or unmetered Android devices that have been purchased by the account.

Service Reference:

Examples:

To get information about account settings


/* The following example returns information about your Device Farm account settings. */

 var params = {
 };
 devicefarm.getAccountSettings(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    accountSettings: {
     awsAccountNumber: "123456789101", 
     unmeteredDevices: {
      "ANDROID": 1, 
      "IOS": 2
     }
    }
   }
   */
 });

Calling the getAccountSettings operation

var params = {
};
devicefarm.getAccountSettings(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • accountSettings — (map)

        The account settings.

        • awsAccountNumber — (String)

          The AWS account number specified in the AccountSettings container.

        • unmeteredDevices — (map<Integer>)

          Returns the unmetered devices you have purchased or want to purchase.

        • unmeteredRemoteAccessDevices — (map<Integer>)

          Returns the unmetered remote access devices you have purchased or want to purchase.

        • maxJobTimeoutMinutes — (Integer)

          The maximum number of minutes a test run will execute before it times out.

        • trialMinutes — (map)

          Information about an AWS account's usage of free trial device minutes.

          • total — (Float)

            The total number of free trial minutes that the account started with.

          • remaining — (Float)

            The number of free trial minutes remaining in the account.

        • maxSlots — (map<Integer>)

          The maximum number of device slots that the AWS account can purchase. Each maximum is expressed as an offering-id:number pair, where the offering-id represents one of the IDs returned by the ListOfferings command.

        • defaultJobTimeoutMinutes — (Integer)

          The default number of minutes (at the account level) a test run will execute before it times out. Default value is 60 minutes.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getDevice(params = {}, callback) ⇒ AWS.Request

Gets information about a unique device type.

Service Reference:

Examples:

To get information about a device


/* The following example returns information about a specific device. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2::device:123EXAMPLE"
 };
 devicefarm.getDevice(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    device: {
     name: "LG G2 (Sprint)", 
     arn: "arn:aws:devicefarm:us-west-2::device:A0E6E6E1059E45918208DF75B2B7EF6C", 
     cpu: {
      architecture: "armeabi-v7a", 
      clock: 2265.6, 
      frequency: "MHz"
     }, 
     formFactor: "PHONE", 
     heapSize: 256000000, 
     image: "75B2B7EF6C12345EXAMPLE", 
     manufacturer: "LG", 
     memory: 16000000000, 
     model: "G2 (Sprint)", 
     os: "4.2.2", 
     platform: "ANDROID", 
     resolution: {
      height: 1920, 
      width: 1080
     }
    }
   }
   */
 });

Calling the getDevice operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.getDevice(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The device type's ARN.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • device — (map)

        An object containing information about the requested device.

        • arn — (String)

          The device's ARN.

        • name — (String)

          The device's display name.

        • manufacturer — (String)

          The device's manufacturer name.

        • model — (String)

          The device's model name.

        • formFactor — (String)

          The device's form factor.

          Allowed values include:

          • PHONE: The phone form factor.

          • TABLET: The tablet form factor.

          Possible values include:
          • "PHONE"
          • "TABLET"
        • platform — (String)

          The device's platform.

          Allowed values include:

          • ANDROID: The Android platform.

          • IOS: The iOS platform.

          Possible values include:
          • "ANDROID"
          • "IOS"
        • os — (String)

          The device's operating system type.

        • cpu — (map)

          Information about the device's CPU.

          • frequency — (String)

            The CPU's frequency.

          • architecture — (String)

            The CPU's architecture, for example x86 or ARM.

          • clock — (Float)

            The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

        • resolution — (map)

          The resolution of the device.

          • width — (Integer)

            The screen resolution's width, expressed in pixels.

          • height — (Integer)

            The screen resolution's height, expressed in pixels.

        • heapSize — (Integer)

          The device's heap size, expressed in bytes.

        • memory — (Integer)

          The device's total memory size, expressed in bytes.

        • image — (String)

          The device's image name.

        • carrier — (String)

          The device's carrier.

        • radio — (String)

          The device's radio.

        • remoteAccessEnabled — (Boolean)

          Specifies whether remote access has been enabled for the specified device.

        • fleetType — (String)

          The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

        • fleetName — (String)

          The name of the fleet to which this device belongs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getDevicePool(params = {}, callback) ⇒ AWS.Request

Gets information about a device pool.

Service Reference:

Examples:

To get information about a device pool


/* The following example returns information about a specific device pool, given a project ARN. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456"// You can obtain the project ARN by using the list-projects CLI command.
 };
 devicefarm.getDevicePool(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    devicePool: {
    }
   }
   */
 });

Calling the getDevicePool operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.getDevicePool(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The device pool's ARN.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • devicePool — (map)

        An object containing information about the requested device pool.

        • arn — (String)

          The device pool's ARN.

        • name — (String)

          The device pool's name.

        • description — (String)

          The device pool's description.

        • type — (String)

          The device pool's type.

          Allowed values include:

          • CURATED: A device pool that is created and managed by AWS Device Farm.

          • PRIVATE: A device pool that is created and managed by the device pool developer.

          Possible values include:
          • "CURATED"
          • "PRIVATE"
        • rules — (Array<map>)

          Information about the device pool's rules.

          • attribute — (String)

            The rule's stringified attribute. For example, specify the value as "\"abc\"".

            Allowed values include:

            • ARN: The ARN.

            • FORM_FACTOR: The form factor (for example, phone or tablet).

            • MANUFACTURER: The manufacturer.

            • PLATFORM: The platform (for example, Android or iOS).

            • REMOTE_ACCESS_ENABLED: Whether the device is enabled for remote access.

            • APPIUM_VERSION: The Appium version for the test.

            Possible values include:
            • "ARN"
            • "PLATFORM"
            • "FORM_FACTOR"
            • "MANUFACTURER"
            • "REMOTE_ACCESS_ENABLED"
            • "APPIUM_VERSION"
          • operator — (String)

            The rule's operator.

            • EQUALS: The equals operator.

            • GREATER_THAN: The greater-than operator.

            • IN: The in operator.

            • LESS_THAN: The less-than operator.

            • NOT_IN: The not-in operator.

            • CONTAINS: The contains operator.

            Possible values include:
            • "EQUALS"
            • "LESS_THAN"
            • "GREATER_THAN"
            • "IN"
            • "NOT_IN"
            • "CONTAINS"
          • value — (String)

            The rule's value.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getDevicePoolCompatibility(params = {}, callback) ⇒ AWS.Request

Gets information about compatibility with a device pool.

Service Reference:

Examples:

To get information about the compatibility of a device pool


/* The following example returns information about the compatibility of a specific device pool, given its ARN. */

 var params = {
  appArn: "arn:aws:devicefarm:us-west-2::app:123-456-EXAMPLE-GUID", 
  devicePoolArn: "arn:aws:devicefarm:us-west-2::devicepool:123-456-EXAMPLE-GUID", // You can get the device pool ARN by using the list-device-pools CLI command.
  testType: "APPIUM_PYTHON"
 };
 devicefarm.getDevicePoolCompatibility(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    compatibleDevices: [
    ], 
    incompatibleDevices: [
    ]
   }
   */
 });

Calling the getDevicePoolCompatibility operation

var params = {
  devicePoolArn: 'STRING_VALUE', /* required */
  appArn: 'STRING_VALUE',
  test: {
    type: BUILTIN_FUZZ | BUILTIN_EXPLORER | APPIUM_JAVA_JUNIT | APPIUM_JAVA_TESTNG | APPIUM_PYTHON | APPIUM_WEB_JAVA_JUNIT | APPIUM_WEB_JAVA_TESTNG | APPIUM_WEB_PYTHON | CALABASH | INSTRUMENTATION | UIAUTOMATION | UIAUTOMATOR | XCTEST | XCTEST_UI, /* required */
    filter: 'STRING_VALUE',
    parameters: {
      '<String>': 'STRING_VALUE',
      /* '<String>': ... */
    },
    testPackageArn: 'STRING_VALUE'
  },
  testType: BUILTIN_FUZZ | BUILTIN_EXPLORER | APPIUM_JAVA_JUNIT | APPIUM_JAVA_TESTNG | APPIUM_PYTHON | APPIUM_WEB_JAVA_JUNIT | APPIUM_WEB_JAVA_TESTNG | APPIUM_WEB_PYTHON | CALABASH | INSTRUMENTATION | UIAUTOMATION | UIAUTOMATOR | XCTEST | XCTEST_UI
};
devicefarm.getDevicePoolCompatibility(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • devicePoolArn — (String)

      The device pool's ARN.

    • appArn — (String)

      The ARN of the app that is associated with the specified device pool.

    • testType — (String)

      The test type for the specified device pool.

      Allowed values include the following:

      • BUILTIN_FUZZ: The built-in fuzz type.

      • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

      • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

      • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

      • APPIUM_PYTHON: The Appium Python type.

      • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

      • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

      • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

      • CALABASH: The Calabash type.

      • INSTRUMENTATION: The Instrumentation type.

      • UIAUTOMATION: The uiautomation type.

      • UIAUTOMATOR: The uiautomator type.

      • XCTEST: The XCode test type.

      • XCTEST_UI: The XCode UI test type.

      Possible values include:
      • "BUILTIN_FUZZ"
      • "BUILTIN_EXPLORER"
      • "APPIUM_JAVA_JUNIT"
      • "APPIUM_JAVA_TESTNG"
      • "APPIUM_PYTHON"
      • "APPIUM_WEB_JAVA_JUNIT"
      • "APPIUM_WEB_JAVA_TESTNG"
      • "APPIUM_WEB_PYTHON"
      • "CALABASH"
      • "INSTRUMENTATION"
      • "UIAUTOMATION"
      • "UIAUTOMATOR"
      • "XCTEST"
      • "XCTEST_UI"
    • test — (map)

      Information about the uploaded test to be run against the device pool.

      • typerequired — (String)

        The test's type.

        Must be one of the following values:

        • BUILTIN_FUZZ: The built-in fuzz type.

        • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

        • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

        • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

        • APPIUM_PYTHON: The Appium Python type.

        • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

        • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

        • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

        • CALABASH: The Calabash type.

        • INSTRUMENTATION: The Instrumentation type.

        • UIAUTOMATION: The uiautomation type.

        • UIAUTOMATOR: The uiautomator type.

        • XCTEST: The XCode test type.

        • XCTEST_UI: The XCode UI test type.

        Possible values include:
        • "BUILTIN_FUZZ"
        • "BUILTIN_EXPLORER"
        • "APPIUM_JAVA_JUNIT"
        • "APPIUM_JAVA_TESTNG"
        • "APPIUM_PYTHON"
        • "APPIUM_WEB_JAVA_JUNIT"
        • "APPIUM_WEB_JAVA_TESTNG"
        • "APPIUM_WEB_PYTHON"
        • "CALABASH"
        • "INSTRUMENTATION"
        • "UIAUTOMATION"
        • "UIAUTOMATOR"
        • "XCTEST"
        • "XCTEST_UI"
      • testPackageArn — (String)

        The ARN of the uploaded test that will be run.

      • filter — (String)

        The test's filter.

      • parameters — (map<String>)

        The test's parameters, such as the following test framework parameters and fixture settings:

        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):

        • appium_version: The Appium version. Currently supported values are "1.4.16", "1.6.3", "latest", and "default".

          • “latest” will run the latest Appium version supported by Device Farm (1.6.3).

          • For “default”, Device Farm will choose a compatible version of Appium for the device. The current behavior is to run 1.4.16 on Android devices and iOS 9 and earlier, 1.6.3 for iOS 10 and later.

          • This behavior is subject to change.

        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 username to use if the Explorer encounters a login form. If not supplied, no username will be inserted.

        • password: A password to use if the Explorer encounters a login form. If not supplied, no password will be inserted.

        For Instrumentation:

        • filter: A test filter string. Examples:

          • Running a single test case: "com.android.abc.Test1"

          • Running a single test: "com.android.abc.Test1#smoke"

          • Running multiple tests: "com.android.abc.Test1,com.android.abc.Test2"

        For XCTest and XCTestUI:

        • filter: A test filter string. Examples:

          • Running a single test class: "LoginTests"

          • Running a multiple test classes: "LoginTests,SmokeTests"

          • Running a single test: "LoginTests/testValid"

          • Running multiple tests: "LoginTests/testValid,LoginTests/testInvalid"

        For UIAutomator:

        • filter: A test filter string. Examples:

          • Running a single test case: "com.android.abc.Test1"

          • Running a single test: "com.android.abc.Test1#smoke"

          • Running multiple tests: "com.android.abc.Test1,com.android.abc.Test2"

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • compatibleDevices — (Array<map>)

        Information about compatible devices.

        • device — (map)

          The device (phone or tablet) that you wish to return information about.

          • arn — (String)

            The device's ARN.

          • name — (String)

            The device's display name.

          • manufacturer — (String)

            The device's manufacturer name.

          • model — (String)

            The device's model name.

          • formFactor — (String)

            The device's form factor.

            Allowed values include:

            • PHONE: The phone form factor.

            • TABLET: The tablet form factor.

            Possible values include:
            • "PHONE"
            • "TABLET"
          • platform — (String)

            The device's platform.

            Allowed values include:

            • ANDROID: The Android platform.

            • IOS: The iOS platform.

            Possible values include:
            • "ANDROID"
            • "IOS"
          • os — (String)

            The device's operating system type.

          • cpu — (map)

            Information about the device's CPU.

            • frequency — (String)

              The CPU's frequency.

            • architecture — (String)

              The CPU's architecture, for example x86 or ARM.

            • clock — (Float)

              The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

          • resolution — (map)

            The resolution of the device.

            • width — (Integer)

              The screen resolution's width, expressed in pixels.

            • height — (Integer)

              The screen resolution's height, expressed in pixels.

          • heapSize — (Integer)

            The device's heap size, expressed in bytes.

          • memory — (Integer)

            The device's total memory size, expressed in bytes.

          • image — (String)

            The device's image name.

          • carrier — (String)

            The device's carrier.

          • radio — (String)

            The device's radio.

          • remoteAccessEnabled — (Boolean)

            Specifies whether remote access has been enabled for the specified device.

          • fleetType — (String)

            The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

          • fleetName — (String)

            The name of the fleet to which this device belongs.

        • compatible — (Boolean)

          Whether the result was compatible with the device pool.

        • incompatibilityMessages — (Array<map>)

          Information about the compatibility.

          • message — (String)

            A message about the incompatibility.

          • type — (String)

            The type of incompatibility.

            Allowed values include:

            • ARN: The ARN.

            • FORM_FACTOR: The form factor (for example, phone or tablet).

            • MANUFACTURER: The manufacturer.

            • PLATFORM: The platform (for example, Android or iOS).

            • REMOTE_ACCESS_ENABLED: Whether the device is enabled for remote access.

            • APPIUM_VERSION: The Appium version for the test.

            Possible values include:
            • "ARN"
            • "PLATFORM"
            • "FORM_FACTOR"
            • "MANUFACTURER"
            • "REMOTE_ACCESS_ENABLED"
            • "APPIUM_VERSION"
      • incompatibleDevices — (Array<map>)

        Information about incompatible devices.

        • device — (map)

          The device (phone or tablet) that you wish to return information about.

          • arn — (String)

            The device's ARN.

          • name — (String)

            The device's display name.

          • manufacturer — (String)

            The device's manufacturer name.

          • model — (String)

            The device's model name.

          • formFactor — (String)

            The device's form factor.

            Allowed values include:

            • PHONE: The phone form factor.

            • TABLET: The tablet form factor.

            Possible values include:
            • "PHONE"
            • "TABLET"
          • platform — (String)

            The device's platform.

            Allowed values include:

            • ANDROID: The Android platform.

            • IOS: The iOS platform.

            Possible values include:
            • "ANDROID"
            • "IOS"
          • os — (String)

            The device's operating system type.

          • cpu — (map)

            Information about the device's CPU.

            • frequency — (String)

              The CPU's frequency.

            • architecture — (String)

              The CPU's architecture, for example x86 or ARM.

            • clock — (Float)

              The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

          • resolution — (map)

            The resolution of the device.

            • width — (Integer)

              The screen resolution's width, expressed in pixels.

            • height — (Integer)

              The screen resolution's height, expressed in pixels.

          • heapSize — (Integer)

            The device's heap size, expressed in bytes.

          • memory — (Integer)

            The device's total memory size, expressed in bytes.

          • image — (String)

            The device's image name.

          • carrier — (String)

            The device's carrier.

          • radio — (String)

            The device's radio.

          • remoteAccessEnabled — (Boolean)

            Specifies whether remote access has been enabled for the specified device.

          • fleetType — (String)

            The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

          • fleetName — (String)

            The name of the fleet to which this device belongs.

        • compatible — (Boolean)

          Whether the result was compatible with the device pool.

        • incompatibilityMessages — (Array<map>)

          Information about the compatibility.

          • message — (String)

            A message about the incompatibility.

          • type — (String)

            The type of incompatibility.

            Allowed values include:

            • ARN: The ARN.

            • FORM_FACTOR: The form factor (for example, phone or tablet).

            • MANUFACTURER: The manufacturer.

            • PLATFORM: The platform (for example, Android or iOS).

            • REMOTE_ACCESS_ENABLED: Whether the device is enabled for remote access.

            • APPIUM_VERSION: The Appium version for the test.

            Possible values include:
            • "ARN"
            • "PLATFORM"
            • "FORM_FACTOR"
            • "MANUFACTURER"
            • "REMOTE_ACCESS_ENABLED"
            • "APPIUM_VERSION"

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getJob(params = {}, callback) ⇒ AWS.Request

Gets information about a job.

Service Reference:

Examples:

To get information about a job


/* The following example returns information about a specific job. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2::job:123-456-EXAMPLE-GUID"// You can get the job ARN by using the list-jobs CLI command.
 };
 devicefarm.getJob(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    job: {
    }
   }
   */
 });

Calling the getJob operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.getJob(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The job's ARN.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • job — (map)

        An object containing information about the requested job.

        • arn — (String)

          The job's ARN.

        • name — (String)

          The job's name.

        • type — (String)

          The job's type.

          Allowed values include the following:

          • BUILTIN_FUZZ: The built-in fuzz type.

          • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

          • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

          • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

          • APPIUM_PYTHON: The Appium Python type.

          • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

          • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

          • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

          • CALABASH: The Calabash type.

          • INSTRUMENTATION: The Instrumentation type.

          • UIAUTOMATION: The uiautomation type.

          • UIAUTOMATOR: The uiautomator type.

          • XCTEST: The XCode test type.

          • XCTEST_UI: The XCode UI test type.

          Possible values include:
          • "BUILTIN_FUZZ"
          • "BUILTIN_EXPLORER"
          • "APPIUM_JAVA_JUNIT"
          • "APPIUM_JAVA_TESTNG"
          • "APPIUM_PYTHON"
          • "APPIUM_WEB_JAVA_JUNIT"
          • "APPIUM_WEB_JAVA_TESTNG"
          • "APPIUM_WEB_PYTHON"
          • "CALABASH"
          • "INSTRUMENTATION"
          • "UIAUTOMATION"
          • "UIAUTOMATOR"
          • "XCTEST"
          • "XCTEST_UI"
        • created — (Date)

          When the job was created.

        • status — (String)

          The job's status.

          Allowed values include:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The job's result.

          Allowed values include:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • started — (Date)

          The job's start time.

        • stopped — (Date)

          The job's stop time.

        • counters — (map)

          The job's result counters.

          • total — (Integer)

            The total number of entities.

          • passed — (Integer)

            The number of passed entities.

          • failed — (Integer)

            The number of failed entities.

          • warned — (Integer)

            The number of warned entities.

          • errored — (Integer)

            The number of errored entities.

          • stopped — (Integer)

            The number of stopped entities.

          • skipped — (Integer)

            The number of skipped entities.

        • message — (String)

          A message about the job's result.

        • device — (map)

          The device (phone or tablet).

          • arn — (String)

            The device's ARN.

          • name — (String)

            The device's display name.

          • manufacturer — (String)

            The device's manufacturer name.

          • model — (String)

            The device's model name.

          • formFactor — (String)

            The device's form factor.

            Allowed values include:

            • PHONE: The phone form factor.

            • TABLET: The tablet form factor.

            Possible values include:
            • "PHONE"
            • "TABLET"
          • platform — (String)

            The device's platform.

            Allowed values include:

            • ANDROID: The Android platform.

            • IOS: The iOS platform.

            Possible values include:
            • "ANDROID"
            • "IOS"
          • os — (String)

            The device's operating system type.

          • cpu — (map)

            Information about the device's CPU.

            • frequency — (String)

              The CPU's frequency.

            • architecture — (String)

              The CPU's architecture, for example x86 or ARM.

            • clock — (Float)

              The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

          • resolution — (map)

            The resolution of the device.

            • width — (Integer)

              The screen resolution's width, expressed in pixels.

            • height — (Integer)

              The screen resolution's height, expressed in pixels.

          • heapSize — (Integer)

            The device's heap size, expressed in bytes.

          • memory — (Integer)

            The device's total memory size, expressed in bytes.

          • image — (String)

            The device's image name.

          • carrier — (String)

            The device's carrier.

          • radio — (String)

            The device's radio.

          • remoteAccessEnabled — (Boolean)

            Specifies whether remote access has been enabled for the specified device.

          • fleetType — (String)

            The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

          • fleetName — (String)

            The name of the fleet to which this device belongs.

        • deviceMinutes — (map)

          Represents the total (metered or unmetered) minutes used by the job.

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getNetworkProfile(params = {}, callback) ⇒ AWS.Request

Returns information about a network profile.

Service Reference:

Examples:

Calling the getNetworkProfile operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.getNetworkProfile(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the network profile you want to return information about.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • networkProfile — (map)

        The network profile.

        • arn — (String)

          The Amazon Resource Name (ARN) of the network profile.

        • name — (String)

          The name of the network profile.

        • description — (String)

          The description of the network profile.

        • type — (String)

          The type of network profile. Valid values are listed below.

          Possible values include:
          • "CURATED"
          • "PRIVATE"
        • uplinkBandwidthBits — (Integer)

          The data throughput rate in bits per second, as an integer from 0 to 104857600.

        • downlinkBandwidthBits — (Integer)

          The data throughput rate in bits per second, as an integer from 0 to 104857600.

        • uplinkDelayMs — (Integer)

          Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

        • downlinkDelayMs — (Integer)

          Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

        • uplinkJitterMs — (Integer)

          Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

        • downlinkJitterMs — (Integer)

          Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

        • uplinkLossPercent — (Integer)

          Proportion of transmitted packets that fail to arrive from 0 to 100 percent.

        • downlinkLossPercent — (Integer)

          Proportion of received packets that fail to arrive from 0 to 100 percent.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getOfferingStatus(params = {}, callback) ⇒ AWS.Request

Gets the current status and future status of all offerings purchased by an AWS account. The response indicates how many offerings are currently available and the offerings that will be available in the next period. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

Service Reference:

Examples:

To get status information about device offerings


/* The following example returns information about Device Farm offerings available to your account. */

 var params = {
  nextToken: "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE="// A dynamically generated value, used for paginating results.
 };
 devicefarm.getOfferingStatus(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    current: {
     "D68B3C05-1BA6-4360-BC69-12345EXAMPLE": {
       offering: {
        type: "RECURRING", 
        description: "Android Remote Access Unmetered Device Slot", 
        id: "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", 
        platform: "ANDROID"
       }, 
       quantity: 1
      }
    }, 
    nextPeriod: {
     "D68B3C05-1BA6-4360-BC69-12345EXAMPLE": {
       effectiveOn: <Date Representation>, 
       offering: {
        type: "RECURRING", 
        description: "Android Remote Access Unmetered Device Slot", 
        id: "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", 
        platform: "ANDROID"
       }, 
       quantity: 1
      }
    }
   }
   */
 });

Calling the getOfferingStatus operation

var params = {
  nextToken: 'STRING_VALUE'
};
devicefarm.getOfferingStatus(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • current — (map<map>)

        When specified, gets the offering status for the current period.

        • type — (String)

          The type specified for the offering status.

          Possible values include:
          • "PURCHASE"
          • "RENEW"
          • "SYSTEM"
        • offering — (map)

          Represents the metadata of an offering status.

          • id — (String)

            The ID that corresponds to a device offering.

          • description — (String)

            A string describing the offering.

          • type — (String)

            The type of offering (e.g., "RECURRING") for a device.

            Possible values include:
            • "RECURRING"
          • platform — (String)

            The platform of the device (e.g., ANDROID or IOS).

            Possible values include:
            • "ANDROID"
            • "IOS"
          • recurringCharges — (Array<map>)

            Specifies whether there are recurring charges for the offering.

            • cost — (map)

              The cost of the recurring charge.

              • amount — (Float)

                The numerical amount of an offering or transaction.

              • currencyCode — (String)

                The currency code of a monetary amount. For example, USD means "U.S. dollars."

                Possible values include:
                • "USD"
            • frequency — (String)

              The frequency in which charges will recur.

              Possible values include:
              • "MONTHLY"
        • quantity — (Integer)

          The number of available devices in the offering.

        • effectiveOn — (Date)

          The date on which the offering is effective.

      • nextPeriod — (map<map>)

        When specified, gets the offering status for the next period.

        • type — (String)

          The type specified for the offering status.

          Possible values include:
          • "PURCHASE"
          • "RENEW"
          • "SYSTEM"
        • offering — (map)

          Represents the metadata of an offering status.

          • id — (String)

            The ID that corresponds to a device offering.

          • description — (String)

            A string describing the offering.

          • type — (String)

            The type of offering (e.g., "RECURRING") for a device.

            Possible values include:
            • "RECURRING"
          • platform — (String)

            The platform of the device (e.g., ANDROID or IOS).

            Possible values include:
            • "ANDROID"
            • "IOS"
          • recurringCharges — (Array<map>)

            Specifies whether there are recurring charges for the offering.

            • cost — (map)

              The cost of the recurring charge.

              • amount — (Float)

                The numerical amount of an offering or transaction.

              • currencyCode — (String)

                The currency code of a monetary amount. For example, USD means "U.S. dollars."

                Possible values include:
                • "USD"
            • frequency — (String)

              The frequency in which charges will recur.

              Possible values include:
              • "MONTHLY"
        • quantity — (Integer)

          The number of available devices in the offering.

        • effectiveOn — (Date)

          The date on which the offering is effective.

      • nextToken — (String)

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getProject(params = {}, callback) ⇒ AWS.Request

Gets information about a project.

Service Reference:

Examples:

To get information about a project


/* The following example gets information about a specific project. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE"// You can get the project ARN by using the list-projects CLI command.
 };
 devicefarm.getProject(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    project: {
     name: "My Project", 
     arn: "arn:aws:devicefarm:us-west-2:123456789101:project:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE", 
     created: <Date Representation>
    }
   }
   */
 });

Calling the getProject operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.getProject(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The project's ARN.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • project — (map)

        The project you wish to get information about.

        • arn — (String)

          The project's ARN.

        • name — (String)

          The project's name.

        • defaultJobTimeoutMinutes — (Integer)

          The default number of minutes (at the project level) a test run will execute before it times out. Default value is 60 minutes.

        • created — (Date)

          When the project was created.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getRemoteAccessSession(params = {}, callback) ⇒ AWS.Request

Returns a link to a currently running remote access session.

Service Reference:

Examples:

To get a remote access session


/* The following example gets a specific remote access session. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:session:EXAMPLE-GUID-123-456"// You can get the remote access session ARN by using the list-remote-access-sessions CLI command.
 };
 devicefarm.getRemoteAccessSession(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    remoteAccessSession: {
    }
   }
   */
 });

Calling the getRemoteAccessSession operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.getRemoteAccessSession(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the remote access session about which you want to get session information.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • remoteAccessSession — (map)

        A container that lists detailed information about the remote access session.

        • arn — (String)

          The Amazon Resource Name (ARN) of the remote access session.

        • name — (String)

          The name of the remote access session.

        • created — (Date)

          The date and time the remote access session was created.

        • status — (String)

          The status of the remote access session. Can be any of the following:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The result of the remote access session. Can be any of the following:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • message — (String)

          A message about the remote access session.

        • started — (Date)

          The date and time the remote access session was started.

        • stopped — (Date)

          The date and time the remote access session was stopped.

        • device — (map)

          The device (phone or tablet) used in the remote access session.

          • arn — (String)

            The device's ARN.

          • name — (String)

            The device's display name.

          • manufacturer — (String)

            The device's manufacturer name.

          • model — (String)

            The device's model name.

          • formFactor — (String)

            The device's form factor.

            Allowed values include:

            • PHONE: The phone form factor.

            • TABLET: The tablet form factor.

            Possible values include:
            • "PHONE"
            • "TABLET"
          • platform — (String)

            The device's platform.

            Allowed values include:

            • ANDROID: The Android platform.

            • IOS: The iOS platform.

            Possible values include:
            • "ANDROID"
            • "IOS"
          • os — (String)

            The device's operating system type.

          • cpu — (map)

            Information about the device's CPU.

            • frequency — (String)

              The CPU's frequency.

            • architecture — (String)

              The CPU's architecture, for example x86 or ARM.

            • clock — (Float)

              The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

          • resolution — (map)

            The resolution of the device.

            • width — (Integer)

              The screen resolution's width, expressed in pixels.

            • height — (Integer)

              The screen resolution's height, expressed in pixels.

          • heapSize — (Integer)

            The device's heap size, expressed in bytes.

          • memory — (Integer)

            The device's total memory size, expressed in bytes.

          • image — (String)

            The device's image name.

          • carrier — (String)

            The device's carrier.

          • radio — (String)

            The device's radio.

          • remoteAccessEnabled — (Boolean)

            Specifies whether remote access has been enabled for the specified device.

          • fleetType — (String)

            The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

          • fleetName — (String)

            The name of the fleet to which this device belongs.

        • billingMethod — (String)

          The billing method of the remote access session. Possible values include METERED or UNMETERED. For more information about metered devices, see AWS Device Farm terminology."

          Possible values include:
          • "METERED"
          • "UNMETERED"
        • deviceMinutes — (map)

          The number of minutes a device is used in a remote access sesssion (including setup and teardown minutes).

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

        • endpoint — (String)

          The endpoint for the remote access sesssion.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getRun(params = {}, callback) ⇒ AWS.Request

Gets information about a run.

Service Reference:

Examples:

To get information about a test run


/* The following example gets information about a specific test run. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:run:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/0fcac17b-6122-44d7-ae5a-12345EXAMPLE"// You can get the run ARN by using the list-runs CLI command.
 };
 devicefarm.getRun(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    run: {
     name: "My Test Run", 
     type: "BUILTIN_EXPLORER", 
     arn: "arn:aws:devicefarm:us-west-2:123456789101:run:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/0fcac17b-6122-44d7-ae5a-12345EXAMPLE", 
     billingMethod: "METERED", 
     completedJobs: 0, 
     counters: {
      errored: 0, 
      failed: 0, 
      passed: 0, 
      skipped: 0, 
      stopped: 0, 
      total: 0, 
      warned: 0
     }, 
     created: <Date Representation>, 
     deviceMinutes: {
      metered: 0.0, 
      total: 0.0, 
      unmetered: 0.0
     }, 
     platform: "ANDROID", 
     result: "PENDING", 
     status: "RUNNING", 
     totalJobs: 3
    }
   }
   */
 });

Calling the getRun operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.getRun(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The run's ARN.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • run — (map)

        The run you wish to get results from.

        • arn — (String)

          The run's ARN.

        • name — (String)

          The run's name.

        • type — (String)

          The run's type.

          Must be one of the following values:

          • BUILTIN_FUZZ: The built-in fuzz type.

          • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

          • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

          • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

          • APPIUM_PYTHON: The Appium Python type.

          • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

          • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

          • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

          • CALABASH: The Calabash type.

          • INSTRUMENTATION: The Instrumentation type.

          • UIAUTOMATION: The uiautomation type.

          • UIAUTOMATOR: The uiautomator type.

          • XCTEST: The XCode test type.

          • XCTEST_UI: The XCode UI test type.

          Possible values include:
          • "BUILTIN_FUZZ"
          • "BUILTIN_EXPLORER"
          • "APPIUM_JAVA_JUNIT"
          • "APPIUM_JAVA_TESTNG"
          • "APPIUM_PYTHON"
          • "APPIUM_WEB_JAVA_JUNIT"
          • "APPIUM_WEB_JAVA_TESTNG"
          • "APPIUM_WEB_PYTHON"
          • "CALABASH"
          • "INSTRUMENTATION"
          • "UIAUTOMATION"
          • "UIAUTOMATOR"
          • "XCTEST"
          • "XCTEST_UI"
        • platform — (String)

          The run's platform.

          Allowed values include:

          • ANDROID: The Android platform.

          • IOS: The iOS platform.

          Possible values include:
          • "ANDROID"
          • "IOS"
        • created — (Date)

          When the run was created.

        • status — (String)

          The run's status.

          Allowed values include:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The run's result.

          Allowed values include:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • started — (Date)

          The run's start time.

        • stopped — (Date)

          The run's stop time.

        • counters — (map)

          The run's result counters.

          • total — (Integer)

            The total number of entities.

          • passed — (Integer)

            The number of passed entities.

          • failed — (Integer)

            The number of failed entities.

          • warned — (Integer)

            The number of warned entities.

          • errored — (Integer)

            The number of errored entities.

          • stopped — (Integer)

            The number of stopped entities.

          • skipped — (Integer)

            The number of skipped entities.

        • message — (String)

          A message about the run's result.

        • totalJobs — (Integer)

          The total number of jobs for the run.

        • completedJobs — (Integer)

          The total number of completed jobs.

        • billingMethod — (String)

          Specifies the billing method for a test run: metered or unmetered. If the parameter is not specified, the default value is metered.

          Possible values include:
          • "METERED"
          • "UNMETERED"
        • deviceMinutes — (map)

          Represents the total (metered or unmetered) minutes used by the test run.

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

        • networkProfile — (map)

          The network profile being used for a test run.

          • arn — (String)

            The Amazon Resource Name (ARN) of the network profile.

          • name — (String)

            The name of the network profile.

          • description — (String)

            The description of the network profile.

          • type — (String)

            The type of network profile. Valid values are listed below.

            Possible values include:
            • "CURATED"
            • "PRIVATE"
          • uplinkBandwidthBits — (Integer)

            The data throughput rate in bits per second, as an integer from 0 to 104857600.

          • downlinkBandwidthBits — (Integer)

            The data throughput rate in bits per second, as an integer from 0 to 104857600.

          • uplinkDelayMs — (Integer)

            Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

          • downlinkDelayMs — (Integer)

            Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

          • uplinkJitterMs — (Integer)

            Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

          • downlinkJitterMs — (Integer)

            Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

          • uplinkLossPercent — (Integer)

            Proportion of transmitted packets that fail to arrive from 0 to 100 percent.

          • downlinkLossPercent — (Integer)

            Proportion of received packets that fail to arrive from 0 to 100 percent.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getSuite(params = {}, callback) ⇒ AWS.Request

Gets information about a suite.

Service Reference:

Examples:

To get information about a test suite


/* The following example gets information about a specific test suite. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:suite:EXAMPLE-GUID-123-456"// You can get the suite ARN by using the list-suites CLI command.
 };
 devicefarm.getSuite(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    suite: {
    }
   }
   */
 });

Calling the getSuite operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.getSuite(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The suite's ARN.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • suite — (map)

        A collection of one or more tests.

        • arn — (String)

          The suite's ARN.

        • name — (String)

          The suite's name.

        • type — (String)

          The suite's type.

          Must be one of the following values:

          • BUILTIN_FUZZ: The built-in fuzz type.

          • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

          • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

          • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

          • APPIUM_PYTHON: The Appium Python type.

          • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

          • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

          • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

          • CALABASH: The Calabash type.

          • INSTRUMENTATION: The Instrumentation type.

          • UIAUTOMATION: The uiautomation type.

          • UIAUTOMATOR: The uiautomator type.

          • XCTEST: The XCode test type.

          • XCTEST_UI: The XCode UI test type.

          Possible values include:
          • "BUILTIN_FUZZ"
          • "BUILTIN_EXPLORER"
          • "APPIUM_JAVA_JUNIT"
          • "APPIUM_JAVA_TESTNG"
          • "APPIUM_PYTHON"
          • "APPIUM_WEB_JAVA_JUNIT"
          • "APPIUM_WEB_JAVA_TESTNG"
          • "APPIUM_WEB_PYTHON"
          • "CALABASH"
          • "INSTRUMENTATION"
          • "UIAUTOMATION"
          • "UIAUTOMATOR"
          • "XCTEST"
          • "XCTEST_UI"
        • created — (Date)

          When the suite was created.

        • status — (String)

          The suite's status.

          Allowed values include:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The suite's result.

          Allowed values include:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • started — (Date)

          The suite's start time.

        • stopped — (Date)

          The suite's stop time.

        • counters — (map)

          The suite's result counters.

          • total — (Integer)

            The total number of entities.

          • passed — (Integer)

            The number of passed entities.

          • failed — (Integer)

            The number of failed entities.

          • warned — (Integer)

            The number of warned entities.

          • errored — (Integer)

            The number of errored entities.

          • stopped — (Integer)

            The number of stopped entities.

          • skipped — (Integer)

            The number of skipped entities.

        • message — (String)

          A message about the suite's result.

        • deviceMinutes — (map)

          Represents the total (metered or unmetered) minutes used by the test suite.

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getTest(params = {}, callback) ⇒ AWS.Request

Gets information about a test.

Service Reference:

Examples:

To get information about a specific test


/* The following example gets information about a specific test. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:test:EXAMPLE-GUID-123-456"// You can get the test ARN by using the list-tests CLI command.
 };
 devicefarm.getTest(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    test: {
    }
   }
   */
 });

Calling the getTest operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.getTest(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The test's ARN.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • test — (map)

        A test condition that is evaluated.

        • arn — (String)

          The test's ARN.

        • name — (String)

          The test's name.

        • type — (String)

          The test's type.

          Must be one of the following values:

          • BUILTIN_FUZZ: The built-in fuzz type.

          • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

          • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

          • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

          • APPIUM_PYTHON: The Appium Python type.

          • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

          • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

          • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

          • CALABASH: The Calabash type.

          • INSTRUMENTATION: The Instrumentation type.

          • UIAUTOMATION: The uiautomation type.

          • UIAUTOMATOR: The uiautomator type.

          • XCTEST: The XCode test type.

          • XCTEST_UI: The XCode UI test type.

          Possible values include:
          • "BUILTIN_FUZZ"
          • "BUILTIN_EXPLORER"
          • "APPIUM_JAVA_JUNIT"
          • "APPIUM_JAVA_TESTNG"
          • "APPIUM_PYTHON"
          • "APPIUM_WEB_JAVA_JUNIT"
          • "APPIUM_WEB_JAVA_TESTNG"
          • "APPIUM_WEB_PYTHON"
          • "CALABASH"
          • "INSTRUMENTATION"
          • "UIAUTOMATION"
          • "UIAUTOMATOR"
          • "XCTEST"
          • "XCTEST_UI"
        • created — (Date)

          When the test was created.

        • status — (String)

          The test's status.

          Allowed values include:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The test's result.

          Allowed values include:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • started — (Date)

          The test's start time.

        • stopped — (Date)

          The test's stop time.

        • counters — (map)

          The test's result counters.

          • total — (Integer)

            The total number of entities.

          • passed — (Integer)

            The number of passed entities.

          • failed — (Integer)

            The number of failed entities.

          • warned — (Integer)

            The number of warned entities.

          • errored — (Integer)

            The number of errored entities.

          • stopped — (Integer)

            The number of stopped entities.

          • skipped — (Integer)

            The number of skipped entities.

        • message — (String)

          A message about the test's result.

        • deviceMinutes — (map)

          Represents the total (metered or unmetered) minutes used by the test.

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getUpload(params = {}, callback) ⇒ AWS.Request

Gets information about an upload.

Service Reference:

Examples:

To get information about a specific upload


/* The following example gets information about a specific upload. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:upload:EXAMPLE-GUID-123-456"// You can get the test ARN by using the list-uploads CLI command.
 };
 devicefarm.getUpload(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    upload: {
    }
   }
   */
 });

Calling the getUpload operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.getUpload(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The upload's ARN.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • upload — (map)

        An app or a set of one or more tests to upload or that have been uploaded.

        • arn — (String)

          The upload's ARN.

        • name — (String)

          The upload's file name.

        • created — (Date)

          When the upload was created.

        • type — (String)

          The upload's type.

          Must be one of the following values:

          • ANDROID_APP: An Android upload.

          • IOS_APP: An iOS upload.

          • WEB_APP: A web appliction upload.

          • EXTERNAL_DATA: An external data upload.

          • APPIUM_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

          • APPIUM_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

          • APPIUM_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

          • APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

          • APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

          • APPIUM_WEB_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

          • CALABASH_TEST_PACKAGE: A Calabash test package upload.

          • INSTRUMENTATION_TEST_PACKAGE: An instrumentation upload.

          • UIAUTOMATION_TEST_PACKAGE: A uiautomation test package upload.

          • UIAUTOMATOR_TEST_PACKAGE: A uiautomator test package upload.

          • XCTEST_TEST_PACKAGE: An XCode test package upload.

          • XCTEST_UI_TEST_PACKAGE: An XCode UI test package upload.

          Possible values include:
          • "ANDROID_APP"
          • "IOS_APP"
          • "WEB_APP"
          • "EXTERNAL_DATA"
          • "APPIUM_JAVA_JUNIT_TEST_PACKAGE"
          • "APPIUM_JAVA_TESTNG_TEST_PACKAGE"
          • "APPIUM_PYTHON_TEST_PACKAGE"
          • "APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE"
          • "APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE"
          • "APPIUM_WEB_PYTHON_TEST_PACKAGE"
          • "CALABASH_TEST_PACKAGE"
          • "INSTRUMENTATION_TEST_PACKAGE"
          • "UIAUTOMATION_TEST_PACKAGE"
          • "UIAUTOMATOR_TEST_PACKAGE"
          • "XCTEST_TEST_PACKAGE"
          • "XCTEST_UI_TEST_PACKAGE"
        • status — (String)

          The upload's status.

          Must be one of the following values:

          • FAILED: A failed status.

          • INITIALIZED: An initialized status.

          • PROCESSING: A processing status.

          • SUCCEEDED: A succeeded status.

          Possible values include:
          • "INITIALIZED"
          • "PROCESSING"
          • "SUCCEEDED"
          • "FAILED"
        • url — (String)

          The pre-signed Amazon S3 URL that was used to store a file through a corresponding PUT request.

        • metadata — (String)

          The upload's metadata. For example, for Android, this contains information that is parsed from the manifest and is displayed in the AWS Device Farm console after the associated app is uploaded.

        • contentType — (String)

          The upload's content type (for example, "application/octet-stream").

        • message — (String)

          A message about the upload's result.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

installToRemoteAccessSession(params = {}, callback) ⇒ AWS.Request

Installs an application to the device in a remote access session. For Android applications, the file must be in .apk format. For iOS applications, the file must be in .ipa format.

Service Reference:

Examples:

To install to a remote access session


/* The following example installs a specific app to a device in a specific remote access session. */

 var params = {
  appArn: "arn:aws:devicefarm:us-west-2:123456789101:app:EXAMPLE-GUID-123-456", 
  remoteAccessSessionArn: "arn:aws:devicefarm:us-west-2:123456789101:session:EXAMPLE-GUID-123-456"// You can get the remote access session ARN by using the list-remote-access-sessions CLI command.
 };
 devicefarm.installToRemoteAccessSession(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    appUpload: {
    }
   }
   */
 });

Calling the installToRemoteAccessSession operation

var params = {
  appArn: 'STRING_VALUE', /* required */
  remoteAccessSessionArn: 'STRING_VALUE' /* required */
};
devicefarm.installToRemoteAccessSession(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • remoteAccessSessionArn — (String)

      The Amazon Resource Name (ARN) of the remote access session about which you are requesting information.

    • appArn — (String)

      The Amazon Resource Name (ARN) of the app about which you are requesting information.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • appUpload — (map)

        An app to upload or that has been uploaded.

        • arn — (String)

          The upload's ARN.

        • name — (String)

          The upload's file name.

        • created — (Date)

          When the upload was created.

        • type — (String)

          The upload's type.

          Must be one of the following values:

          • ANDROID_APP: An Android upload.

          • IOS_APP: An iOS upload.

          • WEB_APP: A web appliction upload.

          • EXTERNAL_DATA: An external data upload.

          • APPIUM_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

          • APPIUM_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

          • APPIUM_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

          • APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

          • APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

          • APPIUM_WEB_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

          • CALABASH_TEST_PACKAGE: A Calabash test package upload.

          • INSTRUMENTATION_TEST_PACKAGE: An instrumentation upload.

          • UIAUTOMATION_TEST_PACKAGE: A uiautomation test package upload.

          • UIAUTOMATOR_TEST_PACKAGE: A uiautomator test package upload.

          • XCTEST_TEST_PACKAGE: An XCode test package upload.

          • XCTEST_UI_TEST_PACKAGE: An XCode UI test package upload.

          Possible values include:
          • "ANDROID_APP"
          • "IOS_APP"
          • "WEB_APP"
          • "EXTERNAL_DATA"
          • "APPIUM_JAVA_JUNIT_TEST_PACKAGE"
          • "APPIUM_JAVA_TESTNG_TEST_PACKAGE"
          • "APPIUM_PYTHON_TEST_PACKAGE"
          • "APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE"
          • "APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE"
          • "APPIUM_WEB_PYTHON_TEST_PACKAGE"
          • "CALABASH_TEST_PACKAGE"
          • "INSTRUMENTATION_TEST_PACKAGE"
          • "UIAUTOMATION_TEST_PACKAGE"
          • "UIAUTOMATOR_TEST_PACKAGE"
          • "XCTEST_TEST_PACKAGE"
          • "XCTEST_UI_TEST_PACKAGE"
        • status — (String)

          The upload's status.

          Must be one of the following values:

          • FAILED: A failed status.

          • INITIALIZED: An initialized status.

          • PROCESSING: A processing status.

          • SUCCEEDED: A succeeded status.

          Possible values include:
          • "INITIALIZED"
          • "PROCESSING"
          • "SUCCEEDED"
          • "FAILED"
        • url — (String)

          The pre-signed Amazon S3 URL that was used to store a file through a corresponding PUT request.

        • metadata — (String)

          The upload's metadata. For example, for Android, this contains information that is parsed from the manifest and is displayed in the AWS Device Farm console after the associated app is uploaded.

        • contentType — (String)

          The upload's content type (for example, "application/octet-stream").

        • message — (String)

          A message about the upload's result.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listArtifacts(params = {}, callback) ⇒ AWS.Request

Gets information about artifacts.

Service Reference:

Examples:

To list artifacts for a resource


/* The following example lists screenshot artifacts for a specific run. */

 var params = {
  type: "SCREENSHOT", 
  arn: "arn:aws:devicefarm:us-west-2:123456789101:run:EXAMPLE-GUID-123-456"// Can also be used to list artifacts for a Job, Suite, or Test ARN.
 };
 devicefarm.listArtifacts(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
   }
   */
 });

Calling the listArtifacts operation

var params = {
  arn: 'STRING_VALUE', /* required */
  type: SCREENSHOT | FILE | LOG, /* required */
  nextToken: 'STRING_VALUE'
};
devicefarm.listArtifacts(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Run, Job, Suite, or Test ARN.

    • type — (String)

      The artifacts' type.

      Allowed values include:

      • FILE: The artifacts are files.

      • LOG: The artifacts are logs.

      • SCREENSHOT: The artifacts are screenshots.

      Possible values include:
      • "SCREENSHOT"
      • "FILE"
      • "LOG"
    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • artifacts — (Array<map>)

        Information about the artifacts.

        • arn — (String)

          The artifact's ARN.

        • name — (String)

          The artifact's name.

        • type — (String)

          The artifact's type.

          Allowed values include the following:

          • UNKNOWN: An unknown type.

          • SCREENSHOT: The screenshot type.

          • DEVICE_LOG: The device log type.

          • MESSAGE_LOG: The message log type.

          • RESULT_LOG: The result log type.

          • SERVICE_LOG: The service log type.

          • WEBKIT_LOG: The web kit log type.

          • INSTRUMENTATION_OUTPUT: The instrumentation type.

          • EXERCISER_MONKEY_OUTPUT: For Android, the artifact (log) generated by an Android fuzz test.

          • CALABASH_JSON_OUTPUT: The Calabash JSON output type.

          • CALABASH_PRETTY_OUTPUT: The Calabash pretty output type.

          • CALABASH_STANDARD_OUTPUT: The Calabash standard output type.

          • CALABASH_JAVA_XML_OUTPUT: The Calabash Java XML output type.

          • AUTOMATION_OUTPUT: The automation output type.

          • APPIUM_SERVER_OUTPUT: The Appium server output type.

          • APPIUM_JAVA_OUTPUT: The Appium Java output type.

          • APPIUM_JAVA_XML_OUTPUT: The Appium Java XML output type.

          • APPIUM_PYTHON_OUTPUT: The Appium Python output type.

          • APPIUM_PYTHON_XML_OUTPUT: The Appium Python XML output type.

          • EXPLORER_EVENT_LOG: The Explorer event log output type.

          • EXPLORER_SUMMARY_LOG: The Explorer summary log output type.

          • APPLICATION_CRASH_REPORT: The application crash report output type.

          • XCTEST_LOG: The XCode test output type.

          Possible values include:
          • "UNKNOWN"
          • "SCREENSHOT"
          • "DEVICE_LOG"
          • "MESSAGE_LOG"
          • "VIDEO_LOG"
          • "RESULT_LOG"
          • "SERVICE_LOG"
          • "WEBKIT_LOG"
          • "INSTRUMENTATION_OUTPUT"
          • "EXERCISER_MONKEY_OUTPUT"
          • "CALABASH_JSON_OUTPUT"
          • "CALABASH_PRETTY_OUTPUT"
          • "CALABASH_STANDARD_OUTPUT"
          • "CALABASH_JAVA_XML_OUTPUT"
          • "AUTOMATION_OUTPUT"
          • "APPIUM_SERVER_OUTPUT"
          • "APPIUM_JAVA_OUTPUT"
          • "APPIUM_JAVA_XML_OUTPUT"
          • "APPIUM_PYTHON_OUTPUT"
          • "APPIUM_PYTHON_XML_OUTPUT"
          • "EXPLORER_EVENT_LOG"
          • "EXPLORER_SUMMARY_LOG"
          • "APPLICATION_CRASH_REPORT"
          • "XCTEST_LOG"
          • "VIDEO"
        • extension — (String)

          The artifact's file extension.

        • url — (String)

          The pre-signed Amazon S3 URL that can be used with a corresponding GET request to download the artifact's file.

      • nextToken — (String)

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listDevicePools(params = {}, callback) ⇒ AWS.Request

Gets information about device pools.

Service Reference:

Examples:

To get information about device pools


/* The following example returns information about the private device pools in a specific project. */

 var params = {
  type: "PRIVATE", 
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456"// You can get the project ARN by using the list-projects CLI command.
 };
 devicefarm.listDevicePools(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    devicePools: [
       {
      name: "Top Devices", 
      arn: "arn:aws:devicefarm:us-west-2::devicepool:082d10e5-d7d7-48a5-ba5c-12345EXAMPLE", 
      description: "Top devices", 
      rules: [
         {
        value: "[\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\"]", 
        attribute: "ARN", 
        operator: "IN"
       }
      ]
     }, 
       {
      name: "My Android Device Pool", 
      arn: "arn:aws:devicefarm:us-west-2:123456789101:devicepool:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/bf96e75a-28f6-4e61-b6a7-12345EXAMPLE", 
      description: "Samsung Galaxy Android devices", 
      rules: [
         {
        value: "[\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\",\"arn:aws:devicefarm:us-west-2::device:123456789EXAMPLE\"]", 
        attribute: "ARN", 
        operator: "IN"
       }
      ]
     }
    ]
   }
   */
 });

Calling the listDevicePools operation

var params = {
  arn: 'STRING_VALUE', /* required */
  nextToken: 'STRING_VALUE',
  type: CURATED | PRIVATE
};
devicefarm.listDevicePools(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The project ARN.

    • type — (String)

      The device pools' type.

      Allowed values include:

      • CURATED: A device pool that is created and managed by AWS Device Farm.

      • PRIVATE: A device pool that is created and managed by the device pool developer.

      Possible values include:
      • "CURATED"
      • "PRIVATE"
    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • devicePools — (Array<map>)

        Information about the device pools.

        • arn — (String)

          The device pool's ARN.

        • name — (String)

          The device pool's name.

        • description — (String)

          The device pool's description.

        • type — (String)

          The device pool's type.

          Allowed values include:

          • CURATED: A device pool that is created and managed by AWS Device Farm.

          • PRIVATE: A device pool that is created and managed by the device pool developer.

          Possible values include:
          • "CURATED"
          • "PRIVATE"
        • rules — (Array<map>)

          Information about the device pool's rules.

          • attribute — (String)

            The rule's stringified attribute. For example, specify the value as "\"abc\"".

            Allowed values include:

            • ARN: The ARN.

            • FORM_FACTOR: The form factor (for example, phone or tablet).

            • MANUFACTURER: The manufacturer.

            • PLATFORM: The platform (for example, Android or iOS).

            • REMOTE_ACCESS_ENABLED: Whether the device is enabled for remote access.

            • APPIUM_VERSION: The Appium version for the test.

            Possible values include:
            • "ARN"
            • "PLATFORM"
            • "FORM_FACTOR"
            • "MANUFACTURER"
            • "REMOTE_ACCESS_ENABLED"
            • "APPIUM_VERSION"
          • operator — (String)

            The rule's operator.

            • EQUALS: The equals operator.

            • GREATER_THAN: The greater-than operator.

            • IN: The in operator.

            • LESS_THAN: The less-than operator.

            • NOT_IN: The not-in operator.

            • CONTAINS: The contains operator.

            Possible values include:
            • "EQUALS"
            • "LESS_THAN"
            • "GREATER_THAN"
            • "IN"
            • "NOT_IN"
            • "CONTAINS"
          • value — (String)

            The rule's value.

      • nextToken — (String)

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listDevices(params = {}, callback) ⇒ AWS.Request

Gets information about unique device types.

Service Reference:

Examples:

To get information about devices


/* The following example returns information about the available devices in a specific project. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456"// You can get the project ARN by using the list-projects CLI command.
 };
 devicefarm.listDevices(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
   }
   */
 });

Calling the listDevices operation

var params = {
  arn: 'STRING_VALUE',
  nextToken: 'STRING_VALUE'
};
devicefarm.listDevices(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the project.

    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • devices — (Array<map>)

        Information about the devices.

        • arn — (String)

          The device's ARN.

        • name — (String)

          The device's display name.

        • manufacturer — (String)

          The device's manufacturer name.

        • model — (String)

          The device's model name.

        • formFactor — (String)

          The device's form factor.

          Allowed values include:

          • PHONE: The phone form factor.

          • TABLET: The tablet form factor.

          Possible values include:
          • "PHONE"
          • "TABLET"
        • platform — (String)

          The device's platform.

          Allowed values include:

          • ANDROID: The Android platform.

          • IOS: The iOS platform.

          Possible values include:
          • "ANDROID"
          • "IOS"
        • os — (String)

          The device's operating system type.

        • cpu — (map)

          Information about the device's CPU.

          • frequency — (String)

            The CPU's frequency.

          • architecture — (String)

            The CPU's architecture, for example x86 or ARM.

          • clock — (Float)

            The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

        • resolution — (map)

          The resolution of the device.

          • width — (Integer)

            The screen resolution's width, expressed in pixels.

          • height — (Integer)

            The screen resolution's height, expressed in pixels.

        • heapSize — (Integer)

          The device's heap size, expressed in bytes.

        • memory — (Integer)

          The device's total memory size, expressed in bytes.

        • image — (String)

          The device's image name.

        • carrier — (String)

          The device's carrier.

        • radio — (String)

          The device's radio.

        • remoteAccessEnabled — (Boolean)

          Specifies whether remote access has been enabled for the specified device.

        • fleetType — (String)

          The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

        • fleetName — (String)

          The name of the fleet to which this device belongs.

      • nextToken — (String)

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listJobs(params = {}, callback) ⇒ AWS.Request

Gets information about jobs.

Service Reference:

Examples:

To get information about jobs


/* The following example returns information about jobs in a specific project. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456"// You can get the project ARN by using the list-jobs CLI command.
 };
 devicefarm.listJobs(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
   }
   */
 });

Calling the listJobs operation

var params = {
  arn: 'STRING_VALUE', /* required */
  nextToken: 'STRING_VALUE'
};
devicefarm.listJobs(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The jobs' ARNs.

    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • jobs — (Array<map>)

        Information about the jobs.

        • arn — (String)

          The job's ARN.

        • name — (String)

          The job's name.

        • type — (String)

          The job's type.

          Allowed values include the following:

          • BUILTIN_FUZZ: The built-in fuzz type.

          • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

          • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

          • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

          • APPIUM_PYTHON: The Appium Python type.

          • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

          • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

          • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

          • CALABASH: The Calabash type.

          • INSTRUMENTATION: The Instrumentation type.

          • UIAUTOMATION: The uiautomation type.

          • UIAUTOMATOR: The uiautomator type.

          • XCTEST: The XCode test type.

          • XCTEST_UI: The XCode UI test type.

          Possible values include:
          • "BUILTIN_FUZZ"
          • "BUILTIN_EXPLORER"
          • "APPIUM_JAVA_JUNIT"
          • "APPIUM_JAVA_TESTNG"
          • "APPIUM_PYTHON"
          • "APPIUM_WEB_JAVA_JUNIT"
          • "APPIUM_WEB_JAVA_TESTNG"
          • "APPIUM_WEB_PYTHON"
          • "CALABASH"
          • "INSTRUMENTATION"
          • "UIAUTOMATION"
          • "UIAUTOMATOR"
          • "XCTEST"
          • "XCTEST_UI"
        • created — (Date)

          When the job was created.

        • status — (String)

          The job's status.

          Allowed values include:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The job's result.

          Allowed values include:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • started — (Date)

          The job's start time.

        • stopped — (Date)

          The job's stop time.

        • counters — (map)

          The job's result counters.

          • total — (Integer)

            The total number of entities.

          • passed — (Integer)

            The number of passed entities.

          • failed — (Integer)

            The number of failed entities.

          • warned — (Integer)

            The number of warned entities.

          • errored — (Integer)

            The number of errored entities.

          • stopped — (Integer)

            The number of stopped entities.

          • skipped — (Integer)

            The number of skipped entities.

        • message — (String)

          A message about the job's result.

        • device — (map)

          The device (phone or tablet).

          • arn — (String)

            The device's ARN.

          • name — (String)

            The device's display name.

          • manufacturer — (String)

            The device's manufacturer name.

          • model — (String)

            The device's model name.

          • formFactor — (String)

            The device's form factor.

            Allowed values include:

            • PHONE: The phone form factor.

            • TABLET: The tablet form factor.

            Possible values include:
            • "PHONE"
            • "TABLET"
          • platform — (String)

            The device's platform.

            Allowed values include:

            • ANDROID: The Android platform.

            • IOS: The iOS platform.

            Possible values include:
            • "ANDROID"
            • "IOS"
          • os — (String)

            The device's operating system type.

          • cpu — (map)

            Information about the device's CPU.

            • frequency — (String)

              The CPU's frequency.

            • architecture — (String)

              The CPU's architecture, for example x86 or ARM.

            • clock — (Float)

              The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

          • resolution — (map)

            The resolution of the device.

            • width — (Integer)

              The screen resolution's width, expressed in pixels.

            • height — (Integer)

              The screen resolution's height, expressed in pixels.

          • heapSize — (Integer)

            The device's heap size, expressed in bytes.

          • memory — (Integer)

            The device's total memory size, expressed in bytes.

          • image — (String)

            The device's image name.

          • carrier — (String)

            The device's carrier.

          • radio — (String)

            The device's radio.

          • remoteAccessEnabled — (Boolean)

            Specifies whether remote access has been enabled for the specified device.

          • fleetType — (String)

            The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

          • fleetName — (String)

            The name of the fleet to which this device belongs.

        • deviceMinutes — (map)

          Represents the total (metered or unmetered) minutes used by the job.

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

      • nextToken — (String)

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listNetworkProfiles(params = {}, callback) ⇒ AWS.Request

Returns the list of available network profiles.

Service Reference:

Examples:

Calling the listNetworkProfiles operation

var params = {
  arn: 'STRING_VALUE', /* required */
  nextToken: 'STRING_VALUE',
  type: CURATED | PRIVATE
};
devicefarm.listNetworkProfiles(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the project for which you want to list network profiles.

    • type — (String)

      The type of network profile you wish to return information about. Valid values are listed below.

      Possible values include:
      • "CURATED"
      • "PRIVATE"
    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • networkProfiles — (Array<map>)

        A list of the available network profiles.

        • arn — (String)

          The Amazon Resource Name (ARN) of the network profile.

        • name — (String)

          The name of the network profile.

        • description — (String)

          The description of the network profile.

        • type — (String)

          The type of network profile. Valid values are listed below.

          Possible values include:
          • "CURATED"
          • "PRIVATE"
        • uplinkBandwidthBits — (Integer)

          The data throughput rate in bits per second, as an integer from 0 to 104857600.

        • downlinkBandwidthBits — (Integer)

          The data throughput rate in bits per second, as an integer from 0 to 104857600.

        • uplinkDelayMs — (Integer)

          Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

        • downlinkDelayMs — (Integer)

          Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

        • uplinkJitterMs — (Integer)

          Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

        • downlinkJitterMs — (Integer)

          Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

        • uplinkLossPercent — (Integer)

          Proportion of transmitted packets that fail to arrive from 0 to 100 percent.

        • downlinkLossPercent — (Integer)

          Proportion of received packets that fail to arrive from 0 to 100 percent.

      • nextToken — (String)

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listOfferingPromotions(params = {}, callback) ⇒ AWS.Request

Returns a list of offering promotions. Each offering promotion record contains the ID and description of the promotion. The API returns a NotEligible error if the caller is not permitted to invoke the operation. Contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

Service Reference:

Examples:

Calling the listOfferingPromotions operation

var params = {
  nextToken: 'STRING_VALUE'
};
devicefarm.listOfferingPromotions(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • offeringPromotions — (Array<map>)

        Information about the offering promotions.

        • id — (String)

          The ID of the offering promotion.

        • description — (String)

          A string describing the offering promotion.

      • nextToken — (String)

        An identifier to be used in the next call to this operation, to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listOfferings(params = {}, callback) ⇒ AWS.Request

Returns a list of products or offerings that the user can manage through the API. Each offering record indicates the recurring price per unit and the frequency for that offering. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

Service Reference:

Examples:

To get information about device offerings


/* The following example returns information about available device offerings. */

 var params = {
  nextToken: "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE="// A dynamically generated value, used for paginating results.
 };
 devicefarm.listOfferings(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    offerings: [
       {
      type: "RECURRING", 
      description: "iOS Unmetered Device Slot", 
      id: "A53D4D73-A6F6-4B82-A0B0-12345EXAMPLE", 
      platform: "IOS", 
      recurringCharges: [
         {
        cost: {
         amount: 250, 
         currencyCode: "USD"
        }, 
        frequency: "MONTHLY"
       }
      ]
     }, 
       {
      type: "RECURRING", 
      description: "Android Unmetered Device Slot", 
      id: "8980F81C-00D7-469D-8EC6-12345EXAMPLE", 
      platform: "ANDROID", 
      recurringCharges: [
         {
        cost: {
         amount: 250, 
         currencyCode: "USD"
        }, 
        frequency: "MONTHLY"
       }
      ]
     }, 
       {
      type: "RECURRING", 
      description: "Android Remote Access Unmetered Device Slot", 
      id: "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", 
      platform: "ANDROID", 
      recurringCharges: [
         {
        cost: {
         amount: 250, 
         currencyCode: "USD"
        }, 
        frequency: "MONTHLY"
       }
      ]
     }, 
       {
      type: "RECURRING", 
      description: "iOS Remote Access Unmetered Device Slot", 
      id: "552B4DAD-A6C9-45C4-94FB-12345EXAMPLE", 
      platform: "IOS", 
      recurringCharges: [
         {
        cost: {
         amount: 250, 
         currencyCode: "USD"
        }, 
        frequency: "MONTHLY"
       }
      ]
     }
    ]
   }
   */
 });

Calling the listOfferings operation

var params = {
  nextToken: 'STRING_VALUE'
};
devicefarm.listOfferings(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • offerings — (Array<map>)

        A value representing the list offering results.

        • id — (String)

          The ID that corresponds to a device offering.

        • description — (String)

          A string describing the offering.

        • type — (String)

          The type of offering (e.g., "RECURRING") for a device.

          Possible values include:
          • "RECURRING"
        • platform — (String)

          The platform of the device (e.g., ANDROID or IOS).

          Possible values include:
          • "ANDROID"
          • "IOS"
        • recurringCharges — (Array<map>)

          Specifies whether there are recurring charges for the offering.

          • cost — (map)

            The cost of the recurring charge.

            • amount — (Float)

              The numerical amount of an offering or transaction.

            • currencyCode — (String)

              The currency code of a monetary amount. For example, USD means "U.S. dollars."

              Possible values include:
              • "USD"
          • frequency — (String)

            The frequency in which charges will recur.

            Possible values include:
            • "MONTHLY"
      • nextToken — (String)

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listOfferingTransactions(params = {}, callback) ⇒ AWS.Request

Returns a list of all historical purchases, renewals, and system renewal transactions for an AWS account. The list is paginated and ordered by a descending timestamp (most recent transactions are first). The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

Service Reference:

Examples:

To get information about device offering transactions


/* The following example returns information about Device Farm offering transactions. */

 var params = {
  nextToken: "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE="// A dynamically generated value, used for paginating results.
 };
 devicefarm.listOfferingTransactions(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    offeringTransactions: [
       {
      cost: {
       amount: 0, 
       currencyCode: "USD"
      }, 
      createdOn: <Date Representation>, 
      offeringStatus: {
       type: "RENEW", 
       effectiveOn: <Date Representation>, 
       offering: {
        type: "RECURRING", 
        description: "Android Remote Access Unmetered Device Slot", 
        id: "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", 
        platform: "ANDROID"
       }, 
       quantity: 0
      }, 
      transactionId: "03728003-d1ea-4851-abd6-12345EXAMPLE"
     }, 
       {
      cost: {
       amount: 250, 
       currencyCode: "USD"
      }, 
      createdOn: <Date Representation>, 
      offeringStatus: {
       type: "PURCHASE", 
       effectiveOn: <Date Representation>, 
       offering: {
        type: "RECURRING", 
        description: "Android Remote Access Unmetered Device Slot", 
        id: "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", 
        platform: "ANDROID"
       }, 
       quantity: 1
      }, 
      transactionId: "56820b6e-06bd-473a-8ff8-12345EXAMPLE"
     }, 
       {
      cost: {
       amount: 175, 
       currencyCode: "USD"
      }, 
      createdOn: <Date Representation>, 
      offeringStatus: {
       type: "PURCHASE", 
       effectiveOn: <Date Representation>, 
       offering: {
        type: "RECURRING", 
        description: "Android Unmetered Device Slot", 
        id: "8980F81C-00D7-469D-8EC6-12345EXAMPLE", 
        platform: "ANDROID"
       }, 
       quantity: 1
      }, 
      transactionId: "953ae2c6-d760-4a04-9597-12345EXAMPLE"
     }, 
       {
      cost: {
       amount: 8.07, 
       currencyCode: "USD"
      }, 
      createdOn: <Date Representation>, 
      offeringStatus: {
       type: "PURCHASE", 
       effectiveOn: <Date Representation>, 
       offering: {
        type: "RECURRING", 
        description: "iOS Unmetered Device Slot", 
        id: "A53D4D73-A6F6-4B82-A0B0-12345EXAMPLE", 
        platform: "IOS"
       }, 
       quantity: 1
      }, 
      transactionId: "2baf9021-ae3e-47f5-ab52-12345EXAMPLE"
     }
    ]
   }
   */
 });

Calling the listOfferingTransactions operation

var params = {
  nextToken: 'STRING_VALUE'
};
devicefarm.listOfferingTransactions(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • offeringTransactions — (Array<map>)

        The audit log of subscriptions you have purchased and modified through AWS Device Farm.

        • offeringStatus — (map)

          The status of an offering transaction.

          • type — (String)

            The type specified for the offering status.

            Possible values include:
            • "PURCHASE"
            • "RENEW"
            • "SYSTEM"
          • offering — (map)

            Represents the metadata of an offering status.

            • id — (String)

              The ID that corresponds to a device offering.

            • description — (String)

              A string describing the offering.

            • type — (String)

              The type of offering (e.g., "RECURRING") for a device.

              Possible values include:
              • "RECURRING"
            • platform — (String)

              The platform of the device (e.g., ANDROID or IOS).

              Possible values include:
              • "ANDROID"
              • "IOS"
            • recurringCharges — (Array<map>)

              Specifies whether there are recurring charges for the offering.

              • cost — (map)

                The cost of the recurring charge.

                • amount — (Float)

                  The numerical amount of an offering or transaction.

                • currencyCode — (String)

                  The currency code of a monetary amount. For example, USD means "U.S. dollars."

                  Possible values include:
                  • "USD"
              • frequency — (String)

                The frequency in which charges will recur.

                Possible values include:
                • "MONTHLY"
          • quantity — (Integer)

            The number of available devices in the offering.

          • effectiveOn — (Date)

            The date on which the offering is effective.

        • transactionId — (String)

          The transaction ID of the offering transaction.

        • offeringPromotionId — (String)

          The ID that corresponds to a device offering promotion.

        • createdOn — (Date)

          The date on which an offering transaction was created.

        • cost — (map)

          The cost of an offering transaction.

          • amount — (Float)

            The numerical amount of an offering or transaction.

          • currencyCode — (String)

            The currency code of a monetary amount. For example, USD means "U.S. dollars."

            Possible values include:
            • "USD"
      • nextToken — (String)

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listProjects(params = {}, callback) ⇒ AWS.Request

Gets information about projects.

Service Reference:

Examples:

To get information about a Device Farm project


/* The following example returns information about the specified project in Device Farm. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:7ad300ed-8183-41a7-bf94-12345EXAMPLE", 
  nextToken: "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE"// A dynamically generated value, used for paginating results.
 };
 devicefarm.listProjects(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    projects: [
       {
      name: "My Test Project", 
      arn: "arn:aws:devicefarm:us-west-2:123456789101:project:7ad300ed-8183-41a7-bf94-12345EXAMPLE", 
      created: <Date Representation>
     }, 
       {
      name: "Hello World", 
      arn: "arn:aws:devicefarm:us-west-2:123456789101:project:d6b087d9-56db-4e44-b9ec-12345EXAMPLE", 
      created: <Date Representation>
     }
    ]
   }
   */
 });

Calling the listProjects operation

var params = {
  arn: 'STRING_VALUE',
  nextToken: 'STRING_VALUE'
};
devicefarm.listProjects(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      Optional. If no Amazon Resource Name (ARN) is specified, then AWS Device Farm returns a list of all projects for the AWS account. You can also specify a project ARN.

    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • projects — (Array<map>)

        Information about the projects.

        • arn — (String)

          The project's ARN.

        • name — (String)

          The project's name.

        • defaultJobTimeoutMinutes — (Integer)

          The default number of minutes (at the project level) a test run will execute before it times out. Default value is 60 minutes.

        • created — (Date)

          When the project was created.

      • nextToken — (String)

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listRemoteAccessSessions(params = {}, callback) ⇒ AWS.Request

Returns a list of all currently running remote access sessions.

Service Reference:

Examples:

To get information about a remote access session


/* The following example returns information about a specific Device Farm remote access session. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:session:EXAMPLE-GUID-123-456", // You can get the Amazon Resource Name (ARN) of the session by using the list-sessions CLI command.
  nextToken: "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE="// A dynamically generated value, used for paginating results.
 };
 devicefarm.listRemoteAccessSessions(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    remoteAccessSessions: [
    ]
   }
   */
 });

Calling the listRemoteAccessSessions operation

var params = {
  arn: 'STRING_VALUE', /* required */
  nextToken: 'STRING_VALUE'
};
devicefarm.listRemoteAccessSessions(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the remote access session about which you are requesting information.

    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • remoteAccessSessions — (Array<map>)

        A container representing the metadata from the service about each remote access session you are requesting.

        • arn — (String)

          The Amazon Resource Name (ARN) of the remote access session.

        • name — (String)

          The name of the remote access session.

        • created — (Date)

          The date and time the remote access session was created.

        • status — (String)

          The status of the remote access session. Can be any of the following:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The result of the remote access session. Can be any of the following:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • message — (String)

          A message about the remote access session.

        • started — (Date)

          The date and time the remote access session was started.

        • stopped — (Date)

          The date and time the remote access session was stopped.

        • device — (map)

          The device (phone or tablet) used in the remote access session.

          • arn — (String)

            The device's ARN.

          • name — (String)

            The device's display name.

          • manufacturer — (String)

            The device's manufacturer name.

          • model — (String)

            The device's model name.

          • formFactor — (String)

            The device's form factor.

            Allowed values include:

            • PHONE: The phone form factor.

            • TABLET: The tablet form factor.

            Possible values include:
            • "PHONE"
            • "TABLET"
          • platform — (String)

            The device's platform.

            Allowed values include:

            • ANDROID: The Android platform.

            • IOS: The iOS platform.

            Possible values include:
            • "ANDROID"
            • "IOS"
          • os — (String)

            The device's operating system type.

          • cpu — (map)

            Information about the device's CPU.

            • frequency — (String)

              The CPU's frequency.

            • architecture — (String)

              The CPU's architecture, for example x86 or ARM.

            • clock — (Float)

              The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

          • resolution — (map)

            The resolution of the device.

            • width — (Integer)

              The screen resolution's width, expressed in pixels.

            • height — (Integer)

              The screen resolution's height, expressed in pixels.

          • heapSize — (Integer)

            The device's heap size, expressed in bytes.

          • memory — (Integer)

            The device's total memory size, expressed in bytes.

          • image — (String)

            The device's image name.

          • carrier — (String)

            The device's carrier.

          • radio — (String)

            The device's radio.

          • remoteAccessEnabled — (Boolean)

            Specifies whether remote access has been enabled for the specified device.

          • fleetType — (String)

            The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

          • fleetName — (String)

            The name of the fleet to which this device belongs.

        • billingMethod — (String)

          The billing method of the remote access session. Possible values include METERED or UNMETERED. For more information about metered devices, see AWS Device Farm terminology."

          Possible values include:
          • "METERED"
          • "UNMETERED"
        • deviceMinutes — (map)

          The number of minutes a device is used in a remote access sesssion (including setup and teardown minutes).

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

        • endpoint — (String)

          The endpoint for the remote access sesssion.

      • nextToken — (String)

        An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listRuns(params = {}, callback) ⇒ AWS.Request

Gets information about runs, given an AWS Device Farm project ARN.

Service Reference:

Examples:

To get information about a test run


/* The following example returns information about a specific test run. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:run:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/0fcac17b-6122-44d7-ae5a-12345EXAMPLE", // You can get the Amazon Resource Name (ARN) of the run by using the list-runs CLI command.
  nextToken: "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE"// A dynamically generated value, used for paginating results.
 };
 devicefarm.listRuns(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    runs: [
       {
      name: "My Test Run", 
      type: "BUILTIN_EXPLORER", 
      arn: "arn:aws:devicefarm:us-west-2:123456789101:run:5e01a8c7-c861-4c0a-b1d5-5ec6e6c6dd23/0fcac17b-6122-44d7-ae5a-12345EXAMPLE", 
      billingMethod: "METERED", 
      completedJobs: 0, 
      counters: {
       errored: 0, 
       failed: 0, 
       passed: 0, 
       skipped: 0, 
       stopped: 0, 
       total: 0, 
       warned: 0
      }, 
      created: <Date Representation>, 
      deviceMinutes: {
       metered: 0.0, 
       total: 0.0, 
       unmetered: 0.0
      }, 
      platform: "ANDROID", 
      result: "PENDING", 
      status: "RUNNING", 
      totalJobs: 3
     }
    ]
   }
   */
 });

Calling the listRuns operation

var params = {
  arn: 'STRING_VALUE', /* required */
  nextToken: 'STRING_VALUE'
};
devicefarm.listRuns(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the project for which you want to list runs.

    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • runs — (Array<map>)

        Information about the runs.

        • arn — (String)

          The run's ARN.

        • name — (String)

          The run's name.

        • type — (String)

          The run's type.

          Must be one of the following values:

          • BUILTIN_FUZZ: The built-in fuzz type.

          • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

          • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

          • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

          • APPIUM_PYTHON: The Appium Python type.

          • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

          • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

          • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

          • CALABASH: The Calabash type.

          • INSTRUMENTATION: The Instrumentation type.

          • UIAUTOMATION: The uiautomation type.

          • UIAUTOMATOR: The uiautomator type.

          • XCTEST: The XCode test type.

          • XCTEST_UI: The XCode UI test type.

          Possible values include:
          • "BUILTIN_FUZZ"
          • "BUILTIN_EXPLORER"
          • "APPIUM_JAVA_JUNIT"
          • "APPIUM_JAVA_TESTNG"
          • "APPIUM_PYTHON"
          • "APPIUM_WEB_JAVA_JUNIT"
          • "APPIUM_WEB_JAVA_TESTNG"
          • "APPIUM_WEB_PYTHON"
          • "CALABASH"
          • "INSTRUMENTATION"
          • "UIAUTOMATION"
          • "UIAUTOMATOR"
          • "XCTEST"
          • "XCTEST_UI"
        • platform — (String)

          The run's platform.

          Allowed values include:

          • ANDROID: The Android platform.

          • IOS: The iOS platform.

          Possible values include:
          • "ANDROID"
          • "IOS"
        • created — (Date)

          When the run was created.

        • status — (String)

          The run's status.

          Allowed values include:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The run's result.

          Allowed values include:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • started — (Date)

          The run's start time.

        • stopped — (Date)

          The run's stop time.

        • counters — (map)

          The run's result counters.

          • total — (Integer)

            The total number of entities.

          • passed — (Integer)

            The number of passed entities.

          • failed — (Integer)

            The number of failed entities.

          • warned — (Integer)

            The number of warned entities.

          • errored — (Integer)

            The number of errored entities.

          • stopped — (Integer)

            The number of stopped entities.

          • skipped — (Integer)

            The number of skipped entities.

        • message — (String)

          A message about the run's result.

        • totalJobs — (Integer)

          The total number of jobs for the run.

        • completedJobs — (Integer)

          The total number of completed jobs.

        • billingMethod — (String)

          Specifies the billing method for a test run: metered or unmetered. If the parameter is not specified, the default value is metered.

          Possible values include:
          • "METERED"
          • "UNMETERED"
        • deviceMinutes — (map)

          Represents the total (metered or unmetered) minutes used by the test run.

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

        • networkProfile — (map)

          The network profile being used for a test run.

          • arn — (String)

            The Amazon Resource Name (ARN) of the network profile.

          • name — (String)

            The name of the network profile.

          • description — (String)

            The description of the network profile.

          • type — (String)

            The type of network profile. Valid values are listed below.

            Possible values include:
            • "CURATED"
            • "PRIVATE"
          • uplinkBandwidthBits — (Integer)

            The data throughput rate in bits per second, as an integer from 0 to 104857600.

          • downlinkBandwidthBits — (Integer)

            The data throughput rate in bits per second, as an integer from 0 to 104857600.

          • uplinkDelayMs — (Integer)

            Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

          • downlinkDelayMs — (Integer)

            Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

          • uplinkJitterMs — (Integer)

            Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

          • downlinkJitterMs — (Integer)

            Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

          • uplinkLossPercent — (Integer)

            Proportion of transmitted packets that fail to arrive from 0 to 100 percent.

          • downlinkLossPercent — (Integer)

            Proportion of received packets that fail to arrive from 0 to 100 percent.

      • nextToken — (String)

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listSamples(params = {}, callback) ⇒ AWS.Request

Gets information about samples, given an AWS Device Farm project ARN

Service Reference:

Examples:

To get information about samples


/* The following example returns information about samples, given a specific Device Farm project. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", // You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.
  nextToken: "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE"// A dynamically generated value, used for paginating results.
 };
 devicefarm.listSamples(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    samples: [
    ]
   }
   */
 });

Calling the listSamples operation

var params = {
  arn: 'STRING_VALUE', /* required */
  nextToken: 'STRING_VALUE'
};
devicefarm.listSamples(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the project for which you want to list samples.

    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • samples — (Array<map>)

        Information about the samples.

        • arn — (String)

          The sample's ARN.

        • type — (String)

          The sample's type.

          Must be one of the following values:

          • CPU: A CPU sample type. This is expressed as the app processing CPU time (including child processes) as reported by process, as a percentage.

          • MEMORY: A memory usage sample type. This is expressed as the total proportional set size of an app process, in kilobytes.

          • NATIVE_AVG_DRAWTIME

          • NATIVE_FPS

          • NATIVE_FRAMES

          • NATIVE_MAX_DRAWTIME

          • NATIVE_MIN_DRAWTIME

          • OPENGL_AVG_DRAWTIME

          • OPENGL_FPS

          • OPENGL_FRAMES

          • OPENGL_MAX_DRAWTIME

          • OPENGL_MIN_DRAWTIME

          • RX

          • RX_RATE: The total number of bytes per second (TCP and UDP) that are sent, by app process.

          • THREADS: A threads sample type. This is expressed as the total number of threads per app process.

          • TX

          • TX_RATE: The total number of bytes per second (TCP and UDP) that are received, by app process.

          Possible values include:
          • "CPU"
          • "MEMORY"
          • "THREADS"
          • "RX_RATE"
          • "TX_RATE"
          • "RX"
          • "TX"
          • "NATIVE_FRAMES"
          • "NATIVE_FPS"
          • "NATIVE_MIN_DRAWTIME"
          • "NATIVE_AVG_DRAWTIME"
          • "NATIVE_MAX_DRAWTIME"
          • "OPENGL_FRAMES"
          • "OPENGL_FPS"
          • "OPENGL_MIN_DRAWTIME"
          • "OPENGL_AVG_DRAWTIME"
          • "OPENGL_MAX_DRAWTIME"
        • url — (String)

          The pre-signed Amazon S3 URL that can be used with a corresponding GET request to download the sample's file.

      • nextToken — (String)

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listSuites(params = {}, callback) ⇒ AWS.Request

Gets information about suites.

Service Reference:

Examples:

To get information about suites


/* The following example returns information about suites, given a specific Device Farm project. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", // You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.
  nextToken: "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE"// A dynamically generated value, used for paginating results.
 };
 devicefarm.listSuites(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    suites: [
    ]
   }
   */
 });

Calling the listSuites operation

var params = {
  arn: 'STRING_VALUE', /* required */
  nextToken: 'STRING_VALUE'
};
devicefarm.listSuites(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The suites' ARNs.

    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • suites — (Array<map>)

        Information about the suites.

        • arn — (String)

          The suite's ARN.

        • name — (String)

          The suite's name.

        • type — (String)

          The suite's type.

          Must be one of the following values:

          • BUILTIN_FUZZ: The built-in fuzz type.

          • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

          • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

          • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

          • APPIUM_PYTHON: The Appium Python type.

          • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

          • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

          • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

          • CALABASH: The Calabash type.

          • INSTRUMENTATION: The Instrumentation type.

          • UIAUTOMATION: The uiautomation type.

          • UIAUTOMATOR: The uiautomator type.

          • XCTEST: The XCode test type.

          • XCTEST_UI: The XCode UI test type.

          Possible values include:
          • "BUILTIN_FUZZ"
          • "BUILTIN_EXPLORER"
          • "APPIUM_JAVA_JUNIT"
          • "APPIUM_JAVA_TESTNG"
          • "APPIUM_PYTHON"
          • "APPIUM_WEB_JAVA_JUNIT"
          • "APPIUM_WEB_JAVA_TESTNG"
          • "APPIUM_WEB_PYTHON"
          • "CALABASH"
          • "INSTRUMENTATION"
          • "UIAUTOMATION"
          • "UIAUTOMATOR"
          • "XCTEST"
          • "XCTEST_UI"
        • created — (Date)

          When the suite was created.

        • status — (String)

          The suite's status.

          Allowed values include:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The suite's result.

          Allowed values include:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • started — (Date)

          The suite's start time.

        • stopped — (Date)

          The suite's stop time.

        • counters — (map)

          The suite's result counters.

          • total — (Integer)

            The total number of entities.

          • passed — (Integer)

            The number of passed entities.

          • failed — (Integer)

            The number of failed entities.

          • warned — (Integer)

            The number of warned entities.

          • errored — (Integer)

            The number of errored entities.

          • stopped — (Integer)

            The number of stopped entities.

          • skipped — (Integer)

            The number of skipped entities.

        • message — (String)

          A message about the suite's result.

        • deviceMinutes — (map)

          Represents the total (metered or unmetered) minutes used by the test suite.

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

      • nextToken — (String)

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listTests(params = {}, callback) ⇒ AWS.Request

Gets information about tests.

Service Reference:

Examples:

To get information about tests


/* The following example returns information about tests, given a specific Device Farm project. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", // You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.
  nextToken: "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE"// A dynamically generated value, used for paginating results.
 };
 devicefarm.listTests(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    tests: [
    ]
   }
   */
 });

Calling the listTests operation

var params = {
  arn: 'STRING_VALUE', /* required */
  nextToken: 'STRING_VALUE'
};
devicefarm.listTests(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The tests' ARNs.

    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • tests — (Array<map>)

        Information about the tests.

        • arn — (String)

          The test's ARN.

        • name — (String)

          The test's name.

        • type — (String)

          The test's type.

          Must be one of the following values:

          • BUILTIN_FUZZ: The built-in fuzz type.

          • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

          • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

          • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

          • APPIUM_PYTHON: The Appium Python type.

          • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

          • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

          • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

          • CALABASH: The Calabash type.

          • INSTRUMENTATION: The Instrumentation type.

          • UIAUTOMATION: The uiautomation type.

          • UIAUTOMATOR: The uiautomator type.

          • XCTEST: The XCode test type.

          • XCTEST_UI: The XCode UI test type.

          Possible values include:
          • "BUILTIN_FUZZ"
          • "BUILTIN_EXPLORER"
          • "APPIUM_JAVA_JUNIT"
          • "APPIUM_JAVA_TESTNG"
          • "APPIUM_PYTHON"
          • "APPIUM_WEB_JAVA_JUNIT"
          • "APPIUM_WEB_JAVA_TESTNG"
          • "APPIUM_WEB_PYTHON"
          • "CALABASH"
          • "INSTRUMENTATION"
          • "UIAUTOMATION"
          • "UIAUTOMATOR"
          • "XCTEST"
          • "XCTEST_UI"
        • created — (Date)

          When the test was created.

        • status — (String)

          The test's status.

          Allowed values include:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The test's result.

          Allowed values include:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • started — (Date)

          The test's start time.

        • stopped — (Date)

          The test's stop time.

        • counters — (map)

          The test's result counters.

          • total — (Integer)

            The total number of entities.

          • passed — (Integer)

            The number of passed entities.

          • failed — (Integer)

            The number of failed entities.

          • warned — (Integer)

            The number of warned entities.

          • errored — (Integer)

            The number of errored entities.

          • stopped — (Integer)

            The number of stopped entities.

          • skipped — (Integer)

            The number of skipped entities.

        • message — (String)

          A message about the test's result.

        • deviceMinutes — (map)

          Represents the total (metered or unmetered) minutes used by the test.

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

      • nextToken — (String)

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listUniqueProblems(params = {}, callback) ⇒ AWS.Request

Gets information about unique problems.

Service Reference:

Examples:

To get information about unique problems


/* The following example returns information about unique problems, given a specific Device Farm project. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", // You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.
  nextToken: "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE"// A dynamically generated value, used for paginating results.
 };
 devicefarm.listUniqueProblems(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    uniqueProblems: {
    }
   }
   */
 });

Calling the listUniqueProblems operation

var params = {
  arn: 'STRING_VALUE', /* required */
  nextToken: 'STRING_VALUE'
};
devicefarm.listUniqueProblems(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The unique problems' ARNs.

    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • uniqueProblems — (map<Array<map>>)

        Information about the unique problems.

        Allowed values include:

        • PENDING: A pending condition.

        • PASSED: A passing condition.

        • WARNED: A warning condition.

        • FAILED: A failed condition.

        • SKIPPED: A skipped condition.

        • ERRORED: An error condition.

        • STOPPED: A stopped condition.

        • message — (String)

          A message about the unique problems' result.

        • problems — (Array<map>)

          Information about the problems.

          • run — (map)

            Information about the associated run.

            • arn — (String)

              The problem detail's ARN.

            • name — (String)

              The problem detail's name.

          • job — (map)

            Information about the associated job.

            • arn — (String)

              The problem detail's ARN.

            • name — (String)

              The problem detail's name.

          • suite — (map)

            Information about the associated suite.

            • arn — (String)

              The problem detail's ARN.

            • name — (String)

              The problem detail's name.

          • test — (map)

            Information about the associated test.

            • arn — (String)

              The problem detail's ARN.

            • name — (String)

              The problem detail's name.

          • device — (map)

            Information about the associated device.

            • arn — (String)

              The device's ARN.

            • name — (String)

              The device's display name.

            • manufacturer — (String)

              The device's manufacturer name.

            • model — (String)

              The device's model name.

            • formFactor — (String)

              The device's form factor.

              Allowed values include:

              • PHONE: The phone form factor.

              • TABLET: The tablet form factor.

              Possible values include:
              • "PHONE"
              • "TABLET"
            • platform — (String)

              The device's platform.

              Allowed values include:

              • ANDROID: The Android platform.

              • IOS: The iOS platform.

              Possible values include:
              • "ANDROID"
              • "IOS"
            • os — (String)

              The device's operating system type.

            • cpu — (map)

              Information about the device's CPU.

              • frequency — (String)

                The CPU's frequency.

              • architecture — (String)

                The CPU's architecture, for example x86 or ARM.

              • clock — (Float)

                The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

            • resolution — (map)

              The resolution of the device.

              • width — (Integer)

                The screen resolution's width, expressed in pixels.

              • height — (Integer)

                The screen resolution's height, expressed in pixels.

            • heapSize — (Integer)

              The device's heap size, expressed in bytes.

            • memory — (Integer)

              The device's total memory size, expressed in bytes.

            • image — (String)

              The device's image name.

            • carrier — (String)

              The device's carrier.

            • radio — (String)

              The device's radio.

            • remoteAccessEnabled — (Boolean)

              Specifies whether remote access has been enabled for the specified device.

            • fleetType — (String)

              The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

            • fleetName — (String)

              The name of the fleet to which this device belongs.

          • result — (String)

            The problem's result.

            Allowed values include:

            • PENDING: A pending condition.

            • PASSED: A passing condition.

            • WARNED: A warning condition.

            • FAILED: A failed condition.

            • SKIPPED: A skipped condition.

            • ERRORED: An error condition.

            • STOPPED: A stopped condition.

            Possible values include:
            • "PENDING"
            • "PASSED"
            • "WARNED"
            • "FAILED"
            • "SKIPPED"
            • "ERRORED"
            • "STOPPED"
          • message — (String)

            A message about the problem's result.

      • nextToken — (String)

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listUploads(params = {}, callback) ⇒ AWS.Request

Gets information about uploads, given an AWS Device Farm project ARN.

Service Reference:

Examples:

To get information about uploads


/* The following example returns information about uploads, given a specific Device Farm project. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", // You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.
  nextToken: "RW5DdDJkMWYwZjM2MzM2VHVpOHJIUXlDUXlhc2QzRGViYnc9SEXAMPLE"// A dynamically generated value, used for paginating results.
 };
 devicefarm.listUploads(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    uploads: [
    ]
   }
   */
 });

Calling the listUploads operation

var params = {
  arn: 'STRING_VALUE', /* required */
  nextToken: 'STRING_VALUE'
};
devicefarm.listUploads(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the project for which you want to list uploads.

    • nextToken — (String)

      An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • uploads — (Array<map>)

        Information about the uploads.

        • arn — (String)

          The upload's ARN.

        • name — (String)

          The upload's file name.

        • created — (Date)

          When the upload was created.

        • type — (String)

          The upload's type.

          Must be one of the following values:

          • ANDROID_APP: An Android upload.

          • IOS_APP: An iOS upload.

          • WEB_APP: A web appliction upload.

          • EXTERNAL_DATA: An external data upload.

          • APPIUM_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

          • APPIUM_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

          • APPIUM_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

          • APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package upload.

          • APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package upload.

          • APPIUM_WEB_PYTHON_TEST_PACKAGE: An Appium Python test package upload.

          • CALABASH_TEST_PACKAGE: A Calabash test package upload.

          • INSTRUMENTATION_TEST_PACKAGE: An instrumentation upload.

          • UIAUTOMATION_TEST_PACKAGE: A uiautomation test package upload.

          • UIAUTOMATOR_TEST_PACKAGE: A uiautomator test package upload.

          • XCTEST_TEST_PACKAGE: An XCode test package upload.

          • XCTEST_UI_TEST_PACKAGE: An XCode UI test package upload.

          Possible values include:
          • "ANDROID_APP"
          • "IOS_APP"
          • "WEB_APP"
          • "EXTERNAL_DATA"
          • "APPIUM_JAVA_JUNIT_TEST_PACKAGE"
          • "APPIUM_JAVA_TESTNG_TEST_PACKAGE"
          • "APPIUM_PYTHON_TEST_PACKAGE"
          • "APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE"
          • "APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE"
          • "APPIUM_WEB_PYTHON_TEST_PACKAGE"
          • "CALABASH_TEST_PACKAGE"
          • "INSTRUMENTATION_TEST_PACKAGE"
          • "UIAUTOMATION_TEST_PACKAGE"
          • "UIAUTOMATOR_TEST_PACKAGE"
          • "XCTEST_TEST_PACKAGE"
          • "XCTEST_UI_TEST_PACKAGE"
        • status — (String)

          The upload's status.

          Must be one of the following values:

          • FAILED: A failed status.

          • INITIALIZED: An initialized status.

          • PROCESSING: A processing status.

          • SUCCEEDED: A succeeded status.

          Possible values include:
          • "INITIALIZED"
          • "PROCESSING"
          • "SUCCEEDED"
          • "FAILED"
        • url — (String)

          The pre-signed Amazon S3 URL that was used to store a file through a corresponding PUT request.

        • metadata — (String)

          The upload's metadata. For example, for Android, this contains information that is parsed from the manifest and is displayed in the AWS Device Farm console after the associated app is uploaded.

        • contentType — (String)

          The upload's content type (for example, "application/octet-stream").

        • message — (String)

          A message about the upload's result.

      • nextToken — (String)

        If the number of items that are returned is significantly large, this is an identifier that is also returned, which can be used in a subsequent call to this operation to return the next set of items in the list.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

purchaseOffering(params = {}, callback) ⇒ AWS.Request

Immediately purchases offerings for an AWS account. Offerings renew with the latest total purchased quantity for an offering, unless the renewal was overridden. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

Service Reference:

Examples:

To purchase a device slot offering


/* The following example purchases a specific device slot offering. */

 var params = {
  offeringId: "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", // You can get the offering ID by using the list-offerings CLI command.
  quantity: 1
 };
 devicefarm.purchaseOffering(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    offeringTransaction: {
     cost: {
      amount: 8.07, 
      currencyCode: "USD"
     }, 
     createdOn: <Date Representation>, 
     offeringStatus: {
      type: "PURCHASE", 
      effectiveOn: <Date Representation>, 
      offering: {
       type: "RECURRING", 
       description: "Android Remote Access Unmetered Device Slot", 
       id: "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", 
       platform: "ANDROID"
      }, 
      quantity: 1
     }, 
     transactionId: "d30614ed-1b03-404c-9893-12345EXAMPLE"
    }
   }
   */
 });

Calling the purchaseOffering operation

var params = {
  offeringId: 'STRING_VALUE',
  offeringPromotionId: 'STRING_VALUE',
  quantity: 0
};
devicefarm.purchaseOffering(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • offeringId — (String)

      The ID of the offering.

    • quantity — (Integer)

      The number of device slots you wish to purchase in an offering request.

    • offeringPromotionId — (String)

      The ID of the offering promotion to be applied to the purchase.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • offeringTransaction — (map)

        Represents the offering transaction for the purchase result.

        • offeringStatus — (map)

          The status of an offering transaction.

          • type — (String)

            The type specified for the offering status.

            Possible values include:
            • "PURCHASE"
            • "RENEW"
            • "SYSTEM"
          • offering — (map)

            Represents the metadata of an offering status.

            • id — (String)

              The ID that corresponds to a device offering.

            • description — (String)

              A string describing the offering.

            • type — (String)

              The type of offering (e.g., "RECURRING") for a device.

              Possible values include:
              • "RECURRING"
            • platform — (String)

              The platform of the device (e.g., ANDROID or IOS).

              Possible values include:
              • "ANDROID"
              • "IOS"
            • recurringCharges — (Array<map>)

              Specifies whether there are recurring charges for the offering.

              • cost — (map)

                The cost of the recurring charge.

                • amount — (Float)

                  The numerical amount of an offering or transaction.

                • currencyCode — (String)

                  The currency code of a monetary amount. For example, USD means "U.S. dollars."

                  Possible values include:
                  • "USD"
              • frequency — (String)

                The frequency in which charges will recur.

                Possible values include:
                • "MONTHLY"
          • quantity — (Integer)

            The number of available devices in the offering.

          • effectiveOn — (Date)

            The date on which the offering is effective.

        • transactionId — (String)

          The transaction ID of the offering transaction.

        • offeringPromotionId — (String)

          The ID that corresponds to a device offering promotion.

        • createdOn — (Date)

          The date on which an offering transaction was created.

        • cost — (map)

          The cost of an offering transaction.

          • amount — (Float)

            The numerical amount of an offering or transaction.

          • currencyCode — (String)

            The currency code of a monetary amount. For example, USD means "U.S. dollars."

            Possible values include:
            • "USD"

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

renewOffering(params = {}, callback) ⇒ AWS.Request

Explicitly sets the quantity of devices to renew for an offering, starting from the effectiveDate of the next period. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

Service Reference:

Examples:

To renew a device slot offering


/* The following example renews a specific device slot offering. */

 var params = {
  offeringId: "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", // You can get the offering ID by using the list-offerings CLI command.
  quantity: 1
 };
 devicefarm.renewOffering(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    offeringTransaction: {
     cost: {
      amount: 250, 
      currencyCode: "USD"
     }, 
     createdOn: <Date Representation>, 
     offeringStatus: {
      type: "RENEW", 
      effectiveOn: <Date Representation>, 
      offering: {
       type: "RECURRING", 
       description: "Android Remote Access Unmetered Device Slot", 
       id: "D68B3C05-1BA6-4360-BC69-12345EXAMPLE", 
       platform: "ANDROID"
      }, 
      quantity: 1
     }, 
     transactionId: "e90f1405-8c35-4561-be43-12345EXAMPLE"
    }
   }
   */
 });

Calling the renewOffering operation

var params = {
  offeringId: 'STRING_VALUE',
  quantity: 0
};
devicefarm.renewOffering(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • offeringId — (String)

      The ID of a request to renew an offering.

    • quantity — (Integer)

      The quantity requested in an offering renewal.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • offeringTransaction — (map)

        Represents the status of the offering transaction for the renewal.

        • offeringStatus — (map)

          The status of an offering transaction.

          • type — (String)

            The type specified for the offering status.

            Possible values include:
            • "PURCHASE"
            • "RENEW"
            • "SYSTEM"
          • offering — (map)

            Represents the metadata of an offering status.

            • id — (String)

              The ID that corresponds to a device offering.

            • description — (String)

              A string describing the offering.

            • type — (String)

              The type of offering (e.g., "RECURRING") for a device.

              Possible values include:
              • "RECURRING"
            • platform — (String)

              The platform of the device (e.g., ANDROID or IOS).

              Possible values include:
              • "ANDROID"
              • "IOS"
            • recurringCharges — (Array<map>)

              Specifies whether there are recurring charges for the offering.

              • cost — (map)

                The cost of the recurring charge.

                • amount — (Float)

                  The numerical amount of an offering or transaction.

                • currencyCode — (String)

                  The currency code of a monetary amount. For example, USD means "U.S. dollars."

                  Possible values include:
                  • "USD"
              • frequency — (String)

                The frequency in which charges will recur.

                Possible values include:
                • "MONTHLY"
          • quantity — (Integer)

            The number of available devices in the offering.

          • effectiveOn — (Date)

            The date on which the offering is effective.

        • transactionId — (String)

          The transaction ID of the offering transaction.

        • offeringPromotionId — (String)

          The ID that corresponds to a device offering promotion.

        • createdOn — (Date)

          The date on which an offering transaction was created.

        • cost — (map)

          The cost of an offering transaction.

          • amount — (Float)

            The numerical amount of an offering or transaction.

          • currencyCode — (String)

            The currency code of a monetary amount. For example, USD means "U.S. dollars."

            Possible values include:
            • "USD"

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

scheduleRun(params = {}, callback) ⇒ AWS.Request

Schedules a run.

Service Reference:

Examples:

To schedule a test run


/* The following example schedules a test run named MyRun. */

 var params = {
  name: "MyRun", 
  devicePoolArn: "arn:aws:devicefarm:us-west-2:123456789101:pool:EXAMPLE-GUID-123-456", // You can get the Amazon Resource Name (ARN) of the device pool by using the list-pools CLI command.
  projectArn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", // You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.
  test: {
   type: "APPIUM_JAVA_JUNIT", 
   testPackageArn: "arn:aws:devicefarm:us-west-2:123456789101:test:EXAMPLE-GUID-123-456"
  }
 };
 devicefarm.scheduleRun(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    run: {
    }
   }
   */
 });

Calling the scheduleRun operation

var params = {
  devicePoolArn: 'STRING_VALUE', /* required */
  projectArn: 'STRING_VALUE', /* required */
  test: { /* required */
    type: BUILTIN_FUZZ | BUILTIN_EXPLORER | APPIUM_JAVA_JUNIT | APPIUM_JAVA_TESTNG | APPIUM_PYTHON | APPIUM_WEB_JAVA_JUNIT | APPIUM_WEB_JAVA_TESTNG | APPIUM_WEB_PYTHON | CALABASH | INSTRUMENTATION | UIAUTOMATION | UIAUTOMATOR | XCTEST | XCTEST_UI, /* required */
    filter: 'STRING_VALUE',
    parameters: {
      '<String>': 'STRING_VALUE',
      /* '<String>': ... */
    },
    testPackageArn: 'STRING_VALUE'
  },
  appArn: 'STRING_VALUE',
  configuration: {
    auxiliaryApps: [
      'STRING_VALUE',
      /* more items */
    ],
    billingMethod: METERED | UNMETERED,
    extraDataPackageArn: 'STRING_VALUE',
    locale: 'STRING_VALUE',
    location: {
      latitude: 0.0, /* required */
      longitude: 0.0 /* required */
    },
    networkProfileArn: 'STRING_VALUE',
    radios: {
      bluetooth: true || false,
      gps: true || false,
      nfc: true || false,
      wifi: true || false
    }
  },
  executionConfiguration: {
    accountsCleanup: true || false,
    appPackagesCleanup: true || false,
    jobTimeoutMinutes: 0
  },
  name: 'STRING_VALUE'
};
devicefarm.scheduleRun(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • projectArn — (String)

      The ARN of the project for the run to be scheduled.

    • appArn — (String)

      The ARN of the app to schedule a run.

    • devicePoolArn — (String)

      The ARN of the device pool for the run to be scheduled.

    • name — (String)

      The name for the run to be scheduled.

    • test — (map)

      Information about the test for the run to be scheduled.

      • typerequired — (String)

        The test's type.

        Must be one of the following values:

        • BUILTIN_FUZZ: The built-in fuzz type.

        • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

        • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

        • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

        • APPIUM_PYTHON: The Appium Python type.

        • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

        • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

        • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

        • CALABASH: The Calabash type.

        • INSTRUMENTATION: The Instrumentation type.

        • UIAUTOMATION: The uiautomation type.

        • UIAUTOMATOR: The uiautomator type.

        • XCTEST: The XCode test type.

        • XCTEST_UI: The XCode UI test type.

        Possible values include:
        • "BUILTIN_FUZZ"
        • "BUILTIN_EXPLORER"
        • "APPIUM_JAVA_JUNIT"
        • "APPIUM_JAVA_TESTNG"
        • "APPIUM_PYTHON"
        • "APPIUM_WEB_JAVA_JUNIT"
        • "APPIUM_WEB_JAVA_TESTNG"
        • "APPIUM_WEB_PYTHON"
        • "CALABASH"
        • "INSTRUMENTATION"
        • "UIAUTOMATION"
        • "UIAUTOMATOR"
        • "XCTEST"
        • "XCTEST_UI"
      • testPackageArn — (String)

        The ARN of the uploaded test that will be run.

      • filter — (String)

        The test's filter.

      • parameters — (map<String>)

        The test's parameters, such as the following test framework parameters and fixture settings:

        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):

        • appium_version: The Appium version. Currently supported values are "1.4.16", "1.6.3", "latest", and "default".

          • “latest” will run the latest Appium version supported by Device Farm (1.6.3).

          • For “default”, Device Farm will choose a compatible version of Appium for the device. The current behavior is to run 1.4.16 on Android devices and iOS 9 and earlier, 1.6.3 for iOS 10 and later.

          • This behavior is subject to change.

        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 username to use if the Explorer encounters a login form. If not supplied, no username will be inserted.

        • password: A password to use if the Explorer encounters a login form. If not supplied, no password will be inserted.

        For Instrumentation:

        • filter: A test filter string. Examples:

          • Running a single test case: "com.android.abc.Test1"

          • Running a single test: "com.android.abc.Test1#smoke"

          • Running multiple tests: "com.android.abc.Test1,com.android.abc.Test2"

        For XCTest and XCTestUI:

        • filter: A test filter string. Examples:

          • Running a single test class: "LoginTests"

          • Running a multiple test classes: "LoginTests,SmokeTests"

          • Running a single test: "LoginTests/testValid"

          • Running multiple tests: "LoginTests/testValid,LoginTests/testInvalid"

        For UIAutomator:

        • filter: A test filter string. Examples:

          • Running a single test case: "com.android.abc.Test1"

          • Running a single test: "com.android.abc.Test1#smoke"

          • Running multiple tests: "com.android.abc.Test1,com.android.abc.Test2"

    • configuration — (map)

      Information about the settings for the run to be scheduled.

      • extraDataPackageArn — (String)

        The ARN of the extra data for the run. The extra data is a .zip file that AWS Device Farm will extract to external data for Android or the app's sandbox for iOS.

      • networkProfileArn — (String)

        Reserved for internal use.

      • locale — (String)

        Information about the locale that is used for the run.

      • location — (map)

        Information about the location that is used for the run.

        • latituderequired — (Float)

          The latitude.

        • longituderequired — (Float)

          The longitude.

      • radios — (map)

        Information about the radio states for the run.

        • wifi — (Boolean)

          True if Wi-Fi is enabled at the beginning of the test; otherwise, false.

        • bluetooth — (Boolean)

          True if Bluetooth is enabled at the beginning of the test; otherwise, false.

        • nfc — (Boolean)

          True if NFC is enabled at the beginning of the test; otherwise, false.

        • gps — (Boolean)

          True if GPS is enabled at the beginning of the test; otherwise, false.

      • auxiliaryApps — (Array<String>)

        A list of auxiliary apps for the run.

      • billingMethod — (String)

        Specifies the billing method for a test run: metered or unmetered. If the parameter is not specified, the default value is metered.

        Possible values include:
        • "METERED"
        • "UNMETERED"
    • executionConfiguration — (map)

      Specifies configuration information about a test run, such as the execution timeout (in minutes).

      • jobTimeoutMinutes — (Integer)

        The number of minutes a test run will execute before it times out.

      • accountsCleanup — (Boolean)

        True if account cleanup is enabled at the beginning of the test; otherwise, false.

      • appPackagesCleanup — (Boolean)

        True if app package cleanup is enabled at the beginning of the test; otherwise, false.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • run — (map)

        Information about the scheduled run.

        • arn — (String)

          The run's ARN.

        • name — (String)

          The run's name.

        • type — (String)

          The run's type.

          Must be one of the following values:

          • BUILTIN_FUZZ: The built-in fuzz type.

          • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

          • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

          • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

          • APPIUM_PYTHON: The Appium Python type.

          • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

          • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

          • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

          • CALABASH: The Calabash type.

          • INSTRUMENTATION: The Instrumentation type.

          • UIAUTOMATION: The uiautomation type.

          • UIAUTOMATOR: The uiautomator type.

          • XCTEST: The XCode test type.

          • XCTEST_UI: The XCode UI test type.

          Possible values include:
          • "BUILTIN_FUZZ"
          • "BUILTIN_EXPLORER"
          • "APPIUM_JAVA_JUNIT"
          • "APPIUM_JAVA_TESTNG"
          • "APPIUM_PYTHON"
          • "APPIUM_WEB_JAVA_JUNIT"
          • "APPIUM_WEB_JAVA_TESTNG"
          • "APPIUM_WEB_PYTHON"
          • "CALABASH"
          • "INSTRUMENTATION"
          • "UIAUTOMATION"
          • "UIAUTOMATOR"
          • "XCTEST"
          • "XCTEST_UI"
        • platform — (String)

          The run's platform.

          Allowed values include:

          • ANDROID: The Android platform.

          • IOS: The iOS platform.

          Possible values include:
          • "ANDROID"
          • "IOS"
        • created — (Date)

          When the run was created.

        • status — (String)

          The run's status.

          Allowed values include:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The run's result.

          Allowed values include:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • started — (Date)

          The run's start time.

        • stopped — (Date)

          The run's stop time.

        • counters — (map)

          The run's result counters.

          • total — (Integer)

            The total number of entities.

          • passed — (Integer)

            The number of passed entities.

          • failed — (Integer)

            The number of failed entities.

          • warned — (Integer)

            The number of warned entities.

          • errored — (Integer)

            The number of errored entities.

          • stopped — (Integer)

            The number of stopped entities.

          • skipped — (Integer)

            The number of skipped entities.

        • message — (String)

          A message about the run's result.

        • totalJobs — (Integer)

          The total number of jobs for the run.

        • completedJobs — (Integer)

          The total number of completed jobs.

        • billingMethod — (String)

          Specifies the billing method for a test run: metered or unmetered. If the parameter is not specified, the default value is metered.

          Possible values include:
          • "METERED"
          • "UNMETERED"
        • deviceMinutes — (map)

          Represents the total (metered or unmetered) minutes used by the test run.

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

        • networkProfile — (map)

          The network profile being used for a test run.

          • arn — (String)

            The Amazon Resource Name (ARN) of the network profile.

          • name — (String)

            The name of the network profile.

          • description — (String)

            The description of the network profile.

          • type — (String)

            The type of network profile. Valid values are listed below.

            Possible values include:
            • "CURATED"
            • "PRIVATE"
          • uplinkBandwidthBits — (Integer)

            The data throughput rate in bits per second, as an integer from 0 to 104857600.

          • downlinkBandwidthBits — (Integer)

            The data throughput rate in bits per second, as an integer from 0 to 104857600.

          • uplinkDelayMs — (Integer)

            Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

          • downlinkDelayMs — (Integer)

            Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

          • uplinkJitterMs — (Integer)

            Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

          • downlinkJitterMs — (Integer)

            Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

          • uplinkLossPercent — (Integer)

            Proportion of transmitted packets that fail to arrive from 0 to 100 percent.

          • downlinkLossPercent — (Integer)

            Proportion of received packets that fail to arrive from 0 to 100 percent.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

stopRemoteAccessSession(params = {}, callback) ⇒ AWS.Request

Ends a specified remote access session.

Service Reference:

Examples:

Calling the stopRemoteAccessSession operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.stopRemoteAccessSession(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the remote access session you wish to stop.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • remoteAccessSession — (map)

        A container representing the metadata from the service about the remote access session you are stopping.

        • arn — (String)

          The Amazon Resource Name (ARN) of the remote access session.

        • name — (String)

          The name of the remote access session.

        • created — (Date)

          The date and time the remote access session was created.

        • status — (String)

          The status of the remote access session. Can be any of the following:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The result of the remote access session. Can be any of the following:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • message — (String)

          A message about the remote access session.

        • started — (Date)

          The date and time the remote access session was started.

        • stopped — (Date)

          The date and time the remote access session was stopped.

        • device — (map)

          The device (phone or tablet) used in the remote access session.

          • arn — (String)

            The device's ARN.

          • name — (String)

            The device's display name.

          • manufacturer — (String)

            The device's manufacturer name.

          • model — (String)

            The device's model name.

          • formFactor — (String)

            The device's form factor.

            Allowed values include:

            • PHONE: The phone form factor.

            • TABLET: The tablet form factor.

            Possible values include:
            • "PHONE"
            • "TABLET"
          • platform — (String)

            The device's platform.

            Allowed values include:

            • ANDROID: The Android platform.

            • IOS: The iOS platform.

            Possible values include:
            • "ANDROID"
            • "IOS"
          • os — (String)

            The device's operating system type.

          • cpu — (map)

            Information about the device's CPU.

            • frequency — (String)

              The CPU's frequency.

            • architecture — (String)

              The CPU's architecture, for example x86 or ARM.

            • clock — (Float)

              The clock speed of the device's CPU, expressed in hertz (Hz). For example, a 1.2 GHz CPU is expressed as 1200000000.

          • resolution — (map)

            The resolution of the device.

            • width — (Integer)

              The screen resolution's width, expressed in pixels.

            • height — (Integer)

              The screen resolution's height, expressed in pixels.

          • heapSize — (Integer)

            The device's heap size, expressed in bytes.

          • memory — (Integer)

            The device's total memory size, expressed in bytes.

          • image — (String)

            The device's image name.

          • carrier — (String)

            The device's carrier.

          • radio — (String)

            The device's radio.

          • remoteAccessEnabled — (Boolean)

            Specifies whether remote access has been enabled for the specified device.

          • fleetType — (String)

            The type of fleet to which this device belongs. Possible values for fleet type are PRIVATE and PUBLIC.

          • fleetName — (String)

            The name of the fleet to which this device belongs.

        • billingMethod — (String)

          The billing method of the remote access session. Possible values include METERED or UNMETERED. For more information about metered devices, see AWS Device Farm terminology."

          Possible values include:
          • "METERED"
          • "UNMETERED"
        • deviceMinutes — (map)

          The number of minutes a device is used in a remote access sesssion (including setup and teardown minutes).

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

        • endpoint — (String)

          The endpoint for the remote access sesssion.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

stopRun(params = {}, callback) ⇒ AWS.Request

Initiates a stop request for the current test run. AWS Device Farm will immediately stop the run on devices where tests have not started executing, and you will not be billed for these devices. On devices where tests have started executing, Setup Suite and Teardown Suite tests will run to completion before stopping execution on those devices. You will be billed for Setup, Teardown, and any tests that were in progress or already completed.

Service Reference:

Examples:

To stop a test run


/* The following example stops a specific test run. */

 var params = {
  arn: "arn:aws:devicefarm:us-west-2:123456789101:run:EXAMPLE-GUID-123-456"// You can get the Amazon Resource Name (ARN) of the test run by using the list-runs CLI command.
 };
 devicefarm.stopRun(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    run: {
    }
   }
   */
 });

Calling the stopRun operation

var params = {
  arn: 'STRING_VALUE' /* required */
};
devicefarm.stopRun(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      Represents the Amazon Resource Name (ARN) of the Device Farm run you wish to stop.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • run — (map)

        The run that was stopped.

        • arn — (String)

          The run's ARN.

        • name — (String)

          The run's name.

        • type — (String)

          The run's type.

          Must be one of the following values:

          • BUILTIN_FUZZ: The built-in fuzz type.

          • BUILTIN_EXPLORER: For Android, an app explorer that will traverse an Android app, interacting with it and capturing screenshots at the same time.

          • APPIUM_JAVA_JUNIT: The Appium Java JUnit type.

          • APPIUM_JAVA_TESTNG: The Appium Java TestNG type.

          • APPIUM_PYTHON: The Appium Python type.

          • APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.

          • APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.

          • APPIUM_WEB_PYTHON: The Appium Python type for Web apps.

          • CALABASH: The Calabash type.

          • INSTRUMENTATION: The Instrumentation type.

          • UIAUTOMATION: The uiautomation type.

          • UIAUTOMATOR: The uiautomator type.

          • XCTEST: The XCode test type.

          • XCTEST_UI: The XCode UI test type.

          Possible values include:
          • "BUILTIN_FUZZ"
          • "BUILTIN_EXPLORER"
          • "APPIUM_JAVA_JUNIT"
          • "APPIUM_JAVA_TESTNG"
          • "APPIUM_PYTHON"
          • "APPIUM_WEB_JAVA_JUNIT"
          • "APPIUM_WEB_JAVA_TESTNG"
          • "APPIUM_WEB_PYTHON"
          • "CALABASH"
          • "INSTRUMENTATION"
          • "UIAUTOMATION"
          • "UIAUTOMATOR"
          • "XCTEST"
          • "XCTEST_UI"
        • platform — (String)

          The run's platform.

          Allowed values include:

          • ANDROID: The Android platform.

          • IOS: The iOS platform.

          Possible values include:
          • "ANDROID"
          • "IOS"
        • created — (Date)

          When the run was created.

        • status — (String)

          The run's status.

          Allowed values include:

          • PENDING: A pending status.

          • PENDING_CONCURRENCY: A pending concurrency status.

          • PENDING_DEVICE: A pending device status.

          • PROCESSING: A processing status.

          • SCHEDULING: A scheduling status.

          • PREPARING: A preparing status.

          • RUNNING: A running status.

          • COMPLETED: A completed status.

          • STOPPING: A stopping status.

          Possible values include:
          • "PENDING"
          • "PENDING_CONCURRENCY"
          • "PENDING_DEVICE"
          • "PROCESSING"
          • "SCHEDULING"
          • "PREPARING"
          • "RUNNING"
          • "COMPLETED"
          • "STOPPING"
        • result — (String)

          The run's result.

          Allowed values include:

          • PENDING: A pending condition.

          • PASSED: A passing condition.

          • WARNED: A warning condition.

          • FAILED: A failed condition.

          • SKIPPED: A skipped condition.

          • ERRORED: An error condition.

          • STOPPED: A stopped condition.

          Possible values include:
          • "PENDING"
          • "PASSED"
          • "WARNED"
          • "FAILED"
          • "SKIPPED"
          • "ERRORED"
          • "STOPPED"
        • started — (Date)

          The run's start time.

        • stopped — (Date)

          The run's stop time.

        • counters — (map)

          The run's result counters.

          • total — (Integer)

            The total number of entities.

          • passed — (Integer)

            The number of passed entities.

          • failed — (Integer)

            The number of failed entities.

          • warned — (Integer)

            The number of warned entities.

          • errored — (Integer)

            The number of errored entities.

          • stopped — (Integer)

            The number of stopped entities.

          • skipped — (Integer)

            The number of skipped entities.

        • message — (String)

          A message about the run's result.

        • totalJobs — (Integer)

          The total number of jobs for the run.

        • completedJobs — (Integer)

          The total number of completed jobs.

        • billingMethod — (String)

          Specifies the billing method for a test run: metered or unmetered. If the parameter is not specified, the default value is metered.

          Possible values include:
          • "METERED"
          • "UNMETERED"
        • deviceMinutes — (map)

          Represents the total (metered or unmetered) minutes used by the test run.

          • total — (Float)

            When specified, represents the total minutes used by the resource to run tests.

          • metered — (Float)

            When specified, represents only the sum of metered minutes used by the resource to run tests.

          • unmetered — (Float)

            When specified, represents only the sum of unmetered minutes used by the resource to run tests.

        • networkProfile — (map)

          The network profile being used for a test run.

          • arn — (String)

            The Amazon Resource Name (ARN) of the network profile.

          • name — (String)

            The name of the network profile.

          • description — (String)

            The description of the network profile.

          • type — (String)

            The type of network profile. Valid values are listed below.

            Possible values include:
            • "CURATED"
            • "PRIVATE"
          • uplinkBandwidthBits — (Integer)

            The data throughput rate in bits per second, as an integer from 0 to 104857600.

          • downlinkBandwidthBits — (Integer)

            The data throughput rate in bits per second, as an integer from 0 to 104857600.

          • uplinkDelayMs — (Integer)

            Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

          • downlinkDelayMs — (Integer)

            Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

          • uplinkJitterMs — (Integer)

            Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

          • downlinkJitterMs — (Integer)

            Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

          • uplinkLossPercent — (Integer)

            Proportion of transmitted packets that fail to arrive from 0 to 100 percent.

          • downlinkLossPercent — (Integer)

            Proportion of received packets that fail to arrive from 0 to 100 percent.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateDevicePool(params = {}, callback) ⇒ AWS.Request

Modifies the name, description, and rules in a device pool given the attributes and the pool ARN. Rule updates are all-or-nothing, meaning they can only be updated as a whole (or not at all).

Service Reference:

Examples:

To update a device pool


/* The following example updates the specified device pool with a new name and description. It also enables remote access of devices in the device pool. */

 var params = {
  name: "NewName", 
  arn: "arn:aws:devicefarm:us-west-2::devicepool:082d10e5-d7d7-48a5-ba5c-12345EXAMPLE", // You can get the Amazon Resource Name (ARN) of the device pool by using the list-pools CLI command.
  description: "NewDescription", 
  rules: [
     {
    value: "True", 
    attribute: "REMOTE_ACCESS_ENABLED", 
    operator: "EQUALS"
   }
  ]
 };
 devicefarm.updateDevicePool(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    devicePool: {
    }// Note: you cannot update curated device pools.
   }
   */
 });

Calling the updateDevicePool operation

var params = {
  arn: 'STRING_VALUE', /* required */
  description: 'STRING_VALUE',
  name: 'STRING_VALUE',
  rules: [
    {
      attribute: ARN | PLATFORM | FORM_FACTOR | MANUFACTURER | REMOTE_ACCESS_ENABLED | APPIUM_VERSION,
      operator: EQUALS | LESS_THAN | GREATER_THAN | IN | NOT_IN | CONTAINS,
      value: 'STRING_VALUE'
    },
    /* more items */
  ]
};
devicefarm.updateDevicePool(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resourc Name (ARN) of the Device Farm device pool you wish to update.

    • name — (String)

      A string representing the name of the device pool you wish to update.

    • description — (String)

      A description of the device pool you wish to update.

    • rules — (Array<map>)

      Represents the rules you wish to modify for the device pool. Updating rules is optional; however, if you choose to update rules for your request, the update will replace the existing rules.

      • attribute — (String)

        The rule's stringified attribute. For example, specify the value as "\"abc\"".

        Allowed values include:

        • ARN: The ARN.

        • FORM_FACTOR: The form factor (for example, phone or tablet).

        • MANUFACTURER: The manufacturer.

        • PLATFORM: The platform (for example, Android or iOS).

        • REMOTE_ACCESS_ENABLED: Whether the device is enabled for remote access.

        • APPIUM_VERSION: The Appium version for the test.

        Possible values include:
        • "ARN"
        • "PLATFORM"
        • "FORM_FACTOR"
        • "MANUFACTURER"
        • "REMOTE_ACCESS_ENABLED"
        • "APPIUM_VERSION"
      • operator — (String)

        The rule's operator.

        • EQUALS: The equals operator.

        • GREATER_THAN: The greater-than operator.

        • IN: The in operator.

        • LESS_THAN: The less-than operator.

        • NOT_IN: The not-in operator.

        • CONTAINS: The contains operator.

        Possible values include:
        • "EQUALS"
        • "LESS_THAN"
        • "GREATER_THAN"
        • "IN"
        • "NOT_IN"
        • "CONTAINS"
      • value — (String)

        The rule's value.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • devicePool — (map)

        The device pool you just updated.

        • arn — (String)

          The device pool's ARN.

        • name — (String)

          The device pool's name.

        • description — (String)

          The device pool's description.

        • type — (String)

          The device pool's type.

          Allowed values include:

          • CURATED: A device pool that is created and managed by AWS Device Farm.

          • PRIVATE: A device pool that is created and managed by the device pool developer.

          Possible values include:
          • "CURATED"
          • "PRIVATE"
        • rules — (Array<map>)

          Information about the device pool's rules.

          • attribute — (String)

            The rule's stringified attribute. For example, specify the value as "\"abc\"".

            Allowed values include:

            • ARN: The ARN.

            • FORM_FACTOR: The form factor (for example, phone or tablet).

            • MANUFACTURER: The manufacturer.

            • PLATFORM: The platform (for example, Android or iOS).

            • REMOTE_ACCESS_ENABLED: Whether the device is enabled for remote access.

            • APPIUM_VERSION: The Appium version for the test.

            Possible values include:
            • "ARN"
            • "PLATFORM"
            • "FORM_FACTOR"
            • "MANUFACTURER"
            • "REMOTE_ACCESS_ENABLED"
            • "APPIUM_VERSION"
          • operator — (String)

            The rule's operator.

            • EQUALS: The equals operator.

            • GREATER_THAN: The greater-than operator.

            • IN: The in operator.

            • LESS_THAN: The less-than operator.

            • NOT_IN: The not-in operator.

            • CONTAINS: The contains operator.

            Possible values include:
            • "EQUALS"
            • "LESS_THAN"
            • "GREATER_THAN"
            • "IN"
            • "NOT_IN"
            • "CONTAINS"
          • value — (String)

            The rule's value.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateNetworkProfile(params = {}, callback) ⇒ AWS.Request

Updates the network profile with specific settings.

Service Reference:

Examples:

Calling the updateNetworkProfile operation

var params = {
  arn: 'STRING_VALUE', /* required */
  description: 'STRING_VALUE',
  downlinkBandwidthBits: 0,
  downlinkDelayMs: 0,
  downlinkJitterMs: 0,
  downlinkLossPercent: 0,
  name: 'STRING_VALUE',
  type: CURATED | PRIVATE,
  uplinkBandwidthBits: 0,
  uplinkDelayMs: 0,
  uplinkJitterMs: 0,
  uplinkLossPercent: 0
};
devicefarm.updateNetworkProfile(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the project that you wish to update network profile settings.

    • name — (String)

      The name of the network profile about which you are returning information.

    • description — (String)

      The descriptoin of the network profile about which you are returning information.

    • type — (String)

      The type of network profile you wish to return information about. Valid values are listed below.

      Possible values include:
      • "CURATED"
      • "PRIVATE"
    • uplinkBandwidthBits — (Integer)

      The data throughput rate in bits per second, as an integer from 0 to 104857600.

    • downlinkBandwidthBits — (Integer)

      The data throughput rate in bits per second, as an integer from 0 to 104857600.

    • uplinkDelayMs — (Integer)

      Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

    • downlinkDelayMs — (Integer)

      Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

    • uplinkJitterMs — (Integer)

      Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

    • downlinkJitterMs — (Integer)

      Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

    • uplinkLossPercent — (Integer)

      Proportion of transmitted packets that fail to arrive from 0 to 100 percent.

    • downlinkLossPercent — (Integer)

      Proportion of received packets that fail to arrive from 0 to 100 percent.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • networkProfile — (map)

        A list of the available network profiles.

        • arn — (String)

          The Amazon Resource Name (ARN) of the network profile.

        • name — (String)

          The name of the network profile.

        • description — (String)

          The description of the network profile.

        • type — (String)

          The type of network profile. Valid values are listed below.

          Possible values include:
          • "CURATED"
          • "PRIVATE"
        • uplinkBandwidthBits — (Integer)

          The data throughput rate in bits per second, as an integer from 0 to 104857600.

        • downlinkBandwidthBits — (Integer)

          The data throughput rate in bits per second, as an integer from 0 to 104857600.

        • uplinkDelayMs — (Integer)

          Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

        • downlinkDelayMs — (Integer)

          Delay time for all packets to destination in milliseconds as an integer from 0 to 2000.

        • uplinkJitterMs — (Integer)

          Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

        • downlinkJitterMs — (Integer)

          Time variation in the delay of received packets in milliseconds as an integer from 0 to 2000.

        • uplinkLossPercent — (Integer)

          Proportion of transmitted packets that fail to arrive from 0 to 100 percent.

        • downlinkLossPercent — (Integer)

          Proportion of received packets that fail to arrive from 0 to 100 percent.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateProject(params = {}, callback) ⇒ AWS.Request

Modifies the specified project name, given the project ARN and a new name.

Service Reference:

Examples:

To update a device pool


/* The following example updates the specified project with a new name. */

 var params = {
  name: "NewName", 
  arn: "arn:aws:devicefarm:us-west-2:123456789101:project:8f75187d-101e-4625-accc-12345EXAMPLE"// You can get the Amazon Resource Name (ARN) of the project by using the list-projects CLI command.
 };
 devicefarm.updateProject(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    project: {
     name: "NewName", 
     arn: "arn:aws:devicefarm:us-west-2:123456789101:project:8f75187d-101e-4625-accc-12345EXAMPLE", 
     created: <Date Representation>
    }
   }
   */
 });

Calling the updateProject operation

var params = {
  arn: 'STRING_VALUE', /* required */
  defaultJobTimeoutMinutes: 0,
  name: 'STRING_VALUE'
};
devicefarm.updateProject(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • arn — (String)

      The Amazon Resource Name (ARN) of the project whose name you wish to update.

    • name — (String)

      A string representing the new name of the project that you are updating.

    • defaultJobTimeoutMinutes — (Integer)

      The number of minutes a test run in the project will execute before it times out.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • project — (map)

        The project you wish to update.

        • arn — (String)

          The project's ARN.

        • name — (String)

          The project's name.

        • defaultJobTimeoutMinutes — (Integer)

          The default number of minutes (at the project level) a test run will execute before it times out. Default value is 60 minutes.

        • created — (Date)

          When the project was created.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.