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

# Ajouter un tag à un réseau de fraude (API)

> Ajoutez à un réseau de fraude l'un des tags de votre application, avec Didit. Renvoie le détail du réseau avec ses tags.



Prompt de l'API d'ajout de tag de réseau
        Copier le prompt dans le presse-papiers



      
      

\<pre>

\`Put one of my application's tags on a fraud network through the Management API.

Endpoint:
POST https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/tags/add/

Authentication:
Use the x-api-key header with my Didit API key.
Networks endpoints need a full-access API key: a key with restricted access gets 403.

Path parameter:
\- network_uuid: the network's UUID, from list networks.

Request body:
\{"tag_uuid": "<uuid of one of my application's tags>"}

Example call:
curl -X POST "https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/tags/add/" \
-H "x-api-key: YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{"tag_uuid": "7c9e6679-7425-40de-944b-e07fc1f90ae7"}'

Behavior:
\- 201 when the tag was added, 200 when it was already on the network (left as it is). Safe to retry.
\- Both return the network detail (same shape as get network). Its tags array lists my application's tags on the network, oldest first: {uuid, name, color, source (didit|custom), added_by, added_at}.
\- added_by is null when an API key adds the tag, and the console member's email when a member does.
\- Each application sees and changes only its own tags. fraud_tags (the tags the members carry) is not affected.

Failure modes:
\- 400: tag_uuid missing or not a UUID. {"tag_uuid": ["This field is required."]}
\- 404: {"detail": "Network not found."} (the network does not exist or has no member visible to this application), or {"detail": "Tag not found."} (the tag does not exist or belongs to another application).
\- 401: missing or invalid x-api-key.
\- 403: the API key belongs to another application, or it has restricted access (Networks needs a full-access key). A console member token needs write:networks.
\- 403 with {"code": "networks_not_entitled"}: Networks is not enabled for the organization.

For the full integration shape, see /integration/integration-prompt.`

\</pre>



      
      

Coller dans

Ajoutez l'un des tags de votre application à un réseau, par exemple pour le signaler à traiter ultérieurement ou pour consigner la conclusion de votre équipe.
Transmettez l'UUID du tag, issu des tags de votre application, dans `tag_uuid`.
Un tag appartenant à une autre application renvoie `404`, comme un tag qui n'existe pas.La réponse est le [détail complet du réseau](https://docs.didit.me/fr/management-api/networks/get.md), avec `201` lorsque le tag a été ajouté et `200` lorsqu'il figurait déjà sur le réseau.
Appeler à nouveau l'API avec le même tag ne modifie rien : vous pouvez donc réessayer sans risque.`tags` liste les tags de votre application sur le réseau, du plus ancien au plus récent.
`added_by` vaut `null` lorsqu'une clé API a ajouté le tag, et l'e-mail du membre de la console lorsqu'un membre l'a fait.
Les `fraud_tags` du réseau, c'est-à-dire les tags portés par ses membres, ne sont pas affectés.## Voir aussi- [Supprimer le tag du réseau](https://docs.didit.me/fr/management-api/networks/remove-tag.md)
- [Obtenir un réseau](https://docs.didit.me/fr/management-api/networks/get.md)
- [Lister les réseaux](https://docs.didit.me/fr/management-api/networks/list.md)


## OpenAPI

````yaml fr/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/tags/add/
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/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/tags/add/:
    post:
      tags:
        - Networks
      summary: Ajouter un tag à un réseau
      description: >-
        Associe l'un des tags de votre application au réseau. Renvoie les
        détails du réseau, dont `tags` liste les tags de votre application sur
        le réseau, avec `201` lorsque le tag a été ajouté et `200` lorsqu'il
        était déjà présent sur le réseau. Un tag appartenant à une autre
        application, ou qui n'existe pas, renvoie 404 `Tag not found.`.
        Nécessite une clé API avec accès complet, ou `write:networks` pour un
        membre de la console.
      operationId: add_network_tag
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID de l'organisation.
        - name: application_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID de l'application.
        - name: network_uuid
          in: path
          required: true
          schema:
            type: string
            format: uuid
            example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
          description: UUID du réseau.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NetworkTagRequest'
            example:
              tag_uuid: 7c9e6679-7425-40de-944b-e07fc1f90ae7
      responses:
        '200':
          description: >-
            L'étiquette était déjà présente sur le réseau et est laissée telle
            quelle. Renvoie les détails du réseau.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NetworkDetailResponse'
              example:
                uuid: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                network_id: N-0042
                name: null
                status: in_review
                risk:
                  score: 82
                  band: high
                  bar: 0.82
                pattern_types:
                  - exact_same_device
                  - same_email
                signal_types:
                  - device
                  - email
                member_counts:
                  total: 3
                  users: 3
                  businesses: 0
                  transaction_parties: 0
                member_status:
                  approved: 1
                  declined: 1
                  in_review: 0
                  not_completed: 1
                signal_coverage:
                  device:
                    signals: 1
                    subjects: 3
                    coverage: 1
                  email:
                    signals: 1
                    subjects: 2
                    coverage: 0.6667
                first_activity_at: '2026-10-01T09:12:44Z'
                last_activity_at: '2026-10-12T16:03:10Z'
                stats:
                  members:
                    total: 3
                    users: 3
                    businesses: 0
                    transaction_parties: 0
                  member_status:
                    approved: 1
                    declined: 1
                    in_review: 0
                    not_completed: 1
                  signals:
                    total: 2
                    by_type:
                      device:
                        signals: 1
                        subjects: 3
                        coverage: 1
                      email:
                        signals: 1
                        subjects: 2
                        coverage: 0.6667
                fraud_tags: []
                risk_signals:
                  residential_proxy_reuse:
                    detected: false
                    signal_count: 0
                    max_subject_count: 0
                  email_intelligence:
                    enriched_signal_count: 1
                    high_risk_count: 0
                    social_profile_count: 0
                  phone_intelligence:
                    enriched_signal_count: 0
                    high_risk_count: 0
                reviewed_at: '2026-10-12T16:30:00Z'
                reviewed_by: reviewer@example.com
                review_reason: Shared device across three new accounts.
                notes_count: 0
                sharing_mode: global
                cross_org_available: true
                cross_org_unavailable_reason: null
                tags:
                  - uuid: 7c9e6679-7425-40de-944b-e07fc1f90ae7
                    name: SUSPICIOUS
                    color: '#6366F1'
                    source: custom
                    added_by: null
                    added_at: '2026-10-13T08:15:00Z'
                outcomes:
                  approved: 1
                  declined: 1
                  in_review: 0
                  total: 3
                patterns:
                  - type: background
                    score: 0.8125
                    members: 3
                    reason: null
                    computed_at: '2026-10-13T08:00:00Z'
        '201':
          description: L'étiquette a été ajoutée. Renvoie les détails du réseau.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NetworkDetailResponse'
              example:
                uuid: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                network_id: N-0042
                name: null
                status: in_review
                risk:
                  score: 82
                  band: high
                  bar: 0.82
                pattern_types:
                  - exact_same_device
                  - same_email
                signal_types:
                  - device
                  - email
                member_counts:
                  total: 3
                  users: 3
                  businesses: 0
                  transaction_parties: 0
                member_status:
                  approved: 1
                  declined: 1
                  in_review: 0
                  not_completed: 1
                signal_coverage:
                  device:
                    signals: 1
                    subjects: 3
                    coverage: 1
                  email:
                    signals: 1
                    subjects: 2
                    coverage: 0.6667
                first_activity_at: '2026-10-01T09:12:44Z'
                last_activity_at: '2026-10-12T16:03:10Z'
                stats:
                  members:
                    total: 3
                    users: 3
                    businesses: 0
                    transaction_parties: 0
                  member_status:
                    approved: 1
                    declined: 1
                    in_review: 0
                    not_completed: 1
                  signals:
                    total: 2
                    by_type:
                      device:
                        signals: 1
                        subjects: 3
                        coverage: 1
                      email:
                        signals: 1
                        subjects: 2
                        coverage: 0.6667
                fraud_tags: []
                risk_signals:
                  residential_proxy_reuse:
                    detected: false
                    signal_count: 0
                    max_subject_count: 0
                  email_intelligence:
                    enriched_signal_count: 1
                    high_risk_count: 0
                    social_profile_count: 0
                  phone_intelligence:
                    enriched_signal_count: 0
                    high_risk_count: 0
                reviewed_at: '2026-10-12T16:30:00Z'
                reviewed_by: reviewer@example.com
                review_reason: Shared device across three new accounts.
                notes_count: 0
                sharing_mode: global
                cross_org_available: true
                cross_org_unavailable_reason: null
                tags:
                  - uuid: 7c9e6679-7425-40de-944b-e07fc1f90ae7
                    name: SUSPICIOUS
                    color: '#6366F1'
                    source: custom
                    added_by: null
                    added_at: '2026-10-13T08:15:00Z'
                outcomes:
                  approved: 1
                  declined: 1
                  in_review: 0
                  total: 3
                patterns:
                  - type: background
                    score: 0.8125
                    members: 3
                    reason: null
                    computed_at: '2026-10-13T08:00:00Z'
        '400':
          description: 'Corps non valide : `tag_uuid` est manquant ou n''est pas un UUID.'
          content:
            application/json:
              schema:
                type: object
                properties:
                  tag_uuid:
                    type: array
                    items:
                      type: string
              examples:
                Missing tag_uuid:
                  summary: tag_uuid manquant
                  value:
                    tag_uuid:
                      - This field is required.
                Invalid tag_uuid:
                  summary: tag_uuid non valide
                  value:
                    tag_uuid:
                      - Must be a valid UUID.
        '401':
          description: Identifiants manquants ou invalides.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                  code:
                    type: string
                    description: >-
                      Présent sur les erreurs codées, par exemple
                      `networks_not_entitled`.
              examples:
                Missing or invalid credentials:
                  summary: Identifiants manquants ou invalides
                  value:
                    detail: >-
                      Authentication credentials were not provided or are
                      invalid.
        '403':
          description: >-
            La clé API appartient à une autre application, ou il s'agit d'une
            clé avec un accès restreint : les endpoints Networks nécessitent une
            clé avec accès complet. Un token de membre de la console nécessite
            `write:networks`. Renvoyé également avec `code:
            networks_not_entitled` lorsque Networks n'est pas activé pour
            l'organisation.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                  code:
                    type: string
                    description: >-
                      Présent sur les erreurs codées, par exemple
                      `networks_not_entitled`.
              examples:
                Networks not enabled:
                  summary: Réseaux non activés
                  value:
                    detail: >-
                      Networks is disabled for this organization. Contact Didit
                      support if you believe this is an error.
                    code: networks_not_entitled
                Restricted API key:
                  summary: Clé API restreinte
                  value:
                    detail: This API key has no access to this endpoint.
                No permission:
                  summary: Aucune autorisation
                  value:
                    detail: You do not have permission to perform this action.
        '404':
          description: Introuvable.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                  code:
                    type: string
                    description: >-
                      Présent sur les erreurs codées, par exemple
                      `networks_not_entitled`.
              examples:
                Network not found:
                  summary: Réseau non trouvé
                  value:
                    detail: Network not found.
                Tag not found:
                  summary: Tag introuvable
                  value:
                    detail: Tag not found.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X POST
            'https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/networks/3fa85f64-5717-4562-b3fc-2c963f66afa6/tags/add/'
            \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{"tag_uuid": "7c9e6679-7425-40de-944b-e07fc1f90ae7"}'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            client = Didit()

            result = client.networks.add_tag(
                "3fa85f64-5717-4562-b3fc-2c963f66afa6",
                tag_uuid="7c9e6679-7425-40de-944b-e07fc1f90ae7",
            )
            print(result)
        - lang: javascript
          label: Node.js
          source: >-
            import Didit from "@didit-protocol/sdk-node";


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            const didit = new Didit();


            const result = await
            didit.networks.addTag("3fa85f64-5717-4562-b3fc-2c963f66afa6", {
              tag_uuid: "7c9e6679-7425-40de-944b-e07fc1f90ae7",
            });

            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID\n// and DIDIT_APPLICATION_ID.\nclient := didit.NewClient()\n\nresult, err := client.Networks.AddTag(ctx, \"3fa85f64-5717-4562-b3fc-2c963f66afa6\", didit.NetworkTagRequest{\n\tTagUUID: \"7c9e6679-7425-40de-944b-e07fc1f90ae7\",\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import me.didit.Didit;

            import me.didit.types.NetworkTagRequest;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            Didit client = new Didit();


            var result =
            client.networks().addTag("3fa85f64-5717-4562-b3fc-2c963f66afa6",
            NetworkTagRequest.builder()
                    .tagUuid("7c9e6679-7425-40de-944b-e07fc1f90ae7")
                    .build());
            System.out.println(result);
        - lang: php
          label: PHP
          source: >-
            <?php


            require 'vendor/autoload.php';


            use Didit\DiditClient;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            $didit = new DiditClient();


            $result =
            $didit->networks->addTag('3fa85f64-5717-4562-b3fc-2c963f66afa6', [
                'tag_uuid' => '7c9e6679-7425-40de-944b-e07fc1f90ae7',
            ]);

            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            didit = Didit::Client.new

            result = didit.networks.add_tag(
              "3fa85f64-5717-4562-b3fc-2c963f66afa6",
              tag_uuid: "7c9e6679-7425-40de-944b-e07fc1f90ae7"
            )
            puts result.to_h
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            using var client = new DiditClient();


            var result = await
            client.Networks.AddTagAsync("3fa85f64-5717-4562-b3fc-2c963f66afa6",
            new NetworkTagRequest

            {
                TagUuid = "7c9e6679-7425-40de-944b-e07fc1f90ae7",
            });

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    NetworkTagRequest:
      type: object
      required:
        - tag_uuid
      properties:
        tag_uuid:
          type: string
          format: uuid
          description: UUID de l'un des tags de votre application.
      example:
        tag_uuid: 7c9e6679-7425-40de-944b-e07fc1f90ae7
    NetworkDetailResponse:
      description: >-
        Les détails du réseau, ainsi que le mode de partage de l'organisation,
        l'application ou non des signaux inter-organisations à celle-ci, les
        tags de votre application sur le réseau, les résultats des membres et
        les scores de schémas.
      allOf:
        - $ref: '#/components/schemas/NetworkDetail'
        - type: object
          properties:
            sharing_mode:
              type: string
              enum:
                - 'off'
                - private
                - global
              description: "Le mode de partage inter-organisations de l'organisation. Seul `global` compare les réseaux entre organisations\_; `private` et `off` les conservent dans l'historique propre à l'organisation."
              example: global
            cross_org_available:
              type: boolean
              description: >-
                Indique si les signaux inter-organisations s'appliquent à cette
                organisation. Ils nécessitent à la fois le forfait Enterprise et
                le mode de partage `global`.
              example: true
            cross_org_unavailable_reason:
              type: string
              enum:
                - plan
                - sharing_mode
              nullable: true
              description: >-
                Raison pour laquelle les signaux inter-organisations ne
                s'appliquent pas, vérifiée dans cet ordre. `plan` : le forfait
                de l'organisation n'inclut pas le réseau de fraude
                inter-organisations (le forfait Enterprise est requis), quel que
                soit le mode de partage. `sharing_mode` : le forfait l'inclut,
                mais le mode de partage est `private` ou `off`. Null lorsque
                `cross_org_available` est `true`.
              example: null
            tags:
              type: array
              items:
                $ref: '#/components/schemas/NetworkTag'
              description: >-
                Les tags de votre application sur le réseau, du plus ancien au
                plus récent. Chaque application ne voit que ses propres tags.
                `fraud_tags` est distinct et inchangé : les tags que portent les
                membres du réseau.
            outcomes:
              $ref: '#/components/schemas/NetworkOutcomes'
            patterns:
              type: array
              items:
                $ref: '#/components/schemas/NetworkPatternScore'
              description: >-
                Scores de motifs sur l'ensemble du réseau. Actuellement un seul
                élément, `background`.
    NetworkDetail:
      allOf:
        - $ref: '#/components/schemas/NetworkListItem'
        - type: object
          properties:
            stats:
              type: object
              description: >-
                Statistiques agrégées pour le réseau (par exemple totaux des
                membres).
            fraud_tags:
              type: array
              items:
                type: object
              description: Tags de schémas de fraude détectés sur le réseau.
            risk_signals:
              type: object
              description: >-
                Résumés des signaux de risque : residential_proxy_reuse,
                email_intelligence, phone_intelligence.
            reviewed_at:
              type: string
              format: date-time
              nullable: true
            reviewed_by:
              type: string
              nullable: true
            review_reason:
              type: string
              nullable: true
      properties:
        notes_count:
          type: integer
          minimum: 0
          readOnly: true
          description: Nombre de notes privées d'analyste dans cette enquête.
    NetworkTag:
      type: object
      description: L'un des tags de votre application sur le réseau.
      properties:
        uuid:
          type: string
          format: uuid
          description: >-
            L'UUID de l'étiquette, la même valeur que celle transmise pour
            `tag_uuid`.
        name:
          type: string
        color:
          type: string
          description: Couleur hexadécimale, par exemple `#6366F1`.
        source:
          type: string
          enum:
            - didit
            - custom
          description: >-
            `didit` pour un tag prédéfini Didit, `custom` pour un tag créé par
            votre équipe.
        added_by:
          type: string
          nullable: true
          description: >-
            E-mail du membre de la console qui a ajouté le tag. Null lorsqu'une
            clé API l'a ajouté.
        added_at:
          type: string
          format: date-time
    NetworkOutcomes:
      type: object
      description: >-
        État des personnes et des entreprises du réseau. Chaque membre visible
        est comptabilisé une seule fois, selon le statut de sa vérification la
        plus récente ayant abouti à une décision. Les parties à la transaction
        ne sont pas comptabilisées.
      properties:
        approved:
          type: integer
          description: >-
            Membres dont la vérification décidée la plus récente a été
            approuvée.
        declined:
          type: integer
          description: Membres dont la vérification décidée la plus récente a été refusée.
        in_review:
          type: integer
          description: >-
            Membres dont la vérification décidée la plus récente est en cours
            d'examen.
        total:
          type: integer
          description: >-
            Membres ayant au moins une vérification, décidée ou non. Un membre
            dont toutes les vérifications sont indécises (non démarrée, en
            cours, expirée ou abandonnée) est comptabilisé ici et dans aucune
            autre clé.
    NetworkPatternScore:
      type: object
      description: >-
        Degré de similarité d'un type de données des membres sur l'ensemble du
        réseau. Un motif n'est pas un signal : aucune valeur partagée ne relie
        les membres.
      properties:
        type:
          type: string
          enum:
            - background
          description: >-
            `background` : la similarité moyenne entre toutes les paires
            d'arrière-plans de selfie des membres, la personne étant masquée. Il
            analyse le selfie le plus récent de chaque personne, au maximum les
            50 plus récents, et exclut les sessions d'assurance de l'âge. Il
            couvre l'ensemble du réseau, pas seulement les membres de vos
            applications.
        score:
          type: number
          nullable: true
          minimum: 0
          maximum: 1
          description: De 0 à 1, arrondi à 4 décimales. Null lorsque `reason` est défini.
        members:
          type: integer
          nullable: true
          description: >-
            Nombre de selfies de membres utilisés pour calculer le score. Un
            selfie illisible, ou montrant trop peu d'arrière-plan, n'est pas
            comparé. Null tant que le statut est `computing` ; 0 ou 1 avec
            `not_enough_selfies`.
        reason:
          type: string
          enum:
            - computing
            - not_enough_selfies
          nullable: true
          description: >-
            Raison pour laquelle il n'y a pas de score. `computing` : le score
            pour les membres actuels est en cours de calcul ; consultez à
            nouveau le réseau plus tard. `not_enough_selfies` : moins de deux
            membres ont un selfie utilisable. Nul lorsqu'il y a un score.
        computed_at:
          type: string
          format: date-time
          nullable: true
          description: Moment où le score a été calculé. Null pendant `computing`.
    NetworkListItem:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        network_id:
          type: string
          description: >-
            Identifiant séquentiel par organisation lisible par l'utilisateur,
            par exemple N-0001.
        name:
          type: string
          nullable: true
        status:
          type: string
          enum:
            - active
            - in_review
            - resolved
            - dismissed
          description: >-
            Statut du cycle de vie du réseau. Distinct de l'outcome_status par
            candidat au sein d'un réseau
            (approved/in_review/declined/not_completed).
        risk:
          $ref: '#/components/schemas/NetworkRiskDisplay'
        pattern_types:
          type: array
          items:
            type: string
            enum:
              - exact_same_device
              - similar_device
              - same_ip_address
              - same_address
              - similar_selfie_backgrounds
              - similar_poa_documents
              - same_document_number
              - same_phone_number
              - same_email
          description: Les modèles de regroupement détectés dans ce réseau.
        signal_types:
          type: array
          items:
            type: string
            enum:
              - ip_address
              - device
              - face
              - document_number
              - phone
              - email
              - address
          description: Les types de signaux distincts présents dans ce réseau.
        member_counts:
          type: object
          description: Nombre de membres par catégorie (par ex. total, par outcome_status).
        member_status:
          type: object
          description: Répartition des membres par outcome_status.
        signal_coverage:
          type: object
          description: Couverture par signal_type des membres de ce réseau.
        first_activity_at:
          type: string
          format: date-time
          nullable: true
        last_activity_at:
          type: string
          format: date-time
          nullable: true
    NetworkRiskDisplay:
      type: object
      properties:
        score:
          type: integer
          description: Score de risque, 0-100.
        band:
          type: string
          enum:
            - low
            - medium
            - high
          description: >-
            Catégorie dans laquelle le score s'affiche. high >= 70, medium >=
            40, sinon low.
        bar:
          type: number
          format: float
          description: Valeur normalisée de 0 à 1 pour afficher une barre de risque.
  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.