HERE Network Positioning API v2

HERE Network Positioning API v2 — 4 operation(s) across 4 path(s), OpenAPI 3.0.2 version 2.9.0, harvested verbatim from the HERE developer documentation. Positioning API accepts requests with radio network measurements and replies with corresponding location estimate. For more details and examples, see Developer's Guide. Cellular measurements are given in terms defined in 3GPP and 3GGP2 specifications, see the corresponding documentation at http://www.3gpp.org. Breaking changes from v1: - JSON fields altaccuracy , baselat , baselng , cellparams , pilotpower , pnoffset , powrx , rxlevel , have been deprecated and replaced with altAccuracy , baseLat , baseLng , cellParams , pilotPower , pnOffset , rss , rxLevel respectively. - Dependent parameters combined as a subobject. - CDMA, GSM, WCDMA, TD-SCDMA and LTE local identification parameters for serving cell moved under localId property. - G

Operations 4

POST /locate Location query #
GET /health Service health #
GET /version API version #
GET /openapi OpenAPI specification #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/here-network-positioning-v2"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

here-network-positioning-v2-openapi.yml Raw ↑
{"openapi":"3.0.2","info":{"title":"HERE Network Positioning API v2","version":"2.9.0","description":"Positioning API accepts requests with radio network measurements and replies with corresponding location estimate. For more details and examples, see [Developer's Guide](https://www.here.com/docs/bundle/network-positioning-api-developer-guide-v2/page/README.html). Cellular measurements are given in terms defined in 3GPP and 3GGP2 specifications, see the corresponding documentation at http://www.3gpp.org.\n\nBreaking changes from v1:\n  - JSON fields\n    `altaccuracy`, `baselat`, `baselng`, `cellparams`, `pilotpower`, `pnoffset`, `powrx`, `rxlevel`,\n    have been deprecated and replaced with\n    `altAccuracy`, `baseLat`, `baseLng`, `cellParams`, `pilotPower`, `pnOffset`, `rss`, `rxLevel`\n    respectively.\n  - Dependent parameters combined as a subobject.\n    - CDMA, GSM, WCDMA, TD-SCDMA and LTE local identification parameters for serving cell moved under `localId` property.\n    - GSM neighbor global ID: `lac` and `cid` for neighbor cell moved under `globalIdentity` property.\n  - The type of altitude (`alt`) and vertical accuracy (`altAccuracy`) properties in the location response has been changed to `number`.\n","contact":{},"termsOfService":"https://legal.here.com/en-gb/terms/here-platform","license":{"name":"HERE Documentation License","url":"https://www.here.com/en-gb/terms/documentation-license","x-copyright":"Copyright (C) 2020-2024 HERE Europe B.V."},"x-olp-service":{"name":"positioning","version":"v2"},"x-comment":"This API definition uses custom keywords for specifying rules not defined in OAS 3.0.x. They convey machine-readable information on additional requirements on the request message and are used for request validation by Positioning servers.\nFollowing custom keywords are used:\n  - x-comment - text\n      For comments, to be only visible in the specification, not in documentation.\n  - x-anyRequired - array of property names\n      Requires at least one of listed properties in the object.\n  - x-dependencies - object mapping from dependent properties to their dependencies\n      Same as 'dependencies' keyword in JSON Schema\n\nAlso, custom formats are used:\n  - uuid - UUID, supported by Ajv library\n  - version - requires version in X.Y.Z or X.Y format,\n      where X is [0..255], Y is [0..255] and Z is [0..65535].\n"},"servers":[{"url":"https://positioning.hereapi.com/v2","description":"Production Server"}],"externalDocs":{"description":"The Developer guide, Changelog, and Migration guide are available here.","url":"https://www.here.com/docs/category/network-positioning-api-v2"},"security":[{"ApiKey":[]},{"Bearer":[]}],"paths":{"/locate":{"post":{"description":"Request WGS-84 compliant geographical coordinates for a location based on 2G/3G/4G cell and/or WLAN measurements.","summary":"Location query","operationId":"HERE Network Positioning API v2 postLocate","tags":["Location"],"parameters":[{"$ref":"#/components/parameters/BillingTag"},{"$ref":"#/components/parameters/Confidence"},{"$ref":"#/components/parameters/ContentEncoding"},{"$ref":"#/components/parameters/Fallback"},{"$ref":"#/components/parameters/Desired"},{"$ref":"#/components/parameters/RequestID"},{"$ref":"#/components/parameters/Required"}],"requestBody":{"description":"Request body containing cell and/or WLAN measurement data. Cellular measurements are given in terms defined in 3GPP and 3GGP2 specifications, see the corresponding documentation at http://www.3gpp.org.\n","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Locate"}}}},"responses":{"200":{"$ref":"#/components/responses/SuccessLocate"},"400":{"description":"Bad request.\n\nThe request is malformed - the URL query parameters or the JSON POST body in the request is invalid.\nCheck the message in the response for additional troubleshooting information.\nThis response is also returned if the request contains only single WLAN measurement and no cellular measurements.\nIf position estimate with a single WLAN AP is expected, then the fallback `singleWifi` needs to be allowed.\n","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"title":"Bad Request","status":400,"code":"E606400","cause":"Validation error in body","action":"Please correct the request and retry","correlationId":"4199533b-6290-41db-8d79-edf4f4019a74","details":[{"title":"Violated rule: additionalProperties","message":"should NOT have additional properties","source":"body.gsm[0].nmr[3]"}]}}}},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"description":"Position not found.\n\nThe values provided in the request cannot produce any content for the response.\nThe location of the WLANs and cells in the request is unknown or\nthe locations of the radio measurements are so widely scattered that the location\ncannot be determined. Make sure that the network measurements are correct and\nconsistent. Try allowing fallbacks `area` or `any` for cell positioning and\n`singleWifi` for WLAN positioning.\n","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"title":"Position not found","status":404,"code":"E606404","cause":"Position cannot be found for given measurements","action":"Try with new measurements","correlationId":"4199533b-6290-41db-8d79-edf4f4019a74"}}}},"405":{"$ref":"#/components/responses/Error405Post"},"413":{"$ref":"#/components/responses/Error413"},"414":{"$ref":"#/components/responses/Error414"},"415":{"$ref":"#/components/responses/Error415"},"429":{"$ref":"#/components/responses/Error429"},"500":{"$ref":"#/components/responses/Error500"},"503":{"$ref":"#/components/responses/Error503"},"default":{"$ref":"#/components/responses/ErrorDefault"}}}},"/health":{"get":{"summary":"Service health","description":"Tests basic health of the service","operationId":"HERE Network Positioning API v2 getHealth","tags":["API Information"],"parameters":[{"$ref":"#/components/parameters/RequestID"}],"responses":{"200":{"description":"Health status","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiHealthStatus"}}}}}}},"/version":{"get":{"summary":"API version","description":"Retrieves API Specification version information","operationId":"HERE Network Positioning API v2 getApiVersion","tags":["API Information"],"parameters":[{"$ref":"#/components/parameters/RequestID"}],"responses":{"200":{"description":"Version of API","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiVersion"}}}}}}},"/openapi":{"get":{"summary":"OpenAPI specification","description":"Retrieves OpenAPI specification of this API","operationId":"HERE Network Positioning API v2 getOpenApi","tags":["API Information"],"parameters":[{"$ref":"#/components/parameters/RequestID"},{"$ref":"#/components/parameters/AcceptOpenApi"},{"$ref":"#/components/parameters/AcceptEncoding"}],"responses":{"200":{"description":"API specification file is returned","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"},"Content-Encoding":{"$ref":"#/components/headers/ContentEncoding"}},"content":{"application/json":{"schema":{"type":"object","description":"This specification as JSON object"},"example":{"openapi":"3.0.2","info":{"title":"HERE Network Positioning API v2"},"paths":{}}},"application/x-yaml":{"schema":{"type":"string","description":"This specification in YAML format"},"example":"openapi: 3.0.2\ninfo:\n  title: HERE Network Positioning API v2\npaths: {}\n"},"text/x-yaml":{"schema":{"type":"string","description":"This specification in YAML format"},"example":"openapi: 3.0.2\ninfo:\n  title: HERE Network Positioning API v2\npaths: {}\n"}}},"default":{"$ref":"#/components/responses/ErrorDefault"}}}}},"components":{"headers":{"ContentEncoding":{"description":"Indicates that the data in the body has been compressed.","schema":{"type":"string"},"example":"gzip"},"CorrelationID":{"description":"Auto-generated ID, which uniquely identifies the request.\nWhen contacting support with an inquiry regarding a specific request,\nprovide the value of this header which will help troubleshooting the issue.\n**Note:** its value is currently in UUID format, but this may be changed\nin future and relying upon this specific format is deprecated!\n","schema":{"type":"string"}},"RequestID":{"description":"Value of X-Request-ID header parameter supplied in the request.","schema":{"type":"string"}},"RetryAfter":{"description":"Number of seconds to wait before making a new request.","schema":{"type":"integer"}}},"parameters":{"AcceptEncoding":{"name":"Accept-Encoding","in":"header","description":"Indicates preferred content encodings in the response. The server uses content negotiation (see RFC 9110) to select the best option and informs the choice in the `Content-Encoding` response header. Supported codings are: 'gzip', 'deflate', 'br'. For any other value, or if this header is missing, the response will be uncompressed.\n","schema":{"type":"string"},"required":false,"example":"gzip;q=0.9, br;q=1"},"AcceptOpenApi":{"name":"Accept","description":"Indicates preferred media types for the response. The server uses content negotiation (see RFC 9110) to select the best option and informs the choice in the `Content-Type` response header. Supported media types are `application/json`, `application/x-yaml` and `text/x-yaml`. If this header is missing or specifies any other media type, the response will be in JSON format.\n","in":"header","required":false,"schema":{"type":"string"},"example":"application/x-yaml;q=0.9, application/json;q=0.8"},"BillingTag":{"name":"billingTag","description":"A list of up to six billing tags, separated by the + sign. This parameter provides a way to track your platform usage. For details, refer to the Cost Management Developer Guide section on [Billing Tags](https://www.here.com/docs/bundle/cost-management-developer-guide/page/topics/tutorial-billing-tags.html).\n","in":"query","schema":{"type":"string","minLength":4,"maxLength":101},"example":"ABCD+EFGH"},"Confidence":{"name":"confidence","description":"Confidence level in percent for the accuracy/uncertainty in the location estimate response. If not specified, the default is 68 (this corresponds to a 68% probability that the true position is within the accuracy/uncertainty radius of the location estimate: the higher the number, the greater the confidence level).\n","in":"query","required":false,"schema":{"type":"integer","minimum":50,"maximum":99,"default":68}},"ContentEncoding":{"name":"Content-Encoding","in":"header","description":"Indicates that the data in the body has been compressed. Supported codings are: 'gzip', 'deflate', 'br'.\n","schema":{"type":"string"},"required":false},"Desired":{"name":"desired","description":"Comma-separated list of additional data fields that the service should include in the response if data is available. The query parameter supports the value `altitude`.\n","in":"query","schema":{"type":"array","items":{"type":"string","enum":["altitude"]}},"style":"form","explode":false,"required":false},"Fallback":{"name":"fallback","in":"query","description":"Acceptable fallback options for cell and WLAN positioning. Values `area` and `any` apply to cell based positioning only in case none of the models of the cells serving the target device are currently available. Value `singleWifi` applies to WLAN based positioning in case only one of the provided WLAN APs can be used for position calculation. Both exploded and comma-separated forms are accepted.\n\nBy default, cell based positioning returns only cell level location estimates. In LTE, LTE Cat-M, and 5G NR, use the `fallback=area` setting if you permit location estimate to be based on a combination of cells of a single tower, or more precisely, on an eNodeB or gNodeB area. Also use this setting if you allow location estimate to be based on an area of a group of cells defined by the network (LAC, RNC, TAC, NID, or RZ). If you use the `fallback=any` setting, the service can use all aforementioned cell fallback methods and additionally fallback to the MNC, SID, or MCC level. If both `area` and `any` are specified, then `area` is ignored.\n\nFor privacy reasons, the precise positioning based on a single WLAN AP is not possible. You can use the `fallback=singleWifi` setting to allow less accurate positioning based on a single WLAN AP. In that case, the center location of the position estimate will be deviated and the reported accuracy radius will be larger. If you choose to make use of this parameter, it is recommended to use it in all requests, not only those which contain just single WLAN AP measurement. This will help to avoid error responses with status 400 in cases when all APs except one have either multicast MAC address (which are excluded from positioning) or are otherwise unusable for position calculation.\n","schema":{"type":"array","items":{"type":"string","enum":["any","area","singleWifi"]}},"explode":true,"style":"form","required":false,"examples":{"comma-separated":{"description":"comma-separated list of fallback options","value":"area,singleWifi"},"exploded":{"description":"exploded list of fallback options","value":["area","singleWifi"]}}},"RequestID":{"name":"X-Request-ID","description":"User-provided token that can be used to trace a request or a group of requests sent to the service. Can be any string, but UUID is recommended. It will be echoed in the response.\n","in":"header","required":false,"schema":{"type":"string"}},"Required":{"name":"required","description":"Comma-separated list of additional data fields that the service should include in the response. If the data is not available, the response contains an error message. The query parameter supports the value `altitude`.\n","in":"query","schema":{"type":"array","items":{"type":"string","enum":["altitude"]}},"style":"form","explode":false,"required":false}},"responses":{"Error401":{"description":"Authentication failed.\n\nCredentials (such as apiKey or access token) are missing or invalid.\n","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthError"},"example":{"error":"Unauthorized","error_description":"Token Validation Failure - invalid time in token"}}}},"Error403":{"description":"Access denied.\n\nProvided credentials do not authorize access.\n","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthError"},"example":{"error":"Forbidden","error_description":"These credentials do not authorize access"}}}},"Error405Post":{"description":"Method not allowed.\n\nCheck the `Allow` header of the response for the allowed methods for this path.\n","headers":{"Allow":{"description":"Allowed methods for this path","schema":{"type":"string"},"example":"POST"},"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"title":"Not supported","status":405,"code":"E606405","cause":"The method GET is not supported","action":"Send request using method specified in Allow header","correlationId":"4199533b-6290-41db-8d79-edf4f4019a74"}}}},"Error413":{"description":"Too large request.\n\nThe request body exceeds the maximum size limit.\nCheck the `cause` field of the response body for the maximum allowed size.\n","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"title":"Payload Too Large","status":413,"code":"E606413","cause":"The request body exceeds the maximum size limit of 30KB","action":"Check the request correctness and/or remove some measurements to reduce request size","correlationId":"4199533b-6290-41db-8d79-edf4f4019a74"}}}},"Error414":{"description":"Too long URI.\n\nThe URI (the path and query parameters) exceeds the limit.\nCheck the `cause` field of the response body for the maximum allowed length.\n","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"title":"URI Too Long","status":414,"code":"E606414","cause":"URI exceeds the maximum length of 500B","action":"Fix the URI (remove extra parameters?)","correlationId":"4199533b-6290-41db-8d79-edf4f4019a74"}}}},"Error415":{"description":"Invalid request content type. Check the `cause` field of the response body for the required content type.","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"title":"Unsupported Media Type","status":415,"code":"E606415","cause":"Content-Type should be application/json.","action":"Provide request body in application/json content type and/or correct Content-Type header","correlationId":"4199533b-6290-41db-8d79-edf4f4019a74"}}}},"Error429":{"description":"Too many requests in a given amount of time (rate limiting).","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"},"Retry-After":{"$ref":"#/components/headers/RetryAfter"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthError"},"example":{"error":"Too Many Requests","error_description":"Rate limit for this service has been reached"}}}},"Error500":{"description":"An unexpected server error has occurred, try again later.","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"title":"Internal Server Error","status":500,"code":"E606500","cause":"Something unexpected happened.","action":"System administrators have been notified about the problem. Please try again later.","correlationId":"4199533b-6290-41db-8d79-edf4f4019a74"}}}},"Error503":{"description":"Service is unavailable, try again later.","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"title":"Service Unavailable","status":503,"code":"E606503","cause":"The service is currently unavailable","action":"Please try again later","correlationId":"4199533b-6290-41db-8d79-edf4f4019a74"}}}},"ErrorDefault":{"description":"Other possible errors","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"title":"HTTP Version Not Supported","status":505,"code":"E606505","cause":"This HTTP version is not supported","action":"Please use HTTP/1.1","correlationId":"4199533b-6290-41db-8d79-edf4f4019a74"}}}},"SuccessLocate":{"description":"Request processed successfully and a WGS-84 compliant geocoordinate location estimate was included in the response.","headers":{"X-Request-ID":{"$ref":"#/components/headers/RequestID"},"X-Correlation-ID":{"$ref":"#/components/headers/CorrelationID"}},"content":{"application/json":{"schema":{"description":"Object wrapper for the response to a location request.","type":"object","required":["location"],"properties":{"location":{"$ref":"#/components/schemas/PositionLocate"}}}}}}},"schemas":{"ApiHealthStatus":{"type":"object","properties":{"status":{"description":"Health status of API","type":"string","example":"OK"}}},"ApiVersion":{"type":"object","required":["apiVersion"],"properties":{"apiVersion":{"description":"Version of API","type":"string","example":"2.0.3"},"serviceVersion":{"description":"Version of the Service","type":"string","example":"2.0.20"}}},"AuthError":{"description":"Error object reported in case of authentication or authorization errors.","type":"object","properties":{"error":{"type":"string","description":"Error message"},"error_description":{"type":"string","description":"Detailed information about the error"}},"example":{"error":"Unauthorized","error_description":"ApiKey invalid. ApiKey not found."}},"BaseLat":{"description":"Base station latitude","type":"number","minimum":-90,"maximum":90,"example":40.689249},"BaseLng":{"description":"Base station longitude","type":"number","minimum":-180,"maximum":180,"example":-74.0445},"Bcch":{"description":"Broadcast Control Channel (BCCH, synonymous to ARFCN = Absolute Radio Frequency Channel)","type":"integer","minimum":0,"maximum":1023,"example":82},"Bsic":{"description":"Base Station Identity Code (BSIC, for instance, color code)","type":"integer","minimum":0,"maximum":63,"example":6},"Bsid":{"description":"Base Station ID (CDMA BSID, BID)","type":"integer","minimum":0,"maximum":65535,"example":8584},"Cdma":{"description":"CDMA measurement","type":"object","required":["sid","nid","bsid"],"properties":{"sid":{"$ref":"#/components/schemas/Sid"},"nid":{"$ref":"#/components/schemas/Nid"},"bsid":{"$ref":"#/components/schemas/Bsid"},"rz":{"$ref":"#/components/schemas/RegistrationZone"},"localId":{"$ref":"#/components/schemas/CdmaLocalId"},"pilotPower":{"$ref":"#/components/schemas/PilotPower"},"baseLat":{"$ref":"#/components/schemas/BaseLat"},"baseLng":{"$ref":"#/components/schemas/BaseLng"},"nmr":{"$ref":"#/components/schemas/CdmaNmrArray"}},"additionalProperties":false,"example":{"sid":4162,"nid":10,"bsid":8583,"localId":{"channel":0,"pnOffset":247},"nmr":[{"channel":0,"pnOffset":357},{"channel":0,"pnOffset":366}]}},"CdmaLocalId":{"type":"object","required":["pnOffset","channel"],"description":"Local identification parameters of CDMA serving cell","properties":{"pnOffset":{"$ref":"#/components/schemas/PnOffset"},"channel":{"$ref":"#/components/schemas/Channel"}},"example":{"channel":0,"pnOffset":247},"additionalProperties":false},"CdmaNmr":{"description":"CDMA network measurement","type":"object","required":["pnOffset","channel"],"properties":{"pnOffset":{"$ref":"#/components/schemas/PnOffset"},"channel":{"$ref":"#/components/schemas/Channel"},"pilotPower":{"$ref":"#/components/schemas/PilotPower"},"bsid":{"$ref":"#/components/schemas/Bsid"}},"additionalProperties":false,"example":{"channel":0,"pnOffset":357}},"CdmaNmrArray":{"description":"CDMA network measurements","type":"array","minItems":1,"maxItems":32,"items":{"$ref":"#/components/schemas/CdmaNmr"},"example":[{"channel":0,"pnOffset":357},{"channel":0,"pnOffset":366}]},"CellParams":{"description":"Cell Parameters ID (CDMA Spreading Code ID)","type":"integer","minimum":0,"maximum":127,"example":86},"Channel":{"description":"CDMA channel frequency","type":"integer","minimum":0,"maximum":2047,"example":1},"ClientInfo":{"description":"Information about the client","type":"object","required":["manufacturer","model","name","version"],"properties":{"manufacturer":{"description":"Manufacturer of the device (hardware)","type":"string","minLength":2,"maxLength":50,"example":"Lemon"},"model":{"description":"Model of the device (hardware)","type":"string","minLength":1,"maxLength":50,"example":"Flagship X1"},"firmware":{"deprecated":true,"description":"This field is deprecated and not used.","type":"string","minLength":1,"maxLength":150},"platform":{"description":"Software platform information of the device, for example operating system name.","type":"string","minLength":3,"maxLength":50,"example":"android"},"platformVersion":{"description":"Software platform version in the format X.Y or 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. Note: if minor part of the version is not available, set it to 0.\n","allOf":[{"$ref":"#/components/schemas/Version"}]},"name":{"description":"Name of the client software accessing the HERE API","type":"string","minLength":3,"maxLength":50,"example":"FinderApp"},"version":{"description":"Version of the client software in format X.Y or 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. Note: if minor part of the version is not available, set it to 0.\n","allOf":[{"$ref":"#/components/schemas/Version"}]}},"additionalProperties":false,"example":{"manufacturer":"Lemon","model":"Flagship X1","name":"FinderApp","version":"2.0.31"}},"Earfcn":{"description":"Evolved Absolute Radio Frequency Channel Number (E-ARFCN)","type":"integer","minimum":0,"maximum":262143,"example":6300},"Error":{"description":"Object wrapper for the error response to a request.","type":"object","required":["title","status","code","cause","action","correlationId"],"properties":{"title":{"description":"Localized error string","type":"string","example":"Input data failed validation"},"status":{"description":"Equals HTTP status code","type":"integer","example":400},"code":{"description":"Error code","type":"string","example":"E606101"},"cause":{"description":"Reason for the error","type":"string","example":"The input data in question does not meet validation rules"},"action":{"description":"Actionable instructions for the user","type":"string"},"correlationId":{"description":"Copy from X-Correlation-ID header for logging","type":"string","format":"uuid","example":"4199533b-6290-41db-8d79-edf4f4019a74"},"details":{"type":"array","items":{"$ref":"#/components/schemas/ErrorDetail"}}},"example":{"title":"Input data failed validation","status":400,"code":"E606101","cause":"The input data in question does not meet validation rules","action":"Actionable instructions for the user","correlationId":"4199533b-6290-41db-8d79-edf4f4019a74","details":[{"title":"Invalid size value","source":"$.data.attributes[0].size","message":"Size must be between 3 and 64","messageTemplate":"validation.constraint.between","messagePlaceholders":{"field":"size","min":3,"max":64}}]}},"ErrorDetail":{"description":"Detail about an error","type":"object","properties":{"title":{"description":"Title for the detail","type":"string","example":"Invalid size value"},"source":{"description":"Source of the error, using JSONPath","type":"string","example":"$.data.attributes[0].size"},"message":{"description":"Localize message","type":"string","example":"Size must be between 3 and 64"},"messageTemplate":{"description":"Optional error template","type":"string","example":"validation.constraint.between"},"messagePlaceholders":{"description":"Optional placeholder for error details","type":"object","additionalProperties":{},"example":{"field":"size","min":3,"max":64}}}},"EutranCid":{"description":"E-UTRA Cell Identifier (UC-Id), 28 bits (20 bits eNodeB and 8 bits Cell ID). See 3GPP TS 36.331 (V18.2.0), Section 6.3.4 for details.\n","type":"integer","minimum":0,"maximum":268435455,"example":2898945},"Gsm":{"description":"GSM measurement","type":"object","required":["mcc","mnc","lac","cid"],"properties":{"mcc":{"$ref":"#/components/schemas/Mcc"},"mnc":{"$ref":"#/components/schemas/Mnc"},"lac":{"$ref":"#/components/schemas/Lac"},"cid":{"$ref":"#/components/schemas/GsmCid"},"localId":{"$ref":"#/components/schemas/GsmLocalId"},"ta":{"$ref":"#/components/schemas/GsmTimingAdvance"},"rxLevel":{"$ref":"#/components/schemas/RxLevel"},"nmr":{"$ref":"#/components/schemas/GsmNmrArray"}},"additionalProperties":false,"example":{"mcc":262,"mnc":1,"lac":5126,"cid":16504,"localId":{"bsic":5,"bcch":80},"nmr":[{"bsic":6,"bcch":82},{"bsic":7,"bcch":85},{"bsic":12,"bcch":93},{"bsic":13,"bcch":88},{"bsic":19,"bcch":88}]}},"GsmCid":{"description":"GSM Cell Identifier (GERAN CID). See 3GPP TS 23.003 (V18.6.0), Section 4.3.1 for details.","type":"integer","minimum":0,"maximum":65535,"example":16503},"GsmLocalId":{"type":"object","description":"Local identification parameters of GSM serving cell","required":["bsic","bcch"],"properties":{"bsic":{"$ref":"#/components/schemas/Bsic"},"bcch":{"$ref":"#/components/schemas/Bcch"}},"example":{"bsic":5,"bcch":80},"additionalProperties":false},"GsmNmr":{"description":"GSM network measurements.\n","type":"object","required":["bsic","bcch"],"properties":{"bsic":{"$ref":"#/components/schemas/Bsic"},"bcch":{"$ref":"#/components/schemas/Bcch"},"rxLevel":{"$ref":"#/components/schemas/RxLevel"},"globalIdentity":{"$ref":"#/components/schemas/GsmNmrGlobalId"}},"additionalProperties":false,"example":{"bsic":6,"bcch":82}},"GsmNmrArray":{"description":"GSM network measurements","type":"array","minItems":1,"maxItems":32,"items":{"$ref":"#/components/schemas/GsmNmr"},"example":[{"bsic":6,"bcch":82}]},"GsmNmrGlobalId":{"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","type":"object","required":["lac","cid"],"properties":{"lac":{"$ref":"#/components/schemas/Lac"},"cid":{"$ref":"#/components/schemas/GsmCid"}},"additionalProperties":false},"GsmTimingAdvance":{"description":"Timing advance (TA). Expressed in the units of GSM bits equaling to 48/13 μs ~ 1107 meters.","type":"integer","minimum":0,"maximum":63,"example":3},"Lac":{"description":"Location Area Code (LAC). Note, value 65534 is invalid.","type":"integer","minimum":1,"maximum":65535,"example":5126},"Latitude":{"description":"Latitude in WGS-84 format, decimal representation ranging from -90 to 90.","type":"number","minimum":-90,"maximum":90,"example":61.4706194},"Locate":{"type":"object","description":"Object wrapping the location data submitted in a request for a position. At least one of `gsm`, `wcdma`, `tdscdma`, `lte`, `lteCatM`, `nbIot`, `nr`, `cdma`, or `wlan` elements is required. Array elements should be unique within the request.\n","x-anyRequired":["gsm","wcdma","tdscdma","lte","lteCatM","nbIot","nr","cdma","wlan"],"properties":{"client":{"$ref":"#/components/schemas/ClientInfo"},"wlan":{"description":"WLAN access points. For privacy reasons positioning based on a single WLAN AP is not possible; there has to be at least one other matching WLAN AP or cell. Alternatively, you can allow fallbacks to less accurate single WLAN AP location estimates by using the setting `fallback=singleWifi`.\n","type":"array","minItems":1,"maxItems":256,"items":{"$ref":"#/components/schemas/WlanLocate"}},"gsm":{"description":"GSM cells (GERAN)","type":"array","minItems":1,"maxItems":16,"items":{"$ref":"#/components/schemas/Gsm"}},"wcdma":{"description":"WCDMA cells (UTRA-FDD, 3G UMTS)","type":"array","minItems":1,"maxItems":16,"items":{"$ref":"#/components/schemas/Wcdma"}},"tdscdma":{"description":"TD-SCDMA cells (UTRA-TDD, 3G UMTS TDD)","type":"array","minItems":1,"maxItems":16,"items":{"$ref":"#/components/schemas/Tdscdma"}},"lte":{"description":"LTE cells (E-UTRA, 4G), optionally with NR neighbors (5G NSA)","type":"array","minItems":1,"maxItems":16,"items":{"$ref":"#/components/schemas/Lte"}},"lteCatM":{"description":"LTE Cat-M cells","type":"array","minItems":1,"maxItems":16,"items":{"$ref":"#/components/schemas/LteCatM"}},"nbIot":{"description":"NB-IoT cells","type":"array","minItems":1,"maxItems":16,"items":{"$ref":"#/components/schemas/NbIot"}},"nr":{"description":"NR cells (5G)","type":"array","minItems":1,"maxItems":16,"items":{"$ref":"#/components/schemas/Nr"}},"cdma":{"description":"CDMA cells (CDMA2000)","type":"array","minItems":1,"maxItems":16,"items":{"$ref":"#/components/schemas/Cdma"}}},"additionalProperties":false,"example":{"client":{"manufacturer":"Lemon","model":"Flagship X1","name":"FinderApp","version":"2.0.31"},"lte":[{"mcc":244,"mnc":5,"cid":145925,"rsrp":-52,"rsrq":-7}],"wlan":[{"mac":"74:26:AC:1F:47:9F","rss":-47},{"mac":"74:26:AC:4C:5F:3E","rss":-59},{"mac":"7C:21:0E:A9:58:03","rss":-55}]}},

# --- truncated at 32 KB (52 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/here/refs/heads/main/openapi/here-network-positioning-v2-openapi.yml