> ## 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.

# Liste des événements de surveillance (API)

> Didit : listez les événements de surveillance filtrés par catégorie, statut, appareil, IP, paiement et période, du plus récent au plus ancien.

Prompt de l'API de liste des événements de surveillance
Copier le prompt dans le presse-papiers

<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>

Coller dans

Les événements sont classés par [classes de conservation](https://docs.didit.me/fr/transaction-monitoring/events.md#conservation), donc un événement dont la période de conservation est arrivée à son terme n'apparaît plus ici. Consultez [Ingestion des événements](https://docs.didit.me/fr/transaction-monitoring/events.md#relire-les-événements) pour la référence des filtres, et [Règles sur les événements](https://docs.didit.me/fr/transaction-monitoring/event-rules.md) pour ce qui fait évoluer `rules_matched_count`.


## OpenAPI

````yaml fr/openapi-25.json GET /v3/events/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API de vérification d'identité. Authentifiez-vous avec l'en-tête x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/events/:
    get:
      tags:
        - Monitoring Events
      summary: Lister les événements de surveillance
      description: >-
        Lister les événements de surveillance stockés pour votre application, du
        `occurred_at` le plus récent au plus ancien, avec des filtres optionnels
        combinés par AND. Les filtres à valeurs multiples (`event_category`,
        `action_type`, `status`, `retention_class`) répètent le paramètre et
        correspondent à l'une des valeurs ; les autres filtres sont des
        correspondances exactes, et les valeurs inconnues ne renvoient
        simplement aucun événement. Chaque résultat est un résumé : appelez `GET
        /v3/events/{event_uuid}/` pour le payload, le contexte de l'appareil,
        l'enrichissement de l'IP et les éléments de preuve des règles, et
        préférez `GET /v3/events/subjects/{vendor_data}/` pour l'historique d'un
        seul sujet. Les lectures fonctionnent que l'ingestion d'événements soit
        activée ou non. Une clé API restreinte nécessite `transactions: read`.
        Voir [Ingestion
        d'événements](https://docs.didit.me/fr/transaction-monitoring/events).
      operationId: list_monitoring_events
      parameters:
        - name: limit
          in: query
          required: false
          description: "Nombre maximal d'événements par page. Vaut par défaut 50. Les valeurs supérieures à 1000000 renvoient `400`\_; une valeur non numérique, nulle ou négative revient à 50."
          schema:
            type: integer
            default: 50
            minimum: 1
            maximum: 1000000
          example: 50
        - name: offset
          in: query
          required: false
          description: >-
            Nombre d'événements à ignorer. Vaut 0 par défaut. Privilégiez
            l'utilisation de l'URL `next` de la réponse.
          schema:
            type: integer
            maximum: 1000000
            minimum: 0
            default: 0
          example: 0
        - name: event_category
          in: query
          required: false
          description: >-
            Uniquement les événements appartenant à ces catégories. Répétez le
            paramètre pour plusieurs valeurs
            (`?event_category=payment&event_category=dispute`) ; un événement
            correspondant à l'une d'entre elles est renvoyé.
          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: >-
            Uniquement les événements associés à ces types d'actions (exacts,
            sensibles à la casse). Répétez pour plusieurs valeurs.
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - deposit_completed
            - chargeback_opened
        - name: status
          in: query
          required: false
          description: >-
            Uniquement les événements associés à ces statuts. Répétez pour
            plusieurs valeurs.
          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: >-
            Uniquement les événements appartenant à ces classes de conservation.
            Répétez pour plusieurs valeurs.
          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: >-
            Correspondance exacte sur le `vendor_data` du sujet. Le même
            identifiant peut désigner un individu et une entreprise ; ajoutez
            `subject_entity_type` pour en choisir un, ou utilisez `GET
            /v3/events/subjects/{vendor_data}/`.
          schema:
            type: string
          example: user-42
        - name: subject_entity_type
          in: query
          required: false
          description: >-
            `company` ne renvoie que les événements des sujets correspondant à
            des entreprises ; toute autre valeur non vide (par exemple
            `individual`) ne renvoie que les événements des individus.
            Omettez-le pour renvoyer les deux.
          schema:
            type: string
            enum:
              - individual
              - company
          example: individual
        - name: business_vendor_data
          in: query
          required: false
          description: >-
            Correspondance exacte sur le `business.vendor_data` envoyé avec
            l'événement.
          schema:
            type: string
          example: merchant-7
        - name: session_id
          in: query
          required: false
          description: Correspondance exacte sur `session.session_id`.
          schema:
            type: string
          example: web-session-abc
        - name: device_fingerprint
          in: query
          required: false
          description: Correspondance exacte sur `device_context.fingerprint`.
          schema:
            type: string
          example: fp-a8c1
        - name: ip_address
          in: query
          required: false
          description: Correspondance exacte sur l'adresse IP de l'événement.
          schema:
            type: string
          example: 203.0.113.42
        - name: game_id
          in: query
          required: false
          description: Correspondance exacte sur le `game_id` promu.
          schema:
            type: string
          example: poker-holdem-01
        - name: round_id
          in: query
          required: false
          description: Correspondance exacte sur le `round_id` promu.
          schema:
            type: string
          example: round-88231
        - name: affiliate_code
          in: query
          required: false
          description: Correspondance exacte sur le `affiliate_code` promu.
          schema:
            type: string
          example: aff-summer
        - name: payment_reference_id
          in: query
          required: false
          description: >-
            Correspondance exacte sur la référence de paiement (provenant de
            `transaction_context.payment_reference_id` ou de
            `payload.payment_reference_id`).
          schema:
            type: string
          example: dep_735
        - name: counterparty_vendor_data
          in: query
          required: false
          description: Correspondance exacte sur le `counterparty_vendor_data` promu.
          schema:
            type: string
          example: user-77
        - name: matched_only
          in: query
          required: false
          description: >-
            `true` (également `1` ou `yes`, insensible à la casse) renvoie
            uniquement les événements pour lesquels au moins une règle a
            correspondu (`rules_matched_count` supérieur à 0). Toute autre
            valeur est ignorée.
          schema:
            type: boolean
            default: false
          example: true
        - name: occurred_from
          in: query
          required: false
          description: "Uniquement les événements dont `occurred_at` est supérieur ou égal à cet instant (inclus). Envoyez une valeur ISO 8601\_: `2026-10-01T00:00:00Z`, un décalage explicite avec le `+` encodé en pourcentage (`2026-10-01T02:00:00%2B02:00`\_; un `+` non encodé est décodé comme un espace et la valeur ne peut plus être analysée), ou une date seule (`2026-10-01`), ce qui correspond à 00:00:00 UTC de ce jour-là. Une valeur sans décalage est interprétée en UTC. Les valeurs dans tout autre format ne sont pas acceptées."
          schema:
            type: string
            format: date-time
          example: '2026-10-01T00:00:00Z'
        - name: occurred_to
          in: query
          required: false
          description: >-
            Uniquement les événements dont `occurred_at` est inférieur ou égal à
            cet instant (inclus). Une date seule indique le début de cette
            journée, donc `occurred_to=2026-10-15` exclut le reste du 15 octobre
            ; envoyez `2026-10-15T23:59:59Z` pour l'inclure. Envoyez une valeur
            ISO 8601 : `2026-10-01T00:00:00Z`, un décalage explicite avec le `+`
            encodé en pourcentage (`2026-10-01T02:00:00%2B02:00` ; un `+` non
            encodé est décodé comme un espace et la valeur ne peut plus être
            analysée), ou une date seule (`2026-10-01`), ce qui correspond à
            00:00:00 UTC de ce jour-là. Une valeur sans décalage est interprétée
            en UTC. Les valeurs dans tout autre format ne sont pas acceptées.
          schema:
            type: string
            format: date-time
          example: '2026-10-17T23:59:59Z'
        - name: search
          in: query
          required: false
          description: >-
            Correspondance insensible à la casse sur une sous-chaîne de
            `event_id`, `action_type`, `subject_vendor_data` ou
            `counterparty_vendor_data`.
          schema:
            type: string
          example: chargeback
      responses:
        '200':
          description: Une page de résumés d'événements.
          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` ou `offset` est supérieur à 1000000. Le corps est un tableau
            JSON contenant un seul message. Un paramètre `limit` non numérique
            ou non positif utilise par défaut la valeur de 50 au lieu d'échouer.
          content:
            application/json:
              examples:
                limit too large:
                  summary: limite supérieure à 1000000
                  value:
                    - limit must not exceed 1000000.
                offset too large:
                  summary: offset supérieur à 1000000
                  value:
                    - offset must not exceed 1000000.
        '401':
          description: >-
            La clé API restreinte a expiré. Seule une clé expirée renvoie `401`
            ; une clé manquante ou invalide renvoie `403`.
          content:
            application/json:
              examples:
                Expired key:
                  value:
                    detail: This API key has expired.
        '403':
          description: >-
            Un en-tête `x-api-key` manquant (une clé erronée, révoquée ou
            expirée renvoie `401`), une clé restreinte sans `transactions:
            read`, une clé limitée à certains workflows ou à des sessions
            approuvées (une telle clé n'accède jamais aux données de
            surveillance des transactions), ou une requête provenant de
            l'extérieur de la liste d'autorisation IP de la clé.
          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: >-
            Limite de débit dépassée : les requêtes `GET` partagent un quota de
            600 requêtes par minute par clé API. Attendez `Retry-After`
            secondes, puis réessayez.
          headers:
            Retry-After:
              description: Secondes à attendre avant de réessayer.
              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: >-
        Une page d'événements de surveillance, avec le `occurred_at` le plus
        récent en premier.
      required:
        - count
        - next
        - previous
        - results
      properties:
        count:
          type: integer
          description: >-
            Nombre d'événements correspondants, exact jusqu'à 100 et plafonné à
            100 au-delà. Ne calculez pas le nombre de pages à partir de celui-ci
            ; suivez `next` jusqu'à ce qu'il soit null.
        next:
          type: string
          format: uri
          nullable: true
          description: URL de la page suivante, ou null sur la dernière page.
        previous:
          type: string
          format: uri
          nullable: true
          description: URL de la page précédente, ou null sur la première page.
        results:
          type: array
          items:
            $ref: '#/components/schemas/MonitoringEvent'
    MonitoringEvent:
      type: object
      description: >-
        Un événement de surveillance enregistré tel que renvoyé par les
        endpoints de liste et de chronologie du sujet. Les éléments de preuve
        restreints (payload, contexte de l'appareil, preuves de règle) ne sont
        renvoyés que par `GET /v3/events/{event_uuid}/`.
      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: >-
            Identifiant Didit de l'événement. Utilisez-le comme `{event_uuid}`
            dans les appels de récupération et de suppression.
        event_id:
          type: string
          maxLength: 128
          description: >-
            Votre propre identifiant, la clé d'idempotence que vous avez
            envoyée.
        event_category:
          type: string
          enum:
            - auth
            - session
            - gameplay
            - bonus
            - affiliate
            - payment
            - dispute
            - security
            - responsible_gambling
            - custom
          description: Catégorie d'événement.
        action_type:
          type: string
          maxLength: 128
          description: >-
            Ce qui s'est passé au sein de la catégorie, tel que vous l'avez
            envoyé.
        occurred_at:
          type: string
          format: date-time
          description: Date et heure de l'événement de votre côté.
        received_at:
          type: string
          format: date-time
          description: Date et heure auxquelles Didit a accepté l'événement.
        status:
          type: string
          enum:
            - ACCEPTED
            - APPROVED
            - IN_REVIEW
            - DECLINED
          description: >-
            `ACCEPTED` : enregistré, aucune règle correspondante n'a modifié son
            statut (la réponse normale pour la plupart des événements, et
            systématiquement la réponse dans une application sandbox, où aucune
            règle n'est exécutée). `APPROVED` : une règle s'est appliquée et le
            score est resté sous votre seuil d'examen. `IN_REVIEW` : une règle a
            fait dépasser le seuil d'examen au score ou a défini le statut.
            `DECLINED` : une règle l'a refusé ou le score a dépassé votre seuil
            de refus.
        score:
          type: integer
          description: >-
            Score de règle cumulé. Commence à 0 ; les actions de règle
            `add_score` le modifient (les deltas négatifs sont autorisés).
        subject_vendor_data:
          type: string
          maxLength: 255
          description: >-
            `subject.vendor_data` de l'événement : votre identifiant pour
            l'utilisateur ou l'entreprise.
        subject_entity_type:
          type: string
          description: >-
            `individual` ou `company` : le type de sujet désigné par
            `subject_vendor_data`.
          example: individual
        subject_uuid:
          type: string
          format: uuid
          nullable: true
          description: >-
            UUID de l'utilisateur (particulier) ou de l'entreprise auquel
            l'événement a été rattaché, ou null lorsque cet enregistrement
            n'existe plus.
        counterparty_vendor_data:
          type: string
          nullable: true
          description: >-
            L'autre acteur d'un événement P2P (promu depuis
            `payload.counterparty_vendor_data`).
          maxLength: 255
        session_id:
          type: string
          nullable: true
          description: '`session.session_id` envoyé avec l''événement.'
          maxLength: 255
        device_fingerprint:
          type: string
          nullable: true
          description: '`device_context.fingerprint` envoyé avec l''événement.'
          maxLength: 255
        ip_address:
          type: string
          nullable: true
          description: "Adresse de l'événement. Sur le canal serveur, il s'agit de `device_context.network_context.ip_address` tel que vous l'avez envoyé\_; sur le canal appareil, il s'agit de l'IP de la requête."
          maxLength: 64
        ip_country:
          type: string
          nullable: true
          description: >-
            Code pays de `ip_address` issu de l'enrichissement IP, ou null
            lorsque l'adresse n'a pas été enrichie (manquante, privée ou
            télémétrie de faible valeur dont l'adresse n'était pas déjà connue).
          example: ES
        amount:
          type: string
          nullable: true
          description: >-
            Montant sous forme de chaîne décimale avec 18 décimales, provenant
            de `transaction_context.amount`, `payload.amount` ou
            `payload.stake_amount`, dans cet ordre.
          example: '250.000000000000000000'
        currency:
          type: string
          nullable: true
          description: >-
            Devise issue de `transaction_context.currency` ou
            `payload.currency`.
          maxLength: 10
        game_id:
          type: string
          nullable: true
          description: Promu depuis `payload.game_id`.
          maxLength: 128
        round_id:
          type: string
          nullable: true
          description: Promu depuis `payload.round_id`.
          maxLength: 128
        bonus_id:
          type: string
          nullable: true
          description: Promu depuis `payload.bonus_id`.
          maxLength: 128
        affiliate_code:
          type: string
          nullable: true
          description: Promu depuis `payload.affiliate_code`.
          maxLength: 128
        payment_reference_id:
          type: string
          nullable: true
          description: >-
            Référence de paiement issue de
            `transaction_context.payment_reference_id` ou de
            `payload.payment_reference_id`.
          maxLength: 255
        retention_class:
          type: string
          enum:
            - low_value
            - standard
            - risk_relevant
            - monetary_or_compliance
          description: >-
            Classe de conservation. Les événements de paiement et de litige sont
            `monetary_or_compliance` ; les événements de sécurité et de jeu
            responsable sont `risk_relevant` ; `session.page_view`,
            `session.sdk_heartbeat`, `session.sdk_loaded`,
            `session.device_seen`, `session.bot_signal_observed`,
            `bonus.promotion_viewed` et `affiliate.referral_clicked` sont
            `low_value` ; tout le reste est `standard`. Un événement auquel
            correspond une règle active est promu en `risk_relevant` (jamais
            rétrogradé).
        rules_matched_count:
          type: integer
          minimum: 0
          description: >-
            Nombre de règles correspondant à l'événement, y compris les règles
            en mode `TEST` (qui enregistrent des éléments probants sans
            appliquer d'actions).
        correlation_pending:
          type: boolean
          description: >-
            `true` tant qu'une règle asynchrone (corrélation entre sujets ou
            séquence de plus de 24 heures) doit encore s'exécuter pour cet
            événement. Elle se résout en quelques minutes et `status`, `score`
            ainsi que `rules_matched_count` se mettent à jour sur place.
        is_droppable:
          type: boolean
          description: >-
            Indique si un SDK soumis à une contre-pression peut abandonner les
            événements de ce type. `false` pour chaque événement `security`,
            `payment`, `dispute` et `responsible_gambling`, ainsi que pour
            `gameplay.bet_placed`, `gameplay.bet_settled` et
            `gameplay.p2p_settlement`.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        La clé API de votre application, issue de Développeurs -> Clés API dans
        la Business Console. La clé principale dispose d'un accès complet. Une
        clé nommée peut être restreinte : aucun, lecture ou écriture par
        ressource, limitée à certains workflows ou aux sessions approuvées, à
        une liste d'adresses IP et à une date d'expiration. 401 signifie que la
        clé est incorrecte, révoquée ou expirée ; 403 signifie qu'aucune clé n'a
        été envoyée, que la clé n'a pas accès à cette ressource ou action, ou
        que la requête provient d'une adresse hors de sa liste d'IP ; 404 sur
        une route de session signifie que la session est hors des workflows ou
        des statuts de la clé. Une clé sans accès aux médias reçoit les URL
        d'images, de vidéos et de PDF à null, et une clé sans accès en écriture
        aux sessions reçoit les liens et tokens de session à null. Voir
        https://docs.didit.me/console/api-keys.

````

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