ApexIQ Core API owns canonical player identity, immutable observations, provider fusion, history, diagnostics, and Autopilot scheduling. v0.3.0 adds a user-authorized data lane that does not require an ALS key.
direct_syncprovider ahead of compatibility providers.- Player-scoped Direct Sync device keys; the Core Admin key never needs to be copied to a companion device.
- Normalized snapshot ingestion with immutable D1 storage and normal metric high-water/anomaly handling.
- Conservative import of user-owned EA JSON exports.
- A field-level independence report at
GET /v1/admin/independence. - Optional Node.js Windows companion for process activity and user-supplied normalized snapshots.
- A third D1 migration for device, snapshot, and import audit records.
- Existing
legacy_workerandals_compatremain isolated fallbacks while Direct Sync coverage is validated.
v0.3.0 does not pretend a public, title-independent Apex statistics feed exists. Direct Sync only claims fields supplied by a user-authorized source.
- A running
r5apex.exeprocess is not treated as exact lobby or match state. - Selected legend is not treated as proof of a live match.
- Unknown EA export fields are not guessed.
- Exact console presence still requires authorized Xbox or approved PlayStation access.
GET /v1/health
POST /v1/players/register
POST /v1/players/resolve
GET /v1/players/:playerId
GET /v1/players/:playerId/presence
GET /v1/players/:playerId/stats
GET /v1/players/:playerId/history
GET /v1/players/:playerId/sessions
POST /v1/direct-sync/devices
POST /v1/direct-sync/ingest
POST /v1/direct-sync/import/ea
GET /v1/admin/independence
POST /v1/autopilot/enroll
GET /v1/autopilot/:playerId
POST /v1/autopilot/:playerId/run
GET /v1/admin/providers
POST /v1/admin/providers/:provider/probe
GET /v1/admin/autopilot
GET /v1/admin/autopilot/:playerId/timeline
direct_sync,xbox_official,playstation_partner,legacy_worker,als_compat
Autopilot attempts every compatible configured provider and fuses useful fields. Direct Sync can provide user-owned profile, rank, tracker, and import history. Authorized platform providers can provide presence. Compatibility providers remain removable fallbacks.
npx.cmd wrangler d1 migrations list DB --remote
npx.cmd wrangler d1 migrations apply DB --remote
npm.cmd run validate
npx.cmd wrangler deployPending migration:
0003_direct_sync.sql
No new Worker secret is required.
Use the canonical player ID and the existing Core Admin key:
$body = @{
playerId = "aiq_REPLACE"
label = "My Windows PC"
capabilities = @("pc_process", "normalized_snapshot", "ea_export")
} | ConvertTo-Json
$device = Invoke-RestMethod `
-Uri "$workerUrl/v1/direct-sync/devices" `
-Method Post `
-Headers $headers `
-ContentType "application/json" `
-Body $body
$device.dataThe returned apiKey is shown once. Save it in the local agent config and do
not commit it.
See agent/README.md. The agent uses Node.js 22+ and does
not inspect game memory or bypass anti-cheat.
GET /v1/admin/independence reports field-by-field coverage. Remove
legacy_worker and als_compat from PROVIDER_ORDER only after the required
profile/rank/presence fields are covered by Direct Sync or authorized platform
providers and have passed real-session comparison.