shadcn/studio
Autenticación/OAuth 2.0

OAuth 2.0

Permite que usuarios autoricen tu aplicación a acceder a sus datos de AstrApp sin compartir contraseñas.

Cuándo usar OAuth

  • • Aplicaciones web donde usuarios inician sesión
  • • Apps que acceden a datos de terceros
  • • Integraciones que usuarios deben autorizar

Flujo de autorización

Paso 1: Redirigir al usuario

url
https://auth.astrapp.lat/oauth/authorize?
  client_id=YOUR_CLIENT_ID&
  redirect_uri=https://tu-app.com/callback&
  scope=projects:read projects:write models:read&
  state=random_state_value&
  response_type=code

Paso 2: Usuario autoriza

AstrApp redirige a tu URL con un código:

url
https://tu-app.com/callback?code=auth_code_xxxxx&state=random_state_value

Paso 3: Intercambiar código por token

bash
curl -X POST https://auth.astrapp.lat/oauth/token \
  -H "Content-Type: application/json" \
  -d '{
    "grant_type": "authorization_code",
    "code": "auth_code_xxxxx",
    "client_id": "YOUR_CLIENT_ID",
    "client_secret": "YOUR_CLIENT_SECRET",
    "redirect_uri": "https://tu-app.com/callback"
  }'

Respuesta

json
{
  "access_token": "access_xxxxxxxxxxxxx",
  "token_type": "Bearer",
  "expires_in": 3600,
  "refresh_token": "refresh_xxxxxxxxxxxxx",
  "scope": "projects:read projects:write models:read"
}

Refrescar token

Cuando el access token expira, usa el refresh token para obtener uno nuevo.

bash
curl -X POST https://auth.astrapp.lat/oauth/token \
  -H "Content-Type: application/json" \
  -d '{
    "grant_type": "refresh_token",
    "refresh_token": "refresh_xxxxxxxxxxxxx",
    "client_id": "YOUR_CLIENT_ID",
    "client_secret": "YOUR_CLIENT_SECRET"
  }'

Anterior

API Keys

Siguiente

Permisos