Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

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

NomeObrigatórioDescrição
nomenãoNome do usuário
usersimE-mail do usuário válido para fazer o sincronismo
passwordsimSenha do usuário
empresasimNo campo empresa deve vim a SIGLA da Filial do NFS
filialnãoNo 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"
}

insomnia_auth_doc_api.png

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.