Skip to content

Clientes

A API de clientes oferece métodos para a manipulação eficiente das informações dos clientes, incluindo operações CRUD (cadastrar, visualizar, editar e deletar). Com funcionalidades adicionais para filtragem e pesquisa detalhada, a API facilita a gestão de dados e a tomada de decisões informadas.

Introdução

Nesta documentação, detalhamos os campos que você pode esperar manipular ao interagir com a API. Cada campo é descrito para esclarecer sua função e o tipo de dado esperado, como nome, contato, e informações demográficas, garantindo que você possa fornecer ou obter informações precisas.

As URLs da API são especificadas para cada operação possível, desde a listagem de todos os clientes até a atualização de um registro específico. Ao seguir as URLs e métodos HTTP detalhados, você será capaz de realizar operações de CRUD de forma intuitiva e eficaz.

Veja abaixo:

URLs

MétodoURLAçãoDescrição
GET/api/v1/clientsListarLista todos os clientes
GET/api/v1/clients/{id}VisualizarExibe um determinado cliente pelo ID
PUT/api/v1/clients/{id}EditarAtualiza um determinado cliente
DELETE/api/v1/clients/{id}DeletarRemove um cliente na base de dados
POST/api/v1/clientsCadastrarCria um ou mais clientes na base de dados

Campos

Os dados dos clientes devem ser enviados no formato JSON. Abaixo estão os campos que podem ser incluídos no corpo da solicitação:

CampoTipoDescriçãoObrigatórioVal. Def.
tipocadastroboolean0 = Pessoa Física / 1 = Pessoa JurídicaNão0 = Pessoa Física
nomestringNome clienteSimN/A
emailstringEmail do clienteNãoN/A
email2stringEmail secundárioNãoN/A
cepstringCEP pode ser formatado ou nãoNãoN/A
enderecostringEndereço do clienteNãoN/A
numerostringNúmero do localNãoN/A
complementostringComplemento ex. Apt xxx Bloco 1NãoN/A
bairrostringBairroNãoN/A
cidadestringCidadeNãoN/A
estadostringEstado ex. MGNãoN/A
pontoreferenciastringPonto de ref.NãoN/A
responsavelstringNome do responsávelNãoN/A
anotacoeslongtextObservações GeraisNãoN/A
datadenascimentodateData de NascimentoNãoN/A
cpfstringCPF pode ser formatado ou nãoNãoN/A
rgstringRGNãoN/A
orgaoexpeditorstringOrgão ExpeditorNãoN/A
datadeexpedicaodateData de ExpediçãoNãoN/A
paisstringEx. +55NãoN/A
dditelefonestringDDI Telefone ex. (31)NãoN/A
telefonestringTelefone para contatoNãoN/A
dditelefone2stringDDI Telefone ex. (31)NãoN/A
telefone2stringTelefone secundárioNãoN/A
ddicelularstringDDI Celular ex. (31)NãoN/A
celularstringCelularNãoN/A
redesocialstringTexto com a URL da rede socialNãoN/A
profissaostringProfissãoNãoN/A
estadocivilstringCasado(a), Solteiro(a)NãoN/A
nacionalidadestringNacionalidadeNãoN/A
razaosocialstringRazão social para PJNãoN/A
nomefantasiastringNome Fantasia para PJNãoN/A
cnpjpjstringCNPJ para PJNãoN/A
municipalstringInscrição Municipal para PJNãoN/A
estadualstringInscrição Estadual para PJNãoN/A
ceppjstringCEP para PJNãoN/A
enderecopjstringEndereço para PJNãoN/A
numeropjstringNúmero para PJNãoN/A
complementopjstringComplemento para PJ ex. Sala xxNãoN/A
bairropjstringBairro para PJNãoN/A
cidadepjstringCidade para PJNãoN/A
estadopjstringEstado para PJ ex. MGNãoN/A
paispjstringPaís para PJ ex. BrasilNãoN/A
pontoreferenciapjstringPonto de ref. para PJNãoN/A

Listar

Endpoint: /api/v1/clients

Método: GET

Retorna uma lista de todos os clientes. Suporta busca e paginação para gerenciar grandes volumes de dados.

Ordenação

Para melhorar a experiência de visualização dos dados, oferecemos suporte à ordenação de registros. Você pode especificar a ordenação dos dados através de dois parâmetros:

Parâmetros:

  • sort: Define a direção da ordenação. Valores permitidos: asc para ascendente, desc para descendente.
  • field_sort: Especifica o campo pelo qual os registros devem ser ordenados, você pode consultar os campos disponiveis clicando aqui.

Exemplo de Uso: Para ordenar os clientes pelo nome em ordem ascendente: /api/v1/clients?field_sort=nome&sort=asc

Paginação

A paginação é essencial para o gerenciamento eficiente dos dados, especialmente quando lidamos com grandes volumes. Cada página pode conter um número definido de registros, reduzindo o tempo de carregamento e melhorando a usabilidade.

Parâmetro:

  • page: Número da página desejada.
  • limit (opcional): Número de registros por página, o limite e de até 200 registros.

Exemplo de Uso: Para acessar a segunda página de registros: /api/v1/clients?page=2&limit=10

Buscar

Nossa API permite a realização de buscas detalhadas no cadastro de clientes, facilitando a localização de registros específicos. Você pode especificar o campo de busca e, opcionalmente, o tipo de dado.

Parâmetros:

  • search: Valor a ser pesquisado.
  • type (opcional): Define o campo específico a ser buscado. Se não especificado, a busca padrão inclui Nome, Razão Social e Nome Fantasia.

Tipos de Busca:

CódigoDescrição
0Nome, Razão Social, Nome Fantasia
1E-mail
2Telefone ou Celular
3CPF ou CNPJ

Exemplo de Uso: Para buscar clientes pelo e-mail: /api/v1/clients?search=example@example.com&type=1

Resumo

Utilizar as funcionalidades de Ordenação, Paginação e Buscar em conjunto permite uma manipulação eficiente e precisa dos dados na nossa API. Por exemplo, para listar clientes por um e-mail específico, ordenados pelo ID, e exibir apenas os primeiros 10 resultados, você pode usar a seguinte URL:

/api/v1/clients?search=jonathan@meeventos.com.br&type=1&field_sort=id&sort=desc&page=1&limit=10

Esta combinação otimiza suas consultas, permitindo que você obtenha dados específicos de forma rápida e organizada.

Response:

json
{
  "data": [
    {
      "id": "1186",
      "nome": "API 1",
      "email": "jonathan@meeventos.com.br",
      "cpf": "01234567890",
      "cep": "30720610",
      "endereco": "",
      "numero": "",
      "bairro": "",
      "cidade": "",
      "estado": "",
      "telefone": "31 999999999",
      "email2": "",
      "telefone2": "31 999999999",
      "razaosocial": "",
      "celular": "31 999999999",
      "responsavel": "",
      "datadenascimento": null,
      "anotacoes": "",
      "datadecadastro": "0000-00-00",
      "rg": "",
      "dditelefone": null,
      "dditelefone2": null,
      "ddicelular": null,
      "pais": "",
      "tipocadastro": "0",
      "redesocial": "",
      "profissao": "",
      "estadocivil": "",
      "nacionalidade": "",
      "orgaoexpeditor": "",
      "datadeexpedicao": null,
      "nomefantasia": "",
      "cnpjpj": "369852",
      "municipal": "",
      "estadual": "",
      "ceppj": "",
      "enderecopj": "",
      "numeropj": "",
      "bairropj": "",
      "cidadepj": "",
      "estadopj": "",
      "paispj": "",
      "pontoreferencia": "",
      "pontoreferenciapj": "",
      "complemento": "",
      "complementopj": ""
    }
  ],
  "pagination": {
    "page": 1, // Página atual
    "page_size": 200, // Quantidade de resgistros exibida por pagina
    "total_page": 1, // Quantidade de paginas no total
    "total_data": 1 // Quantidade total de registros encontrados
  }
}

Cadastrar

Endpoint: /api/v1/clients

Método: POST

Permite a criação de um ou mais clientes. Os dados do cliente devem ser fornecidos no corpo da solicitação.

Exemplo de corpo da solicitação para criar um cliente:

Request:

json
// Observe que o json abaixo e um array, onde pode ser enviado 1 ou varios registros
[
  {
    "nome": "Jonathan Moreira Brambati",
    "email": "jonathan@meeventos.com.br",
    "cep": "30720610",
    // Outros campos que queiram cadastrar
  },
  // Outros clientes que queiram inserir
]

Response:

json
{
  "status": "success",
  "message": "1 Cliente(s) Inserido(s)",
  "data": [
    {
      "id": "1215",
      "cliente": "Jonathan Moreira Brambati"
    }
  ]
}

Visualizar

Endpoint: /api/v1/clients/{id}

Método: GET

Para visualizar as informações de um cliente, você pode fazer uma solicitação GET para endpoint acima. Não é necessário fornecer informações no corpo da solicitação, já que você estará apenas recuperando dados. O ID do cliente a ser consultado deve ser especificado no endpoint.

Response:

json
{
  "id": "1186",
  "nome": "API 1",
  "email": "jonathan@meeventos.com.br",
  "cpf": "01234567890",
  "cep": "30720610",
  "endereco": "",
  "numero": "",
  "bairro": "",
  "cidade": "",
  "estado": "",
  "telefone": "31 999999999",
  "email2": "",
  "telefone2": "31 999999999",
  "razaosocial": "",
  "celular": "31 999999999",
  "responsavel": "",
  "datadenascimento": null,
  "anotacoes": "",
  "datadecadastro": "0000-00-00",
  "rg": "",
  "dditelefone": null,
  "dditelefone2": null,
  "ddicelular": null,
  "pais": "",
  "tipocadastro": "0",
  "redesocial": "",
  "profissao": "",
  "estadocivil": "",
  "nacionalidade": "",
  "orgaoexpeditor": "",
  "datadeexpedicao": null,
  "nomefantasia": "",
  "cnpjpj": "369852",
  "municipal": "",
  "estadual": "",
  "ceppj": "",
  "enderecopj": "",
  "numeropj": "",
  "bairropj": "",
  "cidadepj": "",
  "estadopj": "",
  "paispj": "",
  "pontoreferencia": "",
  "pontoreferenciapj": "",
  "complemento": "",
  "complementopj": ""
}

Editar

Endpoint: /api/v1/clients/{id}

Método: PUT

Permite a atualização de dados de um cliente específico. Os dados para atualização devem ser fornecidos no corpo da solicitação. O ID do cliente a ser editado deve ser especificado no endpoint.

Exemplo de corpo da solicitação para atualizar um cliente:

Request:

json
{
  "nome": "Jonathan Moreira Brambati",
  "email": "jonathan@meeventos.com.br",
  "cnpjpj": "29206803000189",
  // Outros campos que queiram editar
}

Response:

json
{
  "status": "success", // success, error
  "message": "Registro atualizado com sucesso.",
  "data": [
    {
      "id": "1187",
      "nome": "Jonathan Moreira Brambati m",
      "email": "jonathan@meeventos.com.br",
      "cpf": "",
      "cep": "",
      "endereco": "",
      "numero": "",
      "bairro": "",
      "cidade": "Belo Horizonte",
      "estado": "",
      "telefone": "",
      "email2": "",
      "telefone2": "",
      "razaosocial": "",
      "celular": "",
      "responsavel": "",
      "datadenascimento": null,
      "anotacoes": "",
      "datadecadastro": "0000-00-00",
      "rg": "",
      "dditelefone": null,
      "dditelefone2": null,
      "ddicelular": null,
      "pais": "",
      "tipocadastro": "0",
      "redesocial": "",
      "profissao": "",
      "estadocivil": "",
      "nacionalidade": "",
      "orgaoexpeditor": "",
      "datadeexpedicao": null,
      "nomefantasia": "",
      "cnpjpj": "",
      "municipal": "",
      "estadual": "",
      "ceppj": "",
      "enderecopj": "",
      "numeropj": "",
      "bairropj": "",
      "cidadepj": "",
      "estadopj": "",
      "paispj": "",
      "pontoreferencia": "",
      "pontoreferenciapj": "",
      "complemento": "",
      "complementopj": ""
    }
  ]
}

Deletar

Endpoint: /api/v1/clients/{id}

Método: DELETE

Remove um cliente específico da base de dados. O ID do cliente a ser removido deve ser especificado no endpoint.

Response:

json
{
  "status": "success", // success, error
  "message": "Cliente excluído com sucesso."
}