Skip to content

ADR_00020: API jako doplněk, ne integrační kanál (v případě synchronizacee dat)

Status: Proposed / Accepted
Date: 2025-12-30


Context

V systému jsou eventy hlavním integračním mechanismem pro sdílení dat.
API často zneužíváno jako „backup“ integrační kanál vede k:

  • synchronizačním chybám,
  • ztrátě jednoznačného ownershipu,
  • duplikaci logiky mezi službami.

Decision

API slouží jen pro

  • commandy (write-side)
  • dotazy na autoritativní stav (read-side)

API neslouží pro synchronizaci dat

  • Eventy jsou hlavním zdrojem propagace změn
  • Žádná duplikace zpracování přes API

Consequences

Pozitiva

  • Jasné rozdělení zodpovědností
  • Minimalizace chyb při integraci
  • Konzistence dat

Negativa

  • Nutnost disciplinovaného používání API
  • Omezená flexibilita pro rychlé ad-hoc integrace

Rationale

Rozhodnutí Důvod
API pro commandy a query Zachování jasného ownershipu dat
Eventy pro synchronizaci Zajištění konzistence a auditovatelnosti
Zákaz API jako integrační kanál Prevence nejednoznačných datových toků