APIs do fluig Identity

Como utilizar as APIs do fluig Identity?

Para utilizar a API do Identity, você pode seguir como referência o Swagger.

  • Acesse: https://.fluigidentity.com/rest/swagger-ui/index.html
  • Obtenha o Client Assertion (resultado no Response Body) passando o clientId de sua empresa:

oauth2 > GET /rest/v2/oauth2/clients/{clientId}/assertion

Para obter o clientId, acesse como administrador o menu Configuração → aba Segurança → REST API v2 → ID do Cliente

A resposta tem informação útil sobre como testar, para desenvolver uma aplicação JAVA por exemplo pode-se usar o material em http://tdn.totvs.com/display/public/fluig/Cliente+REST+Fluig+Identity

Primeiro você tem que ter o clientId e com ele vc consegue o clientAssertion.


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

        })
        .fail(function(error) {
            console.log('Error', error);
        });

Depois gero o token de acesso para realizar a requisição.


                var data = {
            'grant_type': 'urn:ietf:params:oauth:grant-type:jwt-bearer',
            'assertion': assertion
        };

        $.ajax({
            url: this.apiUrl + 'oauth2/auth',
            crossDomain: true, // se necessário cross domain
            data: data,
            type: 'POST'
        })
        .done(function(data) {
            console.log('Sucess');
            that.accessToken = data.access_token;
            that.getGroups();
        })
        .fail(function(error) {
            console.log('Error');
            console.log(error);
        });

Com o acesstoken vc consome qualquer serviço da API.


                $.ajax({
            url: this.apiUrl + 'companies/' + this.companyId + '/users/' + this.getUserIdentity() + "/groups",
            crossDomain: true, // se necessário cross domain
            headers: {
                'Authorization': this.accessToken
            }
        })
        .done(function(data) {
            console.log('Sucess Groups');
            that.addUserToComunity(data);

        })
        .fail(function(error) {
            console.log('Error');
            console.log(error);
        });