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.