Plattform API
Plattform und Laufzeitoberfläche
Gesundheitstests, Funktionsflags, Überwachung und Aufnahme von Sicherheitsberichten
Diese Endpunkte befinden sich außerhalb der Kernproduktcontroller und unterstützen Laufzeitzustand, Metriken, Client-Telemetrie, Flags für öffentliche Funktionen und Aufnahme von Sicherheitsberichten.
Überwiegend öffentliche StreckenGesundheit und BereitschaftPrometheus-MetrikenSicherheitsberichte
Quelle
- App-Controller:
backend-nestjs/src/app.controller.ts - Feature-Flags-Controller:
backend-nestjs/src/common/feature-flags.controller.ts - Überwachungscontroller:
backend-nestjs/src/monitoring/monitoring.controller.ts - Controller für Sicherheitsberichte:
backend-nestjs/src/common/security/security-reports.controller.ts - Honeypot-Controller:
backend-nestjs/src/api-security/controllers/honeypot.controller.ts - DTOs:
backend-nestjs/src/monitoring/dto/frontend-error-report.dto.ts,backend-nestjs/src/common/security/dto/security-report.dto.ts
Authentifizierung und Umfang
- Alle Endpunkte auf dieser Seite sind öffentlich.
- Diese Routen sind auf die Infrastruktur oder die Missbrauchserkennung ausgerichtet und nicht auf Endbenutzer-Funktions-APIs.
- Die Erstellung und Verwaltung des Benutzerschlüssels API ist in
Authentication APIdokumentiert.
Endpunktreferenz
Gesundheit und Verfügbarkeit
| Methode | Pfad | Zweck | Anfrage oder Anfrage | Auth | Quelle |
|---|---|---|---|---|---|
GET | /api/ | Antwort der Root-App. | Keine | Öffentlich | app.controller.ts |
GET | /api/health | Lebendigkeitssonde. | Keine | Öffentlich | app.controller.ts |
GET | /api/healthz | Legacy-Liveness-Alias. | Keine | Öffentlich | app.controller.ts |
GET | /api/ready | Bereitschaftsprüfung mit DB-Prüfung. | Keine | Öffentlich | app.controller.ts |
Flags und Überwachung
| Methode | Pfad | Zweck | Anfrage oder Anfrage | Auth | Quelle |
|---|---|---|---|---|---|
GET | /api/feature-flags | Gibt den aktuellen Feature-Flag-Snapshot zurück. | Keine | Öffentlich | common/feature-flags.controller.ts |
GET | /api/monitoring/metrics | Prometheus-Metriktext zurückgeben. | Keine | Öffentlich | monitoring/monitoring.controller.ts |
GET | /api/monitoring/metrics/json | Gibt JSON-Metriken zurück. | Keine | Öffentlich | monitoring/monitoring.controller.ts |
POST | /api/monitoring/frontend-errors | Frontend-Fehlerberichte aufnehmen. | Text: Frontend-Fehlernutzlast | Öffentlich | monitoring/monitoring.controller.ts |
Sicherheitsberichte und Honeypots
| Methode | Pfad | Zweck | Anfrage oder Anfrage | Auth | Quelle |
|---|---|---|---|---|---|
POST | /api/security/reports/ct | Erhalten Sie Zertifikatstransparenz- oder ähnliche Sicherheitsberichte. | Text: Nutzlast des Sicherheitsberichts | Öffentlich | common/security/security-reports.controller.ts |
POST | /api/security/reports/csp | Erhalten Sie Berichte über CSP-Verstöße. | Text: Nutzlast des Sicherheitsberichts | Öffentlich | common/security/security-reports.controller.ts |
GET | /api/security/honeypot/admin-login | Route zur Missbrauchserkennungsfalle. | Keine | Öffentlich | api-security/controllers/honeypot.controller.ts |
POST | /api/security/honeypot/submit | Übermittlungsroute für Missbrauchserkennungsfallen. | Keine | Öffentlich | api-security/controllers/honeypot.controller.ts |
Fordern Sie Formen an
Frontend-Fehlerberichte
FrontendErrorReportDto
source: erforderliche Zeichenfolge, maximal 180 Zeichenmessage: erforderliche Zeichenfolge, maximal 400 Zeichenstack: optionale Zeichenfolge, maximal 10.000 Zeichenurl: optionale Zeichenfolge, maximal 400 Zeichenseverity: optionalerror|warn|infodetails: optionales Objekt
Sicherheitsberichte
- Sicherheitsberichtsendpunkte akzeptieren die Nutzlastform
SecurityReportDtovonbackend-nestjs/src/common/security/dto/security-report.dto.ts. - Der Controller akzeptiert Nutzlasten im Stil
reportundcspReport.
Beispielanrufe
Bereitschaft lesen
curl "$PRIMECAL_API/api/ready"
Funktionsflags abrufen
curl "$PRIMECAL_API/api/feature-flags"
Senden Sie einen Frontend-Fehler
curl -X POST "$PRIMECAL_API/api/monitoring/frontend-errors" \
-H "Content-Type: application/json" \
-d '{
"source": "calendar-view",
"message": "Week view render failed",
"severity": "error",
"url": "https://app.primecal.eu/app"
}'
Hinweise zu Reaktion und Verhalten
POST /api/monitoring/frontend-errorsgibt202 Acceptedzurück.- Sicherheitsberichtsendpunkte geben
204 No Contentzurück. - Feature-Flags sind absichtlich öffentlich, damit das Frontend Abläufe vor der Anmeldung gestalten kann.
Best Practices
- Verwenden Sie
/api/healthund/api/readyfür Bereitstellungs- und Lastausgleichstests, nicht für kundenorientierte Dashboards. - Schützen Sie die Privatsphäre der Frontend-Fehlernutzlasten. Geben Sie keine Token, E-Mail-Adressen oder Rohgeheimnisse in
detailspreis. - Behandeln Sie Honeypot-Routen nur als interne Missbrauchssignale. Es handelt sich nicht um Produkt-APIs, die für Endbenutzer dokumentiert werden müssen.
- Trennen Sie Beobachtbarkeitsbedenken von der Produktlogik in Clients. Diese Routen sollten normalerweise in Plattform-SDK-Ebenen und nicht in Funktionsmodulen vorhanden sein.