API Docs Início Documentação Referência de API Copiar para LLM
POST/v1/LegalPerson/{id}/Upload
Crédito · Pessoas

Insere documentos para a pessoa jurídica

Cria um novo registro de Legal Person.

Visão geral

Insere documentos para a pessoa jurídica

Autenticação e pré-requisitos

Requer autenticação. Envie o token no header Authorization: Bearer {{token}} (JWT do AWS Cognito). Integrações servidor-a-servidor podem usar X-Api-Key. Todo tráfego é HTTPS e a credencial nunca vai na URL nem em query string.

Pré-requisitos: a rota exige identificador(es) de recurso já existente(s):

Request

Parâmetros

NomeEmTipoObrigatórioDescriçãoExemplo
idpathstring (uuid)obrigatórioid pessoa jurídica3fa85f64-5717-4562-b3fc-2c963f66afa6

Corpo da requisição

Envie no formato application/json. Corpo opcional. Envie uma lista (array) de objetos.

Campos

CampoTipoObrigatórioDescriçãoValoresExemplo
ownerUserobjetoopcionalobjeto — ver detalhe abaixo{ … }
ownerGroupobjetoopcionalobjeto — ver detalhe abaixo{ … }
fileTypestringobrigatórioDocument, Authorization, DriversLicense, WorkCard, ResidenceProofCompany, ResidenceProofPartners, Draft, SocialContract, RegistrationNumber, IdentificationDocumentWithPhoto, BankStatement, ManagerialBilling, RegistrationForm, Others +41"Document"
fileNamestringobrigatórioNome do arquivo (retornado pelo GET v1/Upload)"Fulano de Tal"
displayNamestringopcionalNome de exibição do arquivo"Fulano de Tal"
documentDatestring (date-time)opcionalData do próprio documento (emissão/referência), não a data do upload. Aceita em qualquer tipo de documento e sempre opcional. Só tem efeito de negócio no laudo de deferimento INSS e na última perícia INSS, cujos valores são comparados aos cortes da regra de elegibilidade dos benefícios 32/92 (faixa 45–54); nos demais tipos é apenas informativa."2025-08-11T13:45:00Z"

Detalhe de ownerUser

CampoTipoObrigatórioDescriçãoValoresExemplo
userIdstringobrigatório"3fa85f64-5717-4562-b3fc-2c963f66afa6"
tenantNamestringobrigatório"Fulano de Tal"

Detalhe de ownerGroup

CampoTipoObrigatórioDescriçãoValoresExemplo
groupIdstringobrigatório"3fa85f64-5717-4562-b3fc-2c963f66afa6"
tenantNamestringobrigatório"Fulano de Tal"

Exemplo de corpo

[
  {
    "ownerUser": {
      "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "tenantName": "Fulano de Tal"
    },
    "ownerGroup": {
      "groupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "tenantName": "Fulano de Tal"
    },
    "fileType": "Document",
    "fileName": "Fulano de Tal",
    "displayName": "Fulano de Tal",
    "documentDate": "2025-08-11T13:45:00Z"
  }
]

Response

Resposta 200.

Sem campos estruturados no contrato (tipo primitivo ou livre).

Exemplo de resposta

"3fa85f64-5717-4562-b3fc-2c963f66afa6"

Códigos de retorno

CódigoSignificadoDetalhe do contrato
200Requisição bem-sucedida.Success

Exemplos

curl -X POST "{{baseUrl}}/v1/LegalPerson/3fa85f64-5717-4562-b3fc-2c963f66afa6/Upload" \
  -H "Authorization: Bearer {{token}}" \
  -H "Content-Type: application/json" \
  -d '[
  {
    "ownerUser": {
      "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "tenantName": "Fulano de Tal"
    },
    "ownerGroup": {
      "groupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "tenantName": "Fulano de Tal"
    },
    "fileType": "Document",
    "fileName": "Fulano de Tal",
    "displayName": "Fulano de Tal",
    "documentDate": "2025-08-11T13:45:00Z"
  }
]'
var baseUrl = "{{baseUrl}}";
var token   = "{{token}}";

using var http = new HttpClient { BaseAddress = new Uri(baseUrl) };
http.DefaultRequestHeaders.Authorization =
    new AuthenticationHeaderValue("Bearer", token);

var rota = "/v1/LegalPerson/3fa85f64-5717-4562-b3fc-2c963f66afa6/Upload";

var corpo = new StringContent(
    """
    [
      {
        "ownerUser": {
          "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
          "tenantName": "Fulano de Tal"
        },
        "ownerGroup": {
          "groupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
          "tenantName": "Fulano de Tal"
        },
        "fileType": "Document",
        "fileName": "Fulano de Tal",
        "displayName": "Fulano de Tal",
        "documentDate": "2025-08-11T13:45:00Z"
      }
    ]
    """,
    Encoding.UTF8, "application/json");

var resp = await http.PostAsync(rota, corpo);
resp.EnsureSuccessStatusCode();
var json = await resp.Content.ReadAsStringAsync();
const baseUrl = '{{baseUrl}}';
const token   = '{{token}}';

const payload = [
  {
    "ownerUser": {
      "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "tenantName": "Fulano de Tal"
    },
    "ownerGroup": {
      "groupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "tenantName": "Fulano de Tal"
    },
    "fileType": "Document",
    "fileName": "Fulano de Tal",
    "displayName": "Fulano de Tal",
    "documentDate": "2025-08-11T13:45:00Z"
  }
];

const resp = await fetch(`${baseUrl}/v1/LegalPerson/3fa85f64-5717-4562-b3fc-2c963f66afa6/Upload`, {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${token}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify(payload),
});

if (!resp.ok) throw new Error(`HTTP ${resp.status}`);
const data = await resp.json();

Troque apenas {{baseUrl}} e {{token}}. No Postman, defina-os como variáveis de environment; o cURL importa em Import > Raw text.

Downloads

Este endpoint já vem configurado nas collections abaixo, na pasta da etapa correspondente.

Guia de importação: Como importar no Postman · Todos os downloads: Downloads