Getting Started
API para partners que integran telemetría de dispositivos Tagora en sus propios sistemas.
Autenticación con bearer token de scope integration,
listado de dispositivos y webhooks de entrega.
Mi estado de integración
Consulta tu rol, empresa y webhooks activos.
El flujo en 6 pasos
Login de usuario
POST /security/auth/login
Envía email y password. Recibirás un accessToken de corta duración y un renewToken para renovar sin re-login.
accessTokenrenewTokenRequest / Response
{ email, password } accessToken · renewToken · expiresIn: 900Perfil y organización
GET /security/users/me
Usa el accessToken del paso 1. Obtén tu userId y el organizationId de tu cuenta — los necesitarás en el paso siguiente.
userIdorganizationIdRequest / Response
Bearer {accessToken} userId · organizationId · firstName · scopeCredenciales de integración
POST /integration/credentials
Envía el organizationId. Recibirás un par apiKey + secret que identifican a tu organización en el scope de integración.
apiKeysecretRequest / Response
{ organizationId } apiKey · secretLogin de integración
POST /integration/v1/auth/login
Usa apiKey y secret del paso 3. Obtienes un accessToken con scope integration que autoriza dispositivos y webhooks.
intAccessTokenRequest / Response
{ apiKey, secret } accessToken (scope: integration) · expiresIn: 3600Listar tus dispositivos
GET /integration/v1/devices
Usa el intAccessToken. Devuelve los dispositivos de tu organización filtrados por scope. Guarda el assetId de cada uno.
assetId[]Request / Response
Bearer {intAccessToken} [ { assetId, serial, deviceId, status } ]Registrar el webhook
POST /integration/v1/webhook
Registra la URL donde Tagora entregará telemetría. La respuesta incluye una publicKey (Ed25519) para verificar la firma de cada entrega.
webhookIdpublicKeyRequest / Response
{ postUrl, name } webhookId · publicKey (Ed25519) · isActiveCiclo de vida del token
sessionStorage para sobrevivir recargas.
POST /auth/renew ~2 min antes del exp. Si falla, reintenta con backoff exponencial (5s → 10s → 15s). Tras 3 fallos, redirige a login.
Prueba de conexión rápida
Obtén tu primer accessToken desde la terminal:
# 1. Login — obtén accessToken + renewToken curl -X POST "https://integration.tagora.com.mx/integration/v1/auth/login" \ -H "Content-Type: application/json" \ -d '{"email":"your@email.com","password":"yourpassword"}' # Respuesta — lee desde response.data.* { "data": { "accessToken": "eyJhbGciOiJYMjU1MTkr...", "renewToken": "eyJhbGciOiJYMjU1MTkr...", "tokenType": "Bearer", "expiresIn": 600 }, "requestId": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6" } # 2. Listar dispositivos con el accessToken curl "https://integration.tagora.com.mx/integration/v1/devices" \ -H "Authorization: Bearer <accessToken>" # Respuesta — response.data es un array { "data": [ { "deviceId": "uuid-...", "serial": "GT06-XXXX", ... } ], "requestId": "b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0" }