Precios
Noticias
Registrarse
Iniciar sesión
PreciosQuiénes somosContáctanosTestimonios
Iniciar sesiónRegistrarse¿Olvidaste tu contraseña?
Condiciones de servicioPolítica de privacidadTérminos para desarrolladoresSeguridadConfiguración de privacidadRGPD
NoticiasCaracterísticasCentro de ayudaEstado del sistema
Aplicación para iOSAplicación para AndroidAplicación web

Autenticación

La API usa OAuth 2.0 con PKCE para la autenticación.

Advertencia

La autenticación básica está obsoleta y se eliminará en una actualización futura. Migra a OAuth 2.0.

Cómo funciona

  1. Creas una aplicación OAuth una sola vez para obtener un client_id
  2. Rediriges al usuario al endpoint de autorización, donde inicia sesión
  3. Recibes un código de autorización, que intercambias por un token de acceso y un token de actualización
  4. Usas el token de acceso para hacer solicitudes a la API

La mayoría de las bibliotecas cliente de OAuth 2.0 gestionan este flujo automáticamente si les indicas el endpoint de metadatos del servidor /.well-known/oauth-authorization-server.

Todos los endpoints siguientes son relativos a https://api.attendium.com.

Crear tu aplicación OAuth

Crea una aplicación OAuth en Attendium para obtener tu client_id y, si es una aplicación confidencial, tu client_secret. Solo tienes que hacerlo una vez por aplicación. Consulta Aplicaciones OAuth.

Los URI de redirección deben usar https, o http con una dirección de loopback (localhost, 127.0.0.1 o ::1) para el desarrollo local. Una aplicación pública también puede usar un esquema de URI de uso privado en notación de dominio inverso, como com.example.app:/oauth/callback.

Al crear una aplicación OAuth, ya sea en Attendium o mediante el registro dinámico de clientes, aceptas los Términos para desarrolladores en la versión publicada en ese momento.

Autorizar

Genera un verificador de código y un desafío de código PKCE:

  1. Crea una cadena aleatoria (43–128 caracteres, con A-Z, a-z, 0-9, -, ., _, ~): este es tu code_verifier
  2. Calcula el hash SHA-256 del verificador y codifícalo en base64url: este es tu code_challenge

Después, redirige al usuario a:

GET /oauth2/authorize?response_type=code
  &client_id=your-client-id
  &redirect_uri=https://yourapp.example.com/callback
  &code_challenge=your-code-challenge
  &code_challenge_method=S256
  &state=random-state-value

El usuario inicia sesión en Attendium y se le redirige de vuelta a tu redirect_uri con un código de autorización (code) y tu valor de state.

Intercambiar el código por tokens

POST /oauth2/token
Content-Type: application/x-www-form-urlencoded

grant_type=authorization_code
&client_id=your-client-id
&redirect_uri=https://yourapp.example.com/callback
&code=the-authorization-code
&code_verifier=your-code-verifier

Una aplicación confidencial también debe autenticarse, ya sea con autenticación básica (client_secret_basic) o enviando client_secret en el cuerpo de la solicitud (client_secret_post):

POST /oauth2/token
Authorization: Basic base64(your-client-id:your-client-secret)
Content-Type: application/x-www-form-urlencoded

grant_type=authorization_code
&redirect_uri=https://yourapp.example.com/callback
&code=the-authorization-code
&code_verifier=your-code-verifier

La respuesta incluye un access_token y un refresh_token.

Hacer solicitudes a la API

Incluye el token de acceso en el encabezado Authorization:

curl -H "Authorization: Bearer your-access-token" \
     -H "Content-Type: application/json" \
     -d '{"query": "{ me { id } }"}' \
     https://api.attendium.com/graphql

Renovar el token de acceso

La respuesta del token incluye un campo expires_in que indica durante cuánto tiempo es válido el token de acceso. Usa el token de actualización para obtener un nuevo token de acceso antes de que expire:

POST /oauth2/token
Content-Type: application/x-www-form-urlencoded

grant_type=refresh_token
&client_id=your-client-id
&refresh_token=your-refresh-token

Una aplicación confidencial autentica esta solicitud de la misma forma que en el intercambio del código de autorización.

Registro dinámico de clientes

Las aplicaciones que se configuran a partir de los metadatos del servidor —incluidos los asistentes de IA que se conectan mediante MCP (consulta Configurar MCP)— se registran enviando una solicitud POST a /oauth2/register. No lo necesitas si creas tu aplicación OAuth en Attendium.

POST /oauth2/register
Content-Type: application/json

{
  "redirect_uris": ["https://yourapp.example.com/callback"],
  "client_name": "Mi aplicación"
}

Una aplicación registrada de esta forma no aparece en “Aplicaciones OAuth”, por lo que su nombre, sus URI de redirección y su secreto de cliente no se pueden cambiar allí.

Más información

  • OAuth 2.0 — oauth.net
  • PKCE — RFC 7636
  • Registro dinámico de clientes — RFC 7591
Aplicaciones OAuth