Pular para o conteúdo principal

Pessoas

Gerenciamento de pessoas físicas (clientes) na Catalisa Platform.

Endpoints

MétodoEndpointDescriçãoPermissão
POST/api/v1/peopleCriar pessoaCUSTOMERS_PEOPLE_CREATE
GET/api/v1/peopleListar pessoasCUSTOMERS_PEOPLE_READ
GET/api/v1/people/:idObter pessoaCUSTOMERS_PEOPLE_READ
PATCH/api/v1/people/:idAtualizar pessoaCUSTOMERS_PEOPLE_UPDATE
DELETE/api/v1/people/:idExcluir pessoaCUSTOMERS_PEOPLE_DELETE

Criar Pessoa

POST /api/v1/people

Cria uma nova pessoa no sistema.

Request

CampoTipoObrigatórioDescrição
namestringSimNome completo
taxIdobjectSimDocumento (CPF)
taxId.typestringSimBR_CPF
taxId.valuestringSimNúmero do CPF
emailstringNãoEmail de contato
phoneobjectNãoTelefone
phone.areaCodestringSim*DDD (2 dígitos)
phone.numberstringSim*Número (8-9 dígitos)
phone.countryCodestringNãoCódigo do país (default: +55)
birthDatestringNãoData de nascimento (ISO 8601)
motherNamestringNãoNome da mãe
maritalStatusstringNãoEstado civil
employmentTypestringNãoTipo de emprego
monthlyIncomeobjectNãoRenda mensal
incomeRangestringNãoFaixa de renda
addressobjectNãoEndereço completo
bankAccountobjectNãoDados bancários
activebooleanNãoAtivo (default: true)
curl -X POST 'https://customers.stg.catalisa.app/api/v1/people' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"type": "people",
"attributes": {
"name": "Joao da Silva Santos",
"taxId": {
"type": "BR_CPF",
"value": "123.456.789-00"
},
"email": "joao.silva@exemplo.com",
"phone": {
"countryCode": "+55",
"areaCode": "11",
"number": "999887766"
},
"birthDate": "1990-05-15",
"motherName": "Maria da Silva",
"maritalStatus": "SINGLE",
"employmentType": "CLT",
"monthlyIncome": {
"amount": 5000.00,
"currency": "BRL"
},
"address": {
"street": "Rua das Flores",
"number": "123",
"complement": "Apto 45",
"neighborhood": "Centro",
"city": "Sao Paulo",
"state": "SP",
"zipCode": "01234-567"
},
"bankAccount": {
"bankCode": "001",
"branch": "1234",
"accountNumber": "12345-6",
"accountType": "CHECKING"
}
}
}
}'

Response (201 Created)

{
"data": {
"type": "people",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"name": "Joao da Silva Santos",
"taxId": {
"type": "BR_CPF",
"value": "123.456.789-00"
},
"email": "joao.silva@exemplo.com",
"phone": {
"countryCode": "+55",
"areaCode": "11",
"number": "999887766"
},
"birthDate": "1990-05-15T00:00:00.000Z",
"motherName": "Maria da Silva",
"maritalStatus": "SINGLE",
"employmentType": "CLT",
"monthlyIncome": {
"amount": 5000.0,
"currency": "BRL"
},
"address": {
"street": "Rua das Flores",
"number": "123",
"complement": "Apto 45",
"neighborhood": "Centro",
"city": "Sao Paulo",
"state": "SP",
"zipCode": "01234-567"
},
"bankAccount": {
"bankCode": "001",
"branch": "1234",
"accountNumber": "12345-6",
"accountType": "CHECKING"
},
"active": true,
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
},
"links": {
"self": "/api/v1/people/550e8400-e29b-41d4-a716-446655440000"
}
}
}

Listar Pessoas

GET /api/v1/people

Lista pessoas com suporte a paginação e filtros.

Query Parameters

ParâmetroTipoDescrição
page[number]integerNúmero da página
page[size]integerItens por página
filter[active]booleanFiltrar por status ativo
filter[name]stringFiltrar por nome (parcial)
filter[taxId]stringFiltrar por CPF
curl 'https://customers.stg.catalisa.app/api/v1/people?page[number]=1&page[size]=20&filter[active]=true' \
-H 'Authorization: Bearer SEU_TOKEN'

Response (200 OK)

{
"data": [
{
"type": "people",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"name": "Joao da Silva Santos",
"taxId": {
"type": "BR_CPF",
"value": "123.456.789-00"
},
"email": "joao.silva@exemplo.com",
"active": true
}
}
],
"meta": {
"totalItems": 50,
"totalPages": 3,
"currentPage": 1,
"itemsPerPage": 20
},
"links": {
"self": "/api/v1/people?page[number]=1&page[size]=20",
"next": "/api/v1/people?page[number]=2&page[size]=20"
}
}

Obter Pessoa

GET /api/v1/people/:personId

Obtém detalhes de uma pessoa específica.

curl 'https://customers.stg.catalisa.app/api/v1/people/550e8400-e29b-41d4-a716-446655440000' \
-H 'Authorization: Bearer SEU_TOKEN'

Response (200 OK)

{
"data": {
"type": "people",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"name": "Joao da Silva Santos",
"taxId": {
"type": "BR_CPF",
"value": "123.456.789-00"
},
"email": "joao.silva@exemplo.com",
"active": true,
"createdAt": "2024-01-15T10:30:00Z"
},
"links": {
"self": "/api/v1/people/550e8400-e29b-41d4-a716-446655440000"
}
}
}

Atualizar Pessoa

PATCH /api/v1/people/:personId

Atualiza dados de uma pessoa.

informação

Apenas os campos name e active podem ser atualizados. Para alterar outros dados (CPF, endereço, etc.), é necessário excluir e recriar o registro.

Request

CampoTipoObrigatórioDescrição
namestringNãoNovo nome
activebooleanNãoStatus ativo
curl -X PATCH 'https://customers.stg.catalisa.app/api/v1/people/550e8400-e29b-41d4-a716-446655440000' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"name": "Joao da Silva Santos Junior",
"active": false
}'

Response (200 OK)

{
"data": {
"type": "people",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"name": "Joao da Silva Santos Junior",
"taxId": {
"type": "BR_CPF",
"value": "123.456.789-00"
},
"active": false,
"updatedAt": "2024-01-15T11:00:00Z"
}
}
}

Excluir Pessoa

DELETE /api/v1/people/:personId

Remove uma pessoa do sistema.

curl -X DELETE 'https://customers.stg.catalisa.app/api/v1/people/550e8400-e29b-41d4-a716-446655440000' \
-H 'Authorization: Bearer SEU_TOKEN'

Response (204 No Content)

Sem corpo de resposta.


Validação de CPF

O sistema valida automaticamente o formato do CPF. Formatos aceitos:

  • 123.456.789-00 (com pontuação)
  • 12345678900 (sem pontuação)
Atenção

O sistema valida apenas o formato do CPF, não a validade junto a Receita Federal.


Erros Comuns

CódigoErroDescrição
400VALIDATIONCPF inválido ou campos obrigatórios ausentes
404NOT_FOUNDPessoa não encontrada
409CONFLICTCPF já cadastrado na organização