Skip to content

Kampagnen-Endpunkte

Die Kampagnen-API bietet Endpunkte für die Verwaltung von Zugriffsüberprüfungskampagnen, einschließlich Erstellung, Lebenszyklusverwaltung und Genehmigungsworkflows.

Basis-URL

Alle Endpunkte sind relativ zu /api/v1/campaigns.


Kampagnen auflisten

Eine paginierte Liste von Kampagnen abrufen.

http
GET /api/v1/campaigns

Abfrageparameter

ParameterTypBeschreibung
statusstringNach Status filtern (draft, active, completed)
typestringNach Kampagnentyp filtern
limitnumberAnzahl der zurückzugebenden Elemente
afterstringCursor für Paginierung

Antwort

json
{
  "campaigns": [
    {
      "id": "camp-123",
      "name": "Q1 Zugriffsüberprüfung",
      "status": "active",
      "type": "periodic",
      "start_date": "2024-01-01T00:00:00Z",
      "end_date": "2024-01-31T23:59:59Z",
      "created_at": "2023-12-15T10:30:00Z"
    }
  ],
  "pageInfo": {
    "hasNextPage": true,
    "endCursor": "cursor-token"
  }
}

Kampagne abrufen

Details für eine bestimmte Kampagne abrufen.

http
GET /api/v1/campaigns/{id}

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID

Antwort

Gibt das vollständige Kampagnenobjekt mit Konfiguration und Status zurück.


Kampagne erstellen

Eine neue Zugriffsüberprüfungskampagne erstellen.

http
POST /api/v1/campaigns

::: note Nur Administrator Dieser Endpunkt erfordert die Administrator-Rolle. :::

Request-Body

json
{
  "name": "Q2 Zugriffsüberprüfung",
  "description": "Vierteljährliche Zugriffszertifizierung",
  "type": "periodic",
  "start_date": "2024-04-01T00:00:00Z",
  "end_date": "2024-04-30T23:59:59Z",
  "scope": {
    "applications": ["app-123", "app-456"],
    "account_types": ["user", "service"]
  }
}

Antwort

Gibt das erstellte Kampagnenobjekt zurück.


Kampagne aktualisieren

Eine bestehende Kampagne aktualisieren.

http
PUT /api/v1/campaigns/{id}

::: note Nur Administrator Dieser Endpunkt erfordert die Administrator-Rolle. :::

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID

Request-Body

Nur die zu aktualisierenden Felder einbeziehen.

Antwort

Gibt das aktualisierte Kampagnenobjekt zurück.


Kampagne löschen

Eine Kampagne löschen.

http
DELETE /api/v1/campaigns/{id}

::: note Nur Administrator Dieser Endpunkt erfordert die Administrator-Rolle. :::

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID

Antwort

Gibt bei Erfolg 204 No Content zurück.


Kampagne aus Vorlage erstellen

Eine neue Kampagne basierend auf einer bestehenden Vorlage erstellen.

http
POST /api/v1/campaigns/from-template/{templateId}

::: note Nur Administrator Dieser Endpunkt erfordert die Administrator-Rolle. :::

Pfadparameter

ParameterTypBeschreibung
templateIdstringVorlagenkampagnen-ID

Request-Body

json
{
  "name": "Neue Kampagne aus Vorlage",
  "start_date": "2024-04-01T00:00:00Z",
  "end_date": "2024-04-30T23:59:59Z"
}

Antwort

Gibt das erstellte Kampagnenobjekt zurück.


Kampagne starten

Eine Entwurfskampagne starten, um den Überprüfungsprozess zu beginnen.

http
POST /api/v1/campaigns/{id}/start

::: note Nur Administrator Dieser Endpunkt erfordert die Administrator-Rolle. :::

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID

Antwort

json
{
  "status": "queued",
  "message": "Kampagnenstart eingeleitet"
}

Kampagne abschließen

Eine Kampagne als abgeschlossen markieren.

http
POST /api/v1/campaigns/{id}/complete

::: note Nur Administrator Dieser Endpunkt erfordert die Administrator-Rolle. :::

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID

Antwort

Gibt das abgeschlossene Kampagnenobjekt zurück.


Kampagnengenehmigungen abrufen

Genehmigungselemente für eine Kampagne abrufen.

http
GET /api/v1/campaigns/{id}/approvals

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID

Abfrageparameter

ParameterTypBeschreibung
statusstringNach Status filtern (pending, approved, rejected)

Antwort

json
{
  "approvals": [
    {
      "account_id": "acc-123",
      "account_name": "john.doe",
      "status": "pending",
      "reviewer": "manager@company.com"
    }
  ]
}

Genehmigungsanzahlen abrufen

Genehmigungsanzahlen gruppiert nach Status abrufen.

http
GET /api/v1/campaigns/{id}/approvals/counts

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID

Antwort

json
{
  "pending": 50,
  "approved": 120,
  "rejected": 15,
  "flagged": 5
}

Konto genehmigen/ablehnen

Eine Genehmigungsentscheidung für ein Konto einreichen.

http
POST /api/v1/campaigns/{id}/approvals/{accountId}

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID
accountIdstringKonto-ID

Request-Body

json
{
  "decision": "approved",
  "comment": "Zugriff überprüft und angemessen"
}

Antwort

Gibt das aktualisierte Genehmigungsobjekt zurück.


Massengenehmigung

Genehmigungsentscheidungen für mehrere Konten einreichen.

http
POST /api/v1/campaigns/{id}/approvals/batch

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID

Request-Body

json
{
  "account_ids": ["acc-123", "acc-456"],
  "decision": "approved",
  "comment": "Massengenehmigung für Standardzugriff"
}

Antwort

Gibt Liste der aktualisierten Genehmigungen zurück.


Genehmigung rückgängig machen

Eine Genehmigungsentscheidung innerhalb von 30 Sekunden nach der Entscheidung auf ausstehend zurücksetzen.

http
POST /api/v1/campaigns/{id}/approvals/{accountId}/undo

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID
accountIdstringKonto-ID

Antwort

Gibt die auf ausstehenden Status zurückgesetzte Genehmigung zurück.

Rückgängig-Fenster

Rückgängig ist nur innerhalb von 30 Sekunden nach der Entscheidung verfügbar. Nach diesem Fenster gibt der Endpunkt einen 409 Conflict-Fehler zurück.


Überprüfungselemente abrufen

Angereicherte Überprüfungselemente mit Risikodaten abrufen.

http
GET /api/v1/campaigns/{id}/review-items

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID

Abfrageparameter

ParameterTypBeschreibung
statusstringNach Genehmigungsstatus filtern
riskstringNach Risikostufe filtern
searchstringNach Kontoname suchen
sortstringSortierfeld
limitnumberAnzahl der Elemente
afterstringCursor für Paginierung

Antwort

Paginierte Liste der Überprüfungselemente mit Kontodetails und Risikobewertungen.


KI-Empfehlungen

KI-Empfehlung für Konto abrufen

Die gespeicherte KI-Empfehlung für ein bestimmtes Konto in einer Kampagne abrufen.

http
GET /api/v1/campaigns/{id}/approvals/{accountId}/ai-recommendation

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID
accountIdstringKonto-ID

Antwort

json
{
  "decision": "approve",
  "confidence": 85,
  "reason": "Kontozugriff entspricht Rollenanforderungen und zeigt normale Nutzungsmuster",
  "primary_factors": [
    "Rollengerechter Zugriff",
    "Kürzliche Aktivität im normalen Bereich",
    "MFA aktiviert"
  ],
  "risk_indicators": [],
  "data_gaps": [
    "Manager-Genehmigungshistorie nicht verfügbar"
  ],
  "generated_at": "2024-01-15T10:30:00Z"
}

Stapelgruppen abrufen

KI-generierte Stapelgruppen für effiziente Massenüberprüfung abrufen.

http
GET /api/v1/campaigns/{id}/batch-groups

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID

Antwort

json
{
  "batch_groups": [
    {
      "id": "batch-123",
      "name": "Standard-Entwickler - Engineering",
      "description": "Standard-Entwicklerkonten mit typischen Zugriffsmustern",
      "risk_level": "low",
      "account_count": 45,
      "ai_analysis": {
        "title": "Standard-Engineering-Zugriff",
        "traits": ["Entwicklerrolle", "Aktive MFA", "Kürzliche Aktivität"],
        "summary": ["Alle Konten zeigen normale Nutzung", "Keine Richtlinienverstöße", "Konsistent mit Rolle"],
        "recommendation": "approve",
        "confidence": 92
      },
      "account_ids": ["acc-1", "acc-2", "..."]
    }
  ]
}

Stapelgruppe überprüfen

Eine Entscheidung auf alle Konten in einer Stapelgruppe anwenden.

http
POST /api/v1/campaigns/{id}/batch-groups/{batchId}/review

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID
batchIdstringStapelgruppen-ID

Request-Body

json
{
  "decision": "approved",
  "comment": "Stapelgenehmigung für Standardzugriff"
}

Antwort

Gibt Liste der aktualisierten Genehmigungen für alle Konten im Stapel zurück.


Risikobewertung

Risikobewertung für Konto abrufen

Detaillierte Risikobewertung einschließlich Risikofaktoren und Richtlinienprüfungen abrufen.

http
GET /api/v1/campaigns/{id}/approvals/{accountId}/risk-assessment

Pfadparameter

ParameterTypBeschreibung
idstringKampagnen-ID
accountIdstringKonto-ID

Antwort

json
{
  "score": 75,
  "level": "high",
  "triggered_factors": [
    {
      "name": "Privilegiertes Konto",
      "description": "Konto hat administrative Berechtigungen",
      "weight": 30,
      "severity": "high"
    },
    {
      "name": "Veraltetes Konto",
      "description": "Keine Anmeldeaktivität seit 90+ Tagen",
      "weight": 25,
      "severity": "medium"
    }
  ],
  "passing_factors": [
    {
      "name": "MFA aktiviert",
      "description": "Multi-Faktor-Authentifizierung ist konfiguriert",
      "weight": 0,
      "severity": "low"
    }
  ]
}

Richtlinienprüfungen für Konto abrufen

Richtlinienprüfergebnisse für ein Konto in einer Kampagne abrufen.

http
GET /api/v1/campaigns/{id}/approvals/{accountId}/policy-checks

Antwort

json
{
  "policy_checks": [
    {
      "policy_id": "pol-123",
      "policy_name": "MFA für privilegierte Konten erforderlich",
      "status": "PASS",
      "message": "Konto hat MFA aktiviert"
    },
    {
      "policy_id": "pol-456",
      "policy_name": "Maximaler Inaktivitätszeitraum",
      "status": "FAIL",
      "message": "Konto inaktiv seit 120 Tagen, überschreitet 90-Tage-Limit"
    }
  ]
}

Regelauswertungs-Jobs

Kampagnenregel testen

Eine Kampagnenregel gegen aktuelle Daten testen, ohne eine Kampagne zu erstellen.

http
POST /api/v1/campaigns/rules/test

Request-Body

json
{
  "rule_type": "account",
  "condition": "account.privileged = true AND account.mfa_enabled = false"
}

Antwort

json
{
  "job_id": "job-123",
  "status": "pending",
  "job_type": "test"
}

Regelauswertungs-Job-Status abrufen

Status und Ergebnisse eines Regelauswertungs-Jobs abrufen.

http
GET /api/v1/campaigns/rules/jobs/{jobId}

Pfadparameter

ParameterTypBeschreibung
jobIdstringAuswertungs-Job-ID

Antwort

json
{
  "id": "job-123",
  "job_type": "test",
  "status": "completed",
  "total_entities": 1500,
  "processed_entities": 1500,
  "percent_complete": 100,
  "total_matches": 23,
  "sample_matches": [
    {
      "account_id": "acc-1",
      "account_name": "admin.user",
      "matched": true
    }
  ],
  "is_valid": true,
  "completed_at": "2024-01-15T10:35:00Z"
}

Kampagnenregelauswertung

Kampagnenregeln für eine aktive Kampagne auswerten (wendet automatisierte Entscheidungen an).

http
POST /api/v1/campaigns/{id}/rules/evaluate

Löst asynchrone Regelauswertung aus. Gibt Job-Informationen zur Fortschrittsverfolgung zurück.

Antwort

json
{
  "job_id": "job-456",
  "campaign_id": "camp-123",
  "status": "pending",
  "job_type": "campaign"
}

Kampagnenregeln

Zugewiesene Regeln abrufen

http
GET /api/v1/campaigns/{id}/rules

Regeln Kampagne zuweisen

http
POST /api/v1/campaigns/{id}/rules

::: note Nur Administrator Dieser Endpunkt erfordert die Administrator-Rolle. :::

Request-Body

json
{
  "rule_ids": ["rule-123", "rule-456"]
}

Regelstatus in Kampagne aktualisieren

http
PUT /api/v1/campaigns/{id}/rules/{ruleId}

Request-Body

json
{
  "enabled": true
}

Kampagnenregeln auswerten

http
POST /api/v1/campaigns/{id}/rules/evaluate

Löst asynchrone Regelauswertung aus. Gibt Job-Informationen zur Fortschrittsverfolgung zurück.


Kampagnenrichtlinien

Richtlinien für Kampagne abrufen

http
GET /api/v1/campaigns/{id}/policies

Richtlinie auf Kampagne anwenden

http
POST /api/v1/campaigns/{id}/policies/{policyId}

Abfrageparameter

ParameterTypBeschreibung
thresholdnumberRichtlinienschwellenwert (optional)

Richtlinie von Kampagne entfernen

http
DELETE /api/v1/campaigns/{id}/policies/{policyId}

Fehlerantworten

StatuscodeBeschreibung
400Bad Request - Ungültige Parameter
401Unauthorized - Authentifizierung erforderlich
403Forbidden - Unzureichende Berechtigungen
404Not Found - Kampagne existiert nicht
409Conflict - Ungültiger Statusübergang
500Internal Server Error

Verwandte Themen

Hydden Documentation and Training Hub