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

# Obter caso via API

> Recupere o detalhe completo de um caso na Management API da Didit: titular, blueprint, notas, eventos, links e estado do checklist.



Prompt da API para obter caso
        Copiar o prompt para a área de transferência



      
      

\<pre>

\`Retrieve a single case's full detail through the Management API.

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

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

Path parameter:
\- case_uuid - the case's UUID, from list cases or create case.

Response 200: CaseDetail with uuid, case_number, title, status, resolution, resolution_notes, priority, source, tags, subject {type, uuid, name, external_id, country, portrait}, assigned_to, team {uuid, name}, due_at, resolved_at, pending_resolution (set only while a 4-eyes resolution is staged), checker {member_uuid, name, email}, metadata, blueprint (with content_config), notes (newest 50), events (newest 100), links, checklist_items.
\- 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. Change it with PATCH on the same URL (team).
\- checker - the member named to approve the staged resolution, or null. Set only while pending_resolution waits on a named checker; cleared when the resolution is approved, rejected, or returned for a new review. name is null when unknown.
\- pending_resolution.maker_email is null when an API key submitted the resolution. Such a resolution has no recorded maker, so approve and reject-approval return 403 for every caller: submit four-eyes resolutions as a console member.

Failure modes:
\- 404 - case not found in this application (or deleted).
\- 401/403 - auth/permission errors. A key with restricted access gets 403 {"detail": "This API key has no access to this endpoint."} (cases need a full-access key). A console member token needs read:cases.

Side effects: none, pure read.

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

\</pre>



      
      

Colar em

Obtenha um caso com tudo o que é necessário para renderizar a página completa do caso: titular, blueprint (incluindo seu `content_config`), as notas e os eventos mais recentes, links e o estado da checklist.
O caso também traz o `team` responsável por ele, o `checker` designado para uma resolução pendente pelo princípio dos quatro olhos, além do `country` e do `portrait` do titular.## AcessoOs endpoints de casos exigem uma [chave de API](https://docs.didit.me/pt-br/console/api-keys.md) com acesso total.
Uma chave com acesso restrito resulta em `403`.## Conteúdo relacionado- [Listar casos](https://docs.didit.me/pt-br/management-api/cases/list.md)
- [Atualizar caso](https://docs.didit.me/pt-br/management-api/cases/update.md)
- [Listar notas do caso](https://docs.didit.me/pt-br/management-api/cases/list-notes.md)
- [Resolver caso](https://docs.didit.me/pt-br/management-api/cases/resolve.md)


## OpenAPI

````yaml pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API de verificação de identidade. Autentique-se com o cabeçalho x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/:
    get:
      tags:
        - Cases
      summary: Obter caso
      description: >-
        Obtenha um caso com seu titular, blueprint, notas, eventos, vínculos e
        checklist.
      operationId: get_case
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID da organização.
        - name: application_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID da aplicação.
        - name: case_uuid
          in: path
          required: true
          schema:
            type: string
            format: uuid
            example: c1a5e000-0000-4000-8000-000000000001
          description: UUID do caso.
      responses:
        '200':
          description: Detalhes do caso.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CaseDetail'
        '404':
          description: Caso (ou recurso aninhado) não encontrado nesta aplicação.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
      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/c1a5e000-0000-4000-8000-000000000001/'
            \
              -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()

            result = client.cases.retrieve(
                "c1a5e000-0000-4000-8000-000000000001",
            )
            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.cases.retrieve("c1a5e000-0000-4000-8000-000000000001");

            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.Cases.Retrieve(ctx, \"c1a5e000-0000-4000-8000-000000000001\")\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import me.didit.Didit;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            Didit client = new Didit();


            var result =
            client.cases().retrieve("c1a5e000-0000-4000-8000-000000000001");

            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->cases->retrieve('c1a5e000-0000-4000-8000-000000000001');

            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.cases.retrieve("c1a5e000-0000-4000-8000-000000000001")

            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.Cases.RetrieveAsync("c1a5e000-0000-4000-8000-000000000001");

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    CaseDetail:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        case_number:
          type: string
          nullable: true
        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
        resolution_notes:
          type: string
          nullable: true
        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
        resolved_by_email:
          type: string
          nullable: true
        pending_resolution:
          type: object
          nullable: true
          description: >-
            Definido apenas enquanto uma resolução com aprovação em duas etapas
            (4-eyes) está preparada no blueprint do verificador, aguardando
            aprovação ou rejeição da aprovação.
          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 do responsável que enviou a resolução. Null quando uma
                chave de API a enviou: essa resolução não tem autor registrado,
                portanto approve e reject-approval retornam 403 para qualquer
                chamador.
            maker_name:
              type: string
              nullable: true
            maker_user_id:
              type: string
              format: uuid
              nullable: true
              description: >-
                UUID de usuário membro do responsável que enviou a resolução.
                Null quando uma chave de API a enviou. Esse membro não pode ser
                indicado como `checker`.
            maker_blueprint_id:
              type: string
              format: uuid
            staged_at:
              type: string
              format: date-time
        checker:
          $ref: '#/components/schemas/CaseChecker'
        metadata:
          type: object
        blueprint:
          $ref: '#/components/schemas/CaseBlueprintDetail'
        notes:
          type: array
          items:
            $ref: '#/components/schemas/CaseNote'
          description: As 50 notas mais recentes.
        events:
          type: array
          items:
            $ref: '#/components/schemas/CaseEvent'
          description: Os 100 eventos mais recentes.
        links:
          type: array
          items:
            $ref: '#/components/schemas/CaseLink'
        links_count:
          type: integer
        notes_count:
          type: integer
        checklist_items:
          type: array
          items:
            $ref: '#/components/schemas/CaseChecklistItem'
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
    CaseSubject:
      type: object
      nullable: true
      description: O único usuário ou empresa ao qual o caso está vinculado.
      properties:
        type:
          type: string
          enum:
            - user
            - business
        uuid:
          type: string
          format: uuid
        name:
          type: string
        external_id:
          type: string
          nullable: true
          description: O vendor_data do titular.
        country:
          type: string
          nullable: true
          description: >-
            Código de país de três letras do titular (ISO 3166-1 alpha-3), ou
            null quando não é conhecido. Para uma empresa, o país de
            constituição. Para uma pessoa, o país emissor de um documento de
            identidade de suas verificações; uma pessoa com documentos de vários
            países mostra um deles, e códigos de documento da ICAO como `XXA`
            podem aparecer.
          example: ESP
        portrait:
          type: string
          format: uri
          nullable: true
          description: >-
            URL assinada de curta duração da imagem do retrato da pessoa. Sempre
            null para uma empresa e null para uma pessoa sem retrato. A URL
            expira, portanto baixe a imagem ao ler o caso em vez de armazenar a
            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: >-
        A equipe de revisão responsável pelo caso, ou null quando nenhuma equipe
        é responsável por ele. O roteamento o define quando uma regra de
        roteamento atribui o caso a uma de suas equipes. Altere ou remova com
        `PATCH .../cases/{case_uuid}/` (`team`).
      properties:
        uuid:
          type: string
          format: uuid
        name:
          type: string
    CaseChecker:
      type: object
      nullable: true
      description: >-
        O membro designado para aprovar ou rejeitar a resolução pendente.
        Definido apenas enquanto uma resolução de quatro olhos aguarda um
        verificador designado. Nulo quando não há nada pendente, enquanto a
        resolução pendente aguarda na fila de verificadores e depois que a
        resolução é aprovada, rejeitada ou devolvida para uma nova revisão
        porque as evidências mudaram.
      properties:
        member_uuid:
          type: string
          format: uuid
          description: >-
            O uuid de usuário do membro: o valor que você passa como `checker`
            ao resolver o caso.
        name:
          type: string
          nullable: true
          description: O nome completo do membro, ou nulo quando não é conhecido.
        email:
          type: string
          format: email
    CaseBlueprintDetail:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        name:
          type: string
          maxLength: 24
        description:
          type: string
          nullable: true
        assignment_method:
          type: string
          enum:
            - MANUAL
            - AUTOMATIC
        assignee_pool:
          type: array
          items:
            type: string
            format: uuid
        max_active_cases:
          type: integer
          nullable: true
        escalation_enabled:
          type: boolean
        transfer_enabled:
          type: boolean
        require_resolution_note:
          type: boolean
        is_active:
          type: boolean
        preset_key:
          type: string
          nullable: true
        created_at:
          type: string
          format: date-time
        escalation_blueprint:
          type: string
          format: uuid
          nullable: true
        escalation_blueprint_name:
          type: string
          nullable: true
        four_eyes_checker_blueprint:
          type: string
          format: uuid
          nullable: true
        four_eyes_checker_blueprint_name:
          type: string
          nullable: true
        content_config:
          type: object
          description: >-
            As seis seções ativáveis que determinam quais abas e campos aparecem
            na página do caso. Seções ou chaves desconhecidas são rejeitadas.
          properties:
            checklist:
              type: object
              properties:
                enabled:
                  type: boolean
                optional:
                  type: boolean
                  description: >-
                    Quando verdadeiro, um caso pode ser resolvido com itens da
                    checklist incompletos.
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      label:
                        type: string
                        maxLength: 255
                      order:
                        type: integer
            aml_control:
              type: object
              properties:
                enabled:
                  type: boolean
                financial:
                  type: boolean
                identity:
                  type: boolean
            identity:
              type: object
              properties:
                enabled:
                  type: boolean
                personal_information:
                  type: boolean
                applicant_tags:
                  type: boolean
                contact_information:
                  type: boolean
                risk_overview:
                  type: boolean
                poi_documents:
                  type: boolean
                poa_documents:
                  type: boolean
            verifications:
              type: object
              properties:
                enabled:
                  type: boolean
                summary:
                  type: boolean
            reporting:
              type: object
              properties:
                enabled:
                  type: boolean
                fiu_reports:
                  type: boolean
            financial:
              type: object
              properties:
                enabled:
                  type: boolean
                payment_methods:
                  type: boolean
                transactions:
                  type: boolean
        creation_sources:
          type: array
          description: >-
            Conectores que atualmente encaminham novos casos para este
            blueprint.
          items:
            type: object
            properties:
              kind:
                type: string
                enum:
                  - aml
                  - rule
                  - workflow
              id:
                type: string
              name:
                type: string
        receives_escalation_from:
          type: array
          description: Outros blueprints cujo destino de escalonamento aponta para este.
          items:
            type: object
            properties:
              id:
                type: string
              name:
                type: string
        updated_at:
          type: string
          format: date-time
        version:
          type: integer
          readOnly: true
        default_deadline_hours:
          type: integer
          nullable: true
          minimum: 1
          maximum: 8760
    CaseNote:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        comment:
          type: string
        actor_email:
          type: string
          format: email
          nullable: true
        actor_name:
          type: string
          nullable: true
        mentioned_emails:
          type: array
          items:
            type: string
            format: email
        is_internal:
          type: boolean
        attachments:
          type: array
          items:
            type: object
            properties:
              s3_key:
                type: string
              filename:
                type: string
              file_size:
                type: integer
              url:
                type: string
                format: uri
        tags:
          type: array
          items:
            type: string
        created_at:
          type: string
          format: date-time
    CaseEvent:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        event_type:
          type: string
          enum:
            - CREATED
            - STATUS_CHANGED
            - ASSIGNED
            - UNASSIGNED
            - RESOLVED
            - REOPENED
            - LINK_ADDED
            - LINK_REMOVED
            - NOTE_ADDED
            - NOTE_PINNED
            - NOTE_UNPINNED
            - PRIORITY_CHANGED
            - DUE_DATE_CHANGED
            - TAG_ADDED
            - TAG_REMOVED
            - ESCALATED
            - TRANSFERRED
            - CHECKLIST_COMPLETED
            - REPORT_CREATED
            - REPORT_FINALIZED
            - SUBMITTED_FOR_APPROVAL
            - APPROVAL_GRANTED
            - APPROVAL_REJECTED
            - ENTITY_ACTION
            - APPROVAL_INVALIDATED
            - CUSTOMER_REQUEST
            - STAGE_CHANGED
            - TEAM_CHANGED
            - CHECKER_ASSIGNED
            - CHECKER_UNASSIGNED
        actor_email:
          type: string
          format: email
          nullable: true
        actor_name:
          type: string
          nullable: true
        previous_status:
          type: string
          enum:
            - OPEN
            - AWAITING_USER
            - RESOLVED
          nullable: true
        new_status:
          type: string
          enum:
            - OPEN
            - AWAITING_USER
            - RESOLVED
          nullable: true
        metadata:
          type: object
        created_at:
          type: string
          format: date-time
    CaseLink:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        linked_entity_type:
          type: string
          enum:
            - session
            - business_session
            - transaction
          nullable: true
        linked_entity_uuid:
          type: string
          format: uuid
          nullable: true
        linked_entity_summary:
          type: object
          nullable: true
          description: >-
            session_id/session_number/status para links de session e
            business_session; uuid/txn_id/status para links de transação.
        created_at:
          type: string
          format: date-time
    CaseChecklistItem:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        label:
          type: string
          maxLength: 255
        is_completed:
          type: boolean
        completed_by:
          type: string
          format: email
          nullable: true
        completed_at:
          type: string
          format: date-time
          nullable: true
        order:
          type: integer
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Chave de API da sua aplicação, em Developers -> API keys no Business
        Console. A chave principal tem acesso total. Uma chave nomeada pode ter
        escopo restrito: nenhum acesso, leitura ou escrita por recurso, limitada
        a alguns fluxos ou a sessões aprovadas, a uma lista de endereços IP e a
        uma data de validade. 401 significa que a chave está errada, revogada ou
        expirada; 403 significa que nenhuma chave foi enviada, que a chave não
        tem acesso a este recurso ou ação, ou que a requisição veio de um
        endereço fora da sua lista de IPs; 404 em uma rota de sessão significa
        que a sessão está fora dos fluxos ou status da chave. Uma chave sem
        acesso a mídia recebe URLs de imagem, vídeo e PDF como null, e uma chave
        sem permissão de escrita em sessões recebe links e tokens de sessão como
        null. Consulte https://docs.didit.me/console/api-keys.

````

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