Dataset - REST - Obter token de acesso

Boa tarde!

Estou tentando recuperar um token de acesso para integração com o Salesforce através de um script de Workflow (chamado um dataset com o código a seguir), porém obtenho o resultado:


{
  "error_description" : "grant type not supported",
  "error" : "unsupported_grant_type"
}

Segue Código:


var clientService = fluigAPI.getAuthorizeClientService();
var dadosConexao = {
    companyId : '1',
    serviceCode : 'SalesforceLogin',
    endpoint : '/services/oauth2/token',
    method : 'POST',
    dataType: "text",
    headers : {
        "content-type" : "application/x-www-form-urlencoded",
        "cache-control" : "no-cache"
    },
    params : {
        grant_type : "password",
        client_id : clientId,
        client_secret : clientSecret,
        username : usernameSf,
        password : passwordSecret
    }
};


var vo = clientService.invoke(JSON.stringify(dadosConexao));

Obs>

1- Consegui fazer a chamada via ajax (em um evento Jquery), mas preciso consumir o serviço também nos eventos de processos!

2- O servico esta cadastrado no Painel de Controle

Alguém consegue ajudar?

Boa tarde Renata,

tente adicionar a propriedade options.mediaType também com o valor de application/x-www-form-urlencoded, creio que assim ele vai entender e colocar conteúdo do params no formato de formData na requisição:


var dadosConexao = {
    companyId : '1',
    serviceCode : 'SalesforceLogin',
    endpoint : '/services/oauth2/token',
    method : 'POST',
    dataType: "text",
    headers : {
       "content-type" : "application/x-www-form-urlencoded",
       "cache-control" : "no-cache"
    },
    options : {
       "mediaType" : "application/x-www-form-urlencoded"
    },
    params : {
       grant_type : "password",
       client_id : clientId,
       client_secret : clientSecret,
       username : usernameSf,
       password : passwordSecret
    }
};

Diogo, boa tarde!! Muiiito obrigada! funcionou perfeitamente :slight_smile: