Autenticação via OAuth 2.0 com a API do Nibo


Fluxo de autorização

Atenção: Caso você seja cliente e tenha um token, use a chave enviando via header passando na key apitoken.
  1. A aplicação parceira fará um redirect para o link abaixo, informando no parâmetro redirect_uri uma URL de retorno, obrigatóriamente em https.

    https://passport.nibo.com.br/Authorize?client_id={clientId}&response_type=code&state={IDQueRetorna}&redirect_uri={SuaURLQueRecebeCodeEState}
    
  2. O servidor de identidade do Nibo fará uma chamada para sua URL de retorno utilizando o método GET com o parâmetro code preenchido. Essa informação será utilizada no passo seguinte e tem validade de apenas 2 minutos.
  3. A aplicação parceira deverá fazer uma chamada para https://passport.nibo.com.br/token via método POST, informando o grant_type igual a authorization_code e os parâmetros code:{code}, client_id:{client_id}, client_secret:{client_secret} e redirect_uri:{redirect_uri}. O retorno será o access_token, refresh_token e o expires_in do cliente logado.
  4. Pronto! A partir disso a aplicação pode usar o access_token na API do Nibo passando no header de cada chamada o parametro Authorization: bearer {access_token}.
  5. Após a expiração deverá ser feito um post para https://passport.nibo.com.br/token, com grant_type:{refresh_token}, refresh_token:{ultimoRefreshToken}, client_id:{client_id} e client_secret:{client_secret}. O retorno será o mesmo do passo 3 e esse passo deverá ser repetido sempre que o access_token expirar.

ATENÇÃO: Em caso de falhas será necessário executar todos os passos novamente, pois possivelmente não foi solicitado a renovação do token no periodo de 30 dias ou o cliente revogou o acesso da integração, invalidando o último refresh_token gerado.


Códigos de erro



Código Descrição
401 O token está expirado.
402 A conta do cliente no Nibo está expirada.
404 O recurso consultado não foi encontrado.
500 Ocorreu um erro na API do Nibo.