Advertencia: Estos datos se proporcionan conforme a la Política de Datos del Usuario de Google. Revise y satisfaga la política. De lo contrario, el proyecto o la cuenta podrían suspenderse.

Biblioteca JavaScript de autorización de terceros de Google para sitios web: Referencia de la API

En esta referencia, se describe la API de la biblioteca de autorización de terceros de Google, que puedes usar para cargar códigos de autorización o tokens de acceso de Google.

Método: google.accounts.oauth2.initCodeClient

El método initCodeClient inicializa y muestra un cliente de código con las configuraciones en el parámetro.

google.accounts.oauth2.initCodeClient(config: CodeClientConfig)

Tipo de datos: CodeClientConfig

En la siguiente tabla, se enumeran las propiedades del tipo de datos CodeClientConfig.

Propiedades
client_id Obligatorio. El ID de cliente para tu aplicación. Puedes encontrar este valor en la Consola de API.
scope Obligatorio. Una lista delimitada por espacios de los alcances que identifican los recursos a los que la aplicación podría acceder en nombre del usuario. Estos valores informan la pantalla de consentimiento que Google muestra al usuario.
redirect_uri Obligatorio para la UX de redireccionamiento. Determina dónde el servidor de la API redirecciona al usuario después de que completa el flujo de autorización. El valor debe coincidir exactamente con uno de los URI de redireccionamiento autorizados para el cliente de OAuth 2.0, que configuraste en la Consola de API, y debe cumplir con nuestras reglas de validación de URI de redireccionamiento. La UX emergente ignorará la propiedad.
callback Obligatorio para la UX emergente. El nombre de la función de JavaScript que controla la respuesta de código que se muestra. La UX de redireccionamiento ignorará la propiedad.
state Opcional. Se recomienda para la UX de redireccionamiento. Especifica cualquier valor de cadena que utilice tu aplicación para mantener el estado entre tu solicitud de autorización y la respuesta del servidor de autorización.
enable_serial_consent La configuración predeterminada es true. Si se establece como false, se inhabilitarán los permisos de la Cuenta de Google más detallados para los clientes creados antes de 2019. No tiene efecto para los clientes más nuevos, ya que siempre se habilitan permisos más detallados para ellos.
hint Opcional. Si tu aplicación sabe qué usuario debe autorizar la solicitud, puede usar esta propiedad para proporcionar una sugerencia a Google. La dirección de correo electrónico del usuario objetivo. Para obtener más información, consulta el campo login_hint en la documentación de OpenID Connect.
hosted_domain Opcional. Si tu aplicación conoce el dominio de Workspace al que pertenece el usuario, úsalo para brindarle una sugerencia a Google. Para obtener más información, consulta el campo hd en la documentación de OpenID Connect.
ux_mode Opcional. El modo de UX que se usará para el flujo de autorización. De forma predeterminada, se abrirá el flujo de consentimiento en una ventana emergente. Los valores válidos son popup y redirect.
select_account Opcional: El valor predeterminado es 'false'. Valor booleano para solicitar al usuario que seleccione una cuenta.

Tipo de datos: CodeClient

La clase tiene solo un método requestRequestCode público, que inicia el flujo de UX del código OAuth 2.0.

interface CodeClient {
  requestCode(): void;
}

Tipo de datos: CodeResponse

Se pasará un objeto CodeResponse de JavaScript a tu método callback en la UX emergente. En la UX de redireccionamiento, el CodeResponse se pasará como parámetros de URL.

En la siguiente tabla, se enumeran las propiedades del tipo de datos CodeResponse.

Propiedades
code El código de autorización de una respuesta de token exitosa.
scope Una lista delimitada por espacios de los permisos que aprueba el usuario.
state El valor de string que usa tu aplicación para mantener el estado entre tu solicitud de autorización y la respuesta.
error Un solo código de error ASCII.
error_description Texto ASCII en formato legible que proporciona información adicional y se usa para ayudar al desarrollador del cliente a comprender el error que se produjo.
error_uri Un URI que identifica una página web legible con información sobre el error, que se usa para proporcionar información adicional sobre el error al desarrollador cliente.

Método: google.accounts.oauth2.initTokenClient

El método initTokenClient inicializa y muestra un cliente de token con las configuraciones en el parámetro.

google.accounts.oauth2.initTokenClient(config: TokenClientConfig)

Tipo de datos: TokenClientConfig

En la siguiente tabla, se enumeran las propiedades del tipo de datos TokenClientConfig.

Propiedades
client_id Obligatorio. El ID de cliente para tu aplicación. Puedes encontrar este valor en la Consola de API.
callback Obligatorio. El nombre de la función de JavaScript que controla la respuesta del token que se muestra.
scope Obligatorio. Una lista delimitada por espacios de los alcances que identifican los recursos a los que la aplicación podría acceder en nombre del usuario. Estos valores informan la pantalla de consentimiento que Google muestra al usuario.
prompt La configuración predeterminada es 'select_account'. Una lista de mensajes delimitados por mayúsculas y minúsculas para presentar al usuario. Los valores posibles son los siguientes:
  • string vacía Se le solicitará al usuario la primera vez que tu app solicite acceso. No se puede especificar con otros valores.
  • 'none' No muestra pantallas de autenticación ni de consentimiento. No debe especificarse con otros valores.
  • 'consent' Solicita el consentimiento del usuario.
  • 'select_account' Solicita al usuario que seleccione una cuenta.
enable_serial_consent La configuración predeterminada es true. Si se establece como false, se inhabilitarán los permisos de la Cuenta de Google más detallados para los clientes creados antes de 2019. No tiene efecto para los clientes más nuevos, ya que siempre se habilitan permisos más detallados para ellos.
hint Opcional. Si tu aplicación sabe qué usuario debe autorizar la solicitud, puede usar esta propiedad para proporcionar una sugerencia a Google. La dirección de correo electrónico del usuario objetivo. Para obtener más información, consulta el campo login_hint en la documentación de OpenID Connect.
hosted_domain Opcional. Si tu aplicación conoce el dominio de Workspace al que pertenece el usuario, úsalo para brindarle una sugerencia a Google. Para obtener más información, consulta el campo hd en la documentación de OpenID Connect.
state Opcional. No se recomienda. Especifica cualquier valor de cadena que utilice tu aplicación para mantener el estado entre tu solicitud de autorización y la respuesta del servidor de autorización.

Tipo de datos: TokenClient

La clase tiene solo un método público requestAccessToken, que inicia el flujo de UX del token OAuth 2.0.

interface TokenClient {
  requestAccessToken(overrideConfig?: OverridableTokenClientConfig): void;
}
Argumentos
overrideConfig Config de cliente anulado Opcional. Las configuraciones que se anularán en este método.

Tipo de datos: OverridableTokenClientConfig

En la siguiente tabla, se enumeran las propiedades del tipo de datos OverridableTokenClientConfig.

Propiedades
prompt Opcional. Una lista de mensajes delimitados por mayúsculas y minúsculas para presentar al usuario.
enable_serial_consent Opcional. Si se establece como false, se inhabilitarán los permisos de la Cuenta de Google más detallados para los clientes creados antes de 2019. No tiene efecto para los clientes más nuevos, ya que siempre se habilitan permisos más detallados para ellos.
hint Opcional. Si tu aplicación sabe qué usuario debe autorizar la solicitud, puede usar esta propiedad para proporcionar una sugerencia a Google. La dirección de correo electrónico del usuario objetivo. Para obtener más información, consulta el campo login_hint en la documentación de OpenID Connect.
state Opcional. No se recomienda. Especifica cualquier valor de cadena que utilice tu aplicación para mantener el estado entre tu solicitud de autorización y la respuesta del servidor de autorización.

Tipo de datos: TokenResponse

Se pasará un objeto TokenResponse de JavaScript a tu método de devolución de llamada en la UX emergente.

En la siguiente tabla, se enumeran las propiedades del tipo de datos TokenResponse.

Propiedades
access_token El token de acceso de una respuesta de token exitosa.
expires_in El ciclo de vida en segundos del token de acceso
hd El dominio alojado al que pertenece el usuario que accedió.
prompt El valor de solicitud que se usó de la lista de valores posibles especificada por TokenClientConfig o OverridableTokenClientConfig.
token_type El tipo de token emitido.
scopes Una lista delimitada por espacios de los permisos que aprueba el usuario.
state El valor de string que usa tu aplicación para mantener el estado entre tu solicitud de autorización y la respuesta.
error Un solo código de error ASCII.
error_description Texto ASCII en lenguaje natural que proporciona información adicional y se usa para ayudar al desarrollador del cliente a comprender el error que se produjo.
error_uri Un URI que identifica una página web legible con información sobre el error, que se usa para proporcionar información adicional sobre el error al desarrollador cliente.

Método: google.accounts.oauth2.hasGrantedAllScopes

Verifica si el usuario otorgó todos los alcances especificados.

google.accounts.oauth2.hasGrantedAllScopes(
                                            tokenResponse: TokenResponse,
                                            firstScope: string, ...restScopes: string[]
                                          ): boolean;
Argumentos
tokenResponse string Obligatorio. Un token de acceso válido.
firstScope string Obligatorio. El alcance que se debe verificar.
restScopes string[] Opcional. Otros alcances para verificar
Resultado que se muestra
boolean Verdadero si se otorgan todos los alcances.

Método: google.accounts.oauth2.hasGrantedAnyScope

Verifica si el usuario otorgó alguno de los alcances especificados.

google.accounts.oauth2.hasGrantedAnyScope(
                                           tokenResponse: TokenResponse,
                                           firstScope: string, ...restScopes: string[]
                                         ): boolean;
Argumentos
tokenResponse string Obligatorio. Un token de acceso válido.
firstScope string Obligatorio. El alcance que se debe verificar.
restScopes string[] Opcional. Otros alcances para verificar
Resultado que se muestra
boolean Verdadero si se otorga alguno de los alcances.

Método: google.accounts.oauth2.revoke

El método revoke revoca todos los alcances que el usuario otorgó a la app. Se requiere un token de acceso válido para revocar el permiso.

google.accounts.oauth2.revoke(accessToken: string, done: () => void): void;
Argumentos
accessToken string Obligatorio. Un token de acceso válido.
done función Opcional. Función de devolución de llamada una vez que se completa la acción de revocar.