2022/10/13 - AWS Panorama - 1 new 8 updated api methods
Changes Pause and resume camera stream processing with SignalApplicationInstanceNodeInstances. Reboot an appliance with CreateJobForDevices. More application state information in DescribeApplicationInstance response.
Signal camera nodes to stop or resume.
See also: AWS API Documentation
Request Syntax
client.signal_application_instance_node_instances( ApplicationInstanceId='string', NodeSignals=[ { 'NodeInstanceId': 'string', 'Signal': 'PAUSE'|'RESUME' }, ] )
string
[REQUIRED]
An application instance ID.
list
[REQUIRED]
A list of signals.
(dict) --
A signal to a camera node to start or stop processing video.
NodeInstanceId (string) -- [REQUIRED]
The camera node's name, from the application manifest.
Signal (string) -- [REQUIRED]
The signal value.
dict
Response Syntax
{ 'ApplicationInstanceId': 'string' }
Response Structure
(dict) --
ApplicationInstanceId (string) --
An application instance ID.
{'JobType': {'REBOOT'}}
Creates a job to run on one or more devices. A job can update a device's software or reboot it.
See also: AWS API Documentation
Request Syntax
client.create_job_for_devices( DeviceIds=[ 'string', ], DeviceJobConfig={ 'OTAJobConfig': { 'ImageVersion': 'string' } }, JobType='OTA'|'REBOOT' )
list
[REQUIRED]
IDs of target devices.
(string) --
dict
Configuration settings for a software update job.
OTAJobConfig (dict) --
A configuration for an over-the-air (OTA) upgrade. Required for OTA jobs.
ImageVersion (string) -- [REQUIRED]
The target version of the device software.
string
[REQUIRED]
The type of job to run.
dict
Response Syntax
{ 'Jobs': [ { 'DeviceId': 'string', 'JobId': 'string' }, ] }
Response Structure
(dict) --
Jobs (list) --
A list of jobs.
(dict) --
A job for a device.
DeviceId (string) --
The target device's ID.
JobId (string) --
The job's ID.
{'RuntimeContextStates': [{'DesiredState': 'RUNNING | STOPPED | REMOVED', 'DeviceReportedStatus': 'STOPPING | STOPPED | ' 'STOP_ERROR | ' 'REMOVAL_FAILED | ' 'REMOVAL_IN_PROGRESS | ' 'STARTING | RUNNING | ' 'INSTALL_ERROR | LAUNCHED | ' 'LAUNCH_ERROR | ' 'INSTALL_IN_PROGRESS', 'DeviceReportedTime': 'timestamp', 'RuntimeContextName': 'string'}]}
Returns information about an application instance on a device.
See also: AWS API Documentation
Request Syntax
client.describe_application_instance( ApplicationInstanceId='string' )
string
[REQUIRED]
The application instance's ID.
dict
Response Syntax
{ 'ApplicationInstanceId': 'string', 'ApplicationInstanceIdToReplace': 'string', 'Arn': 'string', 'CreatedTime': datetime(2015, 1, 1), 'DefaultRuntimeContextDevice': 'string', 'DefaultRuntimeContextDeviceName': 'string', 'Description': 'string', 'HealthStatus': 'RUNNING'|'ERROR'|'NOT_AVAILABLE', 'LastUpdatedTime': datetime(2015, 1, 1), 'Name': 'string', 'RuntimeContextStates': [ { 'DesiredState': 'RUNNING'|'STOPPED'|'REMOVED', 'DeviceReportedStatus': 'STOPPING'|'STOPPED'|'STOP_ERROR'|'REMOVAL_FAILED'|'REMOVAL_IN_PROGRESS'|'STARTING'|'RUNNING'|'INSTALL_ERROR'|'LAUNCHED'|'LAUNCH_ERROR'|'INSTALL_IN_PROGRESS', 'DeviceReportedTime': datetime(2015, 1, 1), 'RuntimeContextName': 'string' }, ], 'RuntimeRoleArn': 'string', 'Status': 'DEPLOYMENT_PENDING'|'DEPLOYMENT_REQUESTED'|'DEPLOYMENT_IN_PROGRESS'|'DEPLOYMENT_ERROR'|'DEPLOYMENT_SUCCEEDED'|'REMOVAL_PENDING'|'REMOVAL_REQUESTED'|'REMOVAL_IN_PROGRESS'|'REMOVAL_FAILED'|'REMOVAL_SUCCEEDED'|'DEPLOYMENT_FAILED', 'StatusDescription': 'string', 'Tags': { 'string': 'string' } }
Response Structure
(dict) --
ApplicationInstanceId (string) --
The application instance's ID.
ApplicationInstanceIdToReplace (string) --
The ID of the application instance that this instance replaced.
Arn (string) --
The application instance's ARN.
CreatedTime (datetime) --
When the application instance was created.
DefaultRuntimeContextDevice (string) --
The device's ID.
DefaultRuntimeContextDeviceName (string) --
The device's bane.
Description (string) --
The application instance's description.
HealthStatus (string) --
The application instance's health status.
LastUpdatedTime (datetime) --
The application instance was updated.
Name (string) --
The application instance's name.
RuntimeContextStates (list) --
The application instance's state.
(dict) --
An application instance's state.
DesiredState (string) --
The application's desired state.
DeviceReportedStatus (string) --
The application's reported status.
DeviceReportedTime (datetime) --
When the device reported the application's state.
RuntimeContextName (string) --
The device's name.
RuntimeRoleArn (string) --
The application instance's runtime role ARN.
Status (string) --
The application instance's status.
StatusDescription (string) --
The application instance's status description.
Tags (dict) --
The application instance's tags.
(string) --
(string) --
{'DeviceAggregatedStatus': {'REBOOTING'}, 'LatestDeviceJob': {'JobType': 'OTA | REBOOT'}}
Returns information about a device.
See also: AWS API Documentation
Request Syntax
client.describe_device( DeviceId='string' )
string
[REQUIRED]
The device's ID.
dict
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'|'REBOOTING', 'DeviceConnectionStatus': 'ONLINE'|'OFFLINE'|'AWAITING_CREDENTIALS'|'NOT_AVAILABLE'|'ERROR', 'DeviceId': 'string', 'LatestAlternateSoftware': 'string', 'LatestDeviceJob': { 'ImageVersion': 'string', 'JobType': 'OTA'|'REBOOT', '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.
JobType (string) --
The job's type.
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.
{'JobType': 'OTA | REBOOT'}
Returns information about a device job.
See also: AWS API Documentation
Request Syntax
client.describe_device_job( JobId='string' )
string
[REQUIRED]
The job's ID.
dict
Response Syntax
{ 'CreatedTime': datetime(2015, 1, 1), 'DeviceArn': 'string', 'DeviceId': 'string', 'DeviceName': 'string', 'DeviceType': 'PANORAMA_APPLIANCE_DEVELOPER_KIT'|'PANORAMA_APPLIANCE', 'ImageVersion': 'string', 'JobId': 'string', 'JobType': 'OTA'|'REBOOT', 'Status': 'PENDING'|'IN_PROGRESS'|'VERIFYING'|'REBOOTING'|'DOWNLOADING'|'COMPLETED'|'FAILED' }
Response Structure
(dict) --
CreatedTime (datetime) --
When the job was created.
DeviceArn (string) --
The device's ARN.
DeviceId (string) --
The device's ID.
DeviceName (string) --
The device's name.
DeviceType (string) --
The device's type.
ImageVersion (string) --
For an OTA job, the target version of the device software.
JobId (string) --
The job's ID.
JobType (string) --
The job's type.
Status (string) --
The job's status.
{'NodeInstances': {'CurrentStatus': {'PAUSED'}}}
Returns a list of application node instances.
See also: AWS API Documentation
Request Syntax
client.list_application_instance_node_instances( ApplicationInstanceId='string', MaxResults=123, NextToken='string' )
string
[REQUIRED]
The node instances' application instance ID.
integer
The maximum number of node instances to return in one page of results.
string
Specify the pagination token from a previous request to retrieve the next page of results.
dict
Response Syntax
{ 'NextToken': 'string', 'NodeInstances': [ { 'CurrentStatus': 'RUNNING'|'ERROR'|'NOT_AVAILABLE'|'PAUSED', 'NodeId': 'string', 'NodeInstanceId': 'string', 'NodeName': 'string', 'PackageName': 'string', 'PackagePatchVersion': 'string', 'PackageVersion': 'string' }, ] }
Response Structure
(dict) --
NextToken (string) --
A pagination token that's included if more results are available.
NodeInstances (list) --
A list of node instances.
(dict) --
A node instance.
CurrentStatus (string) --
The instance's current status.
NodeId (string) --
The node's ID.
NodeInstanceId (string) --
The instance's ID.
NodeName (string) --
The instance's name.
PackageName (string) --
The instance's package name.
PackagePatchVersion (string) --
The instance's package patch version.
PackageVersion (string) --
The instance's package version.
{'ApplicationInstances': {'RuntimeContextStates': [{'DesiredState': 'RUNNING | ' 'STOPPED | ' 'REMOVED', 'DeviceReportedStatus': 'STOPPING ' '| ' 'STOPPED ' '| ' 'STOP_ERROR ' '| ' 'REMOVAL_FAILED ' '| ' 'REMOVAL_IN_PROGRESS ' '| ' 'STARTING ' '| ' 'RUNNING ' '| ' 'INSTALL_ERROR ' '| ' 'LAUNCHED ' '| ' 'LAUNCH_ERROR ' '| ' 'INSTALL_IN_PROGRESS', 'DeviceReportedTime': 'timestamp', 'RuntimeContextName': 'string'}]}}
Returns a list of application instances.
See also: AWS API Documentation
Request Syntax
client.list_application_instances( DeviceId='string', MaxResults=123, NextToken='string', StatusFilter='DEPLOYMENT_SUCCEEDED'|'DEPLOYMENT_ERROR'|'REMOVAL_SUCCEEDED'|'REMOVAL_FAILED'|'PROCESSING_DEPLOYMENT'|'PROCESSING_REMOVAL'|'DEPLOYMENT_FAILED' )
string
The application instances' device ID.
integer
The maximum number of application instances to return in one page of results.
string
Specify the pagination token from a previous request to retrieve the next page of results.
string
Only include instances with a specific status.
dict
Response Syntax
{ 'ApplicationInstances': [ { 'ApplicationInstanceId': 'string', 'Arn': 'string', 'CreatedTime': datetime(2015, 1, 1), 'DefaultRuntimeContextDevice': 'string', 'DefaultRuntimeContextDeviceName': 'string', 'Description': 'string', 'HealthStatus': 'RUNNING'|'ERROR'|'NOT_AVAILABLE', 'Name': 'string', 'RuntimeContextStates': [ { 'DesiredState': 'RUNNING'|'STOPPED'|'REMOVED', 'DeviceReportedStatus': 'STOPPING'|'STOPPED'|'STOP_ERROR'|'REMOVAL_FAILED'|'REMOVAL_IN_PROGRESS'|'STARTING'|'RUNNING'|'INSTALL_ERROR'|'LAUNCHED'|'LAUNCH_ERROR'|'INSTALL_IN_PROGRESS', 'DeviceReportedTime': datetime(2015, 1, 1), 'RuntimeContextName': 'string' }, ], 'Status': 'DEPLOYMENT_PENDING'|'DEPLOYMENT_REQUESTED'|'DEPLOYMENT_IN_PROGRESS'|'DEPLOYMENT_ERROR'|'DEPLOYMENT_SUCCEEDED'|'REMOVAL_PENDING'|'REMOVAL_REQUESTED'|'REMOVAL_IN_PROGRESS'|'REMOVAL_FAILED'|'REMOVAL_SUCCEEDED'|'DEPLOYMENT_FAILED', 'StatusDescription': 'string', 'Tags': { 'string': 'string' } }, ], 'NextToken': 'string' }
Response Structure
(dict) --
ApplicationInstances (list) --
A list of application instances.
(dict) --
An application instance on a device.
ApplicationInstanceId (string) --
The application instance's ID.
Arn (string) --
The application instance's ARN.
CreatedTime (datetime) --
When the application instance was created.
DefaultRuntimeContextDevice (string) --
The device's ID.
DefaultRuntimeContextDeviceName (string) --
The device's name.
Description (string) --
The application instance's description.
HealthStatus (string) --
The application instance's health status.
Name (string) --
The application instance's name.
RuntimeContextStates (list) --
The application's state.
(dict) --
An application instance's state.
DesiredState (string) --
The application's desired state.
DeviceReportedStatus (string) --
The application's reported status.
DeviceReportedTime (datetime) --
When the device reported the application's state.
RuntimeContextName (string) --
The device's name.
Status (string) --
The application instance's status.
StatusDescription (string) --
The application instance's status description.
Tags (dict) --
The application instance's tags.
(string) --
(string) --
NextToken (string) --
A pagination token that's included if more results are available.
{'DeviceAggregatedStatusFilter': {'REBOOTING'}}Response
{'Devices': {'DeviceAggregatedStatus': {'REBOOTING'}, 'LatestDeviceJob': {'JobType': 'OTA | REBOOT'}}}
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'|'REBOOTING', MaxResults=123, NameFilter='string', NextToken='string', SortBy='DEVICE_ID'|'CREATED_TIME'|'NAME'|'DEVICE_AGGREGATED_STATUS', SortOrder='ASCENDING'|'DESCENDING' )
string
Filter based on a device's status.
integer
The maximum number of devices to return in one page of results.
string
Filter based on device's name. Prefixes supported.
string
Specify the pagination token from a previous request to retrieve the next page of results.
string
The target column to be sorted on. Default column sort is CREATED_TIME.
string
The sorting order for the returned list. SortOrder is DESCENDING by default based on CREATED_TIME. Otherwise, SortOrder is ASCENDING.
dict
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'|'REBOOTING', 'DeviceId': 'string', 'LastUpdatedTime': datetime(2015, 1, 1), 'LatestDeviceJob': { 'ImageVersion': 'string', 'JobType': 'OTA'|'REBOOT', '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.
JobType (string) --
The job's type.
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.
{'DeviceJobs': {'JobType': 'OTA | REBOOT'}}
Returns a list of jobs.
See also: AWS API Documentation
Request Syntax
client.list_devices_jobs( DeviceId='string', MaxResults=123, NextToken='string' )
string
Filter results by the job's target device ID.
integer
The maximum number of device jobs to return in one page of results.
string
Specify the pagination token from a previous request to retrieve the next page of results.
dict
Response Syntax
{ 'DeviceJobs': [ { 'CreatedTime': datetime(2015, 1, 1), 'DeviceId': 'string', 'DeviceName': 'string', 'JobId': 'string', 'JobType': 'OTA'|'REBOOT' }, ], 'NextToken': 'string' }
Response Structure
(dict) --
DeviceJobs (list) --
A list of jobs.
(dict) --
A job that runs on a device.
CreatedTime (datetime) --
When the job was created.
DeviceId (string) --
The ID of the target device.
DeviceName (string) --
The name of the target device
JobId (string) --
The job's ID.
JobType (string) --
The job's type.
NextToken (string) --
A pagination token that's included if more results are available.