Turinga! Connect

Turinga! Connect permite que aplicaciones externas autentiquen usuarios utilizando su cuenta de Turinga! sin tener acceso a su contraseña.

Protocolo: OAuth 2.0 OpenID Connect

Flujo de autorización

Usuario
   ↓
Tu aplicación
   ↓
Turinga! Connect
   ↓
Usuario autoriza
   ↓
Authorization Code
   ↓
Turinga! API
   ↓
Access Token
   ↓
UserInfo

Authorization Endpoint

GET https://connect.turinga.net/oauth/authorize.php

Parámetros:

Token Endpoint

POST https://api.turinga.net/oauth/token.php

Intercambia un Authorization Code por un Access Token.

grant_type=authorization_code
client_id=TU_CLIENT_ID
client_secret=TU_CLIENT_SECRET
code=AUTHORIZATION_CODE
redirect_uri=TU_REDIRECT_URI

Respuesta:

{
  "access_token": "tka_...",
  "token_type": "Bearer",
  "expires_in": 3600,
  "refresh_token": "tkr_...",
  "scope": "openid profile"
}

UserInfo Endpoint

GET https://api.turinga.net/v1/userinfo.php

Envía:

Authorization: Bearer tka_...

Ejemplo de respuesta:

{
  "sub": "1",
  "id": 1,
  "nick": "JuanL23",
  "profile_url": "https://turinga.net/perfil/JuanL23",
  "avatar": "https://t-26.net/avatares/...",
  "rank": "Desarrollador"
}

Scopes

openid

Identifica de manera única al usuario.

profile

Permite consultar nick, avatar, perfil público y rango.

email

Permite consultar el correo electrónico. Este permiso puede requerir revisión adicional.

Seguridad