REST API
Ingenes Studio QMS udostępnia REST API umożliwiające integrację z aplikacjami zewnętrznymi, systemami ERP/MES oraz automatyzację procesów.
Autoryzacja
API używa autoryzacji Bearer Token (JWT):
Authorization: Bearer <token>Uzyskanie tokenu
POST /api/auth/token
Content-Type: application/json
{
"username": "api_user@firma.pl",
"password": "hasło"
}Odpowiedź:
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"expiresIn": 3600,
"tokenType": "Bearer"
}Token jest ważny przez 1 godzinę. Po wygaśnięciu należy pobrać nowy.
Wskazówka: W środowisku produkcyjnym zalecamy tworzenie dedykowanego konta API z ograniczonymi uprawnieniami.
Wersjonowanie API
Aktualna wersja: v1
Wersja przekazywana w URL:
https://qms.firma.pl/api/v1/...Główne zasoby
Reklamacje (RKL)
Pobierz listę reklamacji
GET /api/v1/reklamacjeParametry query:
| Parametr | Typ | Opis |
|---|---|---|
page | int | Numer strony (domyślnie 1) |
pageSize | int | Rozmiar strony (max 100) |
status | string | Filtr statusu (Otwarta/Zamknięta) |
od | date | Data od (YYYY-MM-DD) |
do | date | Data do (YYYY-MM-DD) |
Pobierz reklamację
GET /api/v1/reklamacje/{id}Utwórz reklamację
POST /api/v1/reklamacje
Content-Type: application/json
{
"klientId": "guid-klienta",
"tytul": "Niezgodność wymiaru części X",
"opis": "Część nie spełnia wymagań rysunku technicznego",
"priorytet": "Wysoki",
"numerPartii": "BATCH-2024-001"
}Dokumenty (QMD)
GET /api/v1/dokumenty
GET /api/v1/dokumenty/{id}
GET /api/v1/dokumenty/{id}/plik # Pobierz plik dokumentu
POST /api/v1/dokumenty
PUT /api/v1/dokumenty/{id}Działania CAPA (KDK)
GET /api/v1/capa
GET /api/v1/capa/{id}
POST /api/v1/capa
PATCH /api/v1/capa/{id}/statusAudyty (AUD)
GET /api/v1/audyty
GET /api/v1/audyty/{id}
GET /api/v1/audyty/{id}/niezgodnosci
POST /api/v1/audytyFormat odpowiedzi
Wszystkie odpowiedzi zwracane są w formacie JSON.
Sukces (lista)
{
"data": [...],
"totalCount": 142,
"page": 1,
"pageSize": 20
}Sukces (pojedynczy obiekt)
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"sygnatura": "RKL/2024/0042",
"tytul": "Niezgodność wymiaru",
"status": "Otwarta",
"dataUtworzenia": "2024-05-15T10:30:00Z"
}Błąd
{
"error": "NotFound",
"message": "Reklamacja o podanym ID nie istnieje",
"statusCode": 404
}Kody HTTP
| Kod | Znaczenie |
|---|---|
| 200 | Sukces |
| 201 | Zasób utworzony |
| 400 | Błędne żądanie (walidacja) |
| 401 | Brak autoryzacji |
| 403 | Brak uprawnień |
| 404 | Zasób nie znaleziony |
| 429 | Zbyt wiele żądań (rate limiting) |
| 500 | Błąd serwera |
Rate Limiting
API jest ograniczone do 1000 żądań / godzinę per token. Nagłówki odpowiedzi:
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 987
X-RateLimit-Reset: 1716811200Webhooks
System obsługuje webhooks — powiadomienia HTTP wysyłane do Twojego systemu przy wystąpieniu zdarzeń:
- Nowa reklamacja
- Zmiana statusu CAPA
- Niezgodność z audytu
- Dokument zatwierdzony
Konfiguracja webhooków: Administracja → Integracje → Webhooks.
Swagger / OpenAPI
Interaktywna dokumentacja API dostępna pod adresem:
https://qms.firma.pl/api/swagger
