:doc:`DeviceFarm <../../devicefarm>` / Client / get_device_pool_compatibility

*****************************
get_device_pool_compatibility
*****************************



.. py:method:: DeviceFarm.Client.get_device_pool_compatibility(**kwargs)

  

  Gets information about compatibility with a device pool.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/GetDevicePoolCompatibility>`_  


  **Request Syntax**
  ::

    response = client.get_device_pool_compatibility(
        devicePoolArn='string',
        appArn='string',
        testType='BUILTIN_FUZZ'|'APPIUM_JAVA_JUNIT'|'APPIUM_JAVA_TESTNG'|'APPIUM_PYTHON'|'APPIUM_NODE'|'APPIUM_RUBY'|'APPIUM_WEB_JAVA_JUNIT'|'APPIUM_WEB_JAVA_TESTNG'|'APPIUM_WEB_PYTHON'|'APPIUM_WEB_NODE'|'APPIUM_WEB_RUBY'|'INSTRUMENTATION'|'XCTEST'|'XCTEST_UI',
        test={
            'type': 'BUILTIN_FUZZ'|'APPIUM_JAVA_JUNIT'|'APPIUM_JAVA_TESTNG'|'APPIUM_PYTHON'|'APPIUM_NODE'|'APPIUM_RUBY'|'APPIUM_WEB_JAVA_JUNIT'|'APPIUM_WEB_JAVA_TESTNG'|'APPIUM_WEB_PYTHON'|'APPIUM_WEB_NODE'|'APPIUM_WEB_RUBY'|'INSTRUMENTATION'|'XCTEST'|'XCTEST_UI',
            'testPackageArn': 'string',
            'testSpecArn': 'string',
            'filter': 'string',
            'parameters': {
                'string': 'string'
            }
        },
        configuration={
            'extraDataPackageArn': 'string',
            'networkProfileArn': 'string',
            'locale': 'string',
            'location': {
                'latitude': 123.0,
                'longitude': 123.0
            },
            'vpceConfigurationArns': [
                'string',
            ],
            'deviceProxy': {
                'host': 'string',
                'port': 123
            },
            'customerArtifactPaths': {
                'iosPaths': [
                    'string',
                ],
                'androidPaths': [
                    'string',
                ],
                'deviceHostPaths': [
                    'string',
                ]
            },
            'radios': {
                'wifi': True|False,
                'bluetooth': True|False,
                'nfc': True|False,
                'gps': True|False
            },
            'auxiliaryApps': [
                'string',
            ],
            'billingMethod': 'METERED'|'UNMETERED',
            'environmentVariables': [
                {
                    'name': 'string',
                    'value': 'string'
                },
            ],
            'executionRoleArn': 'string'
        },
        projectArn='string'
    )
    
  :type devicePoolArn: string
  :param devicePoolArn: **[REQUIRED]** 

    The device pool's ARN.

    

  
  :type appArn: string
  :param appArn: 

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

    

  
  :type testType: string
  :param testType: 

    The test type for the specified device pool.

     

    Allowed values include the following:

     

    
    * BUILTIN_FUZZ.
     
    * APPIUM_JAVA_JUNIT.
     
    * APPIUM_JAVA_TESTNG.
     
    * APPIUM_PYTHON.
     
    * APPIUM_NODE.
     
    * APPIUM_RUBY.
     
    * APPIUM_WEB_JAVA_JUNIT.
     
    * APPIUM_WEB_JAVA_TESTNG.
     
    * APPIUM_WEB_PYTHON.
     
    * APPIUM_WEB_NODE.
     
    * APPIUM_WEB_RUBY.
     
    * INSTRUMENTATION.
     
    * XCTEST.
     
    * XCTEST_UI.
    

    

  
  :type test: dict
  :param test: 

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

    

  
    - **type** *(string) --* **[REQUIRED]** 

      The test's type.

       

      Must be one of the following values:

       

      
      * BUILTIN_FUZZ
       
      * APPIUM_JAVA_JUNIT
       
      * APPIUM_JAVA_TESTNG
       
      * APPIUM_PYTHON
       
      * APPIUM_NODE
       
      * APPIUM_RUBY
       
      * APPIUM_WEB_JAVA_JUNIT
       
      * APPIUM_WEB_JAVA_TESTNG
       
      * APPIUM_WEB_PYTHON
       
      * APPIUM_WEB_NODE
       
      * APPIUM_WEB_RUBY
       
      * INSTRUMENTATION
       
      * XCTEST
       
      * XCTEST_UI
      

      

    
    - **testPackageArn** *(string) --* 

      The ARN of the uploaded test to be run.

      

    
    - **testSpecArn** *(string) --* 

      The ARN of the YAML-formatted test specification.

      

    
    - **filter** *(string) --* 

      The test's filter.

      

    
    - **parameters** *(dict) --* 

      The test's parameters, such as test framework parameters and fixture settings. Parameters are represented by name-value pairs of strings.

       

      For all tests:

       

      
      * ``app_performance_monitoring``: Performance monitoring is enabled by default. Set this parameter to false to disable it.
      

       

      For Appium tests (all types):

       

      
      * appium_version: The Appium version. Currently supported values are 1.6.5 (and later), latest, and default. 

        
        * latest runs the latest Appium version supported by Device Farm (1.9.1).
         
        * For default, Device Farm selects a compatible version of Appium for the device. The current behavior is to run 1.7.2 on Android devices and iOS 9 and earlier and 1.7.2 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 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``
        

      
      

      

    
      - *(string) --* 

      
        - *(string) --* 

        
  

  
  :type configuration: dict
  :param configuration: 

    An object that contains information about the settings for a run.

    

  
    - **extraDataPackageArn** *(string) --* 

      The ARN of the extra data for the run. The extra data is a .zip file that AWS Device Farm extracts to external data for Android or the app's sandbox for iOS.

      

    
    - **networkProfileArn** *(string) --* 

      Reserved for internal use.

      

    
    - **locale** *(string) --* 

      Information about the locale that is used for the run.

      

    
    - **location** *(dict) --* 

      Information about the location that is used for the run.

      

    
      - **latitude** *(float) --* **[REQUIRED]** 

        The latitude.

        

      
      - **longitude** *(float) --* **[REQUIRED]** 

        The longitude.

        

      
    
    - **vpceConfigurationArns** *(list) --* 

      An array of ARNs for your VPC endpoint configurations.

      

    
      - *(string) --* 

      
  
    - **deviceProxy** *(dict) --* 

      The device proxy to be configured on the device for the run.

      

    
      - **host** *(string) --* **[REQUIRED]** 

        Hostname or IPv4 address of the proxy.

        

      
      - **port** *(integer) --* **[REQUIRED]** 

        The port number on which the http/s proxy is listening.

        

      
    
    - **customerArtifactPaths** *(dict) --* 

      Input ``CustomerArtifactPaths`` object for the scheduled run configuration.

      

    
      - **iosPaths** *(list) --* 

        Comma-separated list of paths on the iOS device where the artifacts generated by the customer's tests are pulled from.

        

      
        - *(string) --* 

        
    
      - **androidPaths** *(list) --* 

        Comma-separated list of paths on the Android device where the artifacts generated by the customer's tests are pulled from.

        

      
        - *(string) --* 

        
    
      - **deviceHostPaths** *(list) --* 

        Comma-separated list of paths in the test execution environment where the artifacts generated by the customer's tests are pulled from.

        

      
        - *(string) --* 

        
    
    
    - **radios** *(dict) --* 

      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** *(list) --* 

      A list of upload ARNs for app packages to be installed with your app.

      

    
      - *(string) --* 

      
  
    - **billingMethod** *(string) --* 

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

       

      .. note::

        

        If you have purchased unmetered device slots, you must set this parameter to ``unmetered`` to make use of them. Otherwise, your run counts against your metered time.

        

      

    
    - **environmentVariables** *(list) --* 

      Environment variables associated with the run.

      

    
      - *(dict) --* 

        Information about an environment variable for a project or a run.

        

      
        - **name** *(string) --* **[REQUIRED]** 

          The name of the environment variable.

          

        
        - **value** *(string) --* **[REQUIRED]** 

          The value of the environment variable.

          

        
      
  
    - **executionRoleArn** *(string) --* 

      An IAM role to be assumed by the test host for the run.

      

    
  
  :type projectArn: string
  :param projectArn: 

    The ARN of the project for which you want to check device pool compatibility.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'compatibleDevices': [
              {
                  'device': {
                      'arn': 'string',
                      'name': 'string',
                      'manufacturer': 'string',
                      'model': 'string',
                      'modelId': 'string',
                      'formFactor': 'PHONE'|'TABLET',
                      'platform': 'ANDROID'|'IOS',
                      'os': 'string',
                      'cpu': {
                          'frequency': 'string',
                          'architecture': 'string',
                          'clock': 123.0
                      },
                      'resolution': {
                          'width': 123,
                          'height': 123
                      },
                      'heapSize': 123,
                      'memory': 123,
                      'image': 'string',
                      'carrier': 'string',
                      'radio': 'string',
                      'remoteAccessEnabled': True|False,
                      'remoteDebugEnabled': True|False,
                      'fleetType': 'string',
                      'fleetName': 'string',
                      'instances': [
                          {
                              'arn': 'string',
                              'deviceArn': 'string',
                              'labels': [
                                  'string',
                              ],
                              'status': 'IN_USE'|'PREPARING'|'AVAILABLE'|'NOT_AVAILABLE',
                              'udid': 'string',
                              'instanceProfile': {
                                  'arn': 'string',
                                  'packageCleanup': True|False,
                                  'excludeAppPackagesFromCleanup': [
                                      'string',
                                  ],
                                  'rebootAfterUse': True|False,
                                  'name': 'string',
                                  'description': 'string'
                              }
                          },
                      ],
                      'availability': 'TEMPORARY_NOT_AVAILABLE'|'BUSY'|'AVAILABLE'|'HIGHLY_AVAILABLE'
                  },
                  'compatible': True|False,
                  'incompatibilityMessages': [
                      {
                          'message': 'string',
                          'type': 'ARN'|'PLATFORM'|'FORM_FACTOR'|'MANUFACTURER'|'REMOTE_ACCESS_ENABLED'|'REMOTE_DEBUG_ENABLED'|'APPIUM_VERSION'|'INSTANCE_ARN'|'INSTANCE_LABELS'|'FLEET_TYPE'|'OS_VERSION'|'MODEL'|'AVAILABILITY'
                      },
                  ]
              },
          ],
          'incompatibleDevices': [
              {
                  'device': {
                      'arn': 'string',
                      'name': 'string',
                      'manufacturer': 'string',
                      'model': 'string',
                      'modelId': 'string',
                      'formFactor': 'PHONE'|'TABLET',
                      'platform': 'ANDROID'|'IOS',
                      'os': 'string',
                      'cpu': {
                          'frequency': 'string',
                          'architecture': 'string',
                          'clock': 123.0
                      },
                      'resolution': {
                          'width': 123,
                          'height': 123
                      },
                      'heapSize': 123,
                      'memory': 123,
                      'image': 'string',
                      'carrier': 'string',
                      'radio': 'string',
                      'remoteAccessEnabled': True|False,
                      'remoteDebugEnabled': True|False,
                      'fleetType': 'string',
                      'fleetName': 'string',
                      'instances': [
                          {
                              'arn': 'string',
                              'deviceArn': 'string',
                              'labels': [
                                  'string',
                              ],
                              'status': 'IN_USE'|'PREPARING'|'AVAILABLE'|'NOT_AVAILABLE',
                              'udid': 'string',
                              'instanceProfile': {
                                  'arn': 'string',
                                  'packageCleanup': True|False,
                                  'excludeAppPackagesFromCleanup': [
                                      'string',
                                  ],
                                  'rebootAfterUse': True|False,
                                  'name': 'string',
                                  'description': 'string'
                              }
                          },
                      ],
                      'availability': 'TEMPORARY_NOT_AVAILABLE'|'BUSY'|'AVAILABLE'|'HIGHLY_AVAILABLE'
                  },
                  'compatible': True|False,
                  'incompatibilityMessages': [
                      {
                          'message': 'string',
                          'type': 'ARN'|'PLATFORM'|'FORM_FACTOR'|'MANUFACTURER'|'REMOTE_ACCESS_ENABLED'|'REMOTE_DEBUG_ENABLED'|'APPIUM_VERSION'|'INSTANCE_ARN'|'INSTANCE_LABELS'|'FLEET_TYPE'|'OS_VERSION'|'MODEL'|'AVAILABILITY'
                      },
                  ]
              },
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Represents the result of describe device pool compatibility request.

      
      

      - **compatibleDevices** *(list) --* 

        Information about compatible devices.

        
        

        - *(dict) --* 

          Represents a device pool compatibility result.

          
          

          - **device** *(dict) --* 

            The device (phone or tablet) 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.

              
            

            - **modelId** *(string) --* 

              The device's model ID.

              
            

            - **formFactor** *(string) --* 

              The device's form factor.

               

              Allowed values include:

               

              
              * PHONE
               
              * TABLET
              

              
            

            - **platform** *(string) --* 

              The device's platform.

               

              Allowed values include:

               

              
              * ANDROID
               
              * IOS
              

              
            

            - **os** *(string) --* 

              The device's operating system type.

              
            

            - **cpu** *(dict) --* 

              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** *(dict) --* 

              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.

              
            

            - **remoteDebugEnabled** *(boolean) --* 

              This flag is set to ``true`` if remote debugging is enabled for the device.

               

              Remote debugging is `no longer supported <https://docs.aws.amazon.com/devicefarm/latest/developerguide/history.html>`__.

              
            

            - **fleetType** *(string) --* 

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

              
            

            - **fleetName** *(string) --* 

              The name of the fleet to which this device belongs.

              
            

            - **instances** *(list) --* 

              The instances that belong to this device.

              
              

              - *(dict) --* 

                Represents the device instance.

                
                

                - **arn** *(string) --* 

                  The Amazon Resource Name (ARN) of the device instance.

                  
                

                - **deviceArn** *(string) --* 

                  The ARN of the device.

                  
                

                - **labels** *(list) --* 

                  An array of strings that describe the device instance.

                  
                  

                  - *(string) --* 
              
                

                - **status** *(string) --* 

                  The status of the device instance. Valid values are listed here.

                  
                

                - **udid** *(string) --* 

                  Unique device identifier for the device instance.

                  
                

                - **instanceProfile** *(dict) --* 

                  A object that contains information about the instance profile.

                  
                  

                  - **arn** *(string) --* 

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

                    
                  

                  - **packageCleanup** *(boolean) --* 

                    When set to ``true``, Device Farm removes app packages after a test run. The default value is ``false`` for private devices.

                    
                  

                  - **excludeAppPackagesFromCleanup** *(list) --* 

                    An array of strings containing the list of app packages that should not be cleaned up from the device after a test run completes.

                     

                    The list of packages is considered only if you set ``packageCleanup`` to ``true``.

                    
                    

                    - *(string) --* 
                
                  

                  - **rebootAfterUse** *(boolean) --* 

                    When set to ``true``, Device Farm reboots the instance after a test run. The default value is ``true``.

                    
                  

                  - **name** *(string) --* 

                    The name of the instance profile.

                    
                  

                  - **description** *(string) --* 

                    The description of the instance profile.

                    
              
            
          
            

            - **availability** *(string) --* 

              Indicates how likely a device is available for a test run. Currently available in the  ListDevices and GetDevice API methods.

              
        
          

          - **compatible** *(boolean) --* 

            Whether the result was compatible with the device pool.

            
          

          - **incompatibilityMessages** *(list) --* 

            Information about the compatibility.

            
            

            - *(dict) --* 

              Represents information about incompatibility.

              
              

              - **message** *(string) --* 

                A message about the incompatibility.

                
              

              - **type** *(string) --* 

                The type of incompatibility.

                 

                Allowed values include:

                 

                
                * ARN
                 
                * FORM_FACTOR (for example, phone or tablet)
                 
                * MANUFACTURER
                 
                * PLATFORM (for example, Android or iOS)
                 
                * REMOTE_ACCESS_ENABLED
                 
                * APPIUM_VERSION
                

                
          
        
      
    
      

      - **incompatibleDevices** *(list) --* 

        Information about incompatible devices.

        
        

        - *(dict) --* 

          Represents a device pool compatibility result.

          
          

          - **device** *(dict) --* 

            The device (phone or tablet) 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.

              
            

            - **modelId** *(string) --* 

              The device's model ID.

              
            

            - **formFactor** *(string) --* 

              The device's form factor.

               

              Allowed values include:

               

              
              * PHONE
               
              * TABLET
              

              
            

            - **platform** *(string) --* 

              The device's platform.

               

              Allowed values include:

               

              
              * ANDROID
               
              * IOS
              

              
            

            - **os** *(string) --* 

              The device's operating system type.

              
            

            - **cpu** *(dict) --* 

              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** *(dict) --* 

              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.

              
            

            - **remoteDebugEnabled** *(boolean) --* 

              This flag is set to ``true`` if remote debugging is enabled for the device.

               

              Remote debugging is `no longer supported <https://docs.aws.amazon.com/devicefarm/latest/developerguide/history.html>`__.

              
            

            - **fleetType** *(string) --* 

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

              
            

            - **fleetName** *(string) --* 

              The name of the fleet to which this device belongs.

              
            

            - **instances** *(list) --* 

              The instances that belong to this device.

              
              

              - *(dict) --* 

                Represents the device instance.

                
                

                - **arn** *(string) --* 

                  The Amazon Resource Name (ARN) of the device instance.

                  
                

                - **deviceArn** *(string) --* 

                  The ARN of the device.

                  
                

                - **labels** *(list) --* 

                  An array of strings that describe the device instance.

                  
                  

                  - *(string) --* 
              
                

                - **status** *(string) --* 

                  The status of the device instance. Valid values are listed here.

                  
                

                - **udid** *(string) --* 

                  Unique device identifier for the device instance.

                  
                

                - **instanceProfile** *(dict) --* 

                  A object that contains information about the instance profile.

                  
                  

                  - **arn** *(string) --* 

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

                    
                  

                  - **packageCleanup** *(boolean) --* 

                    When set to ``true``, Device Farm removes app packages after a test run. The default value is ``false`` for private devices.

                    
                  

                  - **excludeAppPackagesFromCleanup** *(list) --* 

                    An array of strings containing the list of app packages that should not be cleaned up from the device after a test run completes.

                     

                    The list of packages is considered only if you set ``packageCleanup`` to ``true``.

                    
                    

                    - *(string) --* 
                
                  

                  - **rebootAfterUse** *(boolean) --* 

                    When set to ``true``, Device Farm reboots the instance after a test run. The default value is ``true``.

                    
                  

                  - **name** *(string) --* 

                    The name of the instance profile.

                    
                  

                  - **description** *(string) --* 

                    The description of the instance profile.

                    
              
            
          
            

            - **availability** *(string) --* 

              Indicates how likely a device is available for a test run. Currently available in the  ListDevices and GetDevice API methods.

              
        
          

          - **compatible** *(boolean) --* 

            Whether the result was compatible with the device pool.

            
          

          - **incompatibilityMessages** *(list) --* 

            Information about the compatibility.

            
            

            - *(dict) --* 

              Represents information about incompatibility.

              
              

              - **message** *(string) --* 

                A message about the incompatibility.

                
              

              - **type** *(string) --* 

                The type of incompatibility.

                 

                Allowed values include:

                 

                
                * ARN
                 
                * FORM_FACTOR (for example, phone or tablet)
                 
                * MANUFACTURER
                 
                * PLATFORM (for example, Android or iOS)
                 
                * REMOTE_ACCESS_ENABLED
                 
                * APPIUM_VERSION
                

                
          
        
      
    
  
  **Exceptions**
  
  *   :py:class:`DeviceFarm.Client.exceptions.ArgumentException`

  
  *   :py:class:`DeviceFarm.Client.exceptions.NotFoundException`

  
  *   :py:class:`DeviceFarm.Client.exceptions.LimitExceededException`

  
  *   :py:class:`DeviceFarm.Client.exceptions.ServiceAccountException`

  

  **Examples**

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

    response = client.get_device_pool_compatibility(
        appArn='arn:aws:devicefarm:us-west-2::app:123-456-EXAMPLE-GUID',
        # You can get the device pool ARN by using the list-device-pools CLI command.
        devicePoolArn='arn:aws:devicefarm:us-west-2::devicepool:123-456-EXAMPLE-GUID',
        testType='APPIUM_PYTHON',
    )
    
    print(response)

  
  Expected Output:
  ::

    {
        'compatibleDevices': [
        ],
        'incompatibleDevices': [
        ],
        'ResponseMetadata': {
            '...': '...',
        },
    }

  