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

# Retirer de la liste de blocage : API de déblocage

> POST /v3/blocklist/remove/ : levez le blocage d'un visage, document, téléphone ou e-mail d'une session Didit en un seul appel.



Prompt de l'API de retrait de la liste de blocage
        Copier le prompt dans le presse-papiers



      
      

\<pre>

\`Lift the block on the face, document, phone number or email address of one of my Didit verification sessions through the Management API.

Endpoint:
POST https://verification.didit.me/v3/blocklist/remove/

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

Goal:
\- Undo a blocklist decision for a session, for example after a false positive.

Request body (application/json):
\{
"session_id": "33333333-4444-5555-6666-777777777777", // required: a verification session of my application
"unblock_face": true,       // optional, default false
"unblock_document": true,   // optional, default false
"unblock_phone": false,     // optional, default false
"unblock_email": false      // optional, default false
}
At least one unblock_* flag must be true.

Behavior:
\- Didit uses the session's most recent record of each selected type.
\- The record is no longer flagged as blocklisted, and the system blocklist entries created from it are deleted, so it no longer declines new sessions.
\- Entries added by value are not touched: if the same phone number was also added to the phone blocklist by hand, it stays blocked until I delete that entry with DELETE /v3/lists/{list_uuid}/entries/{entry_uuid}/.
\- Unblocking a record that is not blocklisted succeeds and changes nothing.
\- Sessions that already finished are not changed.

Example call:
curl -X POST "https://verification.didit.me/v3/blocklist/remove/" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"session_id": "33333333-4444-5555-6666-777777777777", "unblock_face": true, "unblock_document": true}'

Example response (200):
\{ "message": "Successfully removed from blocklist." }

Failure modes:
\- 400: session_id is missing ({ "session_id": ["This field is required."] }) or not a UUID ({ "session_id": ["Must be a valid UUID."] }); the session is not a verification session of this application ({ "non_field_errors": ["Session not found"] }; business verification sessions are not accepted); no flag is true ({ "non_field_errors": ["Must specify at least one item to unblock"] }); or the session has no record of a selected type ({ "non_field_errors": ["Session does not have an email record"] }).
\- 401: the API key has expired.
\- 403: missing x-api-key (a wrong, revoked or expired key gets 401) ({ "detail": "You do not have permission to perform this action." }), or a scoped key without workflows: write.
\- 429: rate limited (see /integration/rate-limiting); back off and retry.

Side effects:
\- Deletes the matching entries from the system face, document, phone and email blocklists.

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

\</pre>



      
      

Coller dans

Levez le blocage des données collectées lors d'une session de vérification : son visage, son document d'identité, son numéro de téléphone ou son adresse e-mail. Les données ne sont plus signalées comme figurant sur la liste de blocage, et les entrées de la liste de blocage système créées à partir de celles-ci sont supprimées. Il ne refuse donc plus les nouvelles sessions.> [!NOTE]
>
> Seules les entrées créées à partir des données de la session sont retirées. Une valeur ajoutée manuellement à une liste, comme le même numéro de téléphone saisi dans la liste de blocage des numéros de téléphone, reste bloquée : recherchez-la avec [Lister les entrées](https://docs.didit.me/fr/management-api/lists/list-entries.md) et supprimez-la avec [Supprimer l'entrée](https://docs.didit.me/fr/management-api/lists/delete-entry.md).Pour voir ce qui est actuellement bloqué, utilisez [Lister les éléments bloqués](https://docs.didit.me/fr/management-api/blocklist/list.md). Consultez [Gérer la liste de blocage](https://docs.didit.me/fr/console/blocklist-users.md) pour gérer la liste de blocage dans la console.


## OpenAPI

````yaml fr/openapi-25.json POST /v3/blocklist/remove/
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/blocklist/remove/:
    post:
      tags:
        - Blocklist
      summary: Retirer les éléments de la session de la liste de blocage
      description: >-
        Lève le blocage sur le visage, le document d'identité, le numéro de
        téléphone ou l'adresse e-mail d'une session de vérification de personne
        de l'application. Pour chaque type sélectionné, Didit prend
        l'enregistrement le plus récent de la session, retire son indicateur de
        mise sur liste de blocage et supprime les entrées de liste de blocage
        système créées à partir de cet enregistrement, afin qu'il ne refuse plus
        de nouvelles sessions. Les entrées ajoutées à une liste par valeur ne
        sont pas modifiées : retrouvez-les avec [List list
        entries](https://docs.didit.me/fr/management-api/lists/list-entries) et
        supprimez-les avec [Delete a list
        entry](https://docs.didit.me/fr/management-api/lists/delete-entry).
        Débloquer un enregistrement qui n'est pas sur liste de blocage réussit
        et ne modifie rien, et les sessions déjà terminées ne sont pas
        modifiées. Une clé API restreinte nécessite `workflows: write`.
      operationId: remove_from_blocklist
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - session_id
              description: Au moins un indicateur `unblock_*` doit être `true`.
              properties:
                session_id:
                  type: string
                  format: uuid
                  description: >-
                    Une session de vérification d'utilisateur de votre
                    application. Les sessions supprimées sont refusées.
                unblock_face:
                  type: boolean
                  default: false
                  description: Lever le blocage sur le visage de la session.
                unblock_document:
                  type: boolean
                  default: false
                  description: Lever le blocage sur le document d'identité de la session.
                unblock_phone:
                  type: boolean
                  default: false
                  description: Lever le blocage sur le numéro de téléphone de la session.
                unblock_email:
                  type: boolean
                  default: false
                  description: Lever le blocage sur l'adresse e-mail de la session.
            examples:
              Face and document:
                value:
                  session_id: 33333333-4444-5555-6666-777777777777
                  unblock_face: true
                  unblock_document: true
      responses:
        '200':
          description: Le blocage sur les éléments sélectionnés a été levé.
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
                    description: Toujours `Successfully removed from blocklist.`
              examples:
                Unblocked:
                  value:
                    message: Successfully removed from blocklist.
        '400':
          description: >-
            Le corps est invalide, la session n'est pas une session de
            vérification de cette application, ou elle ne possède aucun
            enregistrement du type sélectionné. Rien n'a été modifié.
          content:
            application/json:
              examples:
                Unknown session:
                  value:
                    non_field_errors:
                      - Session not found
                No item selected:
                  value:
                    non_field_errors:
                      - Must specify at least one item to unblock
                No email record:
                  value:
                    non_field_errors:
                      - Session does not have an email record
                Invalid session id:
                  value:
                    session_id:
                      - Must be a valid UUID.
                Missing session id:
                  value:
                    session_id:
                      - This field is required.
        '401':
          description: >-
            La clé API restreinte a expiré. Les autres échecs d'authentification
            renvoient `403`.
          content:
            application/json:
              examples:
                Expired API key:
                  value:
                    detail: This API key has expired.
        '403':
          description: >-
            L'en-tête `x-api-key` est manquant (une clé incorrecte, révoquée ou
            expirée renvoie `401`), ou une clé API restreinte n'a pas
            l'autorisation `workflows: write` ou est utilisée depuis une adresse
            IP hors de sa liste d'autorisation.
          content:
            application/json:
              examples:
                Missing or invalid API key:
                  value:
                    detail: You do not have permission to perform this action.
                Scoped key without workflows access:
                  value:
                    detail: This API key has no write access to workflows.
        '429':
          $ref: '#/components/responses/RateLimitedWrite'
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: |-
            curl -X POST 'https://verification.didit.me/v3/blocklist/remove/' \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{
                "session_id": "33333333-4444-5555-6666-777777777777",
                "unblock_face": true,
                "unblock_document": true
              }'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.blocklist.remove(
                session_id="33333333-4444-5555-6666-777777777777",
                unblock_face=True,
                unblock_document=True,
            )
            print(result)
        - lang: javascript
          label: Node.js
          source: |-
            import Didit from "@didit-protocol/sdk-node";

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

            const result = await didit.blocklist.remove({
              session_id: "33333333-4444-5555-6666-777777777777",
              unblock_face: true,
              unblock_document: true,
            });
            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Blocklist.Remove(ctx, didit.BlocklistRemoveParams{\n\tSessionID:       \"33333333-4444-5555-6666-777777777777\",\n\tUnblockFace:     didit.Bool(true),\n\tUnblockDocument: didit.Bool(true),\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.BlocklistRemoveParams;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result =
            client.blocklist().remove(BlocklistRemoveParams.builder()
                    .sessionId("33333333-4444-5555-6666-777777777777")
                    .unblockFace(true)
                    .unblockDocument(true)
                    .build());
            System.out.println(result);
        - lang: php
          label: PHP
          source: |-
            <?php

            require 'vendor/autoload.php';

            use Didit\DiditClient;

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

            $result = $didit->blocklist->remove([
                'session_id' => '33333333-4444-5555-6666-777777777777',
                'unblock_face' => true,
                'unblock_document' => true,
            ]);
            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

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

            result = didit.blocklist.remove(
              session_id: "33333333-4444-5555-6666-777777777777",
              unblock_face: true,
              unblock_document: true
            )
            puts result.to_h
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            var result = await client.Blocklist.RemoveAsync(new
            BlocklistRemoveParams

            {
                SessionId = "33333333-4444-5555-6666-777777777777",
                UnblockFace = true,
                UnblockDocument = true,
            });

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  responses:
    RateLimitedWrite:
      description: >-
        La limite d'écriture partagée de 300 requêtes par minute et par clé API
        a été dépassée. Respectez l'en-tête `Retry-After` avant de réessayer.
      content:
        application/json:
          schema:
            type: object
            required:
              - detail
            properties:
              detail:
                type: string
          example:
            detail: >-
              Write request rate limit exceeded. You can make up to 300 requests
              per minute.
  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.