/api/v2/device/search{?page=1&limit=10}
{?page=1&limit=10} esse é um exemplo do que pode ser passado de parâmetro, para a execução a URL correta seria:
/api/v2/device/search?page=1&limit=10
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
Page |
Número da página da busca. Observe o retorno da busca para o número total de páginas. |
Inteiro |
Não |
Limit |
Número máximo de CPEs a serem buscadas. Limitado a buscar, no máximo, 50 CPEs por página. |
Inteiro |
Não |
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
filter_list |
Lista com todos os filtros desejados |
String |
Sim |
query_result_filter |
Filtrar campos que serão retornados nos resultados |
String |
Não |
* Obs.: O parâmetro query_result_filter pode incluir o marcador “-” antes de cada campo para apenas excluir os campos indicados do resultado.
* Obs.2: Os seguintes campos não podem ser filtrados do resultado: releases, status_color, permissions, wifi_state, wifi_state_5ghz.
¶ Exemplo do Body
{
"filter_list": "online,/ou,offline",
"query_result_filter": "-firstboot_log,-lastboot_log"
}
Status Code |
Descrição |
200 |
OK. Observar variável “success” no body da mensagem para status de sucesso da busca |
{
"success": false,
"message": "Erro ao acessar base de dados",
"type": "danger"
}
{
"type": "success",
"limit": 10,
"page": 1,
"pages": 2,
"min_length_pass_pppoe": 7,
"status": {
"onlinenum": 12,
"recoverynum": 0,
"offlinenum": 0,
"totalnum": 12
},
"single_releases": [
{
"id": "0042-aix",
"model": [
"DWR-116A3",
"NCLOUDV1",
"ARCHERC20V4",
"ARCHERC5V4",
"TL-WDR3500V1",
"TL-WDR3600V1",
"TL-WDR4300V1",
"TL-WR741NDV4",
"TL-WR840NV4",
"TL-WR840NV5",
"TL-WR841NDV7",
"TL-WR841NDV8"
]
},
{
"id": "0000-dos",
"model": [
"ARCHERC20V4"
]
}
],
"filter_list": "online",
"devices": [
{
"_id": "0C:80:63:FF:FF:FF",
"version": "0.16.0",
"wifi_is_5ghz_capable": true,
"do_update_status": 1,
"mqtt_secret_bypass": false,
"ping_hosts": [
"www.google.com",
"www.youtube.com",
"www.facebook.com",
"www.instagram.com",
"www.apple.com"
],
"model": "ARCHERC5V4",
"installed_release": "0052-aix",
"release": "0052-aix",
"pppoe_user": "teste@teste",
"pppoe_password": "teste",
"lan_subnet": "192.168.42.0",
"lan_netmask": 24,
"wifi_ssid": "Ap-24ghz",
"wifi_password": "teste1234",
"wifi_channel": "auto",
"wifi_band": "HT20",
"wifi_mode": "11n",
"wifi_ssid_5ghz": "Ap-5ghz",
"wifi_password_5ghz": "teste1234",
"wifi_channel_5ghz": "149",
"wifi_band_5ghz": "VHT80",
"wifi_mode_5ghz": "11ac",
"wan_ip": "177.158.199.199",
"wan_negociated_speed": "100",
"wan_negociated_duplex": "full",
"ip": "177.158.199.199",
"last_contact": "2019-06-25T20:10:19.405Z",
"do_update": false,
"do_update_parameters": false,
"apps": [
{
"_id": "zzzzzzzzzzzz",
"id": "aaaaaaaaaaaaaa",
"secret": "aaaaaaaaaaaaaaa"
},
{
"_id": "yyyyyyyyyyyyyyyyy",
"id": "bbbbbbbbbbbbbbb",
"secret": "bbbbbbbbbbbbbbb"
}
],
"connection_type": "pppoe",
"__v": 47,
"mqtt_secret": "jsadshdajnsudshasjasawqqwass",
"lastboot_date": "2019-06-23T17:00:33.768Z",
"ntp_status": "0.000164",
"firstboot_date": "2019-06-18T04:38:28.537Z",
"external_reference": {
"kind": "Outro",
"data": "Usuário de Teste"
},
"app_password": "teste",
"forward_index": "1561489581029",
"last_devices_refresh": "2019-06-25T19:07:10.921Z",
"id": "FF:FF:FF:B9:64:43",
"releases": [
{
"id": "0042-aix",
"model": "ARCHERC5V4"
},
{
"id": "0047-aix",
"model": "ARCHERC5V4"
}
],
"status_color": "green-text",
"permissions": {
---
---
---
---
---
"grantViewLogs": true,
"grantResetDevices": true,
"grantPortForward": true,
"grantPortForwardAsym": true,
"grantPortOpenIpv6": true,
"grantWifi5ghz": true,
"grantWifiBand": true,
"grantPingTest": true,
"grantLanEdit": true,
"grantLanDevices": true
}
}
]
}
/api/v2/device/get
POST
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
filter_list |
Lista com todos os filtros desejados |
String |
Sim |
fields |
Filtrar campos que serão retornados nos resultados |
String |
Sim |
¶ Exemplo do Body
{
"filter_list": "online,/ou,offline",
"fields": "_id,use_tr069,model"
}
Status Code |
Descrição |
200 |
OK. Retorna as informações dos roteadores encontrados |
[
{
"_id": "18:0D:2C:5E:37:00",
"use_tr069": false,
"model": "ACTIONRG1200V1"
},
{
"_id": "F8:6C:E1:E9:30:40",
"use_tr069": true,
"model": "G-140W-C"
},
{
"_id": "98:00:6A:96:9B:84",
"use_tr069": true,
"model": "F670L"
}
]
/api/v2/device/update/{ID do CPE}
GET
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
Status Code |
Descrição |
200 |
OK, retorna as informações do roteador |
404 |
Roteador não encontrado |
500 |
Erro interno do servidor |
{
"success": false,
"message": "device not found"
}{
"external_reference": {
"kind": 'CPF', // Poderá ser CPF, CNPJ ou Outro
"data": '123.456.789-00'
},
"apps": [],
_id: '11:11:11:11:11:11', // Endereço MAC da WAN ou da interface de Wi-Fi a depender do modelo de CPE
"model": 'TL-MR3020V1',
"release": '0004-AIX',
"pppoe_user": '',
"pppoe_password": '',
"pppoe_ip": "192.168.89.1", // IP do CPE informado pela conexão PPP, se existir.
"pppoe_mac": "c4:ad:34:c3:db:f1", // MAC do CPE informado pela conexão PPP, se existir
"wifi_ssid": 'TesteSSID',
"wifi_password": 'SenhaWifi',
"wifi_channel": 'auto',
"wifi_last_channel": "7", // Poderá informar último canal utilizado pelo CPE caso esteja em auto
"wifi_band": "HT40", // Poderá ser auto, HT20, HT40, VHT20, VHT40, VHT80 ou VHT160
"wifi_last_band": "20", // Poderá informar última largura de canal utilizado pelo CPE caso esteja em auto
"wifi_mode": "11n", // Poderá ser 11g, 11n, 11na, 11ac, 11ax
"wifi_state": 1, // Poderá ser 1 se estiver habilitado ou 0 caso contrário
"wifi_hidden": 0, // Poderá ser 1 se SSID estiver escondido.
"wifi_power": 75, // Potência na antena de 0 a 100. Valores percentuais.
"wifi_is_5ghz_capable": true, // Poderá ser true caso CPE seja dual band
"wifi_ssid_5ghz": "Anlix-MESH-AP-5GHz",
"wifi_password_5ghz": "aaaaaaaaaaa",
"wifi_channel_5ghz": "161",
"wifi_last_channel_5ghz": "161",
"wifi_band_5ghz": "VHT40",
"wifi_last_band_5ghz": "20",
"wifi_mode_5ghz": "11ac",
"wifi_state_5ghz": 1,
"wifi_hidden_5ghz": 0,
"wifi_power_5ghz": 100,
"upnp_requests": [], // Pedidos de liberação de regra via uPnP
"mesh_mode": 0, // Poderá ser 0 -> desabilitado, 1 -> somente por cabo, 2 -> somente por 2.4GHz, 3 -> 5.0Ghz e 4 para todos os modos
"mesh_slaves": [], // CPEs secundárias na rede mesh
"mesh_father": "", // CPE principal na rede mesh
"bridge_mode_enabled": false, // CPE em modo bridge
"bridge_mode_switch_disable": false, // Estado do switch do CPE quando modo bridge habilitado
"last_contact": 2018-01-01T03:00:00.000Z,
"do_update": false,
"do_update_parameters": true,
"connection_type": 'dhcp', // Poderá ser pppoe ou dhcp
"ip": '5.5.5.5', // Informação de IP do CPE visível pelo servidor do Flashman
"wan_ip": '10.10.10.10', // Informação de IP da WAN enviado pelo CPE
"wan_ipv4_mask": 32,
"wan_ipv6_mask": 64,
"ipv6_enabled": 1, // Poderá ser 1 se ipv6 habilitado ou 0 se estiver desabilitado. O valor 2 será informado quando estado desconhecido.
"wan_ipv6": "2804:3e0:0:4200:e80:63ff:feb9:6444",
"prefix_delegation_addr": "fc00:dead:c0de:700::",
"prefix_delegation_local": "fc00:dead:c0de:700::1",
"prefix_delegation_mask": "64",
"wan_negociated_speed": "1000", // Poderá ser vazio, 10, 100, 1000 ou 10000
"wan_negociated_duplex": "full", // Poderá ser vazio, half ou full
"lan_subnet": "10.0.30.1",
"lan_netmask": 24,
"current_diagnostic": { // Último diagnóstico realizado pelo CPE. Poderá ser qualquer procedimento ativo disponível para o CPE.
"type": "speedtest", // Poderá ser speedtest, ping, traceroute, sitesurvey
"stage": "done", // Poderá ser estimative, measure, initiating, error, done
"customized": false,
"in_progress": false,
"started_at": "2023-03-29T13:44:24.876Z",
"last_modified_at": "2023-03-29T13:44:31.850Z",
"targets": [
"192.168.88.6:25752" // Destinos do diagnóstico. Poderá ser vazio a depender do diagnóstico
],
"user": "raul", // Usuário do Flashman ou app que realizou o disparo do diagnóstico
"webhook_url": "", // Webhook de retorno do teste. Caso vazio será utilizada a configuração de callback padrão.
"webhook_user": "",
"webhook_secret": "",
"recursion_state": 5
},
"use_tr069": false, // CPE é gerenciado por TR-069 caso o valor seja true
"secure_tr069": true, // CPE utiliza HTTPS para ser gerenciado por TR-069
"sys_up_time": 878952, // Valor em segundos de tempo de CPE ligado
"wan_up_time": 676051, // Valor em segundos de tempo de CPE conectado
"latitude": -22.9228285,
"longitude": -43.2341451,
"wps_is_active": false, // Poderá ser true se WPS ativo no CPE
"wps_last_connected_mac": "", // MAC do último dispositivo conectado por WPS no CPE
"cpu_usage": 10, // Último valor percentual de uso de CPU. De 0 a 100. Valor 101 significa resultado desconhecido
"memory_usage": 101, // Último valor percentual de uso de RAM. De 0 a 100. Valor 101 significa resultado desconhecido
"isSsidPrefixEnabled": false, // Poderá ter prefixo SSID habilitado se true
"vlan": [ // Poderá ser vazio. VLANs ID configuradas em cada por LAN
{
"vlan_id": 1,
"_id": "631747ae8cfdad24d97249f9",
"port": 1
},
{
"vlan_id": 1,
"_id": "631747ae8cfdad24d97249fa",
"port": 2
},
],
"lan_devices": [
{
"is_blocked": false,
"port": [],
"router_port": [],
"dmz": false,
"ipv6": [
"fe80::2094:c6ff:fe74:f653"
],
"dhcpv6": null,
"upnp_permission": "none",
"_id": "63175b8fe9410d24b56177c1",
"mac": "22:94:c6:74:f6:53",
"dhcp_name": "K41S",
"first_seen": "2022-09-06T14:39:11.989Z",
"last_seen": "2023-01-17T17:52:31.077Z",
"ip": "10.0.30.160",
"conn_type": 1,
"conn_speed": 65,
"wifi_signal": -61,
"wifi_snr": 24,
"wifi_freq": 2.4,
"wifi_mode": "N",
"wifi_fingerprint": "",
"dhcp_fingerprint": "1,3,6,15,26,28,51,58,59,43,114,108",
"dhcp_vendor_class": "android-dhcp-11",
"ping": 115.361
},
],
"ap_survey": [ // Lista de redes Wi-Fi ao redor coletadas no último diagnóstico de site survey agendado.
{
"_id": "631df5961478f456186a761b",
"mac": "ff:ff:ff:90:00:d1",
"ssid": "Anlix-Macbook",
"freq": 2417,
"signal": -18,
"width": 20,
"VHT": false,
"first_seen": "2022-09-11T14:49:58.224Z",
"last_seen": "2023-03-24T18:11:52.157Z"
},
],
"pingtest_results": [ // Resultado de ping para os destinados especificados no último diagnóstico de ping agendado.
{
"lat": "---", // Valores em ponto flutuante 0.00 ou --- na ausência de resposta
"loss": "---",
"count": "---",
"completed": false,
"_id": "641c6c7d7e3602002bbe91e0",
"host": "www.globo.com"
},
],
"speedtest_results": [ // Resultados de teste de velocidade agendados no por diagnóstico.
{
"_id": "637bc5d50ee75719c062966a",
"user": "admin", // Usuário do Flashman, app do técnico ou disparo pelo app do cliente
"timestamp": "21/11/2022 15:39",
"down_speed": "234 Mbps"
},
],
"traceroute_results": [ // Lista com resultados de traceroute realizados no último diagnóstico agendado.
{
"all_hops_tested": true, // Valor true caso todos os saltos informarem resposta
"reached_destination": true, // Valor true se destino foi alcançado
"address": "www.globo.com",
"tries_per_hop": 3,
"completed": true, // Valor false em caso de diagnóstico em andamento
"_id": "641c6c637e3602002bbe91c3",
"hops": [
{
"hop_index": 1,
"ip": "192.168.89.1",
"ms_values": [ // Valores em milissegundos da latência para o salto informado no campo ip
"0.480",
"0.220",
"0.320"
],
"_id": "641c6c657e3602002bbe91c9"
},
],
},
],
"lastboot_date": "2023-03-25T10:05:20.986Z", // Data de último boot do CPE. Poderá ser vazio para alguns CPEs
"last_devices_refresh": "2023-03-29T18:47:39.690Z", // Obsoleto. Para alguns CPEs, informa data de última coleta de aparelhos.
"wan_bytes": { // Bytes trafegados na WAN em alguns instantes de tempo
"1679580929": [ // Chave do dicionário refere-se ao tempo em formato epoch da coleta
50528273959, // Total de bytes cumulativos no sentido downstream
14623344764 // Total de bytes cumulativos no sentido upstream
],
"1679580989": [
50528466107,
14623507966
],
},
"firstboot_date": "2023-02-12T22:27:16.748Z", // Data de primeiro boot do CPE. Será para CPEs gerenciados por TR-069
"default_gateway_v4": "192.168.89.1", // Gateway IPv4 de saída padrão da conexão WAN do CPE. Poderá ser vazio a depender do CPE.
"default_gateway_v6": "fe80::f2:d293", // Gateway IPv6 de saída padrão da conexão WAN do CPE. Poderá ser vazio a depender do CPE.
"dns_server": "192.168.88.1", // Servidor de DNS utilizado pelo CPE. Poderá ser vazio de acordo com o CPE.
"is_license_active": true, // Informa se licença Flashbox do CPE está ativo ou bloqueado
}
/api/v2/device/update/{ID do CPE}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Valores |
Obrigatório |
pppoe_user |
Usuário PPPoE |
String |
|
Não |
pppoe_password |
Senha do usuário PPPoE |
String |
|
Não |
wifi_ssid |
Identificação do ponto de acesso sem fio do usuário (SSID) |
String |
|
Não |
wifi_password |
Senha do ponto de acesso sem fio do usuário |
String |
Mínimo de 8 caracteres |
Não |
wifi_channel |
Canal do 802.11 |
String |
“auto”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,“10”,“11” |
Não |
connection_type |
Tipo de conexão WAN |
String |
“dhcp” ou “pppoe” |
Não |
ipv6_enabled |
Habilitar Ipv6 |
Integer |
0 - Desligado , 1 - Ligado |
Não |
lan_subnet |
Gateway da subrede LAN |
String |
IP válido |
Não |
lan_netmask |
Máscara da subrede LAN |
String |
“24”, “25”, “26” |
Não |
wifi_band |
Largura de banda Wi-Fi 2.4GHz |
String |
'HT20', 'HT40' |
Não |
wifi_mode |
Modo de operação Wi-Fi 2.4GHz |
String |
'11g', '11n' |
Não |
wifi_power |
Potência da antena Wi-Fi 2.4GHz |
Integer |
25, 50, 75, 100 (por cento) |
Não |
wifi_state |
Liga/Desliga Wi-Fi 2.4GHz |
Integer |
0 - Off , 1 - On |
Não |
wifi_hidden |
Esconder SSID Wi-Fi 2.4GHz |
Integer |
0 - Visível, 1 - Escondido |
Não |
wifi_ssid_5ghz |
Identificação do ponto de acesso sem fio do usuário (SSID) |
String |
|
Não |
wifi_password_5ghz |
Senha do ponto de acesso sem fio do usuário |
String |
Mínimo de 8 caracteres |
Não |
wifi_channel_5ghz |
Canal do 802.11 |
String |
'auto','36', '40', '44', '48', '52', '56', '60', '64','149', '153', '157', '161', '165' |
Não |
wifi_band_5ghz |
Largura de banda Wi-Fi 5.0GHz |
String |
'VHT20', 'VHT40', 'VHT80' |
Não |
wifi_mode_5ghz |
Modo de operação Wi-Fi 5.0GHz |
String |
'11na', '11ac' |
Não |
wifi_power_5ghz |
Potência da antena Wi-Fi 5.0GHz |
Integer |
25, 50, 75, 100 (por cento) |
Não |
wifi_state_5ghz |
Liga/Desliga Wi-Fi 5.0GHz |
Integer |
0 - Off , 1 - On |
Não |
wifi_hidden_5ghz |
Esconder SSID Wi-Fi 5.0GHz |
Integer |
0 - Visível, 1 - Escondido |
Não |
mesh_mode |
Tipo do modo Mesh (Quando for compatível) |
Integer |
0 - Off, 1 - Cabo, 2 - Cabo e 2.4, 3 - Cabo e 5.0, 4 - Cabo e ambos Wi-Fi |
Não |
bridgeEnabled |
Habilitar modo bridge/AP no roteador |
Integer |
0 - Off, 1 - On |
Não |
bridgeDisableSwitch |
Desabilitar portas LAN cabeadas |
Integer |
0 - Modo router , 1 - Modo bridge |
Não |
bridgeFixIP |
Fixar IP WAN do roteador no modo bridge |
String |
IP válido |
Não |
bridgeFixGateway |
Fixar |
String |
IP válido |
Não |
bridgeFixDNS |
|
String |
IP válido |
Não |
¶ Exemplo do Body
{
"content": {
"pppoe_user": "teste",
"pppoe_password": "teste123",
"wifi_ssid": "FlashMan-AP-Teste",
"wifi_password": "senhateste",
"wifi_channel": "auto"
}
}
Status Code |
Descrição |
200 |
OK, retorna as informações do roteador alterado |
404 |
Roteador não encontrado |
500 |
Erro no servidor, mais informações no body da mensagem de retorno |
{
"success": false,
"message": "device not found",
"errors": []
}
{
"success": true,
"external_reference": {
"kind": 'CPF',
"data": '123.456.789-00'
},
"apps": [],
_id: '11:11:11:11:11:11',
"model": 'TL-MR3020V1',
"release": '0004-AIX',
"pppoe_user": '',
"pppoe_password": '',
"wifi_ssid": 'TesteSSID',
"wifi_password": 'SenhaWifi',
"wifi_channel": 'auto',
"last_contact": 2018-01-01T03:00:00.000Z,
"do_update": false,
"do_update_parameters": true,
"__v": 0
}
{
"success": false,
"message": 'Erro validando os campos, ver campo "errors"',
"errors": [
"password": "Este campo deve ter no mínimo 8 caracteres"
]
}
/api/v2/device/update/{ID do CPE}/{Release}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
Release |
Identificador de release do firmware. Exemplo: 0001-fab |
String |
Sim |
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
do_update |
Habilitar ou desabilitar a atualização de firmware |
Booleano |
Sim |
¶ Exemplo do Body
{
"do_update": true
}
Status Code |
Descrição |
200 |
OK, alteração feita com sucesso |
500 |
Erro no servidor, mais informações no body da mensagem de retorno |
{
"success": false,
"message": "Erro ao encontrar dispositivo"
}
{
"success": true
}
/api/v2/device/delete/{ID do CPE}
DELETE
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
Status Code |
Descrição |
200 |
OK, roteador foi deletado com sucesso |
500 |
Erro interno do servidor |
{
"success": true
}
/api/v2/device/create
PUT
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
mac_address |
Endereço MAC do roteador que encontra-se na etiqueta do equipamento |
[A-F]:[A-F]:[A-F]:[A-F]:[A-F]:[A-F] |
Sim |
release |
Identificador de release do firmware. Exemplo: 0001-fab |
String |
Não |
pppoe_user |
Usuário PPPoE |
String |
Não |
pppoe_password |
Senha do usuário PPPoE |
String |
Não |
wifi_ssid |
Identificação do ponto de acesso sem fio do usuário (SSID) |
String |
Não |
wifi_password |
Senha do ponto de acesso sem fio do usuário |
String |
Não |
wifi_channel |
Canal do 802.11 Wi-Fi 2.4GHz |
String |
Não |
wifi_band |
Largura de banda Wi-Fi 2.4GHz |
String |
Não |
wifi_mode |
Modo de operação Wi-Fi 2.4GHz |
String |
Não |
¶ Exemplo do Body
{
"content": {
"mac_address": "FF:FF:FF:00:00:00",
"release": "0001-fab",
"pppoe_user": "teste",
"pppoe_password": "teste123",
"wifi_ssid": "FlashMan-AP-Teste",
"wifi_password": "senhateste",
"wifi_channel": "auto",
"wifi_band": "auto",
"wifi_mode": "11g"
}
}
Status Code |
Descrição |
200 |
OK, roteador criado com sucesso |
500 |
Erro no servidor, mais informações no body da mensagem de retorno |
{
"success": false,
"message": "Erro no json recebido",
"errors": []
}
{
"success": true,
}
{
"success": false,
"message": 'Erro validando os campos, ver campo "errors"',
"errors": [
"password": "Este campo deve ter no mínimo 8 caracteres"
]
}
¶ Enviar comando para um CPE
/api/v2/device/command/{ID do CPE}/{Comando}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
Comando |
Tipo de comando a ser desempenhado pelo roteador Flashbox |
Veja os comandos suportados logo abaixo |
Sim |
Comando |
Descrição |
--- |
--- |
boot |
Reiniciar roteador Flashbox |
log |
Envia o de log do roteador para o Flashman. Para ver o log, use o comando de visualizar último log |
onlinedevs |
Inicia a coleta de aparelhos conectados ao CPE |
ping |
Inicia execução de teste ping para lista de endereços previamente configurados |
pondata |
Inicia execução da coleta de dados do nível de sinal da interface PON. Utilizar registro de callback para coletar campos pon_rxpower, pon_txpower e pon_signal_measure |
rstapp |
Apagar senha de login do aplicativo do usuário final |
rstdevices |
Reseta a senha do aplicativo do cliente |
rstmqtt |
Cuidado! Gera um novo token MQTT. Apenas use esse comando após a remoção do cadastro do roteador no Flashman |
sitesurvey |
Inicia execução da varredura de redes vizinhas. Utilizar registro de callback para a coleta dos resultados. |
speedtest |
Inicia execução de teste de velocidade para o servidor configurado (Flashman 1.28.0 ou superior e Flashbox 0.24.0 ou superior) |
traceroute |
Inicia execução do teste de traceroute para os destinos previamente definidos através da chamada de API “pinghostslist” |
upstatus |
Inicia execução da coleta de quanto tempo o roteador está online e conectado. Também coleta o tráfego na WAN em bytes |
wanbytes |
Inicia execução da coleta de bytes trafegados na WAN tanto para upload quanto para download. Utilizar registro de callback para coletar resultado |
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
500 |
Erro interno do servidor |
404 |
Comando ou roteador não encontrado |
{
"success": true
}
{
"success": false,
"message": "CPE não esta online!"
}
/api/v2/device/pingdiagnostic/{ID do CPE}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
content |
Configuração do teste de Ping |
Objeto |
Sim |
content.hosts |
Lista dos hosts para realizar o teste de Ping |
Lista de String |
Sim |
content.webhook |
Configuração de notificação do teste de Ping |
Objeto |
Não |
content.webhook.url |
URL de notificação do teste de Ping |
String |
Não |
content.webhook.user |
Usuário da URL de notificação do teste de Ping |
String |
Não |
content.webhook.secret |
Senha da URL de notificação do teste de Ping |
String |
Não |
¶ Exemplo do Body
{
content: {
hosts: ["8.8.8.8", "instagram.com"],
webhook: {
url: "notificacao.com.br",
user: "usuario",
secret: "senha"
}
}
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
200 |
CPE não encontrado |
200 |
CPE já está executando um outro teste |
{
"success": true
}
{
"success": false,
"message": "CPE não esta online!"
}
/api/v2/device/tracediagnostic/{ID do CPE}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
content |
Configuração do teste de rota |
Objeto |
Sim |
content.hosts |
Lista dos hosts para realizar o teste de rota |
Lista de String |
Sim |
content.webhook |
Configuração de notificação do teste de rota |
Objeto |
Não |
content.webhook.url |
URL de notificação do teste de rota |
String |
Não |
content.webhook.user |
Usuário da URL de notificação do teste de rota |
String |
Não |
content.webhook.secret |
Senha da URL de notificação do teste de rota |
String |
Não |
¶ Exemplo do Body
{
content: {
hosts: ["8.8.8.8", "instagram.com"],
webhook: {
url: "notificacao.com.br",
user: "usuario",
secret: "senha"
}
}
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
200 |
CPE não encontrado |
200 |
CPE já está executando um outro teste |
{
"success": true
}
{
"success": false,
"message": "CPE não esta online!"
}
/api/v2/device/speeddiagnostic/{ID do CPE}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
content |
Configuração do teste de velocidade |
Objeto |
Sim |
content.url |
FQDN para realizar o teste de velocidade |
String |
Sim |
content.send_error |
Se deve enviar notificação de que houve erro no teste paraa URL de notificação |
Booleano |
Não |
content.webhook |
Configuração de notificação do teste de velocidade |
Objeto |
Não |
content.webhook.url |
URL de notificação do teste de velocidade |
String |
Não |
content.webhook.user |
Usuário da URL de notificação do teste de velocidade |
String |
Não |
content.webhook.secret |
Senha da URL de notificação do teste de velocidade |
String |
Não |
¶ Exemplo do Body
{
content: {
url: "testedevelocidade.com.br",
send_error: true,
webhook: {
url: "notificacao.com.br",
user: "usuario",
secret: "senha"
}
}
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
200 |
CPE não encontrado |
200 |
CPE já está executando um outro teste |
{
"success": true
}
{
"success": false,
"message": "CPE não esta online!"
}
ATENÇÂO! Use esta função após o comando de envio de log.
/api/v2/device/lastlog/{ID do CPE}
GET
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
500 |
Erro interno do servidor |
404 |
Roteador não encontrado |
{
"success": true,
"message": "Não existe log deste roteador"
}
'Content-Encoding', 'gzip',
'Content-Type', 'text/plain'
/api/v2/device/firstlog/{ID do CPE}
GET
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
500 |
Erro interno do servidor |
404 |
Roteador não encontrado |
{
"success": true,
"message": "Não existe log deste roteador"
}
'Content-Encoding', 'gzip',
'Content-Type', 'text/plain'
/api/v2/device/portforward/{ID do CPE}
GET
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"message": "Roteador não encontrado"
}
{
"success": true,
"landevices": [
{
"mac": "f8:77:b8:ff:ff:ff",
"port": [
555
],
"dmz": true,
"router_port": [
444
],
"name": "",
"has_dhcpv6": false
},
{
"mac": "30:fd:38:ff:ff:ff",
"port": [
777
],
"dmz": false,
"router_port": [
777
],
"name": "Chromecast",
"has_dhcpv6": false
}
]
}
/api/v2/device/portforward/{MAC do roteador}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
MAC do roteador |
Endereço MAC do roteador que encontra-se na etiqueta do equipamento |
[A-F]:[A-F]:[A-F]:[A-F]:[A-F]:[A-F] |
Sim |
¶ Exemplo do Body
{
"content": [{
"mac": "30:fd:38:ff:ff:ff",
"port": [777],
"dmz": false,
"router_port": [777]
}]
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"message": "Error ao realizar parser do JSON"
}
{
"success": true,
"message": ""
}
/api/v2/device/portforwardtr069/{ID do CPE}
GET
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"message": "Roteador não encontrado"
}
{
"success": true,
"content": [
{
"_id": "63d2bfc3898b1a5fdcf2ae50",
"external_port_start": 5000,
"external_port_end": 5000,
"ip": "192.168.18.50",
"internal_port_start": 5000,
"internal_port_end": 5000
},
{
"_id": "63d2bfc3898b1a5fdcf2ae51",
"external_port_start": 6000,
"external_port_end": 6000,
"ip": "192.168.18.60",
"internal_port_start": 6000,
"internal_port_end": 6000
},
{
"_id": "63d2bfc3898b1a5fdcf2ae52",
"external_port_start": 6600,
"external_port_end": 6600,
"ip": "192.168.18.60",
"internal_port_start": 6600,
"internal_port_end": 6600
}
],
"wrongPortMapping": false,
"compatibility": {
"simpleSymmetric": true,
"simpleAsymmetric": true,
"rangeSymmetric": true,
"rangeAsymmetric": false
}
}
/api/v2/device/portforwardtr069/{ID do CPE}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
¶ Exemplo do Body
{
"content": [
{
"ip": "192.168.18.10",
"external_port_start": "1010",
"external_port_end": "1010",
"internal_port_start": "1010",
"internal_port_end": "1010"
}
]
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"message": "Error ao realizar parser do JSON"
}
{
"success": true,
"message": ""
}
/api/v2/device/pinghostslist/{ID do CPE}
GET
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"message": "Roteador não encontrado"
}
{
"success": true,
"ping_hosts_list": [
"www.google.com",
"www.facebook.com",
"www.instagram.com",
"www.youtube.com",
"www.terra.com.br"
]
}
/api/v2/device/pinghostslist/{ID do CPE}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
ID do CPE |
Endereço MAC ou Número serial localizado na etiqueta do CPE |
String. Caracteres sempre maiúsculos |
Sim |
¶ Exemplo do Body
{
"content": {
"hosts": [
"www.google.com",
"www.facebook.com",
"www.instagram.com",
"www.youtube.com",
"www.terra.com.br",
"www.g1.com"
]
}
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"message": "Erro ao tratar JSON"
}
{
"success": true,
"hosts": [
"www.google.com",
"www.facebook.com",
"www.instagram.com",
"www.youtube.com",
"www.terra.com.br",
"www.g1.com"
]
}
/api/v2/device/sync/{MAC do CPE}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
MAC do CPE |
Endereço MAC do CPE |
String. Caracteres sempre maiúsculos |
Sim |
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
404 |
Erro, CPE não encontrado |
422 |
Erro, CPE não possui o método disponível (E.g. Firmware Anlix / EDDs) |
{
"success": false,
"message": "CPE não encontrado"
}
{
"success": true,
"message": "Comando executado com sucesso"
}
/api/v2/device/landevice/block
PUT
¶ Exemplo do Body
{
"id": "18:0D:2C:5E:37:00",
"lanid": "34:fc:ef:fe:57:64",
"isblocked": false
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": true
}
{
"success": false,
"message": "Erro ao buscar CPE (3093)"
}
/api/v2/device/coordinates
PUT
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
devices |
Lista de roteadores, seguindo o formato descrito abaixo |
Array |
Sim |
devices.*.id |
Identificador único do roteador, conforme listado no Flashman |
String |
Sim |
devices.*.latitude |
Valor de latitude deste roteador |
Número |
Sim |
devices.*.longitude |
Valor de longitude deste roteador |
Número |
Sim |
devices.*.preventAutoUpdate |
Flag para prevenir atualizações de posicionamento pelos apps |
Booleano |
Sim |
* Obs.: Os campos de id, latitude, longitude e preventAutoUpdate devem ser fornecidos para cada roteador dentro do Array
¶ Exemplo do Body
{"devices":[{
"id": "18:0D:2C:5E:37:00",
"latitude": 12.3456789,
"longitude": 0.1234567,
"preventAutoUpdate": true
}, {
"id": "AA:AA:AA:AA:AA:AA",
"latitude": -22.222222",
"longitude": -11.111111,
"preventAutoUpdate": true
}]
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
500 |
Erro ao processar a requisição |
Obs.: Caso somente algumas das edições falhem, o Flashman ainda assim retornará status 200, sendo necessário consultar o body da requisição para ver quantos e quais roteadores falharam na atualização dos campos
{
"success": true,
"okCount": 2,
"failCount": 0,
"status": {
"18:0D:2C:5E:37:00": "Sucesso",
"AA:AA:AA:AA:AA:AA": "Sucesso"
}
}
{
"success": true,
"okCount": 1,
"failCount": 1,
"status": {
"18:0D:2C:5E:37:00": "Sucesso",
"AA:AA:AA:AA:AA:AA": "Erro ao buscar a CPE"
}
}
{
"success": false,
"okCount": 0,
"failCount": 0,
"status": {},
"message": "Campo 'devices' inválido"
}
/api/v2/device/license/get
PUT
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
id |
ID de CPE |
String |
Sim |
¶ Exemplo do Body
{
"id": "CC:CC:CC:CC:CC:CC",
}
{
"id": "ZTEDGH1248DD82",
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
500 |
Erro ao processar a requisição |
{
"success": true,
"status": true // Licença ativa
}
{
"success": false,
"message": "JSON fora do formato"
}
/api/v2/device/license/set
PUT
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
ids |
Lista de IDs de CPEs ou um único ID de CPE |
Array de Strings ou String |
Sim |
block |
Booleano para bloquear ou desbloquear as licença(s) dos IDs forncecidos |
Booleano |
Sim |
¶ Exemplo do Body
{
"ids": "CC:CC:CC:CC:CC:CC",
"block": true
}
{
"ids": ["AA:AA:AA:AA:AA:AA", "BB:BB:BB:BB:BB:BB"],
"block": false
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
500 |
Erro ao processar a requisição |
{
"success": true,
}
{
"success": false,
"message": "JSON fora do formato"
}
/api/v2/device/traps/callback
GET
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": true,
"exists": true,
"user": "admin",
"url": "http://127.0.0.1:5555",
"devicesCrud": [{
"url": "http://127.0.0.1:5555",
"user": "admin"
}, {
"url": "http://127.0.0.1:8888",
"user": "user"
}, {
"url": "http://127.0.0.1:9999",
"user": "usuario123"
}]
}
/api/v2/device/traps/callback
PUT
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
url |
URL da callback para notificação de alteração |
String |
Sim |
user |
Usuário usada para autenticação na URL |
String |
Não |
secret |
Senha usada para autenticação na URL |
String |
Não |
* Obs.: Caso a URL especificada já esteja registrada como uma callback no Flashman, somente serão atualizados o user e secret para aquela URL. Caso não esteja registrada, será adicionada uma nova entrada na lista de callbacks.
¶ Exemplo do Body
{
"url": "http://localhost:5555",
"user": "admin",
"secret": "1234"
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"message": "Error gravar dados na base"
}
{
"success": true,
"message": "Endereço salvo com sucesso",
}
/api/v2/device/traps/callback
DELETE
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
index |
Índice a ser deletado da lista de callbacks registradas |
Inteiro |
Sim |
* Obs.: O index pode ser consultado através de um GET, para consulta da lista atual
¶ Exemplo do Body
{
"index": 1
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
500 |
Erro processando a requisição |
{
"success": false,
"message": "Não foi encontrado nenhum elemento para o índice passado"
}
{
"success": true,
"message": "Operação realizada com sucesso"
}
/api/v2/user/get/all
GET
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": true,
"type": "success",
"users": [
{
"_id": "5d80dd2c04980000aef80ca2",
"createdAt": "2019-09-17T13:18:36.111Z",
"autoUpdate": true,
"maxElementsPerPage": 50,
"is_superuser": true,
"name": "CarolinaNNN",
"password": "$2a$05$MLUESjuUwMW1f5G80e/HjONjo8huRm3lITAVzWHFnsKLYYK3QhkXG",
"__v": 137,
"lastLogin": "2022-03-03T17:43:47.220Z",
"visibleColumnsOnPage": [
4,
5,
6,
7,
8,
10,
11,
12
],
"role": "Supervisão"
},
{
"_id": "5d9f72e78a02a80019961fca",
"createdAt": "2019-10-03T21:49:30.748Z",
"autoUpdate": true,
"maxElementsPerPage": 10,
"is_superuser": false,
"name": "Rodrigo",
"password": "$2a$05$kTy5rakI9kPb67dPAnWPhecKXv.7Osb2Y4Gj2w1m.xXEAIN2VUCsa",
"role": "Supervisão",
"__v": 4,
"lastLogin": "2022-03-02T13:24:47.350Z",
"visibleColumnsOnPage": [
4,
5,
6,
7,
8,
10,
11,
12
]
}
]
}
/api/v2/user/edit/{Id do usuário}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
Id do usuário |
String com chave identificadora de usuário (_id) |
String |
Sim |
¶ Exemplo do Body
{
"name": "teste",
"password": "teste1234",
"passwordack": "teste1234",
"role": "Gerente"
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"type": "danger",
"message": "Error gravar dados na base"
}
{
"success": true,
"type": "success",
"message": "Editado com sucesso!"
}
/api/v2/user/new
PUT
¶ Exemplo do Body
{
"name": "joao",
"password": "teste1234",
"role": "Gerente"
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"type": "danger",
"message": "Error gravar dados na base"
}
{
"success": true,
"type": "success",
"message": "Usuário criado com sucesso!"
}
/api/v2/user/del
PUT
¶ Exemplo do Body
{
"ids": ["8sdu8sdhusdnc8sdc", "jsud8989a8s98asxnuas"],
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"type": "danger",
"message": "Error gravar dados na base"
}
{
"success": true,
"type": "success",
"message": "Usuário(s) deletado(s) com sucesso!"
}
/api/v2/user/traps/callback
GET
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": true,
"exists": true,
"user": "admin",
"url": "http://127.0.0.1:5555",
"devicesCrud": [{
"url": "http://127.0.0.1:5555",
"user": "admin"
}, {
"url": "http://127.0.0.1:8888",
"user": "user"
}, {
"url": "http://127.0.0.1:9999",
"user": "usuario123"
}]
}
/api/v2/user/traps/callback
PUT
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
url |
URL da callback para notificação de alteração |
String |
Sim |
user |
Usuário usada para autenticação na URL |
String |
Não |
secret |
Senha usada para autenticação na URL |
String |
Não |
* Obs.: Caso a URL especificada já esteja registrada como uma callback no Flashman, somente serão atualizados o user e secret para aquela URL. Caso não esteja registrada, será adicionada uma nova entrada na lista de callbacks.
¶ Exemplo do Body
{
"url": "http://localhost:5555",
"user": "admin",
"secret": "1234"
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"message": "Error gravar dados na base"
}
{
"success": true,
"message": "Endereço salvo com sucesso",
}
/api/v2/user/traps/callback
DELETE
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
index |
Índice a ser deletado da lista de callbacks registradas |
Inteiro |
Sim |
* Obs.: O index pode ser consultado através de um GET, para consulta da lista atual
¶ Exemplo do Body
{
"index": 1
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
500 |
Erro processando a requisição |
{
"success": false,
"message": "Não foi encontrado nenhum elemento para o índice passado"
}
{
"success": true,
"message": "Operação realizada com sucesso"
}
/api/v2/role/get/all
GET
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": true,
"type": "success",
"roles": [
{
"grantWifiInfo": 0,
"grantPPPoEInfo": 0,
"grantPassShow": false,
"grantFirmwareUpgrade": false,
"grantWanType": false,
"grantDeviceId": false,
"grantDeviceActions": false,
"grantDeviceRemoval": false,
"grantDeviceAdd": false,
"grantMonitorManage": false,
"grantFirmwareManage": false,
"grantAPIAccess": false,
"grantLOGAccess": false,
"grantNotificationPopups": false,
"grantLanEdit": true,
"grantLanDevices": 2,
"_id": "5b90a64a82e383001cff8sda3222336",
"name": "Gerente",
"__v": 0
}
]
}
/api/v2/role/edit/{Id da classe de permissão}
PUT
Parâmetro |
Descrição |
Formato |
Obrigatório |
Id da classe de permissão |
String com chave identificadora da classe de permissão (_id) |
String |
Sim |
¶ Exemplo do Body
{
"grant-wifi-info": 0,
"grant-pppoe-info": 0,
"grant-pass-show": false,
"grant-firmware-upgrade": false,
"grant-wan-type": false,
"grant-device-id": false,
"grant-device-actions": false,
"grant-device-removal": false,
"grant-device-add": false,
"grant-monitor-manage": false,
"grant-firmware-manage": false,
"grant-api-access": false,
"grant-log-access": false,
"grant-notification-popups": false,
"grant-lan-edit": true,
"grant-lan-devices": 2
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"type": "danger",
"message": "Erro ao editar classe."
}
{
"success": true,
"type": "success",
"message": "Classe de permissões editada com sucesso!"
}
/api/v2/role/new
PUT
¶ Exemplo do Body
{
"name": "Teste",
"grant-wifi-info": 0,
"grant-pppoe-info": 0,
"grant-pass-show": false,
"grant-firmware-upgrade": false,
"grant-wan-type": false,
"grant-device-id": false,
"grant-device-actions": false,
"grant-device-removal": false,
"grant-device-add": false,
"grant-monitor-manage": false,
"grant-firmware-manage": false,
"grant-api-access": false,
"grant-log-access": false,
"grant-notification-popups": false,
"grant-lan-edit": true,
"grant-lan-devices": 2
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"type": "danger",
"message": "Error gravar dados na base"
}
{
"success": true,
"type": "success",
"message": "Classe de permissões criada com sucesso!"
}
/api/v2/role/del
PUT
¶ Exemplo do Body
{
"names": ["Gerente", "Tecnico"],
"ids": ["asdaoss8jx8sdasgdfgdasdas", "$saa88ajj2121bbshs"]
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"type": "danger",
"message": "Error gravar dados na base"
}
{
"success": true,
"type": "success",
"message": "Classes deletada(s) com sucesso!"
}
/api/v2/role/traps/callback
GET
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": true,
"exists": true,
"user": "admin",
"url": "http://127.0.0.1:5555",
"devicesCrud": [{
"url": "http://127.0.0.1:5555",
"user": "admin"
}, {
"url": "http://127.0.0.1:8888",
"user": "user"
}, {
"url": "http://127.0.0.1:9999",
"user": "usuario123"
}]
}
/api/v2/role/traps/callback
PUT
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
url |
URL da callback para notificação de alteração |
String |
Sim |
user |
Usuário usada para autenticação na URL |
String |
Não |
secret |
Senha usada para autenticação na URL |
String |
Não |
* Obs.: Caso a URL especificada já esteja registrada como uma callback no Flashman, somente serão atualizados o user e secret para aquela URL. Caso não esteja registrada, será adicionada uma nova entrada na lista de callbacks.
¶ Exemplo do Body
{
"url": "http://localhost:5555",
"user": "admin",
"secret": "1234"
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"message": "Error gravar dados na base"
}
{
"success": true,
"message": "Endereço salvo com sucesso",
}
/api/v2/role/traps/callback
DELETE
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
index |
Índice a ser deletado da lista de callbacks registradas |
Inteiro |
Sim |
* Obs.: O index pode ser consultado através de um GET, para consulta da lista atual
¶ Exemplo do Body
{
"index": 1
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
500 |
Erro processando a requisição |
{
"success": false,
"message": "Não foi encontrado nenhum elemento para o índice passado"
}
{
"success": true,
"message": "Operação realizada com sucesso"
}
/api/v2/certification/traps/callback
GET
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": true,
"exists": true,
"user": "admin",
"url": "http://127.0.0.1:5555",
"devicesCrud": [{
"url": "http://127.0.0.1:5555",
"user": "admin"
}, {
"url": "http://127.0.0.1:8888",
"user": "user"
}, {
"url": "http://127.0.0.1:9999",
"user": "usuario123"
}]
}
/api/v2/certification/traps/callback
PUT
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
url |
URL da callback para notificação de alteração |
String |
Sim |
user |
Usuário usada para autenticação na URL |
String |
Não |
secret |
Senha usada para autenticação na URL |
String |
Não |
* Obs.: Caso a URL especificada já esteja registrada como uma callback no Flashman, somente serão atualizados o user e secret para aquela URL. Caso não esteja registrada, será adicionada uma nova entrada na lista de callbacks.
¶ Exemplo do Body
{
"url": "http://localhost:5555",
"user": "admin",
"secret": "1234"
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
{
"success": false,
"message": "Error gravar dados na base"
}
{
"success": true,
"message": "Endereço salvo com sucesso",
}
/api/v2/certification/traps/callback
DELETE
¶ Parâmetros do Body
Parâmetro |
Descrição |
Formato |
Obrigatório |
index |
Índice a ser deletado da lista de callbacks registradas |
Inteiro |
Sim |
* Obs.: O index pode ser consultado através de um GET, para consulta da lista atual
¶ Exemplo do Body
{
"index": 1
}
Status Code |
Descrição |
200 |
OK, comando executado com sucesso |
500 |
Erro processando a requisição |
{
"success": false,
"message": "Não foi encontrado nenhum elemento para o índice passado"
}
{
"success": true,
"message": "Operação realizada com sucesso"
}