API documentation
Position endpoint for Android Raw GNSS apps
This first public documentation page defines the minimal request, response fields, and planned API key header for /api/v1/position.
Endpoint
Submit Android Raw GNSS measurement data and receive a cloud-enhanced position result. The endpoint is intended for controlled mobile app pilots and production integrations that have appropriate quota, QPS, retention, and deployment review.
POST http://api.nexapn.com/api/v1/position
Content-Type: application/json
X-Api-Key: <api_key>
Minimal request example
Field names are intentionally operational. This public API contract does not describe the proprietary correction engine, model parameters, training method, residual behavior, or correction strategy.
{
"session_id": "android-field-test-001",
"epoch": "live_tow",
"tow_ms": 365528000,
"approximate_position": {
"lat_deg": 22.3193,
"lon_deg": 114.1694,
"height_m": 18.2
},
"observations": [
{
"satellite": "G05",
"signal": "1C",
"pseudorange_m": 24213252.8692,
"doppler_hz": -1234.5,
"cnr_dbhz": 45.0
}
]
}
Android SDKs may expose phone-native measurement names, but the current public positioning API accepts this normalized server payload.
Response fields
The response returns position, receiver-clock estimate, quality indicators, and non-sensitive diagnostics suitable for app and operations dashboards.
| Field | Type | Description |
|---|---|---|
request_id |
string | Server request identifier for tracing. |
solver_status |
string | Solver result such as solved or no_solution. |
position.lat_deg |
number | Estimated latitude in WGS84 decimal degrees. |
position.lon_deg |
number | Estimated longitude in WGS84 decimal degrees. |
position.height_m |
number | Estimated ellipsoidal height in meters, when available. |
clock_bias_m |
number | Estimated receiver clock bias in meters. |
diagnostics.postfit_rms_m |
number | Non-sensitive fit quality metric for the solved epoch. |
diagnostics.used_satellites |
array | Per-satellite public diagnostics for the epoch; proprietary model internals are not exposed. |
{
"status": "accepted",
"solver_status": "solved",
"request_id": "pos_1779938239_090_77235",
"position": {
"lat_deg": 22.3193054,
"lon_deg": 114.1693821,
"height_m": 18.0
},
"clock_bias_m": 10.8,
"diagnostics": {
"postfit_rms_m": 0.18,
"used_satellites": []
}
}
API key header
API key authentication is reserved through the X-Api-Key header. Pilot keys should be scoped by app, request quota, service area, and retention policy.
X-Api-Key: nxpn_live_or_test_key
High-volume operations
NexaPN is expected to handle high request rates and large operational datasets in commercial deployments. Business and Enterprise plans can include high-QPS allocation, custom data retention, dedicated deployment review, and capacity planning. This static API document is an integration contract and should not be read as a production architecture description.
| Area | Production consideration |
|---|---|
| QPS | Peak and sustained request rates should be reviewed before field rollout, especially for fleet or high-frequency sampling workloads. |
| Retention | Large datasets require contracted retention windows, storage controls, and privacy governance. |
| Deployment | Enterprise deployments may use dedicated capacity and environment-specific operational controls. |
Confidential core boundary
Customers and employees should work with API contracts, SDKs, logs, dashboards, usage statistics, and support procedures. The core residual training workflow, model parameters, residual curves, clock correction strategy, and correction algorithms are confidential core assets. Public materials should refer to them only as the NexaPN proprietary cloud GNSS correction engine.