{"openapi":"3.1.0","info":{"title":"No DTC API","description":"Public OpenAPI 3.1 specification for No DTC Autonomous Diagnostic & System of Record (SOR) Workers. All execution calls require an active Tenant API Key passed in header 'X-API-Key: nodtc_live_...'.","version":"2.0.0"},"paths":{"/api/v2/devices/{device_id}/reset":{"post":{"tags":["Vehicle Worker"],"summary":"Reset Device Endpoint","description":"Performs a targeted, safe reset of an individual scan tool or workstation:\n- Verifies multi-tenant access (caller must belong to device's organization).\n- If device is in-use or running, aborts active tasks, closes WebRTC sessions, and frees technician key.\n- If device is available and warm, dispatches RESET_VEHICLE_SESSION to return to home launcher.\n- Purges orphaned Firestore session locks and restores device to available.\n- Dequeues any pending scan reservations in v2_scan_queue.","operationId":"reset_device_endpoint_api_v2_devices__device_id__reset_post","parameters":[{"name":"device_id","in":"path","required":true,"schema":{"type":"string","title":"Device Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/devices":{"get":{"tags":["Vehicle Worker"],"summary":"List Registered Devices","description":"Lists all registered scan tools and inventory PCs with live status, optionally filtered by entity_id.","operationId":"list_registered_devices_api_v2_devices_get","parameters":[{"name":"entity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entity Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sessions":{"post":{"tags":["Vehicle Worker"],"summary":"Create Session","description":"Creates/initializes or reuses a warm Worker Container session for a diagnostic tablet.","operationId":"create_session_api_v2_sessions_post","parameters":[{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSessionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Vehicle Worker"],"summary":"List Sessions","description":"Lists worker sessions. Defaults to currently ACTIVE sessions only. Pass include_closed=true for history.","operationId":"list_sessions_api_v2_sessions_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by status ('active', 'closed')","title":"Status"},"description":"Filter by status ('active', 'closed')"},{"name":"include_closed","in":"query","required":false,"schema":{"type":"boolean","description":"Whether to include closed sessions in listing (default: False)","default":false,"title":"Include Closed"},"description":"Whether to include closed sessions in listing (default: False)"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Max historical records to return when include_closed=True","default":20,"title":"Limit"},"description":"Max historical records to return when include_closed=True"},{"name":"entity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by entity/org ID","title":"Entity Id"},"description":"Filter by entity/org ID"},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sessions/{session_id}/abort":{"post":{"tags":["Vehicle Worker"],"summary":"Abort Session Task","description":"Aborts the active diagnostic task running on the session.\nKeeps the remote tablet connection warm and ready for the next vehicle.","operationId":"abort_session_task_api_v2_sessions__session_id__abort_post","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sessions/{session_id}":{"get":{"tags":["Vehicle Worker"],"summary":"Get Session Status","description":"Returns real-time status and health of an active diagnostic session.","operationId":"get_session_status_api_v2_sessions__session_id__get","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sessions/{session_id}/hitl_response":{"post":{"tags":["Vehicle Worker"],"summary":"Submit Hitl Response","description":"Submits technician response to an active Human-In-The-Loop action prompt.","operationId":"submit_hitl_response_api_v2_sessions__session_id__hitl_response_post","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HITLResponseRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sessions/{session_id}/reset_vehicle":{"post":{"tags":["Vehicle Worker"],"summary":"Reset Vehicle","description":"Commands worker to exit current vehicle menus and return to main launcher for next vehicle asynchronously.","operationId":"reset_vehicle_api_v2_sessions__session_id__reset_vehicle_post","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sessions/{session_id}/end":{"post":{"tags":["Vehicle Worker"],"summary":"End Session","description":"Gracefully closes tablet connection and releases container resources.","operationId":"end_session_api_v2_sessions__session_id__end_post","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sessions/{session_id}/tasks":{"post":{"tags":["Vehicle Worker"],"summary":"Submit Task","description":"Submits a discrete diagnostic task for immediate background execution on the connected tablet.\nReturns HTTP 202 immediately with tracking URLs to prevent browser/gateway timeouts.","operationId":"submit_task_api_v2_sessions__session_id__tasks_post","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubmitTaskRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sessions/{session_id}/tasks/{task_id}":{"get":{"tags":["Vehicle Worker"],"summary":"Get Task Result","description":"Retrieves result of a completed or in-progress diagnostic task.","operationId":"get_task_result_api_v2_sessions__session_id__tasks__task_id__get","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sessions/{session_id}/orchestrate":{"post":{"tags":["Vehicle Worker"],"summary":"Orchestrate Session","description":"Launches the autonomous Orchestrator AI Engine on the active session (Phase 2C).\nIf all remote streaming channels are busy, enqueues request into v2_scan_queue (Phase 3D).\nReturns HTTP 202 immediately.","operationId":"orchestrate_session_api_v2_sessions__session_id__orchestrate_post","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrchestrateSessionRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sessions/{session_id}/orchestration_status":{"get":{"tags":["Vehicle Worker"],"summary":"Get Orchestration Status","description":"Retrieves current orchestration status for a session, including queue position if queued.","operationId":"get_orchestration_status_api_v2_sessions__session_id__orchestration_status_get","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sessions/{session_id}/events":{"get":{"tags":["Vehicle Worker"],"summary":"Stream Session Events","description":"Subscribes to real-time session events via Server-Sent Events (SSE).","operationId":"stream_session_events_api_v2_sessions__session_id__events_get","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/reports/{report_id}":{"get":{"tags":["Vehicle Worker"],"summary":"Get Diagnostic Report","description":"Retrieves a single standardized diagnostic report by primary report ID.","operationId":"get_diagnostic_report_api_v2_reports__report_id__get","parameters":[{"name":"report_id","in":"path","required":true,"schema":{"type":"string","title":"Report Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/reports":{"get":{"tags":["Vehicle Worker"],"summary":"List Diagnostic Reports","description":"Lists standardized vehicle diagnostic reports with optional entity and VIN filtering.","operationId":"list_diagnostic_reports_api_v2_reports_get","parameters":[{"name":"entity_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter reports by owning yard entity","title":"Entity Id"},"description":"Filter reports by owning yard entity"},{"name":"vin","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter reports by 17-character VIN","title":"Vin"},"description":"Filter reports by 17-character VIN"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Max reports to return","default":20,"title":"Limit"},"description":"Max reports to return"},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sor/sweep-evidence":{"post":{"tags":["Vehicle Worker","System of Record (SOR) Worker"],"summary":"Trigger Sor Evidence Sweep","description":"Triggers the Phase 8D Daily Non-Destructive Powerlink GUI Evidence Attachment Sweep.\nQueries unattached evidence scans (v2_evidence_scans) and attaches them to existing Powerlink parts\nwithout creating vehicle or part records.","operationId":"trigger_sor_evidence_sweep_api_v2_sor_sweep_evidence_post","parameters":[{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/SweepEvidenceRequest"},{"type":"null"}],"title":"Req"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sor/ingest_vehicle":{"post":{"tags":["Vehicle Worker","System of Record (SOR) Worker"],"summary":"Ingest Vehicle To Sor","description":"Dispatches Worker 2 (SOR Orchestrator) to autonomously create or match\nthe vehicle record in Hollander Powerlink 3.7 using the report's VIN.","operationId":"ingest_vehicle_to_sor_api_v2_sor_ingest_vehicle_post","parameters":[{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IngestVehicleRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v2/sor/reports/{report_id}/inventory_status":{"get":{"tags":["Vehicle Worker","System of Record (SOR) Worker"],"summary":"Get Report Inventory Status","description":"Retrieves current SOR inventory ingestion status and stock number for a report.","operationId":"get_report_inventory_status_api_v2_sor_reports__report_id__inventory_status_get","parameters":[{"name":"report_id","in":"path","required":true,"schema":{"type":"string","title":"Report Id"}},{"name":"token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}},{"name":"X-NoDTC-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Nodtc-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"CreateSessionRequest":{"properties":{"device_id":{"type":"string","title":"Device Id","description":"Target registered Getscreen Device ID (e.g. 9-digit scanner identifier)"},"location_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Location Id","description":"Assigned physical yard location (e.g. 'Dallas', 'Fort Worth')"},"entity_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entity Id","description":"Assigned multi-tenant yard entity ID"},"device_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Device Type","description":"Optional explicit device type ('scan_tool' or 'inventory_pc')"}},"type":"object","required":["device_id"],"title":"CreateSessionRequest"},"HITLResponseRequest":{"properties":{"action":{"type":"string","title":"Action","description":"Action taken ('DONE', 'CANCEL', or selected option)","default":"DONE"},"choice":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Choice","description":"Disambiguation choice if multi-choice prompt"},"text_input":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text Input","description":"Manual text entered by technician"}},"type":"object","title":"HITLResponseRequest"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"IngestVehicleRequest":{"properties":{"report_id":{"type":"string","title":"Report Id","description":"Diagnostic report ID to ingest into SOR"},"workstation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Workstation Id","description":"Optional target inventory workstation ID"},"headless":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Headless","description":"Whether to run Playwright headlessly","default":true}},"type":"object","required":["report_id"],"title":"IngestVehicleRequest"},"OrchestrateSessionRequest":{"properties":{"demo_mode":{"type":"boolean","title":"Demo Mode","description":"Simulated demo profile","default":false},"work_items":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Work Items","description":"Optional target work items list"}},"type":"object","title":"OrchestrateSessionRequest"},"SubmitTaskRequest":{"properties":{"task_type":{"type":"string","title":"Task Type","description":"Diagnostic task (e.g. 'get_vin', 'get_system_dtcs', 'get_all_systems_part_identifiers')"},"system_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"System Name","description":"Target ECU/circuit (e.g. 'ECM', 'TCM', 'ABS')"},"metrics":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Metrics","description":"Live data metric names to read"},"demo_mode":{"type":"boolean","title":"Demo Mode","description":"Simulated demo profile","default":false},"custom_instruction":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Custom Instruction","description":"Optional custom instruction"}},"type":"object","required":["task_type"],"title":"SubmitTaskRequest"},"SweepEvidenceRequest":{"properties":{"entity_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entity Id","description":"Entity ID to sweep evidence for"},"ignore_schedule":{"type":"boolean","title":"Ignore Schedule","description":"Whether to bypass off-hours schedule window","default":true}},"type":"object","title":"SweepEvidenceRequest"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}},"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-API-Key","description":"Tenant API Key (nodtc_live_...)"}}},"security":[{"ApiKeyAuth":[]}]}