Docs/Começo

Autenticação e acesso

OAuth oficial da Resend. Nenhuma API key no celular.

OAuth 2.1 + PKCE

O re: usa o fluxo de autorização da Resend (“Sign in with Resend”) com PKCE. É um cliente público: não existe segredo de cliente embutido no app. Cada login gera um code_verifier novo, e só o app que começou o fluxo consegue trocar o código pelo token. O retorno pro app usa o scheme próprio re://oauth/callback.

Client ID (CIMD)

O cliente é identificado por um documento de metadados (CIMD) hospedado no nosso domínio. A URL do documento é o próprio client_id:

https://tryre.dev/oauth/client.json

É por isso que a tela de consentimento da Resend mostra o host tryre.dev. O documento é público e contém o nome do cliente, os redirects permitidos e os escopos.

Escopos

EscopoNa ResendNo re:
full_accessFull accessTudo: métricas, emails, Inbox, domínios, alertas, broadcasts, contatos, templates, logs, webhooks e API keys.
emails:sendSending accessSó enviar email. O app mostra Acesso só de envio e um botão pra Entrar de novo com acesso total.

Com full_access o app lê o mesmo que o dashboard, mas só muda algo quando você toca. Ações destrutivas pedem confirmação, e Face ID se você ligar Pedir Face ID em ações destrutivas. O resumo fica no app em Ajustes › O que o re: acessa?.

Onde o token fica

Access token e refresh token ficam só no aparelho, no armazenamento seguro do sistema: Keychain no iOS e Keystore no Android. No iOS o item é marcado como “só este aparelho”, então não vai pra backup nem pra outro iPhone. O token nunca é enviado ao relay nem a qualquer servidor nosso.

Validade e renovação

  • O access token dura 15 minutos e é renovado sozinho.
  • O refresh token troca a cada renovação. Enquanto o app for usado, a sessão continua.
  • As renovações de um mesmo time passam por uma fila única. Reusar um refresh token antigo faz a Resend revogar a autorização inteira, e o app evita isso.
  • Widgets nunca renovam o token. Veja Widgets.

Se a Resend recusar a renovação, a sessão expira e o app pede pra entrar de novo. Alertas e preferências continuam salvos.

Revogar o acesso

Pelo app: Ajustes › Sair da conta revoga o acesso na Resend na hora e apaga o token do aparelho. Com vários times, Sair deste time revoga só o time ativo.

Pelo dashboard da Resend: remova a autorização do re: na lista de aplicativos conectados. Na próxima chamada, o app recebe a recusa e volta pra tela de login.

Revogar o acesso não remove o webhook que o re: criou pra os alertas. Pra isso, veja remover tudo.

Faltou algo nesta página? Conte no quadro de feedback