AWS Panorama

2022/08/25 - AWS Panorama - 2 updated api methods

Changes  Support sorting and filtering in ListDevices API, and add more fields to device listings and single device detail

DescribeDevice (updated) Link ¶
Changes (response)
{'DeviceAggregatedStatus': 'ERROR | AWAITING_PROVISIONING | PENDING | FAILED | '
                           'DELETING | ONLINE | OFFLINE | LEASE_EXPIRED | '
                           'UPDATE_NEEDED',
 'LatestDeviceJob': {'ImageVersion': 'string',
                     'Status': 'PENDING | IN_PROGRESS | VERIFYING | REBOOTING '
                               '| DOWNLOADING | COMPLETED | FAILED'}}

Returns information about a device.

See also: AWS API Documentation

Request Syntax

client.describe_device(
    DeviceId='string'
)
type DeviceId:

string

param DeviceId:

[REQUIRED]

The device's ID.

rtype:

dict

returns:

Response Syntax

{
    'AlternateSoftwares': [
        {
            'Version': 'string'
        },
    ],
    'Arn': 'string',
    'Brand': 'AWS_PANORAMA'|'LENOVO',
    'CreatedTime': datetime(2015, 1, 1),
    'CurrentNetworkingStatus': {
        'Ethernet0Status': {
            'ConnectionStatus': 'CONNECTED'|'NOT_CONNECTED'|'CONNECTING',
            'HwAddress': 'string',
            'IpAddress': 'string'
        },
        'Ethernet1Status': {
            'ConnectionStatus': 'CONNECTED'|'NOT_CONNECTED'|'CONNECTING',
            'HwAddress': 'string',
            'IpAddress': 'string'
        },
        'LastUpdatedTime': datetime(2015, 1, 1),
        'NtpStatus': {
            'ConnectionStatus': 'CONNECTED'|'NOT_CONNECTED'|'CONNECTING',
            'IpAddress': 'string',
            'NtpServerName': 'string'
        }
    },
    'CurrentSoftware': 'string',
    'Description': 'string',
    'DeviceAggregatedStatus': 'ERROR'|'AWAITING_PROVISIONING'|'PENDING'|'FAILED'|'DELETING'|'ONLINE'|'OFFLINE'|'LEASE_EXPIRED'|'UPDATE_NEEDED',
    'DeviceConnectionStatus': 'ONLINE'|'OFFLINE'|'AWAITING_CREDENTIALS'|'NOT_AVAILABLE'|'ERROR',
    'DeviceId': 'string',
    'LatestAlternateSoftware': 'string',
    'LatestDeviceJob': {
        'ImageVersion': 'string',
        'Status': 'PENDING'|'IN_PROGRESS'|'VERIFYING'|'REBOOTING'|'DOWNLOADING'|'COMPLETED'|'FAILED'
    },
    'LatestSoftware': 'string',
    'LeaseExpirationTime': datetime(2015, 1, 1),
    'Name': 'string',
    'NetworkingConfiguration': {
        'Ethernet0': {
            'ConnectionType': 'STATIC_IP'|'DHCP',
            'StaticIpConnectionInfo': {
                'DefaultGateway': 'string',
                'Dns': [
                    'string',
                ],
                'IpAddress': 'string',
                'Mask': 'string'
            }
        },
        'Ethernet1': {
            'ConnectionType': 'STATIC_IP'|'DHCP',
            'StaticIpConnectionInfo': {
                'DefaultGateway': 'string',
                'Dns': [
                    'string',
                ],
                'IpAddress': 'string',
                'Mask': 'string'
            }
        },
        'Ntp': {
            'NtpServers': [
                'string',
            ]
        }
    },
    'ProvisioningStatus': 'AWAITING_PROVISIONING'|'PENDING'|'SUCCEEDED'|'FAILED'|'ERROR'|'DELETING',
    'SerialNumber': 'string',
    'Tags': {
        'string': 'string'
    },
    'Type': 'PANORAMA_APPLIANCE_DEVELOPER_KIT'|'PANORAMA_APPLIANCE'
}

Response Structure

  • (dict) --

    • AlternateSoftwares (list) --

      Beta software releases available for the device.

      • (dict) --

        Details about a beta appliance software update.

        • Version (string) --

          The appliance software version.

    • Arn (string) --

      The device's ARN.

    • Brand (string) --

      The device's maker.

    • CreatedTime (datetime) --

      When the device was created.

    • CurrentNetworkingStatus (dict) --

      The device's networking status.

      • Ethernet0Status (dict) --

        The status of Ethernet port 0.

        • ConnectionStatus (string) --

          The device's connection status.

        • HwAddress (string) --

          The device's physical address.

        • IpAddress (string) --

          The device's IP address.

      • Ethernet1Status (dict) --

        The status of Ethernet port 1.

        • ConnectionStatus (string) --

          The device's connection status.

        • HwAddress (string) --

          The device's physical address.

        • IpAddress (string) --

          The device's IP address.

      • LastUpdatedTime (datetime) --

        When the network status changed.

      • NtpStatus (dict) --

        Details about a network time protocol (NTP) server connection.

        • ConnectionStatus (string) --

          The connection's status.

        • IpAddress (string) --

          The IP address of the server.

        • NtpServerName (string) --

          The domain name of the server.

    • CurrentSoftware (string) --

      The device's current software version.

    • Description (string) --

      The device's description.

    • DeviceAggregatedStatus (string) --

      A device's aggregated status. Including the device's connection status, provisioning status, and lease status.

    • DeviceConnectionStatus (string) --

      The device's connection status.

    • DeviceId (string) --

      The device's ID.

    • LatestAlternateSoftware (string) --

      The most recent beta software release.

    • LatestDeviceJob (dict) --

      A device's latest job. Includes the target image version, and the job status.

      • ImageVersion (string) --

        The target version of the device software.

      • Status (string) --

        Status of the latest device job.

    • LatestSoftware (string) --

      The latest software version available for the device.

    • LeaseExpirationTime (datetime) --

      The device's lease expiration time.

    • Name (string) --

      The device's name.

    • NetworkingConfiguration (dict) --

      The device's networking configuration.

      • Ethernet0 (dict) --

        Settings for Ethernet port 0.

        • ConnectionType (string) --

          How the device gets an IP address.

        • StaticIpConnectionInfo (dict) --

          Network configuration for a static IP connection.

          • DefaultGateway (string) --

            The connection's default gateway.

          • Dns (list) --

            The connection's DNS address.

            • (string) --

          • IpAddress (string) --

            The connection's IP address.

          • Mask (string) --

            The connection's DNS mask.

      • Ethernet1 (dict) --

        Settings for Ethernet port 1.

        • ConnectionType (string) --

          How the device gets an IP address.

        • StaticIpConnectionInfo (dict) --

          Network configuration for a static IP connection.

          • DefaultGateway (string) --

            The connection's default gateway.

          • Dns (list) --

            The connection's DNS address.

            • (string) --

          • IpAddress (string) --

            The connection's IP address.

          • Mask (string) --

            The connection's DNS mask.

      • Ntp (dict) --

        Network time protocol (NTP) server settings.

        • NtpServers (list) --

          NTP servers to use, in order of preference.

          • (string) --

    • ProvisioningStatus (string) --

      The device's provisioning status.

    • SerialNumber (string) --

      The device's serial number.

    • Tags (dict) --

      The device's tags.

      • (string) --

        • (string) --

    • Type (string) --

      The device's type.

ListDevices (updated) Link ¶
Changes (request, response)
Request
{'DeviceAggregatedStatusFilter': 'ERROR | AWAITING_PROVISIONING | PENDING | '
                                 'FAILED | DELETING | ONLINE | OFFLINE | '
                                 'LEASE_EXPIRED | UPDATE_NEEDED',
 'NameFilter': 'string',
 'SortBy': 'DEVICE_ID | CREATED_TIME | NAME | DEVICE_AGGREGATED_STATUS',
 'SortOrder': 'ASCENDING | DESCENDING'}
Response
{'Devices': {'CurrentSoftware': 'string',
             'Description': 'string',
             'DeviceAggregatedStatus': 'ERROR | AWAITING_PROVISIONING | '
                                       'PENDING | FAILED | DELETING | ONLINE | '
                                       'OFFLINE | LEASE_EXPIRED | '
                                       'UPDATE_NEEDED',
             'LatestDeviceJob': {'ImageVersion': 'string',
                                 'Status': 'PENDING | IN_PROGRESS | VERIFYING '
                                           '| REBOOTING | DOWNLOADING | '
                                           'COMPLETED | FAILED'},
             'Tags': {'string': 'string'},
             'Type': 'PANORAMA_APPLIANCE_DEVELOPER_KIT | PANORAMA_APPLIANCE'}}

Returns a list of devices.

See also: AWS API Documentation

Request Syntax

client.list_devices(
    DeviceAggregatedStatusFilter='ERROR'|'AWAITING_PROVISIONING'|'PENDING'|'FAILED'|'DELETING'|'ONLINE'|'OFFLINE'|'LEASE_EXPIRED'|'UPDATE_NEEDED',
    MaxResults=123,
    NameFilter='string',
    NextToken='string',
    SortBy='DEVICE_ID'|'CREATED_TIME'|'NAME'|'DEVICE_AGGREGATED_STATUS',
    SortOrder='ASCENDING'|'DESCENDING'
)
type DeviceAggregatedStatusFilter:

string

param DeviceAggregatedStatusFilter:

Filter based on a device's status.

type MaxResults:

integer

param MaxResults:

The maximum number of devices to return in one page of results.

type NameFilter:

string

param NameFilter:

Filter based on device's name. Prefixes supported.

type NextToken:

string

param NextToken:

Specify the pagination token from a previous request to retrieve the next page of results.

type SortBy:

string

param SortBy:

The target column to be sorted on. Default column sort is CREATED_TIME.

type SortOrder:

string

param SortOrder:

The sorting order for the returned list. SortOrder is DESCENDING by default based on CREATED_TIME. Otherwise, SortOrder is ASCENDING.

rtype:

dict

returns:

Response Syntax

{
    'Devices': [
        {
            'Brand': 'AWS_PANORAMA'|'LENOVO',
            'CreatedTime': datetime(2015, 1, 1),
            'CurrentSoftware': 'string',
            'Description': 'string',
            'DeviceAggregatedStatus': 'ERROR'|'AWAITING_PROVISIONING'|'PENDING'|'FAILED'|'DELETING'|'ONLINE'|'OFFLINE'|'LEASE_EXPIRED'|'UPDATE_NEEDED',
            'DeviceId': 'string',
            'LastUpdatedTime': datetime(2015, 1, 1),
            'LatestDeviceJob': {
                'ImageVersion': 'string',
                'Status': 'PENDING'|'IN_PROGRESS'|'VERIFYING'|'REBOOTING'|'DOWNLOADING'|'COMPLETED'|'FAILED'
            },
            'LeaseExpirationTime': datetime(2015, 1, 1),
            'Name': 'string',
            'ProvisioningStatus': 'AWAITING_PROVISIONING'|'PENDING'|'SUCCEEDED'|'FAILED'|'ERROR'|'DELETING',
            'Tags': {
                'string': 'string'
            },
            'Type': 'PANORAMA_APPLIANCE_DEVELOPER_KIT'|'PANORAMA_APPLIANCE'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Devices (list) --

      A list of devices.

      • (dict) --

        A device.

        • Brand (string) --

          The device's maker.

        • CreatedTime (datetime) --

          When the device was created.

        • CurrentSoftware (string) --

          A device's current software.

        • Description (string) --

          A description for the device.

        • DeviceAggregatedStatus (string) --

          A device's aggregated status. Including the device's connection status, provisioning status, and lease status.

        • DeviceId (string) --

          The device's ID.

        • LastUpdatedTime (datetime) --

          When the device was updated.

        • LatestDeviceJob (dict) --

          A device's latest job. Includes the target image version, and the update job status.

          • ImageVersion (string) --

            The target version of the device software.

          • Status (string) --

            Status of the latest device job.

        • LeaseExpirationTime (datetime) --

          The device's lease expiration time.

        • Name (string) --

          The device's name.

        • ProvisioningStatus (string) --

          The device's provisioning status.

        • Tags (dict) --

          The device's tags.

          • (string) --

            • (string) --

        • Type (string) --

          The device's type.

    • NextToken (string) --

      A pagination token that's included if more results are available.