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

# API de liste des dossiers

> Filtrez les dossiers de conformité Didit par statut, priorité, source, modèle, assigné, tag ou échéance, avec recherche plein texte.



Prompt de l'API de liste des dossiers
        Copier le prompt dans le presse-papiers



      
      

\<pre>

\`List compliance cases for my Didit application through the Management API.

Endpoint:
GET https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/cases/

Authentication:
Use the x-api-key header with my Didit API key.

Goal:
\- Retrieve cases with the same filtering the Console's Cases list offers: status, priority, source, blueprint, assignee, tag, created-date range, due-before, and overdue. Paginated with limit/offset.

Useful query params:
\- status__in=OPEN,AWAITING_USER,RESOLVED (comma-separated)
\- priority=LOW,MEDIUM,HIGH (comma-separated)
\- source__in=MANUAL,AML_SCREENING,TRANSACTION_RULE,WORKFLOW_BUILDER
\- blueprint=<uuid>, assigned_to=<uuid>, unassigned=true|false, tag=<string>
\- search=<string> - matches title, case_number, tag, subject name/UUID/external ID, linked session UUID, linked transaction UUID
\- date_from=YYYY-MM-DD, date_to=YYYY-MM-DD (created_at range), due_before=<ISO datetime>, overdue=true
\- ordering=created_at|-created_at|due_at|-due_at (default -created_at)

Example call:
curl -X GET "https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/cases/?status__in=OPEN,AWAITING_USER&ordering=-due_at" \
-H "x-api-key: YOUR_API_KEY"

Response shape:
\{"count": int, "next": url|null, "previous": url|null, "results": [CaseListItem, ...]}
count is exact up to 100 and capped at 100 beyond that for performance - rely on next being null to detect the last page, never on count.
Each CaseListItem has uuid, case_number, title, status, resolution, pending_resolution (set only while a 4-eyes resolution is staged), checker {member_uuid, name, email}, priority, source, tags, subject {type, uuid, name, external_id, country, portrait}, assigned_to {uuid, full_name, email}, team {uuid, name}, blueprint {uuid, name}, links_count, notes_count, due_at, resolved_at, created_at, updated_at.
\- subject.country - ISO 3166-1 alpha-3 code, or null when unknown. A business: its country of incorporation. A person: the issuing country of one of their identity documents.
\- subject.portrait - short-lived signed URL of the person's portrait, or null. Always null for a business. Download the image when you read it; do not store the URL.
\- team - the review team that owns the case, or null.
\- checker - the member named to approve a pending four-eyes resolution, or null. Set only while a resolution waits on a named checker; name is null when unknown.

Failure modes:
\- 401 - missing or malformed x-api-key.
\- 403 - a key with restricted access gets {"detail": "This API key has no access to this endpoint."} (cases need a full-access key). A console member token needs list:cases.

Side effects: none, pure read.

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

\</pre>



      
      

Coller dans

Liste les dossiers de l'application, les plus récents en premier par défaut. Chaque filtre et option de tri disponible dans la liste des dossiers de la Console est exposé sous forme de paramètre de requête, y compris la recherche en texte intégral `search` sur le sujet, les tags, le numéro de dossier et les identifiants de session ou de transaction liés.
Chaque dossier porte aussi son `team` propriétaire, le `checker` désigné d'une résolution à double validation en attente, ainsi que le `country` et le `portrait` du sujet.## AccèsLes endpoints des dossiers nécessitent une [clé API](https://docs.didit.me/fr/console/api-keys.md) à accès complet.
Une clé à accès restreint reçoit `403`.## Pages associées- [Créer un dossier](https://docs.didit.me/fr/management-api/cases/create.md)
- [Mettre à jour un dossier](https://docs.didit.me/fr/management-api/cases/update.md)
- [Analyses des dossiers](https://docs.didit.me/fr/management-api/cases/statistics.md)
- [Dossiers (Console)](https://docs.didit.me/fr/console/case-management/cases.md)


## OpenAPI

````yaml fr/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/
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}/cases/:
    get:
      tags:
        - Cases
      summary: Lister les dossiers
      description: "Lister les dossiers pour l'application, les plus récents en premier. Prend en charge le filtrage, la recherche et le tri\_; voir les paramètres de requête. Paginé avec `limit`/`offset`."
      operationId: list_cases
      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: limit
          in: query
          schema:
            type: integer
            default: 50
            minimum: 1
          description: Taille de page. Vaut 50 par défaut.
        - name: offset
          in: query
          schema:
            type: integer
            default: 0
            minimum: 0
          description: Décalage de départ (base zéro) du premier enregistrement.
        - name: status__in
          in: query
          schema:
            type: string
          description: >-
            Statuts à inclure séparés par des virgules, par exemple
            OPEN,AWAITING_USER.
        - name: priority
          in: query
          schema:
            type: string
          description: Priorités à inclure séparées par des virgules.
        - name: source__in
          in: query
          schema:
            type: string
          description: Sources à inclure séparées par des virgules.
        - name: blueprint
          in: query
          schema:
            type: string
            format: uuid
          description: Filtrer selon les dossiers associés à ce blueprint.
        - name: assigned_to
          in: query
          schema:
            type: string
            format: uuid
          description: Filtrer selon les dossiers assignés à cet utilisateur.
        - name: unassigned
          in: query
          schema:
            type: boolean
          description: >-
            true pour les dossiers non attribués, false pour les dossiers
            attribués.
        - name: tag
          in: query
          schema:
            type: string
          description: Filtrer selon les dossiers portant exactement ce tag.
        - name: search
          in: query
          schema:
            type: string
          description: >-
            Correspond à title, case_number, tag, nom/UUID/identifiant externe
            du sujet, UUID de la session liée, ou UUID de la transaction liée.
        - name: date_from
          in: query
          schema:
            type: string
            format: date
          description: Limite inférieure de la date de création (incluse).
        - name: date_to
          in: query
          schema:
            type: string
            format: date
          description: Limite supérieure de la date de création (incluse).
        - name: due_before
          in: query
          schema:
            type: string
            format: date-time
          description: Limite supérieure de due_at.
        - name: overdue
          in: query
          schema:
            type: boolean
          description: >-
            true pour ne renvoyer que les dossiers en retard ouverts/en attente
            de l'utilisateur.
        - name: ordering
          in: query
          schema:
            type: string
            enum:
              - created_at
              - '-created_at'
              - due_at
              - '-due_at'
            default: '-created_at'
          description: Ordre de tri. due_at place les valeurs nulles en dernier.
      responses:
        '200':
          description: Liste paginée des dossiers.
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: integer
                    description: >-
                      Nombre de lignes correspondantes. Exact jusqu'à 100,
                      plafonné à 100 au-delà pour des raisons de performance.
                      Fiez-vous à la valeur null de `next` pour détecter la
                      dernière page.
                  next:
                    type: string
                    nullable: true
                    description: URL absolue de la page suivante, ou null.
                  previous:
                    type: string
                    nullable: true
                    description: URL absolue de la page précédente, ou null.
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/CaseListItem'
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/cases/?status__in=OPEN,AWAITING_USER&ordering=-due_at'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

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

            for item in client.cases.list():
                print(item)
        - 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();

            for await (const item of didit.cases.list()) {
              console.log(item);
            }
        - 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\niter := client.Cases.ListAutoPaging(ctx, didit.CasesListParams{})\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_ORGANIZATION_ID
            // and DIDIT_APPLICATION_ID.
            Didit client = new Didit();

            for (var item : client.cases().list()) {
                System.out.println(item);
            }
        - 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();

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

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

            didit.cases.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, DIDIT_ORGANIZATION_ID
            // and DIDIT_APPLICATION_ID.
            using var client = new DiditClient();

            await foreach (var item in await client.Cases.ListAsync())
            {
                Console.WriteLine(JsonSerializer.Serialize(item));
            }
components:
  schemas:
    CaseListItem:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        case_number:
          type: string
          nullable: true
          description: Attribué automatiquement, par ex. CS-0001.
        title:
          type: string
        status:
          type: string
          enum:
            - OPEN
            - AWAITING_USER
            - RESOLVED
        resolution:
          type: string
          enum:
            - FALSE_POSITIVE
            - VALID_THREAT
            - INCONCLUSIVE
            - REQUIREMENTS_NOT_MET
            - REQUIREMENTS_SATISFIED
          nullable: true
        pending_resolution:
          type: object
          nullable: true
          description: >-
            Défini uniquement lorsqu'une résolution à 4 yeux est préparée sur le
            blueprint du checker, en attente d'approbation ou de rejet.
          properties:
            resolution:
              type: string
              enum:
                - FALSE_POSITIVE
                - VALID_THREAT
                - INCONCLUSIVE
                - REQUIREMENTS_NOT_MET
                - REQUIREMENTS_SATISFIED
            resolution_notes:
              type: string
              nullable: true
            maker_email:
              type: string
              format: email
              nullable: true
              description: >-
                E-mail du responsable qui a soumis la résolution. Null
                lorsqu'une clé API l'a soumise : cette résolution n'a pas
                d'auteur enregistré, donc approve et reject-approval renvoient
                403 pour tous les appelants.
            maker_name:
              type: string
              nullable: true
            maker_user_id:
              type: string
              format: uuid
              nullable: true
              description: >-
                UUID d'utilisateur du membre qui a soumis la résolution. Null
                lorsqu'une clé API l'a soumise. Ce membre ne peut pas être
                désigné comme `checker`.
            maker_blueprint_id:
              type: string
              format: uuid
            staged_at:
              type: string
              format: date-time
        checker:
          $ref: '#/components/schemas/CaseChecker'
        priority:
          type: string
          enum:
            - LOW
            - MEDIUM
            - HIGH
        source:
          type: string
          enum:
            - MANUAL
            - AML_SCREENING
            - TRANSACTION_RULE
            - WORKFLOW_BUILDER
        tags:
          type: array
          items:
            type: string
        subject:
          $ref: '#/components/schemas/CaseSubject'
        assigned_to:
          $ref: '#/components/schemas/CaseAssignee'
        assigned_at:
          type: string
          format: date-time
          nullable: true
        team:
          $ref: '#/components/schemas/CaseTeamSummary'
        due_at:
          type: string
          format: date-time
          nullable: true
        resolved_at:
          type: string
          format: date-time
          nullable: true
        created_by_email:
          type: string
          nullable: true
        created_by_name:
          type: string
          nullable: true
        blueprint:
          $ref: '#/components/schemas/CaseBlueprintSummary'
        links_count:
          type: integer
        notes_count:
          type: integer
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        application_id:
          type: string
          format: uuid
        application_name:
          type: string
        organization_id:
          type: string
          format: uuid
        organization_name:
          type: string
    CaseChecker:
      type: object
      nullable: true
      description: >-
        Le membre désigné pour approuver ou rejeter la résolution en attente.
        Défini uniquement lorsqu'une résolution à quatre yeux attend un
        vérificateur désigné. Null lorsque rien n'est en attente, pendant que la
        résolution en attente patiente dans la file d'attente des vérificateurs,
        et une fois la résolution approuvée, rejetée ou renvoyée pour un nouvel
        examen en raison de la modification des preuves.
      properties:
        member_uuid:
          type: string
          format: uuid
          description: "L'UUID d'utilisateur du membre\_: la valeur que vous transmettez comme `checker` lorsque vous résolvez le dossier."
        name:
          type: string
          nullable: true
          description: Le nom complet du membre, ou null lorsqu'il n'est pas connu.
        email:
          type: string
          format: email
    CaseSubject:
      type: object
      nullable: true
      description: >-
        L'utilisateur ou l'entreprise unique auquel ou à laquelle le dossier est
        rattaché.
      properties:
        type:
          type: string
          enum:
            - user
            - business
        uuid:
          type: string
          format: uuid
        name:
          type: string
        external_id:
          type: string
          nullable: true
          description: Le vendor_data du sujet.
        country:
          type: string
          nullable: true
          description: >-
            Code pays à trois lettres du sujet (ISO 3166-1 alpha-3), ou null
            lorsqu'il n'est pas connu. Pour une entreprise, son pays de
            constitution. Pour une personne, le pays de délivrance d'un document
            d'identité issu de ses vérifications ; une personne possédant des
            documents de plusieurs pays affiche l'un d'eux, et des codes de
            document OACI tels que `XXA` peuvent apparaître.
          example: ESP
        portrait:
          type: string
          format: uri
          nullable: true
          description: >-
            URL signée de courte durée de l'image du portrait de la personne.
            Toujours null pour une entreprise, et null pour une personne sans
            portrait. L'URL expire, téléchargez donc l'image lorsque vous
            consultez le dossier plutôt que d'enregistrer l'URL.
    CaseAssignee:
      type: object
      nullable: true
      properties:
        uuid:
          type: string
          format: uuid
        full_name:
          type: string
        email:
          type: string
          format: email
    CaseTeamSummary:
      type: object
      nullable: true
      description: >-
        L'équipe d'examen assignée au dossier, ou null si aucune équipe n'en est
        responsable. Le routage la définit lorsqu'une règle de routage attribue
        le dossier à l'une de ses équipes. Modifiez-la ou effacez-la avec `PATCH
        .../cases/{case_uuid}/` (`team`).
      properties:
        uuid:
          type: string
          format: uuid
        name:
          type: string
    CaseBlueprintSummary:
      type: object
      nullable: true
      properties:
        uuid:
          type: string
          format: uuid
        name:
          type: string
          maxLength: 24
  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.