Endpoints

GET /api/sync-status All sims sync status
GET /api/sync-status?sim=AC Filter by sim
GET /api/sync-status/{sim} Single sim details

Sync Status Values

sync Control will be synced from RCO bindings
passthrough Control keeps user's original binding (not synced)
blocked Control completely ignored during export

Control Object Fields

sim_action_id Unique identifier for the sim action (e.g., THROTTLE, BRAKE)
ccid Control Command ID - null if control is not mapped
type Control type: axis, action, or other input types
mapped Boolean indicating if control has a valid mapping
sync_status Status of the control: sync, passthrough, or blocked
rule_id ID of the blocking rule if applicable
rule_reason Human-readable reason for the rule (e.g., "Content Manager extensions")
user_passthrough Boolean indicating if user explicitly set passthrough

Response Example

{
  "sims": [
    {
      "sim": "AC",
      "summary": { "total": 164, "sync": 65, "passthrough": 99, "blocked": 0, "unmapped": 94 },
      "controls": [
        { "sim_action_id": "THROTTLE", "ccid": "0301001", "type": "axis", "mapped": true, "sync_status": "sync" },
        { "sim_action_id": "__CM_PAUSE", "ccid": null, "type": "action", "mapped": false, "sync_status": "passthrough", "rule_id": "b6bcfd96", "rule_reason": "Content Manager extensions" }
      ]
    }
  ],
  "summary": { "total_controls": 672, "sync": 573, "passthrough": 99, "blocked": 0 }
}