Exportar Relatório

O relatório será gerado conforme as configurações dos campos setados. Os parâmetros de busca são os mesmos do método load_objects. O método HTTP usado é o POST.

POST /report_generate.fcgi

Parâmetros

  • object (string) : Tipo do objeto a ser criado. Consulte o tópico Lista de Objetos para uma lista completa dos tipos de objeto disponíveis.
  • values (array de objetos JSON) : Cada elemento deve ser um objeto JSON representando o objeto a ser criado. Cada chave deve ser um campo válido do objeto e os valores devem ter o tipo apropriado. Todos os objetos JSON devem ter os mesmos campos.

Resposta

  • object (string) : Esse campo representa o tipo de relatório que será gerado, por exemplo, "users".
  • file_name (string) : Esse campo representa o nome do arquivo de saída (opcional).
  • delimiter (string) : Esse campo representa o tipo de delimitador de campo, similar a estrutura de um arquivo .csv, por exemplo: ";" ou "," (opcional).
  • header (string) : Esse campo representa o cabeçalho do relatório (opcional).
  • line_break (string) : Esse campo representa a quebra de linha, podendo ser um simples "\n" (opcional).
  • columns (objeto JSON) : Esse campo determina as colunas que serão mostradas no relatório (muito similar ao campo fields do método load_objects). Este campo é um array que contém objetos, estes objetos possuem os seguintes campos:
    • field (string) : Esse campo pertence ao objeto columns e representa o nome do campo que será gerado.
    • type (string) : Este campo pertence ao objeto columns e determina o tipo da coluna. Pode ser: "object_fileld" (Campo de coluna normal), "counter" (Contador de registros) e "fixed" (Campo fixo).
      • object_field (string) : Este é um campo de coluna normal. Este objeto terá dois campos, field e object, do tipo string, que representam a coluna e tabela respectivamente.
      • counter (string) : Este objeto terá dois campo opcionais inteiros: offset (representa valor inicial do contador. Padrão: 0) e step (representa o passo do contador. Padrão: 1).
      • fixed (string) : Este objeto contem um campo obrigatório do tipo string que representa o valor fixo da coluna.
    • format (objeto JSON) : Este campo pertence ao objeto columns, e determina como a coluna será formatada e apresenta (opcional). Este objetos possui os seguintes campos:
      • adjustment (string) : Esse campo representa se a coluna deve estar alinha a esquerda, direita ou nenhum ajuste deve ser feito(opcional).
      • fill (string) : Esse campo determina o valor do preenchimento dos espaços vazios, por exemplo: "0" (opcional).
      • format (string) : Esse campo representa a formatação do coluna, por exemplo: "%d : dia, %m : mês, %Y : ano, %H : horas, %M : minutos, %S: segundos" (opcional).
      • width (int) : Esse campo representa o ajuste do tamanho da coluna (opcional).

Exemplo de requisição

Gerando relatório:

$.ajax({
  url: "/report_generate.fcgi?session=" + session,
  type: 'POST',
  contentType: 'application/json',
  data: JSON.stringify({
      order:["ascending","name"],
        "where":{
              "users":{},
              "groups":{},
              "time_zones":{}
          },
          object:"users",
          delimiter:";",
          line_break:"\\r\\n",
          header:"Nome (Usuário);Código (Usuário)",
          file_name:"",
          join:"LEFT",
          columns:[
            {
                type:"object_field",
                object:"users",
                field:"name",
                format:{
                    adjustment:1,
                    width:50,
                    fill:" ",
                    format:"%s"
                }
              },
              {
                type:"object_field",
                object:"users",
                field:"id",
                format:{
                    adjustment:2,
                    width:5,
                    fill:"0",
                    format:"%s"
                }
              }
          ]
  })
});

POST /export_afd.fcgi

Permite a extração de um relatório em formato AFD. O relatório pode ser utilizado como ferramenta para controle de ponto, sendo fornecido nele todos os registros de acesso autorizados que encontram-se armazenados no aparelho. O relatório AFD também pode ser gerado a partir da Interface WEB e da GUI do equipamento.

É possível filtrar a geração do relatório em formato AFD a partir de uma data inicial ou através de um NSR inicial.

O retorno pode seguir tanto o formato legado das Portarias anteriores (MTE 1510/2009, Inmetro 595/2013) quanto o formato definido pela Portaria 671. Caso a requisição contenha o parâmetro mode na query_string ou no body com o valor 671, o retorno seguirá o formato definido pela Portaria 671. Para qualquer outro valor, ou na ausência do parâmetro mode, o AFD retornado seguirá o formato da Portaria 595.

Exemplo de requisição

Parâmetros

  • initial_date (objeto JSON) : Contém informações sobre a data inicial a partir da qual o relatório formato AFD será gerado.
    • day (int) : Valor numérico representando o dia.
    • month (int) : Valor numérico representando o mês.
    • year (int) : Valor numérico representando o ano.
  • initial_nsr (int) : NSR inicial aplicada como filtro.
  • mode (int) : Modo de retorno do AFD.

Resposta

  • Documento com extensão .txt contendo o relatório em formato AFD. O nome do documento respeita a norma para AFD, sendo construído com AFD + serial numérica do dispositivo.

Gerando relatório integral com formato 595:

$.ajax({
  url: "/export_afd.fcgi?session=" + session,
  type: 'POST',
  contentType: 'application/json',
  data: JSON.stringify({})
});

Gerando relatório integral com formato 671:

$.ajax({
  url: "/export_afd.fcgi?session=" + session + "&mode=671",
  type: 'POST',
  contentType: 'application/json',
  data: JSON.stringify({})
});

Gerando relatório com filtro de data inicial:

$.ajax({
    url: "/export_afd.fcgi?session=" + session,
    type: 'POST',
    contentType: 'application/json',
    data: JSON.stringify({
        "initial_date":{
          "day":11,
          "month":7,
          "year":2022
        }
    })
});

Gerando relatório com filtro de NSR:

$.ajax({
    url: "/export_afd.fcgi?session=" + session,
    type: 'POST',
    contentType: 'application/json',
    data: JSON.stringify({
        "initial_nsr":1
    })
});

POST /export_audit_logs.fcgi

Permite a extração de Logs de Auditoria. O relatório pode ser utilizado como ferramenta para controle do dispositivo e verificação dos seus eventos, sendo fornecido nele os últimos 25000 registros, que é a quantidade máxima armazenada (com rotação) no banco de dados do equipamento.

É possível filtrar a geração do relatório a partir de 7 categorias de log de eventos.

Categorias de log de eventos.

  • config : Log de auditoria de configurações. Registra todas as mudanças nas configurações do sistema.
  • api : Log de auditoria da API. Registra requerimento das sessões ao acessar a API.
  • usb : Log de auditoria de Pendrive USB. Registra todos os eventos que fazem uso de pendrive USB.
  • network : Log de auditoria da Rede. Registra todas as mudanças referentes a rede do dispositivo.
  • time : Log de auditoria do tempo. Registra as mudanças no horário do dispositivo.
  • online : Log de auditoria do modo online. Registra as conexões e as respostas do server.
  • menu : Log de auditoria do menu do dispositivo. Registra o acesso do menu em modos offline e online.

Exemplo de requisição

Parâmetros

  • config (int) : Habilita o filtro para os logs do evento de configuração. Para desabilitar "0", e para habilitar "1".
  • api (int) : Habilita o filtro para os logs do evento de API. Para desabilitar "0", e para habilitar "1".
  • usb (int) : Habilita o filtro para os logs do evento de pendrive USB. Para desabilitar "0", e para habilitar "1".
  • network (int) : Habilita o filtro para os logs do evento de rede. Para desabilitar "0", e para habilitar "1".
  • time (int) : Habilita o filtro para os logs do evento de horário do dispositivo. Para desabilitar "0", e para habilitar "1".
  • online (int) : Habilita o filtro para os logs do evento de modo online. Para desabilitar "0", e para habilitar "1".
  • menu (int) : Habilita o filtro para os logs do evento de menu. Para desabilitar "0", e para habilitar "1".

Resposta

  • Documento contendo os últimos 25000 logs de auditoria dos filtros desejados mais recentes em inglês, independentemente do idioma em que o equipamento está configurado.

Gerando relatório com todos os logs de auditoria:

$.ajax({
    url: "/export_audit_logs.fcgi?session=" + session,
    type: 'POST',
    contentType: 'application/json',
    data: JSON.stringify({
        "config": 1,
        "api": 1,
        "usb": 1,
        "network": 1,
        "time": 1,
        "online": 1,
        "menu": 1
    })
});