> ## Documentation Index
> Fetch the complete documentation index at: https://docs-platform.services-valid.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Consultar Documento

> Consulte os dados e o resultado da análise de um documento

## Path Params

<ParamField path="id" type="string" required>
  Identificador do documento, retornado no envio.

  **Exemplo**: `123e4567-e89b-12d3-a456-426614174000`
</ParamField>

## Response

<ResponseField name="id" type="string">
  Identificador do documento.

  **Exemplo**: `123e4567-e89b-12d3-a456-426614174000`
</ResponseField>

<ResponseField name="organizationId" type="string">
  Identificador da organização à qual o documento pertence.

  **Exemplo**: `123e4567-e89b-12d3-a456-426614174001`
</ResponseField>

<ResponseField name="projectId" type="string">
  Identificador do projeto à qual o documento pertence.

  **Exemplo**: `123e4567-e89b-12d3-a456-426614174002`
</ResponseField>

<ResponseField name="productId" type="string">
  Identificador do produto associado ao documento.

  **Exemplo**: `123e4567-e89b-12d3-a456-426614174003`
</ResponseField>

<ResponseField name="cpf" type="string">
  CPF do titular do documento.

  **Exemplo**: `12345678909`
</ResponseField>

<ResponseField name="status" type="string">
  Status atual do documento. Valores possíveis: `PENDING`, `MERGING`, `UPLOADING`, `SENDING`, `SENT`, `PROCESSING`, `COMPLETED`, `ERROR`, `FAILED` e `TIMEOUT`.

  **Exemplo**: `COMPLETED`
</ResponseField>

<ResponseField name="type" type="string">
  Tipo de processamento aplicado ao documento: `docs`, `checklist` ou `ocr`.

  **Exemplo**: `docs`
</ResponseField>

<ResponseField name="createdAt" type="datetime">
  Data e hora em que o documento foi registrado.

  **Exemplo**: `2026-06-01T12:00:00.000Z`
</ResponseField>

<ResponseField name="updatedAt" type="datetime">
  Data e hora da última atualização do documento.

  **Exemplo**: `2026-06-01T12:05:00.000Z`
</ResponseField>

<ResponseField name="sentAt" type="datetime">
  Data e hora do envio para análise.

  **Exemplo**: `2026-06-01T12:00:01.000Z`
</ResponseField>

<ResponseField name="sentToBackofficeAt" type="datetime">
  Data e hora em que o documento chegou ao processamento.

  **Exemplo**: `2026-06-01T12:00:02.000Z`
</ResponseField>

<ResponseField name="finishedAt" type="datetime">
  Data e hora da conclusão da análise.

  **Exemplo**: `2026-06-01T12:05:00.000Z`
</ResponseField>

<ResponseField name="errorMessage" type="string">
  Mensagem do erro registrado, quando houver.

  **Exemplo**: `null`
</ResponseField>

<ResponseField name="errorCode" type="string">
  Código do erro registrado, quando houver.

  **Exemplo**: `null`
</ResponseField>

<ResponseField name="backofficeBatchId" type="string">
  Identificador do lote gerado no processamento. Enquanto estiver nulo, arquivos e face não estão disponíveis.

  **Exemplo**: `229462`
</ResponseField>

<ResponseField name="requestId" type="string">
  Identificador da requisição que originou o documento.

  **Exemplo**: `7d7a6f2b-8d9f-4f55-9a2d-ec8e7b4f1d0c`
</ResponseField>

<ResponseField name="name" type="string">
  Nome do titular extraído do documento durante a análise.

  **Exemplo**: `JOAO DA SILVA`
</ResponseField>

<ResponseField name="workflowPresetAlias" type="string">
  Alias do preset de workflow aplicado no envio.

  **Exemplo**: `documentoscopia_auto_base_face_15min`
</ResponseField>

<ResponseField name="result" type="object">
  Resultado da análise. Permanece nulo enquanto a análise não é concluída.
</ResponseField>

<ResponseField name="result.status" type="string">
  Parecer da análise. Valores possíveis: `APPROVED`, `REJECTED`, `MANUAL_REVIEW` e `ERROR`.

  **Exemplo**: `APPROVED`
</ResponseField>

<ResponseField name="result.confidenceScore" type="number">
  Índice de confiança da análise.

  **Exemplo**: `98.5`
</ResponseField>

<ResponseField name="result.raw_response" type="object">
  Retorno completo da análise, como recebido do processamento.
</ResponseField>

<ResponseField name="result.processedBy" type="string">
  Origem do processamento do resultado.

  **Exemplo**: `backoffice`
</ResponseField>

<ResponseExample>
  ```json 200 theme={"theme":"catppuccin-latte"}
  {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "organizationId": "123e4567-e89b-12d3-a456-426614174001",
    "projectId": "123e4567-e89b-12d3-a456-426614174002",
    "productId": "123e4567-e89b-12d3-a456-426614174003",
    "cpf": "12345678909",
    "status": "COMPLETED",
    "type": "docs",
    "createdAt": "2026-06-01T12:00:00.000Z",
    "updatedAt": "2026-06-01T12:05:00.000Z",
    "sentAt": "2026-06-01T12:00:01.000Z",
    "sentToBackofficeAt": "2026-06-01T12:00:02.000Z",
    "finishedAt": "2026-06-01T12:05:00.000Z",
    "errorMessage": null,
    "errorCode": null,
    "backofficeBatchId": "229462",
    "requestId": "7d7a6f2b-8d9f-4f55-9a2d-ec8e7b4f1d0c",
    "name": "JOAO DA SILVA",
    "workflowPresetAlias": "documentoscopia_auto_base_face_15min",
    "result": {
      "id": "223e4567-e89b-12d3-a456-426614174001",
      "documentId": "123e4567-e89b-12d3-a456-426614174000",
      "status": "APPROVED",
      "confidenceScore": 98.5,
      "raw_response": {},
      "processedBy": "backoffice",
      "createdAt": "2026-06-01T12:05:00.000Z"
    }
  }
  ```

  ```json 404 theme={"theme":"catppuccin-latte"}
  {
    "error": "NOT_FOUND",
    "message": "Document not found",
    "requestId": "7d7a6f2b-8d9f-4f55-9a2d-ec8e7b4f1d0c",
    "timestamp": "2026-06-01T12:00:00.000Z"
  }
  ```

  ```json 500 theme={"theme":"catppuccin-latte"}
  {
    "error": "INTERNAL_ERROR",
    "message": "Failed to retrieve document",
    "requestId": "7d7a6f2b-8d9f-4f55-9a2d-ec8e7b4f1d0c",
    "timestamp": "2026-06-01T12:00:00.000Z"
  }
  ```
</ResponseExample>
