Como consultar os dados dos chamados
Para consultar os dados do chamado é necessário criar um usuário para a API e obter o token de acesso.
Como acessar a API
URL da API
A URL para a API será o seu endereço no fluxki seguido de /api
Exemplo: https://demonstracao.fluxki.com.br/api/
Token de Acesso
O token de acesso deve ser informado no cabeçalho (header) Authorization
Como filtrar os dados
- Método: POST
- URL: [url_base]/chamados/filtrar
Corpo da requisição:
{
"regras": {
"tipo": 1,
"filtro": [
{
"campo": "id",
"acao": "BETWEEN",
"valor": [
"9",
"20"
],
"habilitada": true
}
],
"complementos": [],
"ordem": [
{
"campo": "created_at",
"tipo": "ASC"
}
],
"relacionamento": {
"usuarios": {
"ids": [],
"usuario_conectado": false
}
}
}
}
No exemplo acima criamos um filtro para filtrar todos os dados de um chamado com o id entre 9 e o 20, organizado pela data de cadastro;
Em um SQL a consulta ficaria parecida com:
SELECT * FROM chamados WHERE id BETWEEN 9,20 ORDER BY created_at ASC;
Entendendo os filtros
Regras
As regras de um filtro tem os seguintes valores:
- campo -> se refere ao campo dentro do banco de dados exemplo id que seria o id do chamado
- acao -> ação dentro do banco de dados, como por exemplo =
- = Quando o campo for igual ao valor
- != Quando o campo for diferente do valor
- < Quando o campo for menor que o valor
- <= Quando o campo for menor ou igual ao valor
- > quando o campo for maior que o valor
- >= Quando o campo for maior ou igual ao valor
- BETWEEN Quando o campo estiver entre os valores
- Neste caso os valores devem ser informados em uma array, exemplo [valor 1, valor 2]
- LIKE Quando o campo for parecido com o valor
- Neste caso o valor será uma string substituindo os espaços em branco por % como por exemplo chamado de exemplo ficará assim %chamado%de%exemplo%
- valor -> o valor relacionado a ação, como por exemplo 1
- habilitado -> true ou false, ou seja, se estiver true a regra será utilizada e se estiver como false ela será ignorada.
Transformando uma regra simples para SQL ficaria da seguinte forma:
SELECT * FROM chamados WHERE [campo] [acao] [valor];
No exemplo acima ficaria da seguinte forma:
SELECT * FROM chamados WHERE id = 1;
No objeto filtro você pode passar várias regras para compor a sua consulta, por exemplo para buscar os chamados criados entre o dia 01/01/2021 até 31/01/2021, o campo filtro ficaria da seguinte forma:
...
"filtro": [
{
"campo": "created_at",
"acao": "BETWEEN",
"valor": [
"2021-01-01",
"2021-01-31"
],
"habilitada": true
}
],
...
Você pode adicionar várias regras no filtro. No exemplo abaixo vamos fazer um filtro que busca os chamados entre o dia 01/01/2021 até 31/01/2021 do cliente com o id 1
...
"filtro": [
{
"campo": "created_at",
"acao": "BETWEEN",
"valor": [
"2021-01-01",
"2021-01-31"
],
"habilitada": true
},
{
"campo": "id_cliente",
"acao": "=",
"valor": 1,
"habilitada": true
}
],
...
Ordem
O campo ordem está relacionado como os registros serão organizados.
A ordem tem os seguintes valores:
- campo -> se refere ao campo dentro do banco de dados exemplo id que seria o id do chamado
- tipo -> pode ser ASC (organizados de A-Z) ou DESC (organizados de Z-A)
"ordem": [
{
"campo": "created_at",
"tipo": "ASC"
}
],
Transformando es regra para um SQL ficaria da seguinte forma:
SELECT * FROM chamados ORDER BY created_at ASC;
Relacionamento
O objeto relacionamento é referente aos registros relacionados ao chamado. Este objeto tem os seguintes valores:
- usuarios -> se refere aos usuários relacionados ao chamado;
- ids -> se refere ao id dos usuários que estão relacionados;
- usuario_conectado -> se refere ao usuário que está enviando a requisição para a API, se estiver como true o sistema irá filtrar os chamados relacionados com o usuário que está enviando a requisição na API.
Exemplo: como buscar os chamados relacionados com o usuário com ids 1 e 2
"relacionamento": {
"usuarios": {
"ids": [1, 2],
"usuario_conectado": false
}
}
Informações Disponíveis
Segue abaixo os campos disponíveis no cadastro de um chamado:
- id - Inteiro - chave primária
- created_at - datetime - data de cadastro
- updated_at - datetime - data da última atualização
- id_usuario - inteiro - usuário que criou o chamado
- id_usuario_solicitante - inteiro - usuário que solicitou o chamado
- id_chamado_mestre - inteiro - chamado acima (quando um chamado é relacionado a outro)
- id_chamado_etapa - inteiro - etapa atual do chamado
- id_chamado_acordo - inteiro - acordo SLA do chamado
- id_chamado_tipo - inteiro - tipo do chamado
- id_setor - inteiro - setor do chamdo
- id_cliente - inteiro - cliente
- resposta_pendente - número de respostas pendentes
- nome - string - nome / assunto do chamado
- observacoes - texto - observações do chamado
- nome_publico - texto - nome público para acessar o chamado (url)
- data_resposta - datetime - data que o chamado deverá ser respondido dentro do SLA
- data_solucao - datetime - data que o chamado deverá ser resolvido dentro do SLA
- data_solucao_manual - datetime - data de solução (editada manualmente)
- data_real_resposta - datetime - data que o chamado foi respondido pela primeira vez
- data_real_solucao - datetime - data que o chamado foi resolvido
- data_ultima_resposta - datetime - data da última resposta enviada ao chamado
- dados_complementares - JSON - dados complementares
- urgencia - tinyint
- 10 - Em análise
- 1 - Baixo
- 2 - médio
- 3 - alto
- 4 - urgente
- 5 - crítico
- respostas_pre_analise - JSON - Array com as respostas da pré-análise do chamado
- resposta_solucao - text - resposta de solução do chamado
- avaliacao - tinyint
- 0 - Não avaliado
- 1 - Péssimo
- 2 - Ruim
- 3 - Regular
- 4 - Bom
- 5 - Ótimo
- origem - tinyint - origem do chamado
- 0 - App Agentes
- 1 - App Cliente
- 2 - Base de Conhecimento
- 3 - E-mail
- 4 - API
- 5 - Telegram
- ultima_resposta - text - Última resposta do chamado
- modo_chat - tinyint
- 0 - chamado normal
- 1 - chamado em modo chat
- ativo
- 0 - inativo
- 1 - ativo
Caso fique alguma dúvida, entre em contato com a equipe de suporte.