Astorya Developers
Começando

Guia rápido (15 minutos)

Gere uma credencial, peça uma sessão pelo seu backend e abra a Astorya já logada. No fim deste guia você terá o fluxo inteiro funcionando no sandbox.

Nesta página
  1. Antes de começar
  2. 1Crie a credencial no painel
  3. 2Peça uma sessão pelo seu backend
  4. 3Abra a launchUrl na WebView
  5. 4Pronto! E agora?

Antes de começar

  • Acesso ao painel Astorya do seu tenant (de preferência o de sandbox).
  • Um backend seu capaz de fazer chamadas HTTPS. Os exemplos usam curl, Node.js 18+, Python 3 e PHP 8.
  • Um identificador estável para cada membro no seu sistema — o ID do usuário, por exemplo. Ele será o externalUserId.

1Crie a credencial no painel

  1. No painel, abra Integrações → Nova credencial.
  2. Dê um nome que identifique o uso, como “Backend do app — sandbox”.
  3. Copie o client_id (no formato ast_live_XXXXXXXXXXXXXXXXXXXXXXXX) e o client_secret.

O segredo aparece uma única vez. Guarde-o agora em um cofre de segredos ou nas variáveis de ambiente do servidor. Se perder, gere outro com Rotacionar segredo — veja Rotação.

Variáveis de ambiente do servidor
export ASTORYA_CLIENT_ID="ast_live_XXXXXXXXXXXXXXXXXXXXXXXX"
export ASTORYA_CLIENT_SECRET="cole-aqui-o-segredo"

2Peça uma sessão pelo seu backend

Quando o membro tocar em “Livros” no seu app, o app chama uma rota do seu backend, que por sua vez chama a Astorya. A credencial nunca sai do servidor.

POST/partner/v1/sessions
curl
curl -X POST "https://api.astorya.com.br/partner/v1/sessions" \
  -u "$ASTORYA_CLIENT_ID:$ASTORYA_CLIENT_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
    "externalUserId": "usuario-10293",
    "email": "maria@exemplo.com.br",
    "name": "Maria Souza"
  }'

A resposta é 201 Created:

Resposta
{
  "launchUrl": "https://play.astorya.com.br/launch?token=5JxR2mVt9wQ8aLz3nB7cYd4fHk6pE1sU",
  "launchToken": "5JxR2mVt9wQ8aLz3nB7cYd4fHk6pE1sU",
  "expiresAt": "2026-10-08T14:31:00.000Z",
  "user": {
    "id": "6702f1c9a8b4e2d3c1f0a9b8",
    "externalUserId": "usuario-10293",
    "email": "maria@exemplo.com.br",
    "name": "Maria Souza",
    "status": "ACTIVE"
  }
}

Na primeira chamada para um externalUserId, a Astorya cria o membro automaticamente. Nas seguintes, reutiliza a mesma conta. Detalhes em Criação no primeiro acesso.

3Abra a launchUrl na WebView

Devolva só a launchUrl para o app e abra-a imediatamente. Para testar agora, sem app, cole a URL no navegador: você verá a Astorya logada como “Maria Souza”.

React Native (resumo)
const { launchUrl } = await api.post('/astorya/session'); // rota do SEU backend
const url = `${launchUrl}&embed=1`;
// <WebView source={{ uri: url }} ... />

A launchUrl vale 60 segundos e uma única vez. Não guarde, não reaproveite e não gere com antecedência: peça uma nova a cada abertura da tela.

4Pronto! E agora?

O fluxo básico está funcionando. Para ir para produção: