Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Para utilizar os endpoints com AJAX, primeiramente é necessário solicitar a autorização e obter o access_token para obter um token de acesso (access token).

Deck of Cards
idauth
Card
labelPasso 1


Informações

Caso seja utilizado o ambiente de homologação, a URL da API será https://[contexto].customerfi.com/rest/swagger-ui/index.html.

Card
labelPasso 2

  • Expandir o serviço oauth2.
  • Acessar o endpoint GET /rest/v2/oauth2/clients/{clientId}/assertion.
Informações

Para obter o clientId, acessar o menu Configuração → aba Segurança → REST API v2 → ID do Cliente.

Informações

03. Depois, é preciso obter o token passando como parâmetro o Client Assertion:


Card
labelPasso 3


  • Ao acionar Try it out!, será gerado o Client Assertion no Responde Body.
  • O valor do Client Assertion deve ser copiado para utilização no próximo passo.

Image Added


Bloco de código
oauth2 > POST
Card
labelPasso 4


  • Acessar o endpoint POST
  • /rest/v2/oauth2/auth

...

  • .
  • Preencher o valor do Client Assertion obtido no passo anterior no campo assertion.
  • Acionar Try it out! para obter o token de acesso (access token).

Image Added


Card
labelPasso 5


  • Para utilizar todos os endpoints da API do fluig Identity, copiar o access token para campo api_key no canto superior direito da página e acionar Explore.

Image Added

Código-fonte

Nota

O

...

access_token

...

obtido a partir da autorização na API deve ser enviado no header de todas as requisições.

Bloco de código
languagejs
linenumberstrue
// Exemplo de código para obter as informações de uma empresa por ajax.

var clientId = '<CLIENT_ID>'; // Substituir '<CLIENT_ID>' pelo clientId da empresa
var companyId ='<COMPANY_ID>'; // Substituir '<COMPANY_ID>' pelo companyId da empresa
var domainUrl = 'https://<CONTEXT>.fluigidentity.com/'; //Substituir '<CONTEXT>' pelo contexto da empresa
var apiUrl = domainUrl + 'rest/v2/';

// Get client assertion
function getClientAssertion(clientId) {
  $.ajax({
    url:apiUrl + 'oauth2/clients/' + clientId + '/assertion',
    crossDomain:true // se necessário cross domain
  })
  .done(function(data){
    getAccessToken(data);
  })
  .fail(function(error){
    console.log(error);
  });
}

// Grant a new refresh token
function getAccessToken(assertion) {
  var data = {
    'grant_type':'urn:ietf:params:oauth:grant-type:jwt-bearer',
    'assertion':assertion
  };
  $.ajax({
    url:apiUrl + 'oauth2/auth',
    crossDomain:true, // se necessário cross domain
    data:data,
    type:'POST'
  })
  .done(function(data){
    getCompany(data.access_token,companyId)
  })
  .fail(function(error){
    console.log(error);
  });
}

// Get a company
function getCompany(authorization, companyId) {
  $.ajax({
    url:apiUrl + 'companies/' + companyId,
    crossDomain:true, // se necessário cross domain
    headers:{
      'Authorization':authorization
     }
  })
  .done(function(data){
    console.log(data);
  })
  .fail(function(error){
    console.log(error);
  });
}

getClientAssertion(clientId);