Skip to content

Überblick

Die Aster Policy Engine ist ein produktionsreifer REST-Dienst zur Evaluierung von Geschäftsregeln, die in Aster CNL (Controlled Natural Language) geschrieben sind. Sie basiert auf Quarkus und ist für latenzarme, mandantenfähige Bereitstellungen konzipiert.

Basis-URL

https://policy.aster-lang.dev

Alle API-Pfade beginnen mit /api/v1/.

Unterstützte Protokolle

ProtokollEndpunkt-PräfixAnwendungsfall
REST/api/v1/Standard-Anfrage/Antwort-Evaluierung
GraphQL/graphqlFlexible Abfragen und Mutationen
WebSocket/ws/v1/evaluateStreaming-Evaluierung und Live-Richtlinienaktualisierungen

Anfrageanforderungen

Jede API-Anfrage muss die folgenden Anforderungen erfüllen.

Erforderliche Header

HeaderBeschreibung
Content-TypeMuss application/json für alle POST/PUT-Anfragen sein
X-Tenant-IdIdentifiziert den Mandantenkontext der Anfrage

Optionale Sicherheits-Header

Anfragen, die den Zustand ändern oder sensible Eingaben enthalten, sollten zusätzlich HMAC-Signatur-Header enthalten. Das vollständige Signierprotokoll finden Sie unter Authentifizierung.

HeaderBeschreibung
X-Aster-SignatureHMAC-SHA256-Signatur des Anfragekörpers
X-Aster-NonceZufälliger Nonce für die Signaturberechnung
X-Aster-TimestampUnix-Zeitstempel (Sekunden) zum Zeitpunkt der Signierung
X-User-RoleRollenanspruch für RBAC-Durchsetzung

API-Versionierung

Die aktuelle API-Version ist v1. Die Version ist im URL-Pfad kodiert (/api/v1/), nicht in einem Header oder Abfrageparameter. Breaking Changes werden unter einem neuen Versionspräfix (/api/v2/) eingeführt, mit einer Überlappungsperiode bevor die alte Version eingestellt wird.

Inhaltstyp

Alle Anfrage- und Antwortkörper verwenden application/json. Anfragen ohne Content-Type: application/json an POST- oder PUT-Endpunkten erhalten eine 400 Bad Request-Antwort.

Ratenbegrenzung

Die Ratenbegrenzung wird pro Mandant angewendet. Anfragen, die das Limit überschreiten, erhalten eine 429 Too Many Requests-Antwort mit einem Retry-After-Header, der angibt, wann das Fenster zurückgesetzt wird.

Was ist Aster CNL?

Aster CNL ist eine Teilmenge des Englischen (mit Lokalisierungsunterstützung für andere Sprachen wie vereinfachtes Chinesisch), die darauf ausgelegt ist, Geschäftsregeln eindeutig auszudrücken. Eine minimale Richtlinie sieht so aus:

Module pricing.

Rule discounted-price given amount as Number, tier as Text, produce Number:
  If tier is "gold":
    Return amount * 0.8.
  Return amount.

Richtlinien werden entweder als Quelltext eingereicht (spontan evaluiert) oder als gespeicherte, vorkompilierte und zwischengespeicherte Richtlinienobjekte. Details finden Sie in der API-Referenz.

Nächste Schritte

  • Authentifizierung — Mandanten-IDs, HMAC-Signierung und RBAC-Rollen konfigurieren
  • Schnellstart — Ihre erste Richtlinienevaluierung in unter fünf Minuten
  • Fehlerbehandlung — Fehlerantwortformate und häufige Fehlermodi verstehen

Veröffentlicht unter der MIT-Lizenz.