Skip to content

API-Referenz

CyberOrigen bietet eine umfassende REST-API zur Integration mit Ihren bestehenden Tools und Workflows.

Basis-URL

https://backend.cyberorigen.com/api/v1

Alle API-Anfragen werden an diese Basis-URL gesendet.

Interaktive Dokumentation

Nach der Authentifizierung greifen Sie auf die interaktive API-Dokumentation zu unter:

  • Swagger UI: /docs
  • ReDoc: /redoc
  • OpenAPI Spec: /openapi.json

Authentifizierung

Alle API-Anfragen erfordern Authentifizierung via JWT Bearer Token.

Token erhalten

bash
curl -X POST https://api.yourdomain.com/api/v1/auth/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "[email protected]&password=yourpassword"

Antwort:

json
{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "token_type": "bearer",
  "expires_in": 3600
}

Token verwenden

bash
curl https://api.yourdomain.com/api/v1/scans \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Ratenbegrenzung

Ratenlimits variieren nach Abonnementstufe:

PlanAnfragen/StundeAnfragen/Tag
Startup1001.000
Professional5005.000
EnterpriseIndividuellIndividuell

Bei Ueberschreitung der Limits gibt die API HTTP 429 (Too Many Requests) zurueck.

Ratenlimit-Header sind in Antworten enthalten:

X-RateLimit-Limit: <erlaubte_anfragen>
X-RateLimit-Remaining: <verbleibende_anfragen>
X-RateLimit-Reset: <unix_timestamp>

Hoehere Limits benoetigt?

Kontaktieren Sie [email protected] fuer individuelle Ratenlimits.

Haeufige Endpunkte

Health Check

bash
GET /api/health

Antwort:

json
{
  "status": "healthy",
  "version": "0.1.0",
  "timestamp": "2025-12-21T12:00:00Z"
}

Scans auflisten

bash
GET /api/v1/scans

Antwort:

json
{
  "items": [
    {
      "id": "scan_abc123",
      "target": "example.com",
      "status": "completed",
      "created_at": "2025-12-21T10:00:00Z",
      "vulnerabilities_found": 5
    }
  ],
  "total": 1,
  "page": 1,
  "per_page": 20
}

Scan erstellen

bash
POST /api/v1/scans
Content-Type: application/json

{
  "target": "example.com",
  "scan_type": "full",
  "frameworks": ["soc2", "pci-dss"]
}

Kontrollstatus abrufen

bash
GET /api/v1/controls

Antwort:

json
{
  "items": [
    {
      "id": "ctrl_123",
      "name": "Zugangskontrollrichtlinie",
      "status": "implemented",
      "frameworks": ["SOC 2", "ISO 27001"],
      "evidence_count": 3
    }
  ]
}

Fehlerantworten

Alle Fehler folgen einem einheitlichen Format:

json
{
  "detail": "Fehlermeldung hier",
  "error_code": "VALIDATION_ERROR",
  "field": "email"
}

HTTP-Statuscodes

CodeBedeutung
200Erfolg
201Erstellt
400Ungueltige Anfrage
401Nicht autorisiert
403Verboten
404Nicht gefunden
422Validierungsfehler
429Zu viele Anfragen
500Serverfehler

Paginierung

Listenendpunkte unterstuetzen Paginierung:

bash
GET /api/v1/scans?page=2&per_page=50

Antwort enthaelt Paginierungs-Metadaten:

json
{
  "items": [...],
  "total": 150,
  "page": 2,
  "per_page": 50,
  "pages": 3
}

Webhooks

Konfigurieren Sie Webhooks fuer Echtzeit-Benachrichtigungen:

bash
POST /api/v1/webhooks
Content-Type: application/json

{
  "url": "https://your-server.com/webhook",
  "events": ["scan.completed", "vulnerability.found"],
  "secret": "your-webhook-secret"
}

SDKs

Offizielle SDKs sind geplant fuer:

  • Python
  • TypeScript/JavaScript
  • Go

Nutzen Sie vorerst die REST-API direkt oder generieren Sie einen Client aus der OpenAPI-Spezifikation.

Updated at:

Agentic AI-Powered Security & Compliance