Skip to content

thiago-claravista/get-comporte-cases

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lista de conteúdo

Introdução

API de listagem e consultar os casos (Cases), anexos (Attachments) e documentos (Documents) exportados da plataforma Salesforce Sales da Comporte e consumidos em um banco de dados MySQL.

Autenticação

Para realizar as requisições nos endpoints da API, é necessário se autenticar passando no cabeçalho da requisição um token fixo. O token é alcançado através da codificação da palavra passe 'Claravista@2022' utilizando base64.
É recomendável utilizar o método btoa(), nativo do JavaScript, que codifica utf-16 para base64:

btoa("exemplo");
// 'ZXhlbXBsbw=='

No cabeçalho da requisição teríamos algo parecido com:

{
  Authorization: `${btoa("Claravista@2020")}`;
}

Formatos de Data

As datas são validadas na aplicação utilizando a expressão regular /^(\d{2,4}-?){3}(\s(\d{2}:?){3})?$/. Sendo assim, as datas aceitas devem conter o formato ano, mês e dia (yyyy-mm-dd) podendo ou não conter horários (yyyy-mm-dd hh:mm:ss).
Exemplos de algumas datas válidas e inválidas:

Valid

  • 2020-04-01
  • 2020-08-01 14:00:00

Invalid

  • 01-01-2022
  • 01-01-2022 00:00
  • 01/01/2022
  • 01/01/2022 00:00
  • 2022/01/01

Consultas

Para a obtenção da lista de casos armazenados na base de dados, foram disponibilizadas as rotas /cases/:id e /cases com a possibilidade de adição de filtros através de query params na requisição.

Consultando CASOS

GET
Para obter a listagem completa dos casos, basta enviar uma requisição GET para o endpoint /cases e em caso de sucesso (status code 200) uma lista paginada será retornada. É possível definir através dos query params limit e page o limite de registros retornados e a página referente, exemplo /cases?limit=500&page=2. Caso esses parâmetros sejam omitidos, os valores assumidos como padrão serão limit = 100 e page = 1.
Outros parâmetros também são aceitos como filtro na requisição, alguns deles são:

  • email: E-mail de contato do cliente, presente na coluna CONTACTEMAIL;
  • cpf: CPF do cliente, presente nas colunas CPF_DO_PORTADOR__C ou CPF_DO_PORTADOR_PIX__C;
  • contact: Telefone de contato do cliente, presente nas colunas CONTACTMOBILE ou CONTACTPHONE;
  • createdDate: Data de abertura do caso, presente na coluna CREATEDDATE. Retornará todos os casos com a data de abertura maior ou igual ao valor fornecido. Leia o formato de data aceito;
  • closedDate: Data de fechamento do caso, presente na coluna CLOSEDDATE. Retornará todos os casos com a data de fechamento menor ou igual ao valor fornecido. Leia o formato de data aceito;

Consultando CASOS únicos

GET
Para uma pesquisa mais direta e objetiva, é possível efetuar uma busca por identificador para o endpoint /cases/:id, substituindo :id pelo Id do caso (ID) ou o número do caso (CASENUMBER) (obtido na listagem anterior). Exemplo /cases/5003k00001jRr11AAC (Id) ou /cases/00050085 (Nº do caso).

Consultando comentários do CASO

GET
Alguns casos possuem comentários adicionais que podem ser obtidos através do endpoint /cases/:id/comments, substituindo :id pelo Id do caso (ID).

Consultando ANEXOS

GET

Para obter a listagem de anexos contendo as características, basta enviar uma requisição GET para o endpoint /attachments e em caso de sucesso (status code 200) uma lista paginada será retornada. É possível definir através dos query params limit e page o limite de registros retornados e a página referente, exemplo /attachments?limit=100&page=2. Caso esses parâmetros sejam omitidos, os valores assumidos como padrão serão limit = 100 e page = 1.
Outro parâmetro também é aceito como filtro na requisição, sendo ele:

  • sourceId: Identificador presente no caso relacionado ao anexo;

Obtendo o conteúdo dos ANEXOS

GET
Para obter o conteúdo do anexo é necessário requisitar ao endpoint /attachments/:id, substituindo :id pelo ID do anexo (obtido na listagem anterior), exemplo /attachments/00P3k00001EKwAqEAL.

Consultando DOCUMENTOS

GET

Para obter a listagem de documentos contendo as características, basta enviar uma requisição GET para o endpoint /documents e em caso de sucesso (status code 200) uma lista paginada será retornada. É possível definir através dos query params limit e page o limite de registros retornados e a página referente, exemplo /documents?limit=100&page=2. Caso esses parâmetros sejam omitidos, os valores assumidos como padrão serão limit = 100 e page = 1.

Obtendo o conteúdo dos DOCUMENTOS

GET
Para obter o conteúdo do documents é necessário requisitar ao endpoint /documents/:id, substituindo :id pelo ID do documento (obtido na listagem anterior), exemplo /documents/0153k000008zRY6AAM.

Consultando CONTAS

GET
Para obter a listagem completa das contas de usuários, basta enviar uma requisição GET para o endpoint /accounts e em caso de sucesso (status code 200) uma lista paginada será retornada. É possível definir através dos query params limit e page o limite de registros retornados e a página referente, exemplo /accounts?limit=500&page=2. Caso esses parâmetros sejam omitidos, os valores assumidos como padrão serão limit = 100 e page = 1.
Outros parâmetros também são aceitos como filtro na requisição, alguns deles são:

  • email: E-mail de contato do cliente, presente na coluna PERSONEMAIL;
  • cpf: CPF do cliente, presente na coluna CNPJCPF__C
  • contact: Telefone de contato do cliente, presente nas colunas PERSONMOBILEPHONE ou PHONE;

Consultando CONTAS únicos

GET
Para uma pesquisa mais direta e objetiva, é possível efetuar uma busca por identificador para o endpoint /accounts/:id, substituindo :id pelo ID da conta de usuário (ID) (obtido na listagem anterior). Exemplo /accounts/5003k00001kmUNJAA2 (ID).

About

Rest API para obter os Cases e Attachments da Comporte consumindo de um banco de dados MySQL

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published