OAuth 2.0
O OAuth 2.0 oferece autenticação segura baseada em tokens para aplicações de terceiros que acedem ao Brevo em nome de pessoas utilizadoras.
Visão geral do fluxo OAuth
- Pedido de autorização: redireciona a pessoa utilizadora para o Brevo
- Autorização do utilizador: a pessoa utilizadora concede permissões
- Código de autorização: o Brevo redireciona com o código
- Troca do token de acesso: troca o código por tokens
- Acesso à API: utiliza o token de acesso nos pedidos
Endpoint de autorização
https://app.brevo.com/oauth/authorize? response_type=code& client_id=YOUR_CLIENT_ID& redirect_uri=YOUR_REDIRECT_URI& scope=email%20contacts& state=random_stringTroca do token
curl -X POST "https://api.brevo.com/v3/oauth/token" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "grant_type=authorization_code&code=AUTH_CODE&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&redirect_uri=YOUR_REDIRECT_URI"Utilização do token de acesso
const response = await fetch('https://api.brevo.com/v3/account', { headers: { 'Authorization': 'Bearer YOUR_ACCESS_TOKEN', 'Accept': 'application/json' }});Scopes
email: enviar e-mails transacionaiscontacts: gerir contactos e listascampaigns: criar e enviar campanhassms: enviar mensagens SMSwebhooks: gerir webhooks
Atualização do token
const refreshToken = async () => { const response = await fetch('https://api.brevo.com/v3/oauth/token', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, body: new URLSearchParams({ grant_type: 'refresh_token', refresh_token: 'YOUR_REFRESH_TOKEN', client_id: 'YOUR_CLIENT_ID', client_secret: 'YOUR_CLIENT_SECRET' }) }); return response.json();};