AWS IoT Wireless

2026/09/17 - AWS IoT Wireless - 1 updated api methods

Changes  Adds Multi-frame GNSS support to the AWS IoT Core Device Location GetPositionEstimate API. The new GnssMultiFrame measurement type improves location accuracy by combining multiple GNSS signal captures (2, 4, 8, 16, or 32) from the same device to estimate its position.

GetPositionEstimate (updated) Link ΒΆ
Changes (request)
{'GnssMultiFrame': {'AssistAltitude': 'float',
                    'AssistPosition': ['float'],
                    'CaptureTimeAccuracy': 'float',
                    'Captures': [{'CaptureTime': 'float', 'Payload': 'string'}],
                    'Use2DSolver': 'boolean'}}

Get estimated position information as a payload in GeoJSON format. The payload measurement data is resolved using solvers that are provided by third-party vendors.

See also: AWS API Documentation

Request Syntax

client.get_position_estimate(
    WiFiAccessPoints=[
        {
            'MacAddress': 'string',
            'Rss': 123
        },
    ],
    CellTowers={
        'Gsm': [
            {
                'Mcc': 123,
                'Mnc': 123,
                'Lac': 123,
                'GeranCid': 123,
                'GsmLocalId': {
                    'Bsic': 123,
                    'Bcch': 123
                },
                'GsmTimingAdvance': 123,
                'RxLevel': 123,
                'GsmNmr': [
                    {
                        'Bsic': 123,
                        'Bcch': 123,
                        'RxLevel': 123,
                        'GlobalIdentity': {
                            'Lac': 123,
                            'GeranCid': 123
                        }
                    },
                ]
            },
        ],
        'Wcdma': [
            {
                'Mcc': 123,
                'Mnc': 123,
                'Lac': 123,
                'UtranCid': 123,
                'WcdmaLocalId': {
                    'Uarfcndl': 123,
                    'Psc': 123
                },
                'Rscp': 123,
                'PathLoss': 123,
                'WcdmaNmr': [
                    {
                        'Uarfcndl': 123,
                        'Psc': 123,
                        'UtranCid': 123,
                        'Rscp': 123,
                        'PathLoss': 123
                    },
                ]
            },
        ],
        'Tdscdma': [
            {
                'Mcc': 123,
                'Mnc': 123,
                'Lac': 123,
                'UtranCid': 123,
                'TdscdmaLocalId': {
                    'Uarfcn': 123,
                    'CellParams': 123
                },
                'TdscdmaTimingAdvance': 123,
                'Rscp': 123,
                'PathLoss': 123,
                'TdscdmaNmr': [
                    {
                        'Uarfcn': 123,
                        'CellParams': 123,
                        'UtranCid': 123,
                        'Rscp': 123,
                        'PathLoss': 123
                    },
                ]
            },
        ],
        'Lte': [
            {
                'Mcc': 123,
                'Mnc': 123,
                'EutranCid': 123,
                'Tac': 123,
                'LteLocalId': {
                    'Pci': 123,
                    'Earfcn': 123
                },
                'LteTimingAdvance': 123,
                'Rsrp': 123,
                'Rsrq': ...,
                'NrCapable': True|False,
                'LteNmr': [
                    {
                        'Pci': 123,
                        'Earfcn': 123,
                        'EutranCid': 123,
                        'Rsrp': 123,
                        'Rsrq': ...
                    },
                ]
            },
        ],
        'Cdma': [
            {
                'SystemId': 123,
                'NetworkId': 123,
                'BaseStationId': 123,
                'RegistrationZone': 123,
                'CdmaLocalId': {
                    'PnOffset': 123,
                    'CdmaChannel': 123
                },
                'PilotPower': 123,
                'BaseLat': ...,
                'BaseLng': ...,
                'CdmaNmr': [
                    {
                        'PnOffset': 123,
                        'CdmaChannel': 123,
                        'PilotPower': 123,
                        'BaseStationId': 123
                    },
                ]
            },
        ]
    },
    Ip={
        'IpAddress': 'string'
    },
    Gnss={
        'Payload': 'string',
        'CaptureTime': ...,
        'CaptureTimeAccuracy': ...,
        'AssistPosition': [
            ...,
        ],
        'AssistAltitude': ...,
        'Use2DSolver': True|False
    },
    GnssMultiFrame={
        'Captures': [
            {
                'Payload': 'string',
                'CaptureTime': ...
            },
        ],
        'CaptureTimeAccuracy': ...,
        'AssistPosition': [
            ...,
        ],
        'AssistAltitude': ...,
        'Use2DSolver': True|False
    },
    Timestamp=datetime(2015, 1, 1),
    AdvancedConfiguration={
        'WiFiCellular': {
            'ConfidencePercent': 123
        }
    }
)
type WiFiAccessPoints:

list

param WiFiAccessPoints:

Retrieves an estimated device position by resolving WLAN measurement data. The position is resolved using HERE's Wi-Fi based solver.

  • (dict) --

    Wi-Fi access point.

    • MacAddress (string) -- [REQUIRED]

      Wi-Fi MAC Address.

    • Rss (integer) -- [REQUIRED]

      Received signal strength (dBm) of the WLAN measurement data.

type CellTowers:

dict

param CellTowers:

Retrieves an estimated device position by resolving measurement data from cellular radio towers. The position is resolved using HERE's cellular-based solver.

  • Gsm (list) --

    GSM object information.

    • (dict) --

      GSM object.

      • Mcc (integer) -- [REQUIRED]

        Mobile Country Code.

      • Mnc (integer) -- [REQUIRED]

        Mobile Network Code.

      • Lac (integer) -- [REQUIRED]

        Location area code.

      • GeranCid (integer) -- [REQUIRED]

        GERAN (GSM EDGE Radio Access Network) Cell Global Identifier.

      • GsmLocalId (dict) --

        GSM local identification (local ID) information.

        • Bsic (integer) -- [REQUIRED]

          GSM base station identity code (BSIC).

        • Bcch (integer) -- [REQUIRED]

          GSM broadcast control channel.

      • GsmTimingAdvance (integer) --

        Timing advance value, which corresponds to the length of time a signal takes to reach the base station from a mobile phone.

      • RxLevel (integer) --

        Rx level, which is the received signal power, measured in dBm (decibel-milliwatts).

      • GsmNmr (list) --

        GSM object for network measurement reports.

        • (dict) --

          GSM object for network measurement reports.

          • Bsic (integer) -- [REQUIRED]

            GSM base station identity code (BSIC).

          • Bcch (integer) -- [REQUIRED]

            GSM broadcast control channel.

          • RxLevel (integer) --

            Rx level, which is the received signal power, measured in dBm (decibel-milliwatts).

          • GlobalIdentity (dict) --

            Global identity information of the GSM object.

            • Lac (integer) -- [REQUIRED]

              Location area code of the global identity.

            • GeranCid (integer) -- [REQUIRED]

              GERAN (GSM EDGE Radio Access Network) cell global identifier.

  • Wcdma (list) --

    WCDMA object information.

    • (dict) --

      WCDMA.

      • Mcc (integer) -- [REQUIRED]

        Mobile Country Code.

      • Mnc (integer) -- [REQUIRED]

        Mobile Network Code.

      • Lac (integer) --

        Location Area Code.

      • UtranCid (integer) -- [REQUIRED]

        UTRAN (UMTS Terrestrial Radio Access Network) Cell Global Identifier.

      • WcdmaLocalId (dict) --

        WCDMA local ID information.

        • Uarfcndl (integer) -- [REQUIRED]

          WCDMA UTRA Absolute RF Channel Number downlink.

        • Psc (integer) -- [REQUIRED]

          Primary Scrambling Code.

      • Rscp (integer) --

        Received Signal Code Power (signal power) (dBm).

      • PathLoss (integer) --

        Path loss, or path attenuation, is the reduction in power density of an electromagnetic wave as it propagates through space.

      • WcdmaNmr (list) --

        WCDMA object for network measurement reports.

        • (dict) --

          Network Measurement Reports.

          • Uarfcndl (integer) -- [REQUIRED]

            WCDMA UTRA Absolute RF Channel Number downlink.

          • Psc (integer) -- [REQUIRED]

            Primary Scrambling Code.

          • UtranCid (integer) -- [REQUIRED]

            UTRAN (UMTS Terrestrial Radio Access Network) Cell Global Identifier.

          • Rscp (integer) --

            Received Signal Code Power (signal power) (dBm)

          • PathLoss (integer) --

            Path loss, or path attenuation, is the reduction in power density of an electromagnetic wave as it propagates through space.

  • Tdscdma (list) --

    TD-SCDMA object information.

    • (dict) --

      TD-SCDMA object.

      • Mcc (integer) -- [REQUIRED]

        Mobile Country Code.

      • Mnc (integer) -- [REQUIRED]

        Mobile Network Code.

      • Lac (integer) --

        Location Area Code.

      • UtranCid (integer) -- [REQUIRED]

        UTRAN (UMTS Terrestrial Radio Access Network) Cell Global Identifier.

      • TdscdmaLocalId (dict) --

        TD-SCDMA local identification (local ID) information.

        • Uarfcn (integer) -- [REQUIRED]

          TD-SCDMA UTRA (Universal Terrestrial Radio Access Network) absolute RF channel number (UARFCN).

        • CellParams (integer) -- [REQUIRED]

          Cell parameters for TD-SCDMA.

      • TdscdmaTimingAdvance (integer) --

        TD-SCDMA Timing advance.

      • Rscp (integer) --

        Signal power of the received signal (Received Signal Code Power), measured in decibel-milliwatts (dBm).

      • PathLoss (integer) --

        Path loss, or path attenuation, is the reduction in power density of an electromagnetic wave as it propagates through space.

      • TdscdmaNmr (list) --

        TD-SCDMA object for network measurement reports.

        • (dict) --

          TD-SCDMA object for network measurement reports.

          • Uarfcn (integer) -- [REQUIRED]

            TD-SCDMA UTRA (Universal Terrestrial Radio Access Network) absolute RF channel number.

          • CellParams (integer) -- [REQUIRED]

            Cell parameters for TD-SCDMA network measurement reports object.

          • UtranCid (integer) --

            UTRAN (UMTS Terrestrial Radio Access Network) cell global identifier.

          • Rscp (integer) --

            Code power of the received signal, measured in decibel-milliwatts (dBm).

          • PathLoss (integer) --

            Path loss, or path attenuation, is the reduction in power density of an electromagnetic wave as it propagates through space.

  • Lte (list) --

    LTE object information.

    • (dict) --

      LTE object.

      • Mcc (integer) -- [REQUIRED]

        Mobile Country Code.

      • Mnc (integer) -- [REQUIRED]

        Mobile Network Code.

      • EutranCid (integer) -- [REQUIRED]

        E-UTRAN (Evolved Universal Terrestrial Radio Access Network) Cell Global Identifier.

      • Tac (integer) --

        LTE tracking area code.

      • LteLocalId (dict) --

        LTE local identification (local ID) information.

        • Pci (integer) -- [REQUIRED]

          Physical cell ID.

        • Earfcn (integer) -- [REQUIRED]

          Evolved universal terrestrial radio access (E-UTRA) absolute radio frequency channel number (FCN).

      • LteTimingAdvance (integer) --

        LTE timing advance.

      • Rsrp (integer) --

        Signal power of the reference signal received, measured in dBm (decibel-milliwatts).

      • Rsrq (float) --

        Signal quality of the reference Signal received, measured in decibels (dB).

      • NrCapable (boolean) --

        Parameter that determines whether the LTE object is capable of supporting NR (new radio).

      • LteNmr (list) --

        LTE object for network measurement reports.

        • (dict) --

          LTE object for network measurement reports.

          • Pci (integer) -- [REQUIRED]

            Physical cell ID.

          • Earfcn (integer) -- [REQUIRED]

            E-UTRA (Evolved universal terrestrial Radio Access) absolute radio frequency channel Number (EARFCN).

          • EutranCid (integer) --

            E-UTRAN (Evolved Universal Terrestrial Radio Access Network) cell global identifier (EUTRANCID).

          • Rsrp (integer) --

            Signal power of the reference signal received, measured in dBm (decibel-milliwatts).

          • Rsrq (float) --

            Signal quality of the reference Signal received, measured in decibels (dB).

  • Cdma (list) --

    CDMA object information.

    • (dict) --

      CDMA (Code-division multiple access) object.

      • SystemId (integer) -- [REQUIRED]

        CDMA system ID (SID).

      • NetworkId (integer) -- [REQUIRED]

        CDMA network ID (NID).

      • BaseStationId (integer) -- [REQUIRED]

        CDMA base station ID (BSID).

      • RegistrationZone (integer) --

        CDMA registration zone (RZ).

      • CdmaLocalId (dict) --

        CDMA local identification (local ID) parameters.

        • PnOffset (integer) -- [REQUIRED]

          Pseudo-noise offset, which is a characteristic of the signal from a cell on a radio tower.

        • CdmaChannel (integer) -- [REQUIRED]

          CDMA channel information.

      • PilotPower (integer) --

        Transmit power level of the pilot signal, measured in dBm (decibel-milliwatts).

      • BaseLat (float) --

        CDMA base station latitude in degrees.

      • BaseLng (float) --

        CDMA base station longitude in degrees.

      • CdmaNmr (list) --

        CDMA network measurement reports.

        • (dict) --

          CDMA object for network measurement reports.

          • PnOffset (integer) -- [REQUIRED]

            Pseudo-noise offset, which is a characteristic of the signal from a cell on a radio tower.

          • CdmaChannel (integer) -- [REQUIRED]

            CDMA channel information.

          • PilotPower (integer) --

            Transmit power level of the pilot signal, measured in dBm (decibel-milliwatts).

          • BaseStationId (integer) --

            CDMA base station ID (BSID).

type Ip:

dict

param Ip:

Retrieves an estimated device position by resolving the IP address information from the device. The position is resolved using MaxMind's IP-based solver.

  • IpAddress (string) -- [REQUIRED]

    IP address information.

type Gnss:

dict

param Gnss:

Retrieves an estimated device position by resolving the global navigation satellite system (GNSS) scan data. The position is resolved using the GNSS solver powered by LoRa Cloud. This field is mutually exclusive with the GnssMultiFrame field.

  • Payload (string) -- [REQUIRED]

    Payload that contains the GNSS scan result, or NAV message, in hexadecimal notation.

  • CaptureTime (float) --

    Optional parameter that gives an estimate of the time when the GNSS scan information is taken, in seconds GPS time (GPST). If capture time is not specified, the local server time is used.

  • CaptureTimeAccuracy (float) --

    Optional value that gives the capture time estimate accuracy, in seconds. If capture time accuracy is not specified, default value of 300 is used.

  • AssistPosition (list) --

    Optional assistance position information, specified using latitude and longitude values in degrees. The coordinates are inside the WGS84 reference frame.

    • (float) --

  • AssistAltitude (float) --

    Optional assistance altitude, which is the altitude of the device at capture time, specified in meters above the WGS84 reference ellipsoid.

  • Use2DSolver (boolean) --

    Optional parameter that forces 2D solve, which modifies the positioning algorithm to a 2D solution problem. When this parameter is specified, the assistance altitude should have an accuracy of at least 10 meters.

type GnssMultiFrame:

dict

param GnssMultiFrame:

Retrieves an estimated device position by resolving multiple global navigation satellite system (GNSS) scan captures. The position is resolved using the multi-frame GNSS solver powered by LoRa Cloud. This field is mutually exclusive with the Gnss field.

  • Captures (list) -- [REQUIRED]

    List of GNSS scan captures. Each capture contains a payload from a single GNSS scan. The number of captures must be 2, 4, 8, 16, or 32.

    • (dict) --

      A single GNSS scan capture containing the scan payload and optional capture time.

      • Payload (string) -- [REQUIRED]

        Payload that contains the GNSS scan result, or NAV message, in hexadecimal notation.

      • CaptureTime (float) --

        Optional parameter that gives an estimate of the time when the GNSS scan information is taken, in seconds GPS time (GPST). If capture time is not specified, the local server time is used.

  • CaptureTimeAccuracy (float) --

    Optional value that gives the capture time estimate accuracy, in seconds. If capture time accuracy is not specified, default value of 300 is used.

  • AssistPosition (list) --

    Optional assistance position information, specified using latitude and longitude values in degrees. The coordinates are inside the WGS84 reference frame.

    • (float) --

  • AssistAltitude (float) --

    Optional assistance altitude, which is the altitude of the device at capture time, specified in meters above the WGS84 reference ellipsoid. This parameter is required when Use2DSolver is enabled.

  • Use2DSolver (boolean) --

    Optional parameter that forces 2D solve, which modifies the positioning algorithm to a 2D solution problem. When this parameter is specified, the assistance altitude should have an accuracy of at least 10 meters.

type Timestamp:

datetime

param Timestamp:

Optional information that specifies the time when the position information will be resolved. It uses the Unix timestamp format. If not specified, the time at which the request was received will be used.

type AdvancedConfiguration:

dict

param AdvancedConfiguration:

Optional configuration for customizing position measurement data.

  • WiFiCellular (dict) --

    Configuration for WiFi and cellular-based location estimate payloads resolved by HERE's solvers.

    • ConfidencePercent (integer) --

      The confidence level for WiFi and cellular position estimates, expressed as a percentage. This value determines the size of the confidence area or uncertainty radius for the estimated position. A higher confidence level produces a larger uncertainty radius, while a lower confidence level produces a smaller, more precise radius.

      Valid range: 50 to 99 inclusive. If not specified, the default value of 68 is used, which corresponds to approximately one standard deviation of the normal distribution.

rtype:

dict

returns:

Response Syntax

{
    'GeoJsonPayload': StreamingBody()
}

Response Structure

  • (dict) --

    • GeoJsonPayload (:class:`.StreamingBody`) --

      The position information of the resource, displayed as a JSON payload. The payload is of type blob and uses the GeoJSON format, which a format that's used to encode geographic data structures. A sample payload contains the timestamp information, the WGS84 coordinates of the location, and the accuracy and confidence level. For more information and examples, see Resolve device location (console).