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

# Modelo de dados do utilizador: esquema do fornecedor

> Todos os campos de uma entidade User da Didit: identidade, estado, agregados de sessões KYC, biometria, datas de atividade e metadados. Preços por utilização.

Esta página documenta todos os campos da entidade Utilizador. Os campos dividem-se em cinco grupos: identidade, estado, agregados de sessões, carimbos de data/hora de atividade e metadados.

## Campos de identidade

| Campo | Tipo | Descrição |
| - | - | - |
| `uuid` | UUID | Chave primária atribuída pela Didit. Estável e única. |
| `didit_internal_id` | string | Identificador interno legível (apresentado nas respostas da API). |
| `vendor_data` | string | O seu identificador para o utilizador. Único por aplicação. [Saber mais](https://docs.didit.me/pt/entities/vendor-data-linking.md). |
| `display_name` | string | Nome alternativo apresentado na consola. Assume por predefinição `full_name` ou `vendor_data` quando não está definido. |
| `full_name` | string | Nome legal completo, propagado a partir do documento de identidade da sessão de Verificação de utilizadores (KYC) aprovada mais recente. |
| `date_of_birth` | date (ISO 8601) | Propagada a partir da sessão de Verificação de utilizadores (KYC) aprovada mais recente. |
| `portrait_image` | URL | URL S3 assinado da selfie da verificação de prova de vida aprovada mais recente. |

> [!NOTE]
>
> `full_name`, `date_of_birth` e `portrait_image` são só de leitura quando derivados de uma sessão verificada. Pode substituí-los na consola ou através de `PATCH /v3/users/{vendor_data}/`, mas as substituições manuais ficam assinaladas no registo de auditoria.

## Estado

| Campo | Tipo | Valores | Descrição |
| - | - | - | - |
| `status` | enum | `ACTIVE`, `FLAGGED`, `BLOCKED` | Controla a aplicação das regras para as sessões e transações futuras. Ver [ciclo de vida](https://docs.didit.me/pt/entities/lifecycle.md). |

## Campos de agregados de sessões

Estes campos são calculados pela Didit e são atualizados em tempo real à medida que as sessões são concluídas.

| Campo | Tipo | Descrição |
| - | - | - |
| `session_count` | int | Total de sessões alguma vez criadas para este utilizador |
| `approved_count` | int | Sessões concluídas com `APPROVED` |
| `declined_count` | int | Sessões concluídas com `DECLINED` |
| `in_review_count` | int | Sessões atualmente em `IN_REVIEW` |
| `issuing_states[]` | array de códigos de país ISO | Países de todos os documentos de identidade verificados em todas as sessões |
| `approved_emails[]` | array de strings | E-mails verificados através da [Verificação de e-mail](https://docs.didit.me/pt/core-technology/email-verification/overview.md) |
| `approved_phones[]` | array de strings | Telefones verificados através da [Verificação de telefone](https://docs.didit.me/pt/core-technology/phone-verification/overview.md) |
| `features` | objeto | Estado mais recente de cada funcionalidade em todas as sessões |

### O mapa `features`

Cada sessão executa uma ou mais funcionalidades (verificação de identidade, prova de vida, correspondência facial, AML, POA, NFC, etc.). O mapa `features` guarda o estado **mais recente** de cada funcionalidade para este utilizador:

```json theme={null}
{
  "id_verification": "APPROVED",
  "liveness": "APPROVED",
  "face_match": "APPROVED",
  "aml": "IN_REVIEW",
  "proof_of_address": "APPROVED",
  "nfc_verification": "NOT_FINISHED"
}
```

Estados das funcionalidades: `NOT_FINISHED`, `APPROVED`, `DECLINED`, `IN_REVIEW`, `EXPIRED`, `ABANDONED`, `RESUB_REQUESTED`.

Use o mapa `features` como caminho rápido para responder à pergunta "este utilizador está totalmente verificado neste momento?", sem percorrer todas as sessões.

## Carimbos de data/hora de atividade

| Campo | Tipo | Atualizado quando |
| - | - | - |
| `first_session_at` | carimbo de data/hora ISO | Foi criada a primeira sessão |
| `last_session_at` | carimbo de data/hora ISO | Foi criada ou atualizada a sessão mais recente |
| `last_activity_at` | carimbo de data/hora ISO | Qualquer alteração: sessão, transação, estado, perfil, notas, etiquetas |
| `created_at` | carimbo de data/hora ISO | Foi criada a linha da entidade |
| `updated_at` | carimbo de data/hora ISO | Foi atualizada pela última vez a linha da entidade |

## Metadados

| Campo | Tipo | Descrição |
| - | - | - |
| `metadata` | objeto (JSON) | JSON de formato livre que você controla. Use-o para etiquetas internas, nível, origem do registo, etc. |
| `tags[]` | array | Etiquetas geridas na consola ou através da API, para filtrar e agrupar |

Os metadados não têm esquema: a Didit guarda tudo o que você escrever.

## Relações (não armazenadas na linha do utilizador)

| Relação | Como aceder |
| - | - |
| Sessões | `GET /v3/sessions?vendor_data=<value>` |
| Transações (como requerente) | `GET /v3/transactions/?vendor_data=<value>` |
| Transações (como contraparte) | Filtre a lista de transações pelo vendor\_data da contraparte na consola |
| Empresas associadas (administrador / UBO) | Apresentadas na página de detalhe do utilizador na consola |
| Biometria facial | Consola + Lists API |
| Entradas da lista de bloqueio | [Lists API](https://docs.didit.me/pt/management-api/lists/overview.md): filtre as entradas pelos identificadores do utilizador |

## Exemplo de resposta

```json theme={null}
{
  "uuid": "9c7d2a30-2f98-4d4f-9d2d-1a7c4b1e5b6a",
  "didit_internal_id": "U-2026-00042",
  "vendor_data": "user-42",
  "display_name": "Jane Doe",
  "full_name": "John Doe",
  "date_of_birth": "1990-01-01",
  "portrait_image": "https://<media-host>/...",
  "status": "ACTIVE",
  "session_count": 3,
  "approved_count": 2,
  "declined_count": 0,
  "in_review_count": 1,
  "issuing_states": ["US", "ES"],
  "approved_emails": ["jane@example.com"],
  "approved_phones": ["+14155550123"],
  "features": {
    "id_verification": "APPROVED",
    "liveness": "APPROVED",
    "face_match": "APPROVED",
    "aml": "IN_REVIEW"
  },
  "first_session_at": "2025-03-01T12:00:00Z",
  "last_session_at": "2026-04-10T09:00:00Z",
  "last_activity_at": "2026-04-16T10:00:00Z",
  "metadata": { "tier": "premium" }
}
```

## Próximos passos

> [card] [Operações](https://docs.didit.me/pt/entities/users/operations.md)
>
> Criar, atualizar, alterar o estado, eliminar.

> [card] [Histórico KYC](https://docs.didit.me/pt/entities/users/kyc-history.md)
>
> Obter todas as sessões associadas ao utilizador.

> [card] [Referência da API](https://docs.didit.me/pt/management-api/users/get.md)
>
> Esquema de GET /v3/users/{vendor_data}/.


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