Skip to content

Mensajes de Error

Esta sección lista todos los posibles mensajes de error que pueden ocurrir durante el proceso de autenticación e integración.

Errores en la Validación de la Solicitud de Autorización

unauthorized_client

Error:

error=unauthorized_client
error_description=The Client ID informed by the client is not valid.

Causa: El Client ID informado no es válido o no está registrado en el sistema.

Solución: Verifique si el client_id está correcto y si fue proporcionado por Fanbase.

invalid_request - URI no corresponde

Error:

error=invalid_request
error_description=The informed URI does not match with any of the registered Client's URIs.

Causa: La URI de redirección informada no corresponde a ninguna de las URIs registradas para el cliente.

Solución: Verifique si la redirect_uri está exactamente igual a la configurada en el sistema. Asegúrese de que no hay diferencias en mayúsculas/minúsculas, barras finales o protocolos.

invalid_request - id_token_hint sin prompt

Error:

error=invalid_request
error_description=The use of the id_token_hint property requires the prompt value to be set as 'none'.

Causa: Utilizó el parámetro id_token_hint sin definir prompt=none.

Solución: Agregue &prompt=none a su solicitud cuando use id_token_hint.

Errores en los Procesos de Intercambio de Tokens

Parámetro ausente

Error:

The request is missing a parameter: (client_id, client_secret, grant_type, code)

Causa: Uno o más parámetros obligatorios no fueron informados en la solicitud.

Solución: Verifique si todos los parámetros obligatorios están presentes:

  • grant_type
  • client_id
  • client_secret
  • code

Client ID inválido

Error:

The informed Client ID is invalid.

Causa: El Client ID informado no es válido.

Solución: Verifique si el client_id está correcto.

Client Secret incorrecto

Error:

The informed Client Secret does not match the correct secret.

Causa: El Client Secret informado no corresponde al secret correcto para el Client ID.

Solución: Verifique si el client_secret está correcto y corresponde al client_id informado.

Código de autorización inválido

Error:

The informed authorization code is invalid.

Causas posibles:

  • El código de autorización ya fue utilizado
  • El código expiró
  • El código no es válido

Solución:

  • Use cada código de autorización solo una vez
  • Intercambie el código por tokens inmediatamente después de recibirlo
  • Verifique si el código fue copiado correctamente

Grant Type inválido

Error:

The informed Grant Type is invalid or not implemented.

Causa: El Grant Type informado no es válido o no está implementado.

Solución: Use grant_type=authorization_code para el flujo de código de autorización.

Códigos de Estado HTTP

Además de los mensajes de error específicos, la API puede retornar los siguientes códigos de estado HTTP:

CódigoDescripción
200Éxito
400Solicitud inválida
401No autorizado
403Acceso denegado
404Recurso no encontrado
500Error interno del servidor

Tratamiento de Errores

Ejemplo en JavaScript

javascript
try {
  const response = await fetch('{security-producao}/api/token/v2', {
    method: 'POST',
    body: new URLSearchParams({
      grant_type: 'authorization_code',
      client_id: clientId,
      client_secret: clientSecret,
      code: authorizationCode
    })
  });

  if (!response.ok) {
    const error = await response.json();
    throw new Error(error.error_description || `Error ${response.status}`);
  }

  const tokens = await response.json();
  return tokens;
} catch (error) {
  console.error('Error al intercambiar código por tokens:', error.message);
  throw error;
}

Ejemplo en el Callback

javascript
const urlParams = new URLSearchParams(window.location.search);
const error = urlParams.get('error');
const errorDescription = urlParams.get('error_description');

if (error) {
  console.error('Error en la autenticación:', error);
  console.error('Descripción:', errorDescription);
  
  switch (error) {
    case 'unauthorized_client':
      alert('Client ID inválido. Contacte al soporte.');
      break;
    case 'invalid_request':
      alert('Solicitud inválida: ' + errorDescription);
      break;
    default:
      alert('Error desconocido: ' + errorDescription);
  }
}

Soporte

Si encuentra errores no documentados aquí o necesita ayuda adicional, contacte al equipo de soporte de Fanbase.

Documentación de la API Fanbase