AWS IoT Wireless

2023/11/03 - AWS IoT Wireless - 2 updated api methods

Changes  Added LoRaWAN version 1.0.4 support

CreateWirelessDevice (updated) Link ¶
Changes (request)
{'LoRaWAN': {'OtaaV1_0_x': {'JoinEui': 'string'}}}

Provisions a wireless device.

See also: AWS API Documentation

Request Syntax

client.create_wireless_device(
    Type='Sidewalk'|'LoRaWAN',
    Name='string',
    Description='string',
    DestinationName='string',
    ClientRequestToken='string',
    LoRaWAN={
        'DevEui': 'string',
        'DeviceProfileId': 'string',
        'ServiceProfileId': 'string',
        'OtaaV1_1': {
            'AppKey': 'string',
            'NwkKey': 'string',
            'JoinEui': 'string'
        },
        'OtaaV1_0_x': {
            'AppKey': 'string',
            'AppEui': 'string',
            'JoinEui': 'string',
            'GenAppKey': 'string'
        },
        'AbpV1_1': {
            'DevAddr': 'string',
            'SessionKeys': {
                'FNwkSIntKey': 'string',
                'SNwkSIntKey': 'string',
                'NwkSEncKey': 'string',
                'AppSKey': 'string'
            },
            'FCntStart': 123
        },
        'AbpV1_0_x': {
            'DevAddr': 'string',
            'SessionKeys': {
                'NwkSKey': 'string',
                'AppSKey': 'string'
            },
            'FCntStart': 123
        },
        'FPorts': {
            'Fuota': 123,
            'Multicast': 123,
            'ClockSync': 123,
            'Positioning': {
                'ClockSync': 123,
                'Stream': 123,
                'Gnss': 123
            },
            'Applications': [
                {
                    'FPort': 123,
                    'Type': 'SemtechGeolocation',
                    'DestinationName': 'string'
                },
            ]
        }
    },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    Positioning='Enabled'|'Disabled',
    Sidewalk={
        'DeviceProfileId': 'string'
    }
)
type Type:

string

param Type:

[REQUIRED]

The wireless device type.

type Name:

string

param Name:

The name of the new resource.

type Description:

string

param Description:

The description of the new resource.

type DestinationName:

string

param DestinationName:

[REQUIRED]

The name of the destination to assign to the new wireless device.

type ClientRequestToken:

string

param ClientRequestToken:

Each resource must have a unique client request token. If you try to create a new resource with the same token as a resource that already exists, an exception occurs. If you omit this value, AWS SDKs will automatically generate a unique client request.

This field is autopopulated if not provided.

type LoRaWAN:

dict

param LoRaWAN:

The device configuration information to use to create the wireless device.

  • DevEui (string) --

    The DevEUI value.

  • DeviceProfileId (string) --

    The ID of the device profile for the new wireless device.

  • ServiceProfileId (string) --

    The ID of the service profile.

  • OtaaV1_1 (dict) --

    OTAA device object for v1.1 for create APIs

    • AppKey (string) --

      The AppKey value.

    • NwkKey (string) --

      The NwkKey value.

    • JoinEui (string) --

      The JoinEUI value.

  • OtaaV1_0_x (dict) --

    OTAA device object for create APIs for v1.0.x

    • AppKey (string) --

      The AppKey value.

    • AppEui (string) --

      The AppEUI value.

    • JoinEui (string) --

      The JoinEUI value.

    • GenAppKey (string) --

      The GenAppKey value.

  • AbpV1_1 (dict) --

    ABP device object for create APIs for v1.1

    • DevAddr (string) --

      The DevAddr value.

    • SessionKeys (dict) --

      Session keys for ABP v1.1

      • FNwkSIntKey (string) --

        The FNwkSIntKey value.

      • SNwkSIntKey (string) --

        The SNwkSIntKey value.

      • NwkSEncKey (string) --

        The NwkSEncKey value.

      • AppSKey (string) --

        The AppSKey value.

    • FCntStart (integer) --

      The FCnt init value.

  • AbpV1_0_x (dict) --

    LoRaWAN object for create APIs

    • DevAddr (string) --

      The DevAddr value.

    • SessionKeys (dict) --

      Session keys for ABP v1.0.x

      • NwkSKey (string) --

        The NwkSKey value.

      • AppSKey (string) --

        The AppSKey value.

    • FCntStart (integer) --

      The FCnt init value.

  • FPorts (dict) --

    List of FPort assigned for different LoRaWAN application packages to use

    • Fuota (integer) --

      The Fport value.

    • Multicast (integer) --

      The Fport value.

    • ClockSync (integer) --

      The Fport value.

    • Positioning (dict) --

      FPort values for the GNSS, stream, and ClockSync functions of the positioning information.

      • ClockSync (integer) --

        The Fport value.

      • Stream (integer) --

        The Fport value.

      • Gnss (integer) --

        The Fport value.

    • Applications (list) --

      Optional LoRaWAN application information, which can be used for geolocation.

      • (dict) --

        LoRaWAN application configuration, which can be used to perform geolocation.

        • FPort (integer) --

          The Fport value.

        • Type (string) --

          Application type, which can be specified to obtain real-time position information of your LoRaWAN device.

        • DestinationName (string) --

          The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN.

type Tags:

list

param Tags:

The tags to attach to the new wireless device. Tags are metadata that you can use to manage a resource.

  • (dict) --

    A simple label consisting of a customer-defined key-value pair

    • Key (string) -- [REQUIRED]

      The tag's key value.

    • Value (string) -- [REQUIRED]

      The tag's value.

type Positioning:

string

param Positioning:

FPort values for the GNSS, stream, and ClockSync functions of the positioning information.

type Sidewalk:

dict

param Sidewalk:

The device configuration information to use to create the Sidewalk device.

  • DeviceProfileId (string) --

    The ID of the Sidewalk device profile.

rtype:

dict

returns:

Response Syntax

{
    'Arn': 'string',
    'Id': 'string'
}

Response Structure

  • (dict) --

    • Arn (string) --

      The Amazon Resource Name of the new resource.

    • Id (string) --

      The ID of the new wireless device.

GetWirelessDevice (updated) Link ¶
Changes (response)
{'LoRaWAN': {'OtaaV1_0_x': {'JoinEui': 'string'}}}

Gets information about a wireless device.

See also: AWS API Documentation

Request Syntax

client.get_wireless_device(
    Identifier='string',
    IdentifierType='WirelessDeviceId'|'DevEui'|'ThingName'|'SidewalkManufacturingSn'
)
type Identifier:

string

param Identifier:

[REQUIRED]

The identifier of the wireless device to get.

type IdentifierType:

string

param IdentifierType:

[REQUIRED]

The type of identifier used in identifier.

rtype:

dict

returns:

Response Syntax

{
    'Type': 'Sidewalk'|'LoRaWAN',
    'Name': 'string',
    'Description': 'string',
    'DestinationName': 'string',
    'Id': 'string',
    'Arn': 'string',
    'ThingName': 'string',
    'ThingArn': 'string',
    'LoRaWAN': {
        'DevEui': 'string',
        'DeviceProfileId': 'string',
        'ServiceProfileId': 'string',
        'OtaaV1_1': {
            'AppKey': 'string',
            'NwkKey': 'string',
            'JoinEui': 'string'
        },
        'OtaaV1_0_x': {
            'AppKey': 'string',
            'AppEui': 'string',
            'JoinEui': 'string',
            'GenAppKey': 'string'
        },
        'AbpV1_1': {
            'DevAddr': 'string',
            'SessionKeys': {
                'FNwkSIntKey': 'string',
                'SNwkSIntKey': 'string',
                'NwkSEncKey': 'string',
                'AppSKey': 'string'
            },
            'FCntStart': 123
        },
        'AbpV1_0_x': {
            'DevAddr': 'string',
            'SessionKeys': {
                'NwkSKey': 'string',
                'AppSKey': 'string'
            },
            'FCntStart': 123
        },
        'FPorts': {
            'Fuota': 123,
            'Multicast': 123,
            'ClockSync': 123,
            'Positioning': {
                'ClockSync': 123,
                'Stream': 123,
                'Gnss': 123
            },
            'Applications': [
                {
                    'FPort': 123,
                    'Type': 'SemtechGeolocation',
                    'DestinationName': 'string'
                },
            ]
        }
    },
    'Sidewalk': {
        'AmazonId': 'string',
        'SidewalkId': 'string',
        'SidewalkManufacturingSn': 'string',
        'DeviceCertificates': [
            {
                'SigningAlg': 'Ed25519'|'P256r1',
                'Value': 'string'
            },
        ],
        'PrivateKeys': [
            {
                'SigningAlg': 'Ed25519'|'P256r1',
                'Value': 'string'
            },
        ],
        'DeviceProfileId': 'string',
        'CertificateId': 'string',
        'Status': 'PROVISIONED'|'REGISTERED'|'ACTIVATED'|'UNKNOWN'
    },
    'Positioning': 'Enabled'|'Disabled'
}

Response Structure

  • (dict) --

    • Type (string) --

      The wireless device type.

    • Name (string) --

      The name of the resource.

    • Description (string) --

      The description of the resource.

    • DestinationName (string) --

      The name of the destination to which the device is assigned.

    • Id (string) --

      The ID of the wireless device.

    • Arn (string) --

      The Amazon Resource Name of the resource.

    • ThingName (string) --

      The name of the thing associated with the wireless device. The value is empty if a thing isn't associated with the device.

    • ThingArn (string) --

      The ARN of the thing associated with the wireless device.

    • LoRaWAN (dict) --

      Information about the wireless device.

      • DevEui (string) --

        The DevEUI value.

      • DeviceProfileId (string) --

        The ID of the device profile for the new wireless device.

      • ServiceProfileId (string) --

        The ID of the service profile.

      • OtaaV1_1 (dict) --

        OTAA device object for v1.1 for create APIs

        • AppKey (string) --

          The AppKey value.

        • NwkKey (string) --

          The NwkKey value.

        • JoinEui (string) --

          The JoinEUI value.

      • OtaaV1_0_x (dict) --

        OTAA device object for create APIs for v1.0.x

        • AppKey (string) --

          The AppKey value.

        • AppEui (string) --

          The AppEUI value.

        • JoinEui (string) --

          The JoinEUI value.

        • GenAppKey (string) --

          The GenAppKey value.

      • AbpV1_1 (dict) --

        ABP device object for create APIs for v1.1

        • DevAddr (string) --

          The DevAddr value.

        • SessionKeys (dict) --

          Session keys for ABP v1.1

          • FNwkSIntKey (string) --

            The FNwkSIntKey value.

          • SNwkSIntKey (string) --

            The SNwkSIntKey value.

          • NwkSEncKey (string) --

            The NwkSEncKey value.

          • AppSKey (string) --

            The AppSKey value.

        • FCntStart (integer) --

          The FCnt init value.

      • AbpV1_0_x (dict) --

        LoRaWAN object for create APIs

        • DevAddr (string) --

          The DevAddr value.

        • SessionKeys (dict) --

          Session keys for ABP v1.0.x

          • NwkSKey (string) --

            The NwkSKey value.

          • AppSKey (string) --

            The AppSKey value.

        • FCntStart (integer) --

          The FCnt init value.

      • FPorts (dict) --

        List of FPort assigned for different LoRaWAN application packages to use

        • Fuota (integer) --

          The Fport value.

        • Multicast (integer) --

          The Fport value.

        • ClockSync (integer) --

          The Fport value.

        • Positioning (dict) --

          FPort values for the GNSS, stream, and ClockSync functions of the positioning information.

          • ClockSync (integer) --

            The Fport value.

          • Stream (integer) --

            The Fport value.

          • Gnss (integer) --

            The Fport value.

        • Applications (list) --

          Optional LoRaWAN application information, which can be used for geolocation.

          • (dict) --

            LoRaWAN application configuration, which can be used to perform geolocation.

            • FPort (integer) --

              The Fport value.

            • Type (string) --

              Application type, which can be specified to obtain real-time position information of your LoRaWAN device.

            • DestinationName (string) --

              The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN.

    • Sidewalk (dict) --

      Sidewalk device object.

      • AmazonId (string) --

        The Sidewalk Amazon ID.

      • SidewalkId (string) --

        The sidewalk device identification.

      • SidewalkManufacturingSn (string) --

        The Sidewalk manufacturing series number.

      • DeviceCertificates (list) --

        The sidewalk device certificates for Ed25519 and P256r1.

        • (dict) --

          List of sidewalk certificates.

          • SigningAlg (string) --

            The certificate chain algorithm provided by sidewalk.

          • Value (string) --

            The value of the chosen sidewalk certificate.

      • PrivateKeys (list) --

        The Sidewalk device private keys that will be used for onboarding the device.

        • (dict) --

          List of sidewalk certificates.

          • SigningAlg (string) --

            The certificate chain algorithm provided by sidewalk.

          • Value (string) --

            The value of the chosen sidewalk certificate.

      • DeviceProfileId (string) --

        The ID of the Sidewalk device profile.

      • CertificateId (string) --

        The ID of the Sidewalk device profile.

      • Status (string) --

        The Sidewalk device status, such as provisioned or registered.

    • Positioning (string) --

      FPort values for the GNSS, stream, and ClockSync functions of the positioning information.