Skip to main content

NavCore API Endpoints

Positioning

POST /position

Get authenticated quantum-secured position.

Request:

{
"authenticate": true,
"spoofing_check": true,
"generate_evidence": true,
"pqc_algorithm": "ML-DSA-65",
"require_multi_constellation": true
}
ParameterTypeRequiredDefaultDescription
authenticateboolean-trueInclude PQC signature
spoofing_checkboolean-trueRun spoofing detection
generate_evidenceboolean-falseCreate evidence bundle
pqc_algorithmstring-ML-DSA-65Signature algorithm
require_multi_constellationboolean-falseRequire 2+ constellations

Response:

{
"success": true,
"data": {
"position": {
"latitude": 59.436962,
"longitude": 24.753574,
"altitude": 45.2,
"accuracy_m": 0.8,
"horizontal_accuracy_m": 0.6,
"vertical_accuracy_m": 1.2,
"speed_mps": 0.0,
"heading_deg": null,
"timestamp": "2026-02-06T12:00:00.000000Z"
},
"integrity": {
"score": 0.985,
"spoofing_detected": false,
"holdover_active": false,
"satellites_used": 12,
"constellations": ["GPS", "Galileo"]
},
"evidence_bundle_id": "nav_ev_abc123",
"signature": {
"algorithm": "ML-DSA-65",
"public_key_id": "pk_xyz789",
"value": "base64:..."
}
}
}

GET /position/latest

Get cached latest position (faster, for high-frequency apps).

Response:

{
"success": true,
"data": {
"position": {
"latitude": 59.436962,
"longitude": 24.753574,
"altitude": 45.2,
"timestamp": "2026-02-06T12:00:00.000000Z"
},
"age_ms": 150
}
}

Timing

POST /timing

Get quantum-authenticated precise time.

Request:

{
"fallback_to_holdover": true,
"include_bounds": true
}
ParameterTypeRequiredDefaultDescription
fallback_to_holdoverboolean-trueUse holdover if GPS unavailable
include_boundsboolean-falseInclude accuracy bounds

Response:

{
"success": true,
"data": {
"utc": "2026-02-06T12:00:00.000000000Z",
"tai": "2026-02-06T12:00:37.000000000Z",
"gps_week": 2352,
"gps_tow": 388800.000000,
"source": "gps",
"accuracy_ns": 50,
"leap_seconds": 37,
"bounds": {
"lower_ns": -50,
"upper_ns": 50,
"confidence": 0.99
}
}
}

GET /timing/status

Get timing system status.

Response:

{
"success": true,
"data": {
"status": "operational",
"source": "gps",
"last_sync": "2026-02-06T12:00:00Z",
"accuracy_ns": 50,
"holdover_ready": true,
"holdover_calibration_age_h": 12
}
}

POST /timing/sync

Force timing resynchronization.

Response:

{
"success": true,
"data": {
"sync_status": "completed",
"sync_time_ms": 250,
"new_accuracy_ns": 25
}
}

Spoofing Detection

GET /spoofing/status

Get current spoofing detection status.

Response:

{
"success": true,
"data": {
"status": "clear",
"confidence": 0.99,
"last_check": "2026-02-06T12:00:00Z",
"checks_performed": [
{"type": "doppler_consistency", "result": "pass", "score": 0.99},
{"type": "multi_constellation", "result": "pass", "score": 0.98},
{"type": "carrier_phase", "result": "pass", "score": 0.99},
{"type": "clock_consistency", "result": "pass", "score": 1.0},
{"type": "ml_anomaly", "result": "pass", "score": 0.97}
],
"detection_latency_ms": 45
}
}

POST /spoofing/analyze

Deep analysis of current GNSS signals.

Request:

{
"depth": "full",
"include_raw_metrics": true
}

Response:

{
"success": true,
"data": {
"status": "warning",
"confidence": 0.85,
"threat_type": "potential_meaconing",
"analysis": {
"doppler_residuals": {
"status": "warning",
"mean_residual_hz": 0.15,
"threshold_hz": 0.1
},
"constellation_agreement": {
"status": "pass",
"gps_galileo_delta_m": 0.5
},
"signal_power": {
"status": "pass",
"measured_dbm": -128,
"expected_dbm": -130
}
},
"recommended_action": "increase_monitoring",
"raw_metrics": { ... }
}
}

GET /spoofing/history

Get spoofing detection history.

Query Parameters:

ParameterTypeDefaultDescription
fromISO datetime-24hStart time
toISO datetimenowEnd time
limitinteger100Max results

Response:

{
"success": true,
"data": {
"events": [
{
"timestamp": "2026-02-06T08:30:00Z",
"status": "alert",
"threat_type": "gradual_offset",
"duration_s": 120,
"resolved": true
}
],
"summary": {
"total_alerts": 1,
"total_warnings": 3,
"uptime_percent": 99.99
}
}
}

Holdover

GET /holdover/status

Get QRNG holdover status.

Response:

{
"success": true,
"data": {
"active": false,
"ready": true,
"last_calibration": "2026-02-06T00:00:00Z",
"estimated_drift_ns_per_hour": 45,
"max_holdover_duration_h": 24,
"current_holdover_age_s": 0
}
}

POST /holdover/calibrate

Calibrate holdover system.

Response:

{
"success": true,
"data": {
"calibration_status": "completed",
"calibration_time_s": 60,
"new_drift_estimate_ns_per_hour": 42,
"improvement_percent": 6.7
}
}

GET /holdover/metrics

Get holdover performance metrics.

Response:

{
"success": true,
"data": {
"qrng_entropy_quality": 0.998,
"drift_model_accuracy": 0.95,
"last_24h_holdover_events": 2,
"total_holdover_time_s": 180,
"max_drift_observed_ns": 85
}
}

Evidence

POST /evidence

Generate position evidence bundle.

Request:

{
"position_id": "pos_xyz789",
"include_timing": true,
"include_integrity": true,
"format": "json"
}

Response:

{
"success": true,
"data": {
"bundle_id": "nav_ev_abc123",
"version": "3.0",
"position": { ... },
"timing": { ... },
"integrity": { ... },
"signature": {
"algorithm": "ML-DSA-65",
"value": "base64:..."
}
}
}

GET /evidence/{bundle_id}

Retrieve evidence bundle.


POST /evidence/verify

Verify evidence bundle integrity.

Request:

{
"bundle": { ... }
}

Response:

{
"success": true,
"data": {
"valid": true,
"checks": {
"signature": "valid",
"timestamp": "valid",
"position_hash": "valid",
"timing_hash": "valid"
}
}
}

Integrity

GET /integrity

Get current integrity metrics.

Response:

{
"success": true,
"data": {
"overall_score": 0.985,
"position_integrity": 0.99,
"timing_integrity": 0.98,
"spoofing_integrity": 0.99,
"satellites_visible": 18,
"satellites_used": 12,
"pdop": 1.2,
"hdop": 0.8,
"vdop": 1.0
}
}

GET /integrity/constellation

Get per-constellation integrity.

Response:

{
"success": true,
"data": {
"constellations": {
"GPS": {
"satellites_visible": 8,
"satellites_used": 6,
"integrity": 0.99,
"cn0_avg": 42.5
},
"Galileo": {
"satellites_visible": 6,
"satellites_used": 4,
"integrity": 0.98,
"cn0_avg": 41.2
},
"GLONASS": {
"satellites_visible": 4,
"satellites_used": 2,
"integrity": 0.97,
"cn0_avg": 40.0
}
}
}
}

© 2024-2026 SoftQuantus Innovative OÜ