action here_post_locate { label: "Location query" description: "Request WGS-84 compliant geocoordinates for a location based on 2G/3G/4G cell and/or WLAN measurements." provider: here method: POST path: "/locate" encoding: json input: { type: "object" description: "Object wrapping the location data submitted in a request for a position. At least one of `gsm`, `wcdma`, `tdscdma`, `lte`, `cdma`, or `wlan` elements is required. Array elements should be unique within the request.\n" properties: { cdma: { type: "array" description: "CDMA cells (CDMA2000)" items: { type: "object" description: "CDMA measurement" required: ["sid", "nid", "bsid"] properties: { baseLat: { type: "number" description: "Base station latitude" } baseLng: { type: "number" description: "Base station longitude" } bsid: { type: "integer" description: "Base Station ID (CDMA BSID, BID)" } localId: { type: "object" description: "Local identification parameters of CDMA serving cell" required: ["pnOffset", "channel"] properties: { channel: { type: "integer" description: "CDMA channel frequency" } pnOffset: { type: "integer" description: "Pseudonoise offset. This field and CDMA channel frequency together allow for the locally unique identification of the cell.\n" } } additionalProperties: false } nid: { type: "integer" description: "Network ID (NID)" } nmr: { type: "array" description: "CDMA Network measurements" items: { type: "object" description: "CDMA Network measurement" required: ["pnOffset", "channel"] properties: { bsid: { type: "object" additionalProperties: true } channel: { type: "object" additionalProperties: true } pilotPower: { type: "integer" description: "Pilot Power (dBm). If Pilot Power is not available directly, it needs to be calculated from Total Power in the band and Pilot Strength with respect to the Total Power. Pilot power less than -142dBm should be mapped to -142. Pilot power greater than -49dBm should be mapped to -49.\n" } pnOffset: { type: "object" additionalProperties: true } } additionalProperties: false } } pilotPower: { type: "object" additionalProperties: true } rz: { type: "integer" description: "CDMA Registration Zone (RZ)" } sid: { type: "integer" description: "System ID (SID)" } } additionalProperties: false } } client: { type: "object" description: "Information about the client" required: ["manufacturer", "model", "name", "version"] properties: { firmware: { type: "string" description: "Device firmware version information" } manufacturer: { type: "string" description: "Manufacturer of the device (hardware)" } model: { type: "string" description: "Model of the device (hardware)" } name: { type: "string" description: "Name of the client software accessing the HERE API" } platform: { type: "string" description: "Software platform information of the device, for example operating system name and version." } version: { type: "string" format: "version" description: "Version of the client software in format X.Y.Z, where X [0..255] is a major, Y [0..255] is a minor, and Z [0..65535] is a build version number. Increase the version/build number for each release of the client." } } additionalProperties: false } gsm: { type: "array" description: "GSM cells (GERAN)" items: { type: "object" description: "GSM measurement" required: ["mcc", "mnc", "lac", "cid"] properties: { cid: { type: "integer" description: "Cell identifier (GERAN CID)" } lac: { type: "integer" description: "Location Area Code (LAC). Note, value 65534 is invalid." } localId: { type: "object" description: "Local identification parameters of GSM serving cell" required: ["bsic", "bcch"] properties: { bcch: { type: "integer" description: "Broadcast Control Channel (BCCH, synonymous to ARFCN = Absolute Radio Frequency Channel)" } bsic: { type: "integer" description: "Base Station Identity Code (BSIC, for instance, color code)" } } additionalProperties: false } mcc: { type: "integer" description: "Mobile Country Code (MCC). Note: 0xx is for test networks, 1xx and 8xx are not used\n" } mnc: { type: "integer" description: "Mobile Network Code (MNC)." } nmr: { type: "array" description: "GSM Network measurements" items: { type: "object" description: "GSM Network measurements.\n" required: ["bsic", "bcch"] properties: { bcch: { type: "object" additionalProperties: true } bsic: { type: "object" additionalProperties: true } globalIdentity: { description: "The `lac` and `cid` parameters of global ID for GSM neighbor measurement. They should be from the same PLMN (MCC+MNC) as the serving cell.\n" required: ["lac", "cid"] properties: { cid: { type: "object" additionalProperties: true } lac: { type: "object" additionalProperties: true } } additionalProperties: false } rxLevel: { type: "integer" description: "Received Signal power (dBm). Power less than -110dBm should be mapped to -110. Power greater than -25dBm should be mapped to -25.\n" } } additionalProperties: false } } rxLevel: { type: "object" additionalProperties: true } ta: { type: "integer" description: "Timing advance (TA). Expressed in the units of GSM bits equaling to 48/13 μs ~ 1107 meters." } } additionalProperties: false } } lte: { type: "array" description: "LTE cells (E-UTRA, 4G)" items: { description: "LTE measurement" required: ["mcc", "mnc", "cid"] properties: { cid: { type: "integer" description: "E-UTRA Cell Identifier (UC-Id), 28 bits (20 bits eNodeB and 8 bits Cell ID). MCC + MNC + CID uniquely identifies the LTE cell, TAC is optional.\n" } localId: { type: "object" description: "Local identification parameters of LTE serving cell" required: ["pci", "earfcn"] properties: { earfcn: { type: "integer" description: "Evolved Absolute Radio Frequency Channel (E-ARFCN)" } pci: { type: "integer" description: "Physical Cell Identity (PCI)" } } additionalProperties: false } mcc: { type: "object" additionalProperties: true } mnc: { type: "object" additionalProperties: true } nmr: { type: "array" description: "LTE Network measurements" items: { type: "object" description: "LTE Network measurement" required: ["pci", "earfcn"] properties: { cid: { type: "object" additionalProperties: true } earfcn: { type: "object" additionalProperties: true } pci: { type: "object" additionalProperties: true } rsrp: { type: "integer" description: "Reference Signal Received Power (RSRP) in dBm. Power less than -140dBm should be mapped to -140. Power greater than -44dBm should be mapped to -44.\n" } rsrq: { type: "number" description: "Reference Signal Received Quality (RSRQ) in dBm. Values less than -19.5dB should be mapped to -19.5, and values greater than -3dB should be mapped to -3dB.\n" } } additionalProperties: false } } rsrp: { type: "object" additionalProperties: true } rsrq: { type: "object" additionalProperties: true } ta: { type: "integer" description: "Timing Advance. Expressed in the units of 16*Ts (16 Basic time units) = 16/(15000*2048) seconds ~ 156meters. For reference see 3GPP TS 36.213 and 36.211.\n" } tac: { type: "integer" description: "Tracking Area Code (TAC)" } } additionalProperties: false } } tdscdma: { type: "array" description: "TD-SCDMA cells (UTRA-TDD, 3G UMTS TDD)" items: { type: "object" description: "TD-SCDMA measurement." required: ["mcc", "mnc", "cid"] properties: { cid: { type: "integer" description: "UTRAN Cell Identifier (UC-Id), 28 bits (12 bits RNC and 16 bits Cell ID). MCC + MNC + CID uniquely identifies the WCDMA cell, LAC is optional.\n" } lac: { type: "object" additionalProperties: true } localId: { type: "object" description: "Local identification parameters of TD-SCDMA serving cell" required: ["uarfcn", "cellParams"] properties: { cellParams: { type: "integer" description: "Cell Parameters ID (CDMA Spreading Code ID)" } uarfcn: { type: "integer" description: "UTRAN Absolute Radio Frequency (U-ARFCN)" } } additionalProperties: false } mcc: { type: "object" additionalProperties: true } mnc: { type: "object" additionalProperties: true } nmr: { type: "array" description: "TD-SCDMA Network measurements. Maximum of 8 distinct uarfcn frequencies." items: { type: "object" description: "TD-SCDMA Network measurement" required: ["uarfcn", "cellParams"] properties: { cellParams: { type: "object" additionalProperties: true } cid: { type: "object" additionalProperties: true } pathloss: { type: "integer" description: "UTRAN pathloss (dBm)" } rscp: { type: "integer" description: "Received Signal Code Power (RSCP) in dBm. Power less than -120dBm should be mapped to -120. Power greater than -25dBm should be mapped to -25.\n" } uarfcn: { type: "object" additionalProperties: true } } additionalProperties: false } } pathloss: { type: "object" additionalProperties: true } rscp: { type: "object" additionalProperties: true } ta: { type: "integer" description: "Timing advance (TA). Round-Trip distance presented in the units of 4*c/7.68e6 ~156 meters. That is, the scaling factor is 4 times the chip length at chip rate of 7.68 Mchips/s. Note that at chip rates 1.28 Mchips/s and 3.84 Mchips/s you need to scale according to chip length of 7.68 Mchips/s, that is, multiply by 6 or 2 if needed.\n" } } additionalProperties: false } } wcdma: { type: "array" description: "WCDMA cells (UTRA-FDD, 3G UMTS)" items: { type: "object" description: "WCDMA measurement" required: ["mcc", "mnc", "cid"] properties: { cid: { type: "object" additionalProperties: true } lac: { type: "object" additionalProperties: true } localId: { type: "object" description: "Local identification parameters of WCDMA serving cell" required: ["uarfcndl", "psc"] properties: { psc: { type: "integer" description: "Primary Scrambling Code (PSC, Primary CPICH, Primary Control Pilot Channel)." } uarfcndl: { type: "integer" description: "UTRAN Absolute Radio Frequency Downlink (UARFCN-DL)" } } additionalProperties: false } mcc: { type: "object" additionalProperties: true } mnc: { type: "object" additionalProperties: true } nmr: { type: "array" description: "WCDMA Network measurements. Maximum of 8 distinct uarfcndl frequencies." items: { type: "object" description: "WCDMA Network measurement" required: ["uarfcndl", "psc"] properties: { cid: { type: "object" additionalProperties: true } pathloss: { type: "object" additionalProperties: true } psc: { type: "object" additionalProperties: true } rscp: { type: "object" additionalProperties: true } uarfcndl: { type: "object" additionalProperties: true } } additionalProperties: false } } pathloss: { type: "object" additionalProperties: true } rscp: { type: "object" additionalProperties: true } } additionalProperties: false } } wlan: { type: "array" description: "WLAN access positions. For privacy reasons positioning based on a single WLAN AP is not possible; there has to be at least one other matching wlan or cell. Alternatively, you can allow fallbacks to less accurate single WLAN AP location estimates by using the setting `fallback=singleWifi`.\n" items: { type: "object" description: "WLAN measurement" required: ["mac"] properties: { mac: { type: "string" format: "regex" description: "The MAC address of the WLAN access point. MAC-48 address with colon (:) or hyphen (-) separators, upper or lower case hex digits. Note that if the SSID contains postfix \"_nomap\", the AP should not be used for positioning.\n" } rss: { type: "integer" description: "Received signal level (dBm) at the terminal" } } additionalProperties: false } } } additionalProperties: false } output: { type: "object" additionalProperties: true } }