Tryb żądaniowy (REST)
Tryb żądaniowy to klasyczny, synchroniczny model request/response: integrator wysyła żądanie do API.ERP, API.ERP odpytuje właściwy system dziedzinowy (księgowość, magazyn, kadry, majątek) i zwraca odpowiedź w tej samej sesji HTTP.
Charakterystyka
- Jeden endpoint na zasób — kolekcja
/v1/<zasób>z ustandaryzowanym kontraktem (Kontrakty API), niezależnym od tego, który system dziedzinowy faktycznie obsługuje dany zasób; zasób wskazuje parametridentifier=system|value, a profil —profile. - Zdefiniowany schemat żądania — parametry filtrowania/wyszukiwania (karta
GET /v1/metadata,rest[].resource[].searchParam[]— obiekty{ "name", "type" }) i treść żądania (dla operacji zapisu) są opisane schematami JSON profili. - Określony zakres odpowiedzi — odpowiedź to zawsze zasób kanoniczny (lub kolekcja zasobów), niezależnie od wewnętrznego kształtu danych w systemie źródłowym.
Przepływ informacji
flowchart LR
I["Aplikacja integratora"]:::integrator -- "Żądanie" --> A["API.ERP"]:::api
A -- "Odpowiedź" --> I
A <--> D1["FK"]:::domain
A <--> D2["WMS"]:::domain
A <--> D3["HR"]:::domain
classDef integrator fill:#8BC34A,stroke:#558B2F,color:#000
classDef api fill:#03A9F4,stroke:#0277BD,color:#000
classDef domain fill:#FFA000,stroke:#E65100,color:#000
Sekwencja wywołań w ramach jednej sesji HTTP:
sequenceDiagram
participant I as Aplikacja integratora
participant A as API.ERP
participant D as Systemy dziedzinowe (księgowość / magazyn / kadry / majątek)
I->>A: Żądanie (np. GET /v1/parties?identifier=system|value)
A->>D: Zapytanie o dane źródłowe
D-->>A: Dane źródłowe
A-->>I: Odpowiedź (zasób kanoniczny)
API.ERP nie przechowuje własnej kopii danych — każde żądanie jest tłumaczone na zapytanie do systemu dziedzinowego w czasie rzeczywistym, a wynik konwertowany na model kanoniczny przed zwróceniem integratorowi.
Kiedy używać
Tryb żądaniowy pasuje do integracji, gdzie integrator sam decyduje, kiedy i jakich danych potrzebuje — np. wprowadzanie zmian w danych (operacje zapisu), obsługa umów/kontraktów, deklaracji, produktów abonamentowych — wszędzie tam, gdzie odpowiedź musi być natychmiastowa i jednorazowa, a nie ciągły strumień zmian (do tego służy tryb rozgłoszeniowy).
Odniesienia
- api-contracts.md — pełna lista zasobów i tras
- Konwencje techniczne
- Tryb rozgłoszeniowy, Tryb raportowy