Passo 2: Como utilizar as Credenciais para gerar o code

[Passo 2 de 4]

No passo anterior, você criou o aplicativo na App Store e obteve as credenciais. Neste passo, vamos utilizar as credenciais client_id e redirect_uri para obter o code.

O objetivo dessa etapa é autorizar o aplicativo (criado no passo 1) a se conectar com a conta desejada do RD Station Marketing.

CampoValorDescrição
Client Id:client_id do aplicativo
Redirect Uri:redirect_uri do aplicativo (callback)
State:(Opcional) Param extra para a URL de callback

1. Compondo a URL de autorização

Você deve substituir os parâmetros client_id e redirect_uri da URL de autorização indicada abaixo, pelas credenciais obtidas no passo anterior:

https://api.rd.services/auth/dialog?client_id=client_id&redirect_uri=redirect_uri&state=state
💡

O parâmetro redirect_uri deve ser substituído pela obteve as credenciais. Neste passo, vamos utilizar as crede cadastrada no aplicativo criado no passo 1.

Se você estiver realizando esse passo manualmente, você pode substituir os parâmetros utilizando o Gerador de URL de autorização abaixo para criar sua URL:

Gerador de URL de autorização


CampoValorDescrição
Client Id:client_id do aplicativo
Redirect Uri:redirect_uri do aplicativo (callback)
State:(Opcional) Param extra para a URL de callback

Atenção: Certifique-se de que a sua url de callback foi inserida por completo (exatamente como foi cadastrada no aplicativo), pois aqui é feita uma comparação de strings entre a url de callback inserida na sua app e a redirect uri.

📘

O parâmetro "state" é usado como um mecanismo de segurança para garantir a integridade da resposta de autenticação ao usar o OAuth e prevenir ataques CSRF.

Ele é determinado ao configurar a URL de autorização e, ao gerar o code, o servidor retorna esse parâmetro na resposta, permitindo comparar esse valor recebido com o valor originalmente gerado.

Exemplo de URL de autorização

Veja um exemplo de como ficaria a URL de autorização após substituir o client_id e redirect_uri pelas credenciais geradas por um aplicativo.

Credenciais de exemplo:

Campo

Valor

client_id68956445-3421-4a0f-a0dd-3142a97621f4
client_secret81f840006c994d71a87d0b4fa6e2f0a2
url_callbackhttps://www.rdstation.com/contato

URL de autorização atualizada com as credenciais:

https://api.rd.services/auth/dialog?client_id=68956445-3421-4a0f-a0dd-3142a97621f4&redirect_uri=https://www.rdstation.com/contato

2. Autorizando o aplicativo

Após gerar a URL de autorização, é necessário acessá-la para obter o code.

Ao acessar/ser redirecionado para a URL de autorização, o usuário poderá selecionar qual conta do RD Station Marketing deseja integrar e será exibida a caixa de permissões para confirmar a autorização, conforme mostrado a imagem abaixo:

Se o redirecionamento for feito corretamente, o code será retornado em uma URL com a estrutura similar:

https://yourapp.org/auth/callback?code={code}
❗️

As atualizações no Aplicativo levam até 1 hora para serem refletidas.

Se a URL de Callback for atualizada e estiver ocorrendo um erro ao tentar gerar o code, é necessário aguardar esse tempo para utilizá-la.

Se você estiver criando um aplicativo privado (para uso interno):

Pode realizar essa etapa acessando a URL de autorização pela barra de endereço do seu navegador para ser redirecionado para a sua conta do RD Station Marketing, autorizar a conexão e obter o code.

Se você estiver criando um aplicativo público (para os seus clientes):

Sua aplicação precisa redirecionar o navegador do usuário para a URL de autorização que você construiu. Para isso, pode exibir um botão que diz: "Conectar Nome do app" com a URL de autorização para que o usuário seja ser redirecionado para a conta do RD Station Marketing e obtenha o code.

🚧

Esse processo só precisa ser feito uma vez

O code expira em seu primeiro uso ou após 60 minutos, pois a sua única função no processo de Autenticação é solicitar o access_token e refresh_token.

Após utilizá-lo para gerar os tokens ele não será mais necessário para a utilização da API.


Ainda ficou com dúvida? Leia a nossa receita (: