Controllr/API/REST-HTTP
API
Exemplo de requisição pura. Feita com Telnet para ilustrar como deve ser montada a requisição.
Nestes exemplos estarei usando o IP 192.168.1.2 como EXEMPLO, este IP deverá ser o do servidor que deseja conectar.
POST /login
curl -i -X POST \ -H "Content-Type:application/x-www-form-urlencoded" \ -H "Accept:application/json" \ -d "username=admin" \ -d "password=admin" \ 'http://[$IP-do-servidor]/login'
Requisição de LOGIN
Requisição POST para http://[IP-SERVIDOR]/login Com body username=USER&password=PASS
POST /login
telnet 192.168.1.2 8080 POST /login HTTP/1.1 Host: 192.168.142.23:8080 Content-Type: application/x-www-form-urlencoded Content-Length: 29 username=admin&password=admin
Resposta JSON
Resposta HTTP/1.1 200 OK Server: nginx/1.10.2 Date: Sat, 27 Apr 2019 19:41:49 GMT Content-Type: application/json Content-Length: 17 Connection: keep-alive Set-Cookie: BRBOSCookie=1c248080a70955b1d8bf7b20a1067c7a; expires=Sun, 26 Apr 2020 19:51:49 GMT; path=/ Access-Control-Allow-Credentials: true Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS {"success": true}
POST /login
curl -i -X POST \ -H "Content-Type:application/x-www-form-urlencoded" \ -H "Accept:application/json" \ -d "username=admin" \ -d "password=admin" \ 'http://[$IP-do-servidor]/login'
RESPOSTA - pegar o cookie do cabeçalho Set-Cookie
Na resposta do Login, capturar o cookie que será usado para requisição
Resposta JSON
HTTP/1.1 200 OK Server: nginx/1.10.2 Date: Fri, 20 Apr 2018 20:46:26 GMT Content-Type: application/json Content-Length: 17 Connection: keep-alive Set-Cookie: BRBOSCookie=1c248080a70955b1d8bf7b20a1067c7a; expires=Sat, 20 Apr 2019 20:56:26 GMT; path=/ {"success": true}
Para capturar as informações do Dashboard, fazer uma requisição usando o Cookie previamente autenticado.
POST /controllrctl/dashboard/info
curl -i -X GET \ -H "Accept:application/json" \ -H "Cookie:BRBOSCookie=1c248080a70955b1d8bf7b20a1067c7a" \ 'http://192.168.142.23:8080/controllrctl/dashboard/info'
OBS: A área administrativa, deve ser acessada através da porta WEB que por padrão é a 8080
Exemplo http://192.168.144.10:8080
É diferente do acesso dá área do cliente, que utiliza por padrão a porta 80, através do acesso do Hotsite.
Para listagem dos clientes usando algum filtro especifico deve montar a requisição com os parâmetros corretos.
Utilizando o F12 do seu navegador, irá visualizar os parâmetros que são utilizáveis para montagem da sua URL.
Caminho da opção do desenvolvedor: Aba Network > XHR > Headers
FORM DATA
Propriedade | Descrição | Tipo | Tamanho |
---|---|---|---|
start | Parâmetro da posição que deseja que seja listado os clientes. Sendo 0 (zero) a primeira posição | Número | 0 ~ n |
limit | Parâmetro para setar o valor da quantidade de clientes que devem ser listados na requisição URL | Número | 1 ~ n |
sort | Nome da coluna da tabela que deseja ordenar a sua listagem | Texto | 2 - 45 |
dir | Parâmetro de ordenação do maior para o menor ou vice-versa. Sendo ASC - para ordenar do menor para o maior e DESC - para ordenar do maior para o menor | Booleano | - |
where | Parâmetro de montagem de filtro para listagem de clientes específicos. | Where | - |
Comandos Where
Com a propriedade Where pode ser montado vários filtros para listar o que deseja, sendo cliente por CPF/CNPJ, cobranças em atraso, usuário bloqueado, etc...
A montagem do Where é do tipo json.
Para montar o filtro pode usar 3 tipos:
* field:
Field é usado para selecionar qual é a coluna da tabela.
* oper:
É o código da operação do filtro que irá realizar com essa coluna selecionada. Criamos 22 códigos de operações.
"oper":1 Menor que < "oper":2 Maior que > "oper":3 Menor ou igual à <= "oper":4 Maior ou igual à >= "oper":5 Igual à = "oper":6 Diferente de != ou <> "oper":7 É IS "oper":8 Não é IS NOT "oper":9 LIKE "oper":10 ILIKE
OPER_NONE: (p = 0), OPER_LESS_THAN: ++p, OPER_GREATER_THAN: ++p, OPER_LESS_THAN_OR_EQUAL_TO: ++p, OPER_GREATER_THAN_OR_EQUAL_TO: ++p, OPER_EQUAL: ++p, OPER_NOT_EQUAL: ++p, OPER_IS: ++p, OPER_IS_NOT: ++p, OPER_LIKE: ++p, OPER_ILIKE: ++p, OPER_INET_IS_LESS_THAN: ++p, OPER_INET_IS_LESS_THAN_OR_EQUAL: ++p, OPER_INET_EQUALS: ++p, OPER_INET_IS_GREATER_OR_EQUAL: ++p, OPER_INET_IS_GREATER_THAN: ++p, OPER_INET_IS_NOT_EQUAL: ++p, OPER_INET_IS_CONT_W: ++p, OPER_INET_IS_CONT_W_OR_EQUALS: ++p, OPER_INET_CONT: ++p, OPER_INET_CONT_OR_EQUALS: ++p, OPER_IN: ++p
| style="text-align:center;" | field || colspan="3" | Marque a coluna que deseja usar esse filtro e também pode usar com a opção AND, para usar mais de uma coluna no filtro. |- | style="text-align:center;" | oper || colspan="3" | É código do filtro que irá usar para a coluna marcada no field . |- | ||"oper":1||colspan="2"| Menor que < |- | ||"oper":2||colspan="2"| Maior que > |- | ||"oper":3||colspan="2"| Menor ou igual à <= |- | ||"oper":4||colspan="2"| Maior ou igual à >= |- | ||"oper":5||colspan="2"| Igual à = |- | ||"oper":6||colspan="2"| Diferente de != ou <> |- | ||"oper":7||colspan="2"| É IS |- | ||"oper":8||colspan="2"| Não é IS NOT |- | ||"oper":9||colspan="2"| LIKE |- | ||"oper":10||colspan="2"| ILIKE |- | style="text-align:center;" | value || Valor da coluna que deseja utilizar no filtro || Inteiro || Depende da coluna que irá filtrar |- |}
Start |
---|
Parâmetro da posição que deseja que seja listado os clientes. Sendo 0 (zero) a primeira posição |
Limit |
---|
Parâmetro para setar o valor da quantidade de clientes que devem ser listados na requisição URL |
Sort |
---|
Parâmetro de ordenação da coluna de sua listagem. Por padrão é ordenado pela coluna client_complete_name, mas pode escolher qualquer outra de sua escolha |
Dir |
---|
Parâmetro de ordenação do maior para o menor ou vice-versa. Sendo ASC - para ordenar do menor para o maior e DESC - para ordenar do maior para o menor |
Where | |
---|---|
Parâmetro de montagem de filtro para listagem de clientes específicos. | |
Field | |
Marque a coluna que deseja usar esse filtro e também pode usar com a opção AND, para usar mais de uma coluna no filtro | |
Oper | |
É código do filtro que irá usar para a coluna marcada. | |
"oper":1 | Menor que < |
"oper":2 | Maior que > |
"oper":3 | Menor ou igual à <= |
"oper":4 | Maior ou igual à >= |
"oper":5 | Igual à = |
"oper":6 | Diferente de != ou <> |
"oper":7 | É IS |
"oper":8 | Não é IS NOT |
"oper":9 | LIKE |
"oper":10 | ILIKE |
Value | |
Valor da coluna que deseja utilizar no filtro |
COMANDOS WHERE | ||
---|---|---|
FIELD | CÓDIGO | EXEMPLOS |
Nome do campo da tabela que irá utilizar o filtro | "OPER":1 = Menor Que < | |
OPER | "OPER":2 = Maior Que > | |
É um número usado para equivalência do parâmetro WHERE | ||
"OPER":3 = Menor ou Igual à <= | ||
"OPER":4 = Maior ou Igual à >= | ||
"OPER":5 = Igual = | [{"field":"client.client_doc1","oper":5,"value":"69120603070"}] | |
"OPER":6 = Diferente != ou <> | ||
"OPER":7 = é IS | ||
"OPER":8 = Não é IS NOT | ||
VALUE | "OPER":9 = LIKE | |
Valor que usará para retornar o filtro desejado | "OPER":10 = ILIKE | [{"field":"client.client_complete_name","oper":10,"value":"Teste%"}] |