> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Überwachungsereignisse auflisten – Didit Management API

> Didit: Überwachungsereignisse mit Filtern nach Kategorie, Status, Subjekt, Gerät, IP, Zahlungsreferenz und Zeitfenster, neueste zuerst.

Prompt für die API zum Auflisten von Monitoring-Ereignissen
Prompt in die Zwischenablage kopieren

<pre>
  \`List and filter the monitoring events (logins, sessions, gameplay, bonuses, payments, disputes, security changes) stored for my Didit application.

  Endpoint:
  GET [https://verification.didit.me/v3/events/](https://verification.didit.me/v3/events/)

  Authentication:
  Use the x-api-key header with my Didit API key. A scoped key needs transactions: read.

  Goal:

  * Search events for a back-office screen, an export job or an investigation: for example every payment and dispute event a rule matched last week, or every event from one device fingerprint or IP address.

  Behavior:

  * Newest occurred\_at first. Paginated with limit (default 50) and offset; follow next until it is null.
  * count is exact up to 100 and capped at 100 above that, so never use it to compute the number of pages.
  * Every filter is optional and filters combine with AND. Multi-value filters repeat the parameter (?event\_category=payment\&event\_category=dispute) and match any of the values.
  * Filters: event\_category, action\_type, status, retention\_class (multi-value); subject\_vendor\_data, subject\_entity\_type (company for a company, any other value for an individual), business\_vendor\_data, session\_id, device\_fingerprint, ip\_address, game\_id, round\_id, affiliate\_code, payment\_reference\_id, counterparty\_vendor\_data (exact match); matched\_only=true; occurred\_from and occurred\_to (inclusive; ISO 8601 with Z or an offset whose + is sent as %2B, for example 2026-10-17T09:00:00Z, or a date alone, which means 00:00 UTC of that day); search (case-insensitive substring of event\_id, action\_type, subject\_vendor\_data or counterparty\_vendor\_data).
  * Each result is a summary. Call GET /v3/events/{event_uuid}/ for the payload, device context, IP enrichment and rule evidence.
  * For one subject, prefer GET /v3/events/subjects/{vendor_data}/, which keeps an individual and a company with the same vendor\_data apart.
  * Reads work whether or not event ingestion is switched on.

  Example call:
  curl -X GET "[https://verification.didit.me/v3/events/?event\_category=payment\&event\_category=dispute\&matched\_only=true\&limit=50](https://verification.didit.me/v3/events/?event_category=payment\&event_category=dispute\&matched_only=true\&limit=50)" \
  -H "x-api-key: YOUR\_API\_KEY"

  What to read from the response:

  * results\[].event\_uuid - Didit id of the event; use it as {event_uuid} in the detail and delete calls.
  * results\[].event\_id - your own id (the idempotency key you sent).
  * results\[].event\_category, action\_type, occurred\_at, received\_at.
  * results\[].status (ACCEPTED, APPROVED, IN\_REVIEW, DECLINED) and score.
  * results\[].rules\_matched\_count and correlation\_pending (true while an asynchronous rule still has to run).
  * results\[].ip\_country, device\_fingerprint, session\_id, amount, currency, payment\_reference\_id.
  * results\[].is\_droppable - whether an SDK under backpressure may drop events of this kind.
  * next - URL of the next page, or null.

  Failure modes:

  * 400 - limit or offset larger than 1000000.
  * 401 - the API key has expired.
  * 403 - missing API key (a wrong, revoked or expired key gets 401), a scoped key without transactions: read, or a request from outside the key's IP list.
  * 429 - more than 600 reads per minute for this API key; honor Retry-After.

  Side effects: none. This is a pure read.

  For the full integration shape, see /integration/integration-prompt.\`
</pre>

Einfügen in

Ereignisse werden in [Aufbewahrungsklassen](https://docs.didit.me/de/transaction-monitoring/events.md#aufbewahrung) abgelegt. Ein Ereignis, das über das Ende seiner Aufbewahrungsklasse hinausgeht, erscheint hier daher nicht mehr. Die Filterreferenz finden Sie unter [Ereigniserfassung](https://docs.didit.me/de/transaction-monitoring/events.md#ereignisse-auslesen), und unter [Regeln für Ereignisse](https://docs.didit.me/de/transaction-monitoring/event-rules.md) erfahren Sie, was dazu führt, dass sich `rules_matched_count` ändert.


## OpenAPI

````yaml de/openapi-25.json GET /v3/events/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API für Ausweisverifizierung. Authentifizierung über den x-api-key-Header.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/events/:
    get:
      tags:
        - Monitoring Events
      summary: Überwachungsereignisse auflisten
      description: >-
        Die für Ihre Anwendung gespeicherten Überwachungsereignisse auflisten,
        neuestes `occurred_at` zuerst, mit optionalen Filtern, die mit AND
        verknüpft werden. Mehrwertige Filter (`event_category`, `action_type`,
        `status`, `retention_class`) wiederholen den Parameter und stimmen mit
        jedem der Werte überein; die anderen Filter sind exakte
        Übereinstimmungen, und unbekannte Werte geben einfach keine Ereignisse
        zurück. Jedes Ergebnis ist eine Zusammenfassung: Rufen Sie `GET
        /v3/events/{event_uuid}/` für Payload, Gerätekontext, IP-Anreicherung
        und Regelbelege auf, und bevorzugen Sie `GET
        /v3/events/subjects/{vendor_data}/` für den Verlauf eines einzelnen
        Subjekts. Lesezugriffe funktionieren unabhängig davon, ob die
        Ereigniserfassung aktiviert ist. Ein berechtigungsbeschränkter
        API-Schlüssel erfordert `transactions: read`. Siehe
        [Ereigniserfassung](https://docs.didit.me/de/transaction-monitoring/events).
      operationId: list_monitoring_events
      parameters:
        - name: limit
          in: query
          required: false
          description: >-
            Maximale Anzahl an Ereignissen pro Seite. Standardmäßig 50. Werte
            über 1000000 geben `400` zurück; ein nicht-numerischer, Null- oder
            negativer Wert fällt auf 50 zurück.
          schema:
            type: integer
            default: 50
            minimum: 1
            maximum: 1000000
          example: 50
        - name: offset
          in: query
          required: false
          description: >-
            Anzahl der zu überspringenden Ereignisse. Standardmäßig 0.
            Bevorzugen Sie das Folgen der `next`-URL aus der Antwort.
          schema:
            type: integer
            maximum: 1000000
            minimum: 0
            default: 0
          example: 0
        - name: event_category
          in: query
          required: false
          description: >-
            Nur Ereignisse in diesen Kategorien. Wiederholen Sie den Parameter
            für mehrere Werte
            (`?event_category=payment&event_category=dispute`); ein Ereignis,
            das auf einen davon zutrifft, wird zurückgegeben.
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
              enum:
                - auth
                - session
                - gameplay
                - bonus
                - affiliate
                - payment
                - dispute
                - security
                - responsible_gambling
                - custom
          example:
            - payment
            - dispute
        - name: action_type
          in: query
          required: false
          description: >-
            Nur Ereignisse mit diesen Aktionstypen (exakt, unter
            Berücksichtigung der Groß-/Kleinschreibung). Für mehrere Werte
            wiederholen.
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - deposit_completed
            - chargeback_opened
        - name: status
          in: query
          required: false
          description: Nur Ereignisse mit diesen Status. Für mehrere Werte wiederholen.
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
              enum:
                - ACCEPTED
                - APPROVED
                - IN_REVIEW
                - DECLINED
          example:
            - IN_REVIEW
            - DECLINED
        - name: retention_class
          in: query
          required: false
          description: >-
            Nur Ereignisse in diesen Aufbewahrungsklassen. Für mehrere Werte
            wiederholen.
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
              enum:
                - low_value
                - standard
                - risk_relevant
                - monetary_or_compliance
          example:
            - risk_relevant
        - name: subject_vendor_data
          in: query
          required: false
          description: >-
            Exakte Übereinstimmung mit den `vendor_data` des Subjekts. Dieselbe
            ID kann eine Einzelperson und ein Unternehmen benennen; fügen Sie
            `subject_entity_type` hinzu, um eines auszuwählen, oder verwenden
            Sie `GET /v3/events/subjects/{vendor_data}/`.
          schema:
            type: string
          example: user-42
        - name: subject_entity_type
          in: query
          required: false
          description: >-
            `company` gibt nur Ereignisse von Unternehmenssubjekten zurück;
            jeder andere nicht leere Wert (zum Beispiel `individual`) gibt nur
            Ereignisse von Einzelpersonen zurück. Weglassen, um beides
            zurückzugeben.
          schema:
            type: string
            enum:
              - individual
              - company
          example: individual
        - name: business_vendor_data
          in: query
          required: false
          description: >-
            Exakte Übereinstimmung mit den mit dem Ereignis gesendeten
            `business.vendor_data`.
          schema:
            type: string
          example: merchant-7
        - name: session_id
          in: query
          required: false
          description: Exakte Übereinstimmung mit `session.session_id`.
          schema:
            type: string
          example: web-session-abc
        - name: device_fingerprint
          in: query
          required: false
          description: Exakte Übereinstimmung mit `device_context.fingerprint`.
          schema:
            type: string
          example: fp-a8c1
        - name: ip_address
          in: query
          required: false
          description: Exakte Übereinstimmung mit der IP-Adresse des Ereignisses.
          schema:
            type: string
          example: 203.0.113.42
        - name: game_id
          in: query
          required: false
          description: Exakte Übereinstimmung mit der promoteten `game_id`.
          schema:
            type: string
          example: poker-holdem-01
        - name: round_id
          in: query
          required: false
          description: Exakte Übereinstimmung mit der promoteten `round_id`.
          schema:
            type: string
          example: round-88231
        - name: affiliate_code
          in: query
          required: false
          description: Exakte Übereinstimmung mit dem promoteten `affiliate_code`.
          schema:
            type: string
          example: aff-summer
        - name: payment_reference_id
          in: query
          required: false
          description: >-
            Exakte Übereinstimmung mit der Zahlungsreferenz (aus
            `transaction_context.payment_reference_id` oder
            `payload.payment_reference_id`).
          schema:
            type: string
          example: dep_735
        - name: counterparty_vendor_data
          in: query
          required: false
          description: >-
            Exakte Übereinstimmung mit den promoteten
            `counterparty_vendor_data`.
          schema:
            type: string
          example: user-77
        - name: matched_only
          in: query
          required: false
          description: >-
            `true` (auch `1` oder `yes`, ohne Berücksichtigung der
            Groß-/Kleinschreibung) gibt nur Ereignisse zurück, bei denen
            mindestens eine Regel gegriffen hat (`rules_matched_count` größer
            als 0). Jeder andere Wert wird ignoriert.
          schema:
            type: boolean
            default: false
          example: true
        - name: occurred_from
          in: query
          required: false
          description: >-
            Nur Ereignisse mit `occurred_at` an oder nach diesem Zeitpunkt
            (einschließlich). Senden Sie einen ISO-8601-Wert:
            `2026-10-01T00:00:00Z`, einen expliziten Offset mit prozentkodiertem
            `+` (`2026-10-01T02:00:00%2B02:00`; ein unkodiertes `+` wird als
            Leerzeichen dekodiert und der Wert kann nicht mehr geparst werden)
            oder nur ein Datum (`2026-10-01`), was 00:00:00 UTC dieses Tages
            entspricht. Ein Wert ohne Offset wird als UTC interpretiert. Werte
            in einem anderen Format werden nicht akzeptiert.
          schema:
            type: string
            format: date-time
          example: '2026-10-01T00:00:00Z'
        - name: occurred_to
          in: query
          required: false
          description: >-
            Nur Ereignisse mit `occurred_at` an oder vor diesem Zeitpunkt
            (einschließlich). Ein reines Datum bedeutet den Beginn dieses Tages,
            daher schließt `occurred_to=2026-10-15` den Rest des 15. Oktobers
            aus; senden Sie `2026-10-15T23:59:59Z`, um ihn einzuschließen.
            Senden Sie einen ISO-8601-Wert: `2026-10-01T00:00:00Z`, einen
            expliziten Offset mit prozentkodiertem `+`
            (`2026-10-01T02:00:00%2B02:00`; ein unkodiertes `+` wird als
            Leerzeichen dekodiert und der Wert kann nicht mehr geparst werden)
            oder nur ein Datum (`2026-10-01`), was 00:00:00 UTC dieses Tages
            entspricht. Ein Wert ohne Offset wird als UTC interpretiert. Werte
            in einem anderen Format werden nicht akzeptiert.
          schema:
            type: string
            format: date-time
          example: '2026-10-17T23:59:59Z'
        - name: search
          in: query
          required: false
          description: >-
            Teilstring-Übereinstimmung ohne Berücksichtigung von
            Groß-/Kleinschreibung auf `event_id`, `action_type`,
            `subject_vendor_data` oder `counterparty_vendor_data`.
          schema:
            type: string
          example: chargeback
      responses:
        '200':
          description: Eine Seite mit Ereigniszusammenfassungen.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MonitoringEventPage'
              examples:
                Payment and dispute events:
                  value:
                    count: 2
                    next: null
                    previous: null
                    results:
                      - event_uuid: 11111111-2222-3333-4444-555555555555
                        event_id: chargeback-2026-10-16-000318
                        event_category: dispute
                        action_type: chargeback_opened
                        occurred_at: '2026-10-16T14:02:11Z'
                        received_at: '2026-10-16T14:02:12.418230Z'
                        status: IN_REVIEW
                        score: 60
                        subject_vendor_data: user-42
                        subject_entity_type: individual
                        subject_uuid: 66666666-7777-8888-9999-000000000000
                        counterparty_vendor_data: null
                        session_id: null
                        device_fingerprint: null
                        ip_address: null
                        ip_country: null
                        amount: '250.000000000000000000'
                        currency: EUR
                        game_id: null
                        round_id: null
                        bonus_id: null
                        affiliate_code: null
                        payment_reference_id: dep_735
                        retention_class: monetary_or_compliance
                        rules_matched_count: 1
                        correlation_pending: false
                        is_droppable: false
                      - event_uuid: 22222222-3333-4444-5555-666666666666
                        event_id: login-2026-10-15-000912
                        event_category: auth
                        action_type: login
                        occurred_at: '2026-10-15T08:30:00.120000Z'
                        received_at: '2026-10-15T08:30:00.734512Z'
                        status: ACCEPTED
                        score: 0
                        subject_vendor_data: user-42
                        subject_entity_type: individual
                        subject_uuid: 66666666-7777-8888-9999-000000000000
                        counterparty_vendor_data: null
                        session_id: web-session-abc
                        device_fingerprint: fp-a8c1
                        ip_address: 203.0.113.42
                        ip_country: ES
                        amount: null
                        currency: null
                        game_id: null
                        round_id: null
                        bonus_id: null
                        affiliate_code: null
                        payment_reference_id: null
                        retention_class: standard
                        rules_matched_count: 0
                        correlation_pending: false
                        is_droppable: true
        '400':
          description: >-
            `limit` oder `offset` ist größer als 1000000. Der Body ist ein
            JSON-Array mit einer Nachricht. Ein nicht-numerischer oder
            nicht-positiver `limit`-Wert fällt auf den Standardwert von 50
            zurück, anstatt fehlzuschlagen.
          content:
            application/json:
              examples:
                limit too large:
                  summary: limit über 1000000
                  value:
                    - limit must not exceed 1000000.
                offset too large:
                  summary: offset über 1000000
                  value:
                    - offset must not exceed 1000000.
        '401':
          description: >-
            Der API-Schlüssel mit eingeschränktem Geltungsbereich ist
            abgelaufen. Nur ein abgelaufener Schlüssel erhält `401`; ein
            fehlender oder ungültiger Schlüssel erhält `403`.
          content:
            application/json:
              examples:
                Expired key:
                  value:
                    detail: This API key has expired.
        '403':
          description: >-
            Ein fehlender `x-api-key` (ein falscher, widerrufener oder
            abgelaufener Schlüssel erhält `401`), ein berechtigungsbeschränkter
            Schlüssel ohne `transactions: read`, ein auf bestimmte Workflows
            oder genehmigte Sitzungen beschränkter Schlüssel (ein solcher
            Schlüssel erreicht Transaktionsüberwachungsdaten nie) oder eine
            Anfrage von außerhalb der IP-Allowlist des Schlüssels.
          content:
            application/json:
              examples:
                Missing or invalid API key:
                  value:
                    detail: You do not have permission to perform this action.
                Scoped key without access:
                  value:
                    detail: This API key has no read access to transactions.
                Key limited to workflows or approved sessions:
                  value:
                    detail: >-
                      This API key only reaches sessions inside its workflow or
                      status limits, so it can't use this endpoint.
                IP not allowed:
                  value:
                    detail: This API key can't be used from this IP address.
        '429':
          description: >-
            Rate-Limit überschritten: `GET`-Anfragen teilen sich ein Kontingent
            von 600 Anfragen pro Minute pro API-Schlüssel. Warten Sie
            `Retry-After` Sekunden und versuchen Sie es dann erneut.
          headers:
            Retry-After:
              description: >-
                Sekunden, die vor einem Wiederholungsversuch gewartet werden
                müssen.
              schema:
                type: integer
                minimum: 1
                example: 30
          content:
            application/json:
              examples:
                Throttled:
                  value:
                    detail: >-
                      GET request rate limit exceeded. You can make up to 600
                      requests per minute.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/events/?event_category=payment&event_category=dispute&matched_only=true&occurred_from=2026-10-01T00:00:00Z&limit=50'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            for item in client.monitoring_events.list():
                print(item)
        - lang: javascript
          label: Node.js
          source: |-
            import Didit from "@didit-protocol/sdk-node";

            // Reads DIDIT_API_KEY.
            const didit = new Didit();

            for await (const item of didit.monitoringEvents.list()) {
              console.log(item);
            }
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\niter := client.MonitoringEvents.ListAutoPaging(ctx, didit.MonitoringEventsListParams{})\nfor iter.Next() {\n\tfmt.Printf(\"%+v\\n\", iter.Current())\n}\nif err := iter.Err(); err != nil {\n\tlog.Fatal(err)\n}"
        - lang: java
          label: Java
          source: |-
            import me.didit.Didit;

            // Reads DIDIT_API_KEY.
            Didit client = new Didit();

            for (var item : client.monitoringEvents().list()) {
                System.out.println(item);
            }
        - lang: php
          label: PHP
          source: |-
            <?php

            require 'vendor/autoload.php';

            use Didit\DiditClient;

            // Reads DIDIT_API_KEY.
            $didit = new DiditClient();

            foreach ($didit->monitoringEvents->list() as $item) {
                print_r($item->toArray());
            }
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

            # Reads DIDIT_API_KEY.
            didit = Didit::Client.new

            didit.monitoring_events.list.auto_paging_each do |item|
              puts item.to_h
            end
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            await foreach (var item in await
            client.MonitoringEvents.ListAsync())

            {
                Console.WriteLine(JsonSerializer.Serialize(item));
            }
components:
  schemas:
    MonitoringEventPage:
      type: object
      description: >-
        Eine Seite mit Überwachungsereignissen, der neueste Wert von
        `occurred_at` zuerst.
      required:
        - count
        - next
        - previous
        - results
      properties:
        count:
          type: integer
          description: >-
            Anzahl der übereinstimmenden Ereignisse, exakt bis 100 und darüber
            auf 100 begrenzt. Berechnen Sie daraus keine Seitenzahlen; folgen
            Sie `next`, bis es null ist.
        next:
          type: string
          format: uri
          nullable: true
          description: URL der nächsten Seite oder null auf der letzten Seite.
        previous:
          type: string
          format: uri
          nullable: true
          description: URL der vorherigen Seite oder null auf der ersten Seite.
        results:
          type: array
          items:
            $ref: '#/components/schemas/MonitoringEvent'
    MonitoringEvent:
      type: object
      description: >-
        Ein gespeichertes Überwachungsereignis, wie es von den Endpoints für
        Listen und Subjekt-Zeitachsen zurückgegeben wird. Eingeschränkte
        Nachweise (Payload, Gerätekontext, Regelbeweise) werden nur von `GET
        /v3/events/{event_uuid}/` zurückgegeben.
      required:
        - event_uuid
        - event_id
        - event_category
        - action_type
        - occurred_at
        - received_at
        - status
        - score
        - subject_vendor_data
        - subject_entity_type
        - subject_uuid
        - counterparty_vendor_data
        - session_id
        - device_fingerprint
        - ip_address
        - ip_country
        - amount
        - currency
        - game_id
        - round_id
        - bonus_id
        - affiliate_code
        - payment_reference_id
        - retention_class
        - rules_matched_count
        - correlation_pending
        - is_droppable
      properties:
        event_uuid:
          type: string
          format: uuid
          description: >-
            Didit-Kennung des Ereignisses. Verwenden Sie sie als `{event_uuid}`
            bei den Abruf- und Löschaufrufen.
        event_id:
          type: string
          maxLength: 128
          description: Ihre eigene Kennung, der von Ihnen übermittelte Idempotenzschlüssel.
        event_category:
          type: string
          enum:
            - auth
            - session
            - gameplay
            - bonus
            - affiliate
            - payment
            - dispute
            - security
            - responsible_gambling
            - custom
          description: Ereigniskategorie.
        action_type:
          type: string
          maxLength: 128
          description: >-
            Was innerhalb der Kategorie passiert ist, so wie Sie es gesendet
            haben.
        occurred_at:
          type: string
          format: date-time
          description: Wann das Ereignis auf Ihrer Seite stattgefunden hat.
        received_at:
          type: string
          format: date-time
          description: Wann Didit das Ereignis akzeptiert hat.
        status:
          type: string
          enum:
            - ACCEPTED
            - APPROVED
            - IN_REVIEW
            - DECLINED
          description: >-
            `ACCEPTED`: gespeichert, keine zutreffende Regel hat den Status
            geändert (die normale Antwort für die meisten Ereignisse und immer
            die Antwort in einer Sandbox-Anwendung, in der keine Regeln
            ausgeführt werden). `APPROVED`: eine Regel hat gegriffen und der
            Score blieb unter Ihrem Prüfungsschwellenwert. `IN_REVIEW`: eine
            Regel hat den Score über den Prüfungsschwellenwert verschoben oder
            den Status gesetzt. `DECLINED`: eine Regel hat es abgelehnt oder der
            Score hat Ihren Ablehnungsschwellenwert überschritten.
        score:
          type: integer
          description: >-
            Akkumulierter Regelwert. Beginnt bei 0; `add_score`-Regelaktionen
            verändern ihn (negative Werte sind zulässig).
        subject_vendor_data:
          type: string
          maxLength: 255
          description: >-
            `subject.vendor_data` des Ereignisses: Ihre ID für den Benutzer oder
            das Unternehmen.
        subject_entity_type:
          type: string
          description: >-
            `individual` oder `company`: welche Art von Subjekt
            `subject_vendor_data` bezeichnet.
          example: individual
        subject_uuid:
          type: string
          format: uuid
          nullable: true
          description: >-
            UUID des Benutzers (Einzelperson) oder Unternehmens, zu dem das
            Ereignis aufgelöst wurde, oder null, wenn dieser Datensatz nicht
            mehr existiert.
        counterparty_vendor_data:
          type: string
          nullable: true
          description: >-
            Der andere Beteiligte eines P2P-Ereignisses (hochgestuft aus
            `payload.counterparty_vendor_data`).
          maxLength: 255
        session_id:
          type: string
          nullable: true
          description: '`session.session_id`, die mit dem Ereignis gesendet wurde.'
          maxLength: 255
        device_fingerprint:
          type: string
          nullable: true
          description: '`device_context.fingerprint`, der mit dem Ereignis gesendet wurde.'
          maxLength: 255
        ip_address:
          type: string
          nullable: true
          description: >-
            Adresse des Ereignisses. Auf dem Serverpfad ist dies
            `device_context.network_context.ip_address`, wie von Ihnen gesendet;
            auf dem Gerätepfad ist es die IP der Anfrage.
          maxLength: 64
        ip_country:
          type: string
          nullable: true
          description: >-
            Ländercode von `ip_address` aus der IP-Anreicherung oder null, wenn
            die Adresse nicht angereichert wurde (fehlende, private oder
            geringwertige Telemetriedaten, deren Adresse noch nicht bekannt
            war).
          example: ES
        amount:
          type: string
          nullable: true
          description: >-
            Betrag als Dezimal-String mit 18 Nachkommastellen, aus
            `transaction_context.amount`, `payload.amount` oder
            `payload.stake_amount`, in dieser Reihenfolge.
          example: '250.000000000000000000'
        currency:
          type: string
          nullable: true
          description: Währung aus `transaction_context.currency` oder `payload.currency`.
          maxLength: 10
        game_id:
          type: string
          nullable: true
          description: Übernommen aus `payload.game_id`.
          maxLength: 128
        round_id:
          type: string
          nullable: true
          description: Übernommen aus `payload.round_id`.
          maxLength: 128
        bonus_id:
          type: string
          nullable: true
          description: Aus `payload.bonus_id` übernommen.
          maxLength: 128
        affiliate_code:
          type: string
          nullable: true
          description: Aus `payload.affiliate_code` übernommen.
          maxLength: 128
        payment_reference_id:
          type: string
          nullable: true
          description: >-
            Zahlungsreferenz aus `transaction_context.payment_reference_id` oder
            `payload.payment_reference_id`.
          maxLength: 255
        retention_class:
          type: string
          enum:
            - low_value
            - standard
            - risk_relevant
            - monetary_or_compliance
          description: >-
            Aufbewahrungsklasse. Zahlungs- und Streitfall-Ereignisse sind
            `monetary_or_compliance`; Sicherheits- und Spielerschutz-Ereignisse
            sind `risk_relevant`; `session.page_view`, `session.sdk_heartbeat`,
            `session.sdk_loaded`, `session.device_seen`,
            `session.bot_signal_observed`, `bonus.promotion_viewed` und
            `affiliate.referral_clicked` sind `low_value`; alles andere ist
            `standard`. Ein Ereignis, auf das eine aktive Regel zutrifft, wird
            auf `risk_relevant` hochgestuft (niemals herabgestuft).
        rules_matched_count:
          type: integer
          minimum: 0
          description: >-
            Anzahl der Regeln, die auf das Ereignis zutrafen, einschließlich
            Regeln im `TEST`-Modus (die Nachweise aufzeichnen, aber keine
            Aktionen anwenden).
        correlation_pending:
          type: boolean
          description: >-
            `true`, solange eine asynchrone Regel (subjektübergreifende
            Korrelation oder eine Sequenz von mehr als 24 Stunden) für dieses
            Ereignis noch ausgeführt werden muss. Sie wird innerhalb von Minuten
            aufgelöst, und `status`, `score` sowie `rules_matched_count` werden
            direkt aktualisiert.
        is_droppable:
          type: boolean
          description: >-
            Gibt an, ob ein SDK unter Systemüberlastung (Backpressure)
            Ereignisse dieser Art verwerfen darf. `false` für jedes `security`-,
            `payment`-, `dispute`- und `responsible_gambling`-Ereignis sowie für
            `gameplay.bet_placed`, `gameplay.bet_settled` und
            `gameplay.p2p_settlement`.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Der API-Schlüssel Ihrer Anwendung, aus Entwickler -> API-Schlüssel in
        der Business Console. Der Primärschlüssel hat Vollzugriff. Ein benannter
        Schlüssel kann im Geltungsbereich eingeschränkt werden: keine, Lese-
        oder Schreibberechtigung pro Ressource, beschränkt auf bestimmte
        Workflows oder genehmigte Sitzungen, auf eine Liste von IP-Adressen und
        auf ein Ablaufdatum. 401 bedeutet, dass der Schlüssel falsch, widerrufen
        oder abgelaufen ist; 403 bedeutet, dass kein Schlüssel gesendet wurde,
        der Schlüssel keinen Zugriff auf diese Ressource oder Aktion hat oder
        die Anfrage von einer Adresse außerhalb seiner IP-Liste stammte; 404 bei
        einer Sitzungsroute bedeutet, dass die Sitzung außerhalb der Workflows
        oder Status des Schlüssels liegt. Ein Schlüssel ohne Medienzugriff
        erhält Bild-, Video- und PDF-URLs als null, und ein Schlüssel ohne
        Schreibberechtigung für Sitzungen erhält Sitzungslinks und Token als
        null. Siehe https://docs.didit.me/console/api-keys.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.