API-Referenz¶
calServer stellt zwei unabhaengige REST-APIs bereit:
| Version | Technologie | Authentifizierung | Format | Status |
|---|---|---|---|---|
| API v1 (Produktion) | Yii 1.1, PHP 7.4 | Header-basiert (X_REST_USERNAME/PASSWORD/API_KEY) | Eigenes JSON-Format | Stabil |
| API v2 (calServer 6.0) | Laravel 11, PHP 8.2+ | Bearer Token (Sanctum) | JSON:API-kompatibel | Beta / In Entwicklung |
API v1 (Produktion)¶
Die produktive API v1 verwendet codierte Feldnamen (I4201, C2301, ...) und Header-basierte Authentifizierung.
Endpunkte¶
| Endpunkt | Beschreibung |
|---|---|
/api/inventory |
Inventargegenstaende abrufen, anlegen, aendern und loeschen |
/api/calibrations |
Kalibriervorgaenge verwalten |
/api/customers |
Kundenstammdaten bearbeiten |
/api/standards |
Kalibrierstandards und Referenzwerte |
/api/reports |
Berichte generieren und herunterladen |
/api/documents |
Dokumente hochladen und abrufen |
/api/users |
Benutzerkonten verwalten |
/api/roles |
Rollen und Berechtigungen |
/api/groups |
Benutzergruppen |
/api/locations |
Standorte |
/api/repairs |
Wartungen und Reparaturen |
/api/results |
Kalibrierergebnisse |
/api/version |
Aktuelle Softwareversion |
API v2 (Beta — calServer 6.0)¶
In Entwicklung
API v2 befindet sich in aktiver Entwicklung fuer calServer 6.0 und ist noch nicht produktionsreif. Endpunkte, Antwortformate und Authentifizierung koennen sich noch aendern.
Die neue API v2 verwendet sprechende Feldnamen, Bearer-Token-Authentifizierung und JSON:API-kompatibles Antwortformat.
Endpunkte (Auswahl)¶
| Endpunkt | Beschreibung |
|---|---|
POST /api/v2/auth/token |
Bearer-Token erzeugen |
GET /api/v2/inventories |
Inventarliste (paginiert, filterbar) |
POST /api/v2/inventories |
Inventar anlegen |
GET /api/v2/categories |
Kategorien abrufen (Inventar, Kalibrierung, Reparatur, Buchung) |
POST /api/v2/categories |
Kategorie anlegen (mit Hierarchie) |
GET /api/v2/fields |
Verfuegbare Tabellen mit Felduebersicht |
GET /api/v2/fields/{table} |
Feldkonfigurationen einer Tabelle (mit Kategorie-/Status-Overrides) |
GET /api/v2/additional-fields |
Feld-Overrides pro Kategorie/Status |
GET /api/v2/customers |
Kundenstammdaten |
GET /api/v2/calibrations |
Kalibrierungen |
GET /api/v2/statuses |
Statusverwaltung |
Authentifizierung¶
Details zur Authentifizierung fuer beide API-Versionen finden Sie unter Authentifizierung.
Code-Beispiele¶
Praktische Beispiele fuer beide API-Versionen finden Sie auf der Seite Code-Beispiele.
Downloads¶
| Datei | Beschreibung |
|---|---|
| openapi-v2.yaml | OpenAPI 3.0 Spezifikation — API v2 (Laravel) |
| openapi.yaml | OpenAPI 3.0 Spezifikation — API v1 (Legacy) |
| postman-collection.json | Postman Collection mit Beispielen und Test-Scripts |