Para autenticar na API e conseguir um TOKEN, que será utilizado nas requisições dos endpoints e terá uma validade de 15 dias, você precisa cadastrar um FUNCIONÁRIO, atenção para não confundir com OPERADOR DO SISTEMA, o FUNCIONÁRIO terá acesso somente à API enquanto que OPERADOR acessa o sistema web. (com as devidas permissões)
Após o período de 15 dias você terá que efetuar uma nova autenticação para conseguir um novo TOKEN, não há necessidade de autenticar sempre antes de uma requisição.
Cadastrando o FUNCIONÁRIO no sistema VigoWEB:
Autenticando na API
Após cadastrar o funcionário e definir o login/senha já temos tudo pronto para autenticar na API, o processo é simples, basta efetuar um POST no endpoint /api/auth e estando corretas as informações será retornado um JSON com os dados do funcionário, sendo que o campo “senha” conterá o TOKEN que deverá ser gravado para as requisições futuras.
Exemplo de código em PHP:
<?php
//----------------------------------------------------------------------------------------------
// Aqui você informa o LINK DE ACESSO do seu sistema (1 na imagem acima)
//----------------------------------------------------------------------------------------------
$cliente_vigoweb = "https://web01.vigo.com.br";
//----------------------------------------------------------------------------------------------
// Aqui você informa o LOGIN/SENHA do FUNCIONÁRIO cadastrado anteriormente (2 na imagem acima)
//----------------------------------------------------------------------------------------------
$login_funcionario = "teste";
$senha_funcionario = "teste";
//----------------------------------------------------------------------------------------------
// Aqui é feito o processo de autenticação para aquisição do TOKEN (validade 15 dias)
//----------------------------------------------------------------------------------------------
$curl = curl_init();
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_URL, $cliente_vigoweb . '/api/auth');
curl_setopt($curl, CURLOPT_POSTFIELDS, '{ "login": "' . $login_funcionario . '", "senha": "' . $senha_funcionario . '" }');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_HTTPHEADER, ["Content-Type: application/json", "X-Content-Type-Options:nosniff", "Accept:application/json", "Cache-Control:no-cache"]);
$result = curl_exec($curl);
curl_close($curl);
if(!$result){die("ERRO");}
if (strpos($result, '[ERRO]') !== false) {
echo "ERRO";
die;
}
$obj = json_decode($result);
$token = $obj->{'senha'};
?>
Exemplo de código em CURL:
curl -X POST https://web01.vigo.com.br/api/auth
-H 'Content-Type: application/json'
-H 'X-Content-Type-Options:nosniff'
-H 'Accept:application/json'
-H 'Cache-Control:no-cache'
-d '{"login":"teste","senha":"teste"}'