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.

Alguma dúvida?
Abrir chamado