# TPS XML API request

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Requests the geographic location of the device based on observed access points, cell
        towers, and GPS locations.

**Endpoint URL**: [https://global.skyhook.com/wps2/location](https://global.skyhook.com/wps2/location).

**HTTP method**: POST

**HTTP authentication**: See [HTTP authentication methods](https://docs.qualcomm.com/doc/80-42216-1/topic/2_TPS_XML_API_implementation.html#HTTP_authentication_methods_3).

**Syntax**

    <LocationRQ xmlns="http://skyhookwireless.com/wps/2005"
                version="2.31"
                hpe-confidence="68"
                street-address-lookup="full"
                timezone-lookup="true"
                emergency="true"
                allowSingleAPLocation="true">
    <authentication version="2.2">...
    </authentication><access-point> <!-- See below for details --> </access-point><lte-tower> <!-- Any type of cell can be provided between APs and GPS --> </lte-tower>    
              <!-- See Scanned Cell Tower Group below for details -->			<nr-tower> <!-- | --> </nr-tower>      
              <!-- | -->		<gps-location>  <!-- See below for details --> </gps-location><eddystone-uid-ble> <!-- Any type of BLE can be provided after GPS --> </eddystone-uid-ble>
              <!-- See Scanned BLE Beacon Group below for details -->
           <altbeacon-ble> <!-- | --> </altbeacon-ble>    
              <!-- | -->
    </LocationRQ>
    Copy to clipboard

**Parameters**

| Parameter | Values | Description |
| --- | --- | --- |
| `rqtime` | – | (Optional) The time at which the request data is scanned. This attribute is<br>                reflected back in the response. |
| `timezone-lookup` | <ul class="ul" id="TPS_JSON_API_request_4__ul_nhw_kqh_pzb"><br>                  <li class="li">True </li><br><br>                  <li class="li">False (default)</li><br><br>                </ul> | Requests time zone lookup in addition to lat/long lookup.<br><br><br>                <ul class="ul" id="TPS_JSON_API_request_4__ul_wmt_vqh_pzb"><br>                  <li class="li">Set to <code class="ph codeph">false</code> to not perform time zone lookup.</li><br><br>                  <li class="li">Set to <code class="ph codeph">true</code> to perform time zone lookup, which yields a<br>                      <code class="ph codeph">timezone</code> in the <code class="ph codeph">LocationRS</code>.</li><br><br>                </ul> |
| `street-address-lookup` | <ul class="ul" id="TPS_JSON_API_request_4__ul_o1v_brh_pzb"><br>                  <li class="li">None (default)</li><br><br>                  <li class="li">Limited</li><br><br>                  <li class="li">Full </li><br><br>                </ul> | Requests street address lookup in addition to lat/long lookup.<br><br><br>                <ul class="ul" id="TPS_JSON_API_request_4__ul_p1v_brh_pzb"><br>                  <li class="li">Set to <code class="ph codeph">none</code> to not perform street address lookup.</li><br><br>                  <li class="li">Set to <code class="ph codeph">limited</code> to return information of the city, which<br>                    yields a <code class="ph codeph">street-address</code> in the <code class="ph codeph">LocationRS</code>. </li><br><br>                  <li class="li">Set to <code class="ph codeph">full</code> to return all address attributes, which yield a<br>                      <code class="ph codeph">street-address</code> in the <code class="ph codeph">LocationRS</code>. </li><br><br>                </ul> |
| `version` | – | The version of the API used. |
| `hpe-confidence` | <ul class="ul" id="TPS_JSON_API_request_4__ul_sdh_bqh_pzb"><br>                  <li class="li">68 (default) </li><br><br>                  <li class="li">95</li><br><br>                </ul> | (Optional) Requests reported uncertainty (HPE) percentile change. For example,<br>                a value of 95 reports 95% uncertainty.<br>Note: The default 68%<br>                  confidence is supported inTPS v2.28 and later. For 95% confidence, set<br>                    `hpe-confidence` to 95 in the location request. |
| `allowSingleAPLocation` | <ul class="ul" id="TPS_JSON_API_request_4__ul_kjt_2rs_vfc"><br>                  <li class="li">True </li><br><br>                  <li class="li">False</li><br><br>                </ul> | <ul class="ul" id="TPS_JSON_API_request_4__ul_gxw_hrs_vfc"><br>                  <li class="li">Set to <code class="ph codeph">true</code> to return a coarse location estimate when only<br>                    one known access point is present in the request.</li><br><br>                  <li class="li">Set to <code class="ph codeph">false</code> to stop returning locations with only one known<br>                    access point.</li><br><br>                </ul><br><br>                <br>Note: Set the value of `Skyhook-Proto-Ver`<br>                  HEADER to at least `2.41` version. |
| `authentication` | – | The authentication for this API request.<br><br><br>                <ul class="ul" id="TPS_JSON_API_request_4__ul_rnj_b4h_pzb"><br>                  <li class="li"><code class="ph codeph">key</code>: The API key used for this project.</li><br><br>                  <li class="li"><code class="ph codeph">username</code>: The serial number, MAC address, or other unique ID<br>                    of the device.</li><br><br>                  <li class="li"><code class="ph codeph">version</code>: The version of the authentication type used for this<br>                    project.</li><br><br>                </ul> |
| [access-point](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#Wi_Fi_access_points__5) | – | (Optional) An access point observed during a scan. Any number of access points<br>                can be provided in a request. |
| [cell-tower](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#Scanned_cell_tower_group_6) | – | (Optional) A cell tower observed during a scan. Any number of cell towers can be<br>                  provided in a request.<br><br><br>                <br>The types of cell towers supported are as follows:<br><br><br>                <ul class="ul" id="TPS_JSON_API_request_4__ul_m5r_lvh_pzb"><br>                  <li class="li"><a href="https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#GSM_cell_tower__7">gsm-tower</a></li><br><br>                  <li class="li"><a href="https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#UMTS_WCDMA_cell_tower__8">umts-tower</a></li><br><br>                  <li class="li"><a href="https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#LTE_cell_tower__9">lte-tower</a></li><br><br>                  <li class="li"><a href="https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#CDMA_cell_tower__10">cdma-tower</a></li><br><br>                  <li class="li"><a href="https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#NB_IoT_cell_tower__11">nbiot-tower</a></li><br><br>                  <li class="li"><a href="https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#NR_tower__5G__New_Radio__12">nr-tower</a></li><br><br>                </ul> |
| [gps-location](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#GPS_locations_14) | – | (Optional) A GPS point observed during a scan. Any number of GPS points can be<br>                provided in a request. |
| [ble-beacon](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#Scanned_BLE_beacon_group_15) | – | (Optional) A BLE beacon observed during a scan. Any number of BLE beacons can be<br>                  provided in a request.<br><br><br>                <br>The types of BLE beacons supported are as follows:<br><br><br>                <ul class="ul" id="TPS_JSON_API_request_4__ul_xn4_xvh_pzb"><br>                  <li class="li"><a href="https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#IBeacon_BLE_16">ibeacon-ble</a></li><br><br>                  <li class="li"><a href="https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#Eddystone_BLE_17">eddystone-uid-ble</a></li><br><br>                  <li class="li"><a href="https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html#altBeacon_BLE_18">altbeacon-ble</a></li><br><br>                </ul> |

## Scanned access points

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Provides the access point observed during a scan.

**Syntax**

    <access-point><mac>E01C413B9414</mac><ssid>SkyFi-Corp</ssid>                <!-- Optional --><signal-strength>-66</signal-strength><age>100</age>                         <!-- Optional -->            <freq>5260</freq>                      <!-- Optional --><connected>true</connected>            <!-- Optional -->
    </access-point>
    Copy to clipboard

**Parameters**

| Parameter | Values | Description |
| --- | --- | --- |
| `mac` | – | MAC address of the access point.<br><br><br>                <br>MAC address must be complete and valid. Each character should be capitalized, and<br>                  separators such as colons and dashes should be removed. For example:<br><br><br>                <ul class="ul" id="Wi_Fi_access_points__5__ul_rln_s3j_pzb"><br>                  <li class="li">Correct MAC address: 000C4182D88C</li><br><br>                  <li class="li">Incorrect MAC address: 00:0C:41:82:D8:8C</li><br><br>                </ul> |
| `ssid` | – | (Optional) Service Set Identifier (SSID) of the access point. |
| `signal-strength` | – | (Optional) Observed signal strength of the access point, in dBm. |
| `age` | – | (Optional) Relative age of the measurement, in milliseconds or<br>                timestamp. |
| `freq` | – | (Optional) Central channel frequency in MHz; 16‑bit integer. |
| `connected` | <ul class="ul" id="Wi_Fi_access_points__5__ul_lgs_j3j_pzb"><br>                  <li class="li">True</li><br><br>                  <li class="li">False</li><br><br>                  <li class="li">Empty (default)</li><br><br>                </ul> | (Optional) Indicates whether the client device is currently connected to the<br>                  access point.<br><br><br>                <ul class="ul" id="Wi_Fi_access_points__5__ul_dvc_djj_pzb"><br>                  <li class="li"><code class="ph codeph">true</code>: connected</li><br><br>                  <li class="li"><code class="ph codeph">false</code>: not connected</li><br><br>                  <li class="li"><code class="ph codeph">empty</code>: not connected</li><br><br>                </ul> |

## Scanned cell towers

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

The scanned cell tower group allows the input of observed cell towers. Multiple towers and
      multiple types of cell towers are allowed.

Optionally, the cell tower list can include neighbors cell measurements (NMRs) in addition to
      serving cells. Neighbor cells can be provided with the full cell IDs (as serving cell) or
      partial IDs (labeled in the table as NMRs).

Note: Partial cell ID must be accompanied by
      at least one serving cell.

### GSM cell tower

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Provides the GSM cell tower observed during a scan. The GSM tower block should be used for the
        following air-interfaces:

- GSM
- GPRS
- EDGE

**Syntax**

    <gsm-tower><mcc>310</mcc><mnc>410</mnc><lac>1234</lac><ci>12345</ci><bsic>35</bsic>                      <!-- Optional --><rssi>-90</rssi>                     <!-- Optional --><timing-advance>11</timing-advance>  <!-- Optional --><age>1000</age>                      <!-- Optional --><arfcn>330</arfcn>                   <!-- Optional --><band>GSM_480</band>                 <!-- Optional --><serving>false</serving>             <!-- Optional -->
    </gsm-tower>
    Copy to clipboard

**Parameters**

| Parameter | Values | Description |
| --- | --- | --- |
| `mcc` | – | Indicates the mobile country code. |
| `mnc` | – | Indicates the mobile network code. |
| `lac` | – | Indicates the local area code. |
| `ci` | – | Indicates the cell ID. |
| `bsic` | Range: 0 to 63 | (Optional) GSM BSIC composed of a 3‑bit Network Color Code (NCC) and a 3‑bit<br>                Base station Color Code (BCC). |
| `rssi` | – | Signal strength of the cell, in dBm. |
| `timing-advance` | Range: 0 to 63 | (Optional) GSM time advance value (TA) when in connected mode. Integer value as<br>                per 3GPP Technical Specification 45.00 (GSM). |
| `age` | – | Relative age of the measurement, in milliseconds or timestamp. |
| `arfcn` | – | (Optional) GSM channel number; 16‑bit integer. |
| `band` | – | (Optional) GSM band; string. |
| `serving` | <ul class="ul" id="GSM_cell_tower__7__ul_xwh_zjj_pzb"><br>                  <li class="li">True</li><br><br>                  <li class="li">False</li><br><br>                  <li class="li">Empty (default)</li><br><br>                </ul> | (Optional) Indicates whether the client device is currently associated with the<br>                  cell tower.<br><ul class="ul" id="GSM_cell_tower__7__ul_dvc_djj_pzb"><br>                  <li class="li"><code class="ph codeph">true</code>: connected/serving cell</li><br><br>                  <li class="li"><code class="ph codeph">false</code>: not a serving cell</li><br><br>                  <li class="li"><code class="ph codeph">empty</code>: not serving</li><br><br>                </ul> |

### UMTS cell tower

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Provides the UMTS cell tower observed during a scan. The UMTS tower block should be
        used for the following air-interfaces:

- WCDMA
- UMTS-FDD
- UMST-TDD
- UTRAN
- TD-SCDMA
- HSPA

**Syntax**

    <umts-tower><mcc>310</mcc><mnc>410</mnc><lac>12345</lac>                     <!-- Optional --><ci>1234567</ci><psc>501</psc>                       <!-- Optional --><rscp>-90</rscp>                     <!-- Optional -->
           <ec-no>-13</ec-no>                   <!-- Optional -->
           <age>100</age>                       <!-- Optional --><uarfcn>1400</uarfcn>                <!-- Optional --><serving>false</serving>             <!-- Optional -->
    </umts-tower>
    Copy to clipboard

**Parameters**

| Parameter | Values | Description |
| --- | --- | --- |
| `mcc` | – | Indicates the mobile country code. |
| `mnc` | – | Indicates the mobile network code. |
| `lac` | – | Indicates the local area code. |
| `ci` | – | UMTS UC\_ID (combination of RNDid and Cell\_ID) with a total of 28 bits as per<br>                3GPP Technical Specification 25.401.<br>Populating cell ID with 16 bits may result in<br>                  incorrect tower information. |
| `psc` | Range: 0 to 511 | (Optional) UMTS local cell ID. |
| `rscp` | – | (Optional) Signal strength of the UMTS cell, in dBm. |
| `ec-no` | Range: -24 to 1 | (Optional) Signal quality of the UMTS cell. |
| `age` | – | Relative age of the measurement in milliseconds or timestamp. |
| `uarfcn` | – | (Optional) UMTS channel number; 16-bit integer. |
| `serving` | <ul class="ul" id="UMTS_WCDMA_cell_tower__8__ul_xwh_zjj_pzb"><br>                  <li class="li">True</li><br><br>                  <li class="li">False</li><br><br>                  <li class="li">Empty (default)</li><br><br>                </ul> | (Optional) Indicates whether the client device is currently associated with the<br>                  cell tower.<br><ul class="ul" id="UMTS_WCDMA_cell_tower__8__ul_dvc_djj_pzb"><br>                  <li class="li"><code class="ph codeph">true</code>: connected/serving cell</li><br><br>                  <li class="li"><code class="ph codeph">false</code>: not a serving cell</li><br><br>                  <li class="li"><code class="ph codeph">empty</code>: not serving</li><br><br>                </ul> |

### LTE cell tower

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Provides the LTE cell tower observed during a scan. The LTE tower block should be used for the
        following air-interfaces:

- - LTE
    - E-UTRAN
    - LTE-TDD
    - LTE-FDD

**Syntax**

    <lte-tower><mcc>310</mcc><mnc>410</mnc><tac>12345</tac>                       <!-- Optional --><eucid>123456</eucid><pci>123</pci>                         <!-- Optional --><rsrp>-90</rsrp>                       <!-- Optional -->
           <rsrq>-29</rsrq>	                <!-- Optional -->
           <rssnr>11</rssnr>                      <!-- Optional -->
           <cqi>12</cqi>                          <!-- Optional --> 
           <timing-advance>66</timing-advance>    <!-- Optional --><age>100</age>                         <!-- Optional --><earfcn>1105</earfcn>                  <!-- Optional --><serving>false</serving>               <!-- Optional -->
    </lte-tower>
    Copy to clipboard

**Parameters**

| Parameter | Values | Description |
| --- | --- | --- |
| `mcc` | – | Indicates the mobile country code. |
| `mnc` | – | Indicates the mobile network code. |
| `tac` | – | (Optional) Indicates the tracking area code; 16‑bit integer. |
| `eucid` | – | LTE E-CGI; 28 bits. |
| `pci` | Range: 0 to 503 | (Optional) LTE local cell ID. |
| `rsrp` | – | (Optional) Signal strength received from the LTE cell tower, in dBm. |
| `rsrq` | Range: -34 to 3 | (Optional) Signal quality of the LTE cell. |
| `rssnr` | Range: -20 to 30 | (Optional) Signal-to-noise ratio of the LTE cell. |
| `cqi` | Range: 0 to 15 | (Optional) Channel quality indicator of the LTE cell. |
| `timing-advance` | <ul class="ul" id="LTE_cell_tower__9__ul_rwv_34j_pzb"><br>                  <li class="li">Default range: 0 to 1282 </li><br><br>                  <li class="li">Extended range: 0 to 7690</li><br><br>                </ul> | (Optional) Length of time a signal takes to reach the base station from a<br>                mobile phone, half of round-trip time (RTT).<br>The units are LTE 16xTs symbols as<br>                  specified in Section 4.2.3 of 3GPP Technical Specification 36.213 and 36.133<br>                  (LTE). |
| `age` | – | Relative age of the measurement in milliseconds or timestamp. |
| `earfcn` | – | (Optional) 3GPP channel number; 18-bit integer. |
| `serving` | <ul class="ul" id="LTE_cell_tower__9__ul_xwh_zjj_pzb"><br>                  <li class="li">True</li><br><br>                  <li class="li">False</li><br><br>                  <li class="li">Empty (default)</li><br><br>                </ul> | (Optional) Indicates whether the client device is currently associated with the<br>                  cell tower.<br><ul class="ul" id="LTE_cell_tower__9__ul_dvc_djj_pzb"><br>                  <li class="li"><code class="ph codeph">true</code>: connected/serving cell</li><br><br>                  <li class="li"><code class="ph codeph">false</code>: not a serving cell</li><br><br>                  <li class="li"><code class="ph codeph">empty</code>: not serving</li><br><br>                </ul> |

### NB-IoT cell tower

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Provides the NB-IoT cell tower (CAT-NB1, CAT-NB2) observed during a scan. The NB-IoT tower block
        should be used for low-power IoT networks based on NB-IoT air-interfaces.

**Syntax**

    <nbiot-tower><mcc>310</mcc><mnc>410</mnc><tac>12345</tac>                       <!-- Optional --><cid>123456</cid><ncid>123</ncid>                       <!-- Optional --><nrsrp>-90</nrsrp>                     <!-- Optional --><age>100</age>                         <!-- Optional --><earfcn>1105</earfcn>                  <!-- Optional --><serving>false</serving>               <!-- Optional -->
    </nbiot-tower>
    Copy to clipboard

**Parameters**

| Parameter | Values | Description |
| --- | --- | --- |
| `mcc` | – | Indicates the mobile country code. |
| `mnc` | – | Indicates the mobile network code. |
| `tac` | – | (Optional) Indicates the NB-IoT tracking area code; 16 bit |
| `cid` | – | Indicates the NB-IoT cell ID; 28 bit. |
| `ncid` | Range: 0 to 503 | (Optional) Indicates the NB-IoT local cell ID; equivalent to PCI in<br>                LTE. |
| `nrsrp` | – | (Optional) Signal strength received from the NB-IoT tower, in dBm. |
| `age` | – | Relative age of the measurement, in milliseconds or timestamp. |
| `earfcn` | – | (Optional) 3GPP channel number; 16‑bit integer. |
| `serving` | <ul class="ul" id="NB_IoT_cell_tower__11__ul_xwh_zjj_pzb"><br>                  <li class="li">True</li><br><br>                  <li class="li">False</li><br><br>                  <li class="li">Empty (default)</li><br><br>                </ul> | (Optional) Indicates whether the client device is currently associated with the<br>                  cell tower.<br><ul class="ul" id="NB_IoT_cell_tower__11__ul_dvc_djj_pzb"><br>                  <li class="li"><code class="ph codeph">true</code>: connected/serving cell</li><br><br>                  <li class="li"><code class="ph codeph">false</code>: not a serving cell</li><br><br>                  <li class="li"><code class="ph codeph">empty</code>: not serving</li><br><br>                </ul> |

### CDMA cell tower

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Provides the CDMA cell tower observed during a scan. The CDMA tower block should be used for the
        following air-interfaces:

- CDMA
- CDMA2000
- EV-DO
- IS-95
- 1xRTT

**Syntax**

    <cdma-tower><sid>510</sid><nid>89</nid><bsid>1500</bsid><pncode>31</pncode>                     <!-- Optional --><cdma-lat>41.123456</cdma-lat>  	  <!-- Optional --><cdma-lon>71.123456</cdma-lon>  	  <!-- Optional --><pilot-power>-90</pilot-power>  	  <!-- Optional --><age>100</age>                          <!-- Optional --><channel-number>1105</channel-number>   <!-- Optional --><band>1800</band>                       <!-- Optional --><serving>false</serving>                <!-- Optional -->
    </cdma-tower>
    Copy to clipboard

**Parameters**

| Parameter | Values | Description |
| --- | --- | --- |
| `sid` | – | Indicates the CDMA system identifier. |
| `nid` | – | Indicates the CDMA network identifier. |
| `bsid` | – | Indicates the CDMA base system identifier. |
| `pncode` | Range: 0 to 511 | (Optional) Indicates the CDMA local cell ID. |
| `cdma-lat` | – | (Optional) The latitude of the CDMA tower. |
| `cdma-lon` | – | (Optional) The longitude of the CDMA tower. |
| `pilot-power` | – | (Optional) Signal strength received from the CDMA tower, in dBm. |
| `age` | – | Relative age of the measurement, in milliseconds or timestamp. |
| `channel-number` | – | (Optional) CDMA channel number; 16-bit integer. |
| `band` | – | (Optional) CDMA band; string. |
| `serving` | <ul class="ul" id="CDMA_cell_tower__10__ul_xwh_zjj_pzb"><br>                  <li class="li">True</li><br><br>                  <li class="li">False</li><br><br>                  <li class="li">Empty (default)</li><br><br>                </ul> | (Optional) Indicates whether the client device is currently associated with the<br>                  cell tower.<br><ul class="ul" id="CDMA_cell_tower__10__ul_mnn_zhx_dcc"><br>                  <li class="li"><code class="ph codeph">true</code>: connected/serving cell</li><br><br>                  <li class="li"><code class="ph codeph">false</code>: not a serving cell</li><br><br>                  <li class="li"><code class="ph codeph">empty</code>: not serving</li><br><br>                </ul> |

### NR tower (5G, New Radio)

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Provides the 5G NR cell tower observed during a scan. The NR tower block should be used for cell
        towers in a 5G network.

**Syntax**

    <nr-tower>
        <mcc>600</mcc>
        <mnc>10</mnc>
        <tac>25187</tac>			     <!-- Optional -->
        <nci>6871947673</nci>
        <pci>3400</pci>			      <!-- Optional -->
        <csi-rsrp>-50</csi-rsrp>                 <!-- Optional -->
        <rsrq>-10</rsrq>                         <!-- Optional -->
        <sinr>-11</sinr>                         <!-- Optional -->
        <cqi>-15</cqi>                           <!-- Optional -->
        <signal-ref-type>csi</signal-ref-type>   <!-- Optional -->   
        <timing-advance>0</timing-advance>       <!-- Optional -->
        <age>0</age>				  <!-- Optional -->
        <nrarfcn>4000</nrarfcn>		     <!-- Optional -->
        <serving>true</serving>		     <!-- Optional -->
    </nr-tower>
    Copy to clipboard

**Parameters**

| Parameter | Values | Description |
| --- | --- | --- |
| `mcc` | – | Indicates the mobile country code. |
| `mnc` | – | Indicates the mobile network code. |
| `tac` | – | (Optional) Indicates 16‑bit NR tracking area code. |
| `nci` | – | Indicates the 5G local cell ID; 36 bits. |
| `pci` | Range: 0 to 1007 | (Optional) Indicates the 5G local cell ID; equivalent to PCI in LTE. |
| `csi-rsrp` | – | (Optional) Signal strength received from the NR tower, in dBm. |
| `rsrq` | Range: -20 to 3 | (Optional) Signal quality of the NR cell. |
| `sinr` | Range: -23 to 23 | (Optional) Signal-to-noise ratio of the NR cell. |
| `cqi` | – | (Optional) Indicator of NR cell channel quality. |
| `signal-ref-type` | [csi, ss] | (Optional) Type of signal reference. Applicable to 5G NR cells.<br>The values<br>                  are case-sensitive; enum with values [csi, ss].<br><br><br>If this value isn't<br>                  available, use the measurements provided. |
| `timing-advance` | Range: 0 to 3846 | (Optional) Length of time a signal takes to reach the base station from a<br>                mobile phone, half of round-trip time (RTT).<br>The units are Ts as specified in 3GPP<br>                  Technical Specification 28.212. |
| `age` | – | Relative age of the measurement, in milliseconds or timestamp. |
| `nrarfcn` | – | (Optional) 3GPP channel number; 24‑bit integer. |
| `serving` | <ul class="ul" id="NR_tower__5G__New_Radio__12__ul_xwh_zjj_pzb"><br>                  <li class="li">True</li><br><br>                  <li class="li">False</li><br><br>                  <li class="li">Empty (default)</li><br><br>                </ul> | (Optional) Indicates whether the client device is currently associated with the<br>                cell tower.<ul class="ul" id="NR_tower__5G__New_Radio__12__ul_dvc_djj_pzb"><br>                  <li class="li"><code class="ph codeph">true</code>: connected/serving cell</li><br><br>                  <li class="li"><code class="ph codeph">false</code>: not a serving cell</li><br><br>                  <li class="li"><code class="ph codeph">empty</code>: not serving</li><br><br>                </ul> |

### Neighbor cell reporting

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Neighbor cells improve cell-based accuracy and yield. The positioning service XML API supports			reporting of neighbor cells with partial identity.

The key requirements for neighbor cell reporting are as follows:
- At least one cell must be fully qualified, that is, it must include all nonoptional
            cell ID elements.
- Neighbor cells with partial identity should include at least local cell ID, such as						`pci` in LTE, and channel frequency.
- When the serving cell is 4G (LTE), for example, it's common to see neighbor cells from					4G/3G/2G.
- When available, neighbor cells can be reported with full identity.
- Neighbor cells can be reported using channel frequency from the serving cell and					intra-frequency flag. Such neighbor cells must be of the same cell type as					the serving cell to use this feature.

**Sample request**
The following example includes a fully qualified serving LTE cell			with all cell identifiers specified, an LTE neighbor cell, and a UMTS neighbor			cell:

    <lte-tower>                     <!-- Serving Cell -->            <mcc>310</mcc><mnc>410</mnc><tac>12345</tac>         <eucid>123456</eucid><pci>123</pci>                       <!-- Optional --><rsrp>-90</rsrp>                     <!-- Optional --><age>100</age>                       <!-- Optional --><earfcn>1105</earfcn>                <!-- Optional --><serving>true</serving>              <!-- Optional -->
    </lte-tower>
    <lte-tower>                     <!-- LTE Neighbor Cell -->            <pci>123</pci>                       <rsrp>-90</rsrp>                     <!-- Optional --><age>1100</age>                      <!-- Optional --><earfcn>1105</earfcn> 
    </lte-tower>
    <lte-tower>			<!-- LTE intra-freq Neighbor Cell --> 
        <pci>150</pci>
        <intra-freq>true</intra-freq>
    </lte-tower>
    <umts-tower>                    <!-- UMTS Neighbor Cell -->    <psc>501</psc>                      <rscp>-90</rscp>                     <!-- Optional --><age>500</age>                       <!-- Optional --><uarfcn>1400</uarfcn>                 
    </umts-tower>
    <umts-tower>			<!-- UMTS intra-freq Neighbor Cell --> 
        <psc>73</psc>
        <intra-freq>true</intra-freq>
    </umts-tower>
    <nbiot-tower>                   <!-- NBIOT Neighbor Cell -->    <ncid>501</ncid>                      <nrscp>-90</nrscp>                   <!-- Optional --><age>500</age>                       <!-- Optional --><earfcn>1400</uarfcn>                 
    </nbiot-tower>
    <nbiot-tower>			<!-- NBIOT intra-freq Neighbor Cell --> 
        <ncid>73</ncid>
        <intra-freq>true</intra-freq>
    </nbiot-tower>
    <nr-tower>                      <!-- NR (5G) Neighbor Cell -->    <pci>501</pci>                      <csi-rscp>-90</csi-rscp>             <!-- Optional --><age>500</age>                       <!-- Optional --><nrarfcn>1400</uarfcn>                 
    </nr-tower>
    <nr-tower>			<!-- NR intra-freq Neighbor Cell --> 
        <pci>73</pci>
        <intra-freq>true</intra-freq>
    </nr-tower>
    Copy to clipboard

## Scanned GPS locations

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Provides the GPS location observed during a scan.

**Syntax**

    <gps-location fix="1"><latitude>11.123456</latitude><longitude>11.123456</longitude><hpe>19</hpe><altitude>19.1</altitude>                       <!-- Optional --><vpe>2</vpe>                                    <!-- Optional --><speed>3.1</speed>                              <!-- Optional --><bearing>60</bearing>                           <!-- Optional --><age>1000</age><speed-uncertainty>0.1</speed-uncertainty>      <!-- Optional --><bearing-uncertainty>5</bearing-uncertainty>     <!-- Optional --><constellation>	<name>GPS</name>	<nsat>4</nsat></constellation><constellation>	<name>GLONASS</name>	<nsat>5</nsat></constellations><constellation>	<name>GALILEO</name>	<nsat>3</nsat></constellations>
    </gps-location>
    Copy to clipboard

**Parameters**

| Parameter | Parameter | Values | Description |
| --- | --- | --- | --- |
| `fix` | `fix` | <ul class="ul" id="GPS_locations_14__ul_y1g_pll_lyb_kelvinb_08-14-23-1806-11-928"><br>                  <li class="li">1 – GPS (default)</li><br><br>                  <li class="li">2 – DGPS</li><br><br>                  <li class="li">3 – PPS</li><br><br>                  <li class="li">4 – RTK</li><br><br>                  <li class="li">5 – FRTK</li><br><br>                  <li class="li">6 – Estimated</li><br><br>                  <li class="li">7 – MIM</li><br><br>                  <li class="li">8 – SM </li><br><br>                </ul> | Type of fix. |
| `latitude` | `latitude` | – | Calculated physical geographic location, expressed in decimal degrees using<br>                floating point values, using the WGS84 datum. |
| `longitude` | `longitude` | – | Calculated physical geographic location, expressed in decimal degrees using<br>                floating point values, using the WGS84 datum. |
| `hpe` | `hpe` | – | Horizontal Positioning Error.<br><br><br>                <br>Estimated horizontal error of the location, in meters, with 68% confidence.<br><br><br>                <br>Note: The default 68% confidence is supported in positioning<br>                  service v2.28 and later. For 95% confidence, set `hpe-confidence`<br>                  to 95 in the location request. |
| `altitude` | `altitude` | – | (Optional) Altitude above WGS84, in meters. |
| `vpe` | `vpe` | – | (Optional) Vertical Positioning Error.<br><br><br>                <br>Estimated vertical error of the altitude, in meters, with 68% confidence. |
| `speed` | `speed` | – | (Optional) Speed in m/s. |
| `bearing` | `bearing` | – | (Optional) Bearing, in degrees, from North in counterclockwise (+90 ° is<br>                West). |
| `age` | `age` | – | (Optional) Relative age of the measurement, in milliseconds or<br>                timestamp. |
| `speed-uncertainty` | `speed-uncertainty` | – | (Optional) Uncertainty of speed, in m/s with 68% confidence. |
| `bearing-uncertainty` | `bearing-uncertainty` | – | (Optional) Uncertainty of bearing, in degrees with 68% confidence. |
| `constellation` | `constellation` | – | List of constellation types that contributed to the fix result. |
|  | `name` | – | (Optional) Name of the constellation of GNSS satellites.<br><br><br>                <br>The possible examples are GPS, GLONASS, Galileo, BeiDou, QZSS, SBAS, and<br>                  UNKNOWN. |
|  | `nsat` | – | (Optional) Number of GNSS satellites, an integer value, used in a constellation<br>                to compute location. |
|  |  |  |  |

## Scanned BLE beacons

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

The scanned Bluetooth low energy (BLE) beacon group allows the input of observed BLE beacons.
      Multiple BLE beacons and multiple types of BLE beacons are allowed as input.

### IBeacon BLE

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Provides the iBeacon BLE beacon observed during a scan.

**Syntax**

    <ibeacon-ble>
      <uuid>123e4567-e89b-12d3-A456-426655440000</uuid>
      <major>1</major>
      <minor>2</minor>
      <company-id>666</company-id>	  <!-- Optional -->
      <mac>000C41A2DF52</mac>		<!-- Optional -->
      <rssi>-95</rssi>		       <!-- Optional -->
      <age>1000</age>			  <!-- Optional -->
      <tx-power>-50</tx-power>	      <!-- Optional -->
    </ibeacon-ble>
    Copy to clipboard

**Parameters**

| Parameter | Values | Description |
| --- | --- | --- |
| `uuid` | – | Universally Unique Identifier.<br><br><br>                <br>Comprises 32 hexadecimal digits, split into 5 groups, separated by hyphens;<br>                  16 bytes. |
| `major` | Range: 0 to 65535 | Additional identifying number assigned to iBeacon; unsigned integer. |
| `minor` | Range: 0 to 65535 | Additional identifying number assigned to iBeacon; unsigned integer. |
| `company-id` | – | (Optional) Identifier provided with iBeacon prefix; integer. |
| `mac` | – | (Optional) MAC address of the device. |
| `rssi` | – | (Optional) Signal strength received from the beacon, in dBm.<br>Note: If this value is provided,<br>                    `tx-power` must also be provided for higher<br>                accuracy. |
| `age` | – | (Optional) Relative age of the scan, in milliseconds or timestamp. |
| `tx-power` | Range: -128 to 127 | (Optional) Transmission power of the beacon; `rx_power` at 1 m<br>                from BLE beacon (1 byte); signed integer. |

### Eddystone BLE

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Provides the Eddystone BLE beacon observed during a scan.

Note: Only Eddystone BLE beacons with unique identifiers are
        supported.

**Syntax**

    <eddystone-uid-ble>  
      <namespace-id>123e4567e89b12d3A456</namespace-id>
      <instance-id>426655440000</instance-id>
      <mac>000C41A2DF52</mac>				<!-- Optional -->
      <rssi>-95</rssi>				       <!-- Optional -->
      <age>1000</age>				        <!-- Optional -->
      <ranging-data>-50</ranging-data>		     <!-- Optional -->
    </eddystone-uid-ble>
    Copy to clipboard

**Parameters**

| Parameter | Values | Description |
| --- | --- | --- |
| `namespace-id` | – | 10‑byte hexadecimal identifier; string. |
| `instance-id` | – | 6‑byte hexadecimal identifier; string. |
| `mac` | – | (Optional) MAC address of the device. |
| `rssi` | – | (Optional) Signal strength received from the beacon, in dBm.<br>Note: If this value is provided,<br>                    `tx-power` must also be provided for higher<br>                accuracy. |
| `age` | – | (Optional) Relative age of the scan, in milliseconds or timestamp. |
| `ranging-data` | – | (Optional) Configured maximum transmission power, in dBm, emitted by the beacon<br>                at 0 m (1 byte). |

### AltBeacon BLE

Source: [https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html](https://docs.qualcomm.com/doc/80-42216-1/topic/4_TPS_XML_API_request.html)

Provides the AltBeacon BLE beacon observed during a scan.

**Syntax**

    <altbeacon-ble>
      <uuid>123e4567-e89b-12d3-A456-426655440000</uuid>
      <major>1</major>
      <minor>2</minor>
      <company-id>666</company-id>			 <!-- Optional -->
      <mac>000C41A2DF52</mac>			      <!-- Optional -->
      <rssi>-95</rssi>				      <!-- Optional -->
      <age>1000</age>				       <!-- Optional -->
      <ref-rssi>-50</ref-rrsi>			     <!-- Optional -->
    <altbeacon-ble>
    Copy to clipboard

**Parameters**

| Parameter | Values | Description |
| --- | --- | --- |
| `uuid` | – | Universally Unique Identifier.<br><br><br>                <br>Comprises 32 hexadecimal digits, split into 5 groups, separated by hyphens;<br>                  16 bytes. |
| `major` | Range: 0 to 65535 | Additional identifying number assigned to AltBeacon; unsigned integer. |
| `minor` | Range: 0 to 65535 | Additional identifying number assigned to AltBeacon; unsigned integer. |
| `company-id` | – | (Optional) Identifier provided with AltBeacon prefix; integer. |
| `mac` | – | (Optional) MAC address of the device. |
| `rssi` | – | (Optional) Signal strength received from the beacon, in dBm.<br>Note: If this value is provided,<br>                    `ref-rssi` must also be provided for higher<br>                accuracy. |
| `age` | – | (Optional) Relative age of the scan, in milliseconds or timestamp. |
| `ref-rssi` | Range: -127 to 0 | (Optional) Average signal strength received at 1 m from the advertiser; signed<br>                1‑byte value. |

Last Published: Apr 01, 2026

[Previous Topic
TPS XML API headers and authentication](https://docs.qualcomm.com/bundle/publicresource/80-42216-1/topics/2_TPS_XML_API_implementation.md) [Next Topic
TPS XML API response](https://docs.qualcomm.com/bundle/publicresource/80-42216-1/topics/19_TPS_XML_API_response.md)