Autenticação
A autenticação é a JWT (Json Web Token) onde seus parâmetros obrigatórios são user, password e empresa e retorna um token que é válido por 15 minutos, após esse termino é necessário validar novamente.
O método de requisição é POST e no header deve sempre conter o content-type: application/json.
Tabela de Parâmetros
Nome | Obrigatório | Descrição |
---|---|---|
nome | não | Nome do usuário |
user | sim | E-mail do usuário válido para fazer o sincronismo |
password | sim | Senha do usuário |
empresa | sim | No campo empresa deve vim a SIGLA da Filial do NFS |
filial | não | No campo filial deve ser passada a SIGLA do Local no NFS |
ATENÇÃO Não é possível criar usuários por qualquer método, por isso o usuário deve ser cadastrado previamente no NFS. É sempre indicado ao que criar um usuário verificar se ele tem acesso ao sistema e as filias liberadas. {.is-danger}
Em nossos exemplos vamos usar o sistema smartosapi.h.simova.cloud.
Requisição
curl --request POST \
--url https://smartosapi.h.simova.cloud/nfs/api/v1/auth \
--header 'content-type: application/json' \
--data '{
"nome": "dalton",
"user": "dalton@simova.com.br",
"password": "123",
"empresa" : "SIMOVA" // Filial do NFS
}'
Retorno
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbWFydG9zYXBpLmguc2ltb3ZhLmNsb3VkIiwibmFtZSI6ImRhbHRvbiIsImVtYWlsIjoiZGFsdG9uQHNpbW92YS5jb20uYnIiLCJmaWxpYWwiOiJGSUxJQUwgMSIsImxvY2FsIjpudWxsLCJleHAiOmZhbHNlfQ==.eqL8BGcaLLnbkd9V3nONJXOfVgpy8j6f6P+wcTKb7\/w=",
"user": "dalton@simova.com.br"
}
Imagem de exemplo do Insomnia de uma requisição para obter um token
Constantes na Autenticação
É possível colocar constantes na autenticação, isso pode ajudar tanto o cliente como a Simova, e é simples, basta adicionar o seguinte parâmetro (nfs_core_par_parametros) API_VALIDATION
com seu valor
um json, exemplo:
{
"env": 2
}
Logo esse env igual a 2 deve estar no body do request:
{
"user": "my.user@simova.com.br",
"password": "myPassS",
"empresa": "MyBranchSigla",
"env": "2"
}
Se não tiver a chave env vai gerar um erro, ou se o valor for diferendo do configurado nos parâmetros.