Integration / Data gateway

Connecting diagnostic software to a service platform.

A dedicated exchange layer for events, files and processing status, designed for different data types and independent clients.

HTTPSWEBSOCKETFILE TRANSFER

Architecture

Three parts of one workflow.

The diagram shows a proposed architecture, not an active public API.

KK Diag — workstation
Vehicle scans, ECU reads, service actions and report creation
CLIENT
HTTPS / event channel
KK Auto — data gateway
Session validation, data intake and processing queue
GATEWAY
Session ID / storage
Service platform
Vehicle history, reports and role-based access
APPLICATION

Different traffic, different purposes

REST / HTTPS
Session creation, metadata and small structured events.
WebSocket
A persistent channel for statuses and event updates during an active session.
File transfer
Reports, archives and large attachments transferred in chunks, separately from events.

Capacity and resilience

Designed for sustained data exchange.

Diagnostic events may arrive frequently, but they should not compete with report and bulk-file uploads. Intake and processing are therefore separated.

Actual throughput depends on the backend, network, storage and load testing. This static website does not provide or guarantee transfer capacity.
01

Queue and acknowledgements

Retry after connection loss, unique event IDs and duplicate protection.

02

Chunked file uploads

Large reports do not block small messages; interrupted uploads can resume.

03

Observability

Separate metrics for delivery, latency, queue size and processing failures.

For Developers

Message contract

Each event includes a type, timestamp, session ID and payload. The service may acknowledge receipt and process the event asynchronously.

The example below illustrates a proposed payload. It is not a live API endpoint.

Read the documentation ↗
Sample event · JSON
{
  "session_id": "DEMO-2418",
  "event_id": "evt-0042",
  "type": "ecu.scan.completed",
  "recorded_at": "2026-10-17T10:43:00Z",
  "payload": {
    "ecu_count": 18,
    "dtc_count": 2
  }
}