API v1
Integração Minha ID
Crie solicitações por CPF e receba somente os campos que o titular autorizou. Nenhum dado pessoal é enviado em URLs.
Autenticação de servidor para servidor
Envie a chave no cabeçalho
X-API-Key. Nunca exponha a chave no navegador, aplicativo móvel ou repositório.1. Criar solicitação
O CPF é usado apenas no servidor para localizar o titular. A resposta não revela se o CPF está cadastrado.
curl -X POST https://seu-dominio.com/api/v1/data-requests \
-H "Content-Type: application/json" \
-H "X-API-Key: myid_live_..." \
-d '{
"cpf": "52998224725",
"purpose": "Abertura de conta e validação cadastral",
"legalBasis": "Execução de contrato",
"requestedFields": [
"firstName",
"lastName",
"cpf",
"birthDate",
"phoneCountryCode",
"phoneAreaCode",
"phoneNumber",
"phoneIsWhatsApp",
"address.city",
"address.state"
]
}'{
"request": {
"id": "req_opaque_id",
"status": "pending",
"requesterName": "Empresa Exemplo",
"requestedFields": ["firstName", "lastName", "cpf", "birthDate"],
"expiresAt": "2026-07-24T15:30:00.000Z"
}
}2. Consultar situação
Consulte GET /api/v1/data-requests/{requestId}. Os estados possíveis são pending, approved, denied, expired e consumed.
3. Obter dados autorizados
Depois da aprovação, faça a troca uma única vez. Uma segunda tentativa será recusada.
curl -X POST \
https://seu-dominio.com/api/v1/data-requests/REQUEST_ID/exchange \
-H "X-API-Key: myid_live_..."{
"response": {
"requestId": "req_opaque_id",
"consentReceiptId": "receipt_id",
"issuedAt": "2026-07-24T15:20:00.000Z",
"data": {
"firstName": "Ana",
"lastName": "Silva",
"phoneCountryCode": "+55",
"phoneAreaCode": "11",
"phoneNumber": "999999999",
"phoneIsWhatsApp": true,
"address.city": "São Paulo"
}
}
}Controles obrigatórios da integração
Trate finalidade e hipótese legal como dados auditáveis, solicite somente o necessário, proteja a resposta recebida e respeite a retenção definida para seu processo.