Skip to content
La API está en fase beta y puede cambiar sin previo aviso.

Scopes y Claims

Los scopes controlan a qué datos puede acceder tu aplicación. Solicita solo lo que necesitas.

Scopes Disponibles

ScopeDescripciónClaims devueltos
openidObligatorio. Identifica al usuario.sub, id
profileNombre del usuario y preferencias de visualización.name, given_name, family_name, display_name, preferred_username, native_script, preferred_order
emailDirección de email del usuario.email
project:readAcceso de lectura a la membresía del proyecto.project (objeto con rol y permisos)

Solicitar Scopes

Pasa los scopes como una cadena separada por espacios en la URL de autorización:

https://hitkey.io/?client_id=...&scope=openid+profile+email&...

O codificado en URL:

scope=openid%20profile%20email

Scope por defecto

Si no se especifica ningún scope, se devuelven TODOS los claims (equivalente a solicitar todos los scopes). Para restringir la respuesta, especifica siempre los scopes explícitamente.

Referencia de Claims

Scope openid

ClaimTipoDescripción
substring (UUID)Identificador único e inmutable del usuario
idstring (UUID)Mismo valor que sub (siempre incluido)

Scope profile

ClaimTipoDescripción
namestringNombre completo formateado
given_namestring | nullNombre(s) de pila
family_namestring | nullApellido(s)
display_namestring | nullNombre preferido para mostrar
preferred_usernamestring | nullNombre de usuario único (estándar OIDC)
native_scriptstring | nullNombre en escritura nativa
preferred_order"western" | "eastern" | nullPreferencia de orden de visualización del nombre

Scope email

ClaimTipoDescripción
emailstringDirección de email predeterminada del usuario

INFO

El campo email_verified no es devuelto por /oauth/userinfo. Solo se incluye la dirección de email.

Scope project:read

Se utiliza con clientes OAuth vinculados a un proyecto. Devuelve la membresía del usuario en el proyecto del cliente.

ClaimTipoDescripción
project.project_idstring (UUID)ID del proyecto
project.project_namestringNombre del proyecto
project.project_slugstringSlug del proyecto
project.rolestringRol del usuario en el proyecto
project.permissionsstring[]Array de claves de permisos

INFO

El scope project:read solo devuelve datos cuando el cliente OAuth pertenece a un proyecto. Para clientes sin proyecto, este scope se ignora.

Filtrado de Scopes

HitKey filtra los scopes solicitados a solo aquellos que soporta. Si solicitas un scope desconocido, se ignora silenciosamente — no se devuelve ningún error.

Solicitados:  openid profile email custom_scope
Concedidos:   openid profile email

Ejemplo: Mínimo vs Completo

Mínimo — solo identificar al usuario:

scope=openid

Devuelve:

json
{
  "sub": "550e8400-e29b-41d4-a716-446655440000",
  "id": "550e8400-e29b-41d4-a716-446655440000"
}

Completo — identificar + perfil + email:

scope=openid+profile+email

Devuelve:

json
{
  "sub": "550e8400-e29b-41d4-a716-446655440000",
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "John Doe",
  "given_name": "John",
  "family_name": "Doe",
  "display_name": "John Doe",
  "preferred_username": "johndoe",
  "native_script": null,
  "preferred_order": "western",
  "email": "user@example.com"
}

HitKey Service License.