Quando utilizar a autenticação “API KEY” ou “Oauth”

Agatha Sell
Ship It!
Published in
4 min readDec 11, 2020

E aí, dev? Você sabe como definir qual tipo de autenticação será utilizada?

O primeiro passo é decidir qual tipo de evento será enviado ao RD Station Marketing.

- Autenticação OAuth

Se o seu objetivo é enviar eventos de conversão padrão e outros tipos de evento como: marcação de oportunidade, venda, oportunidade perdida, eventos de ecommerce (como carrinho abandonado, por exemplo), eventos de chat, entre outros, você deve realizar a autenticação OAuth.

A autenticação OAuth também possibilita a consulta e edição dos leads via Contatos; a consulta e edição do estágio do funil do lead via Funis; consulta, criação, edição e deleção de Campos personalizados; e a consulta do nome da conta e seu respectivo código de monitoramento em Informações da conta.

Segurança

Essa nova versão da nossa API é mais segura do que a anterior. Trata-se de um modelo de conexão com níveis de segurança elevados, criado para te ajudar a proteger dados dos seus leads que podem ser considerados sensíveis.

Sendo assim, a metodologia de autenticação é baseada no protocolo de segurança OAuth, o que significa que ela trabalha com tokens com prazo de expiração pré-determinados, tornando-a mais segura.

Resumo do processo

Para realizar a autenticação OAuth, basicamente você vai:

1) acessar a página publisher, escolher qual conta do RD Station Marketing que receberá os requests e criar um app:

2) irá preencher as informações do app e são geradas as credenciais (client_id e client_secret);

3) irá gerar o code (a partir das credenciais e de uma URL de callback) — o que pode ser feito na barra do seu navegador.

4) a partir do code, gerar os tokens (acess token e refresh token)

Esse processo é realizado uma única vez. A partir do momento que você possui os tokens, não é mais necessário realizar o processo de autenticação, já que a partir do refresh_token (que não expira), você pode obter um novo acess_token (que expira a cada 24h).

Ah, e caso o seu objetivo seja ter um app público para ser disponibilizado na nossa App Store, a autenticação deve ser realizada via OAuth.

- Autenticação API KEY

Se o seu objetivo for enviar apenas eventos de conversão padrão, você pode utilizar a API KEY.

Em um evento de conversão padrão, é possível utilizar exclusivamente o método POST, com endpoint https://api.rd.services/platform/conversions?api_key=[api-key-token] e os parâmetros indicados na documentação.

Ou seja, não é possível utilizar os endpoint da API de Contatos. Nem enviar outros tipos de eventos de conversão.

Para criar a chave da API (api-key-token), você acessa a página publisher, escolhe qual conta do RD Station Marketing receberá os dados e gera a chave da API:

A API KEY é uma autenticação simplificada, o que faz com que o seu tempo de configuração seja menor. Além disso, esse método possibilita uma integração via frontend.

Sendo assim, seria ideal para a integração de formulário da sua página, por exemplo.

Segurança

No entanto, é importante deixar claro que as chaves de API não são tão seguras quanto a autenticação OAuth.

Temos um artigo na nossa Central de Ajuda que fala mais sobre Chaves de API. Ele dá mais detalhes em relação à segurança das chaves, passo-a-passo e demais informações importantes.

Concluindo

Portanto, dev, uma vez que você tenha em mente quais são os dados que gostaria de enviar para o RD Station Marketing, você pode escolher qual seria o tipo de autenticação a ser utilizada.

Até a próxima! 🚀

Perguntas relacionadas:

  • Não tenho URL de callback. E agora?

Como a URL de callback é utilizada apenas para a geração do code (e depois que você obtiver os tokens não será mais utilizada), você pode criar uma URL de callback genérica no beeceptor.com mesmo.

  • Onde está o UUID do lead no RD Station Marketing?

É uma sequência alfanumérica que consta na URL pública do lead. Por exemplo:

Para obtê-lo, você pode fazer um GET a partir do endereço de email do lead.

  • Na autenticação OAuth, precisa de interação humana para a geração do acess_token?

Não. O acess_token expira em 24h, mas o refresh_token não expira. Então, você pode armazenar o refresh_token como uma variável no script da integração. E pode criar uma função condicional para verificar se o acess_token está válido. Caso sim, segue a integração. Caso não, (ou seja, se apontou algum erro), você cria uma função para criar um novo acess_token (utilizando o refresh_token).

  • E no caso de webhook?

Você utiliza webhook para o envio de leads a partir do RD Station Marketing para uma plataforma externa (nesse sentido de integração). Nesse caso, é necessário apenas que a plataforma externa forneça URL de integração que esteja preparada para receber dados no formato JSON.

--

--