Usa cuentas de servicio de OAuth 2.0 con la API de Manufacturer Center

Las cuentas de servicio son Cuentas de Google especiales que las aplicaciones pueden usar para acceder a las APIs de Google de manera programática a través de OAuth 2.0. Una cuenta de servicio usa un flujo de OAuth 2.0 que no requiere autorización adicional. En su lugar, usa un archivo de claves al que solo puede acceder tu aplicación. En esta guía, se explica cómo acceder a la API de Manufacturer Center con cuentas de servicio.

Requisitos previos

Pasos para usar una cuenta de servicio y acceder a la API de Manufacturer Center

  1. Genera credenciales de cuentas de servicio o accede a las credenciales públicas que ya generaste. Deberás crear un ID de cliente de OAuth 2.0 y obtener un archivo de claves privadas *.json:

    1. Ve a la Consola de API de Google.

    2. Selecciona un proyecto en el menú desplegable de la parte superior de la página. Si aún no tienes uno, haz clic en Crear proyecto (Create Project).

    3. Si aún no habilitaste la API de Manufacturer Center para este proyecto, búscala en la lista de las API de Google y habilítala.

    4. En la barra lateral izquierda, selecciona Credenciales.

    5. Para configurar una cuenta de servicio, selecciona Crear credenciales y, luego, Clave de cuenta de servicio.

    Captura de pantalla de Crea las credenciales de la cuenta de servicio.

    1. En la página siguiente, selecciona Nueva cuenta de servicio en la lista desplegable.

    2. Asígnale un nombre a la cuenta de servicio nueva. Esto también sirve como nombre de usuario predeterminado para el ID de la cuenta de servicio. Recuerda el ID de la cuenta de servicio para usarlo más adelante.

    Captura de pantalla del nombre de la cuenta de servicio nueva.

    1. Selecciona JSON para el tipo de clave y, luego, haz clic en Crear.

    2. El botón Crear cambiará a Creando... y, una vez que finalice la generación de la clave, se descargará automáticamente la clave privada como un archivo *.json.

    1. Volverás a la página Credenciales y deberías ver la cuenta de servicio nueva en la lista de claves de cuenta de servicio de tu cuenta.
  2. Agrega la cuenta de servicio nueva como usuario a tu cuenta de Manufacturer Center. Si eres un desarrollador externo, deberás pedirle a tu cliente que realice este paso por ti.

    1. Ve a tu cuenta de Manufacturer Center.

    2. Ve a la lista “Usuarios” en la configuración de tu cuenta de Manufacturer Center.

    3. Haz clic en el botón +Usuario y usa el ID de la cuenta de servicio como la dirección de correo electrónico del usuario nuevo.

      Captura de pantalla del botón de usuario para agregar la cuenta de servicio.

    4. Completa el formulario con el ID de cuenta de servicio y selecciona las funciones del usuario que desees. Se debe elegir al menos uno, y el uso del servicio Accounts requiere el rol de administrador.

    Si no tomaste nota del ID de la cuenta de servicio antes, ve a la página de administración de cuentas de servicio y selecciona el proyecto que creaste.

    Captura de pantalla de la página Agregar usuario de cuenta de servicio (Add service account user).

    1. Haz clic en el botón Guardar. Volverás a la lista de usuarios, y el ID de la cuenta de servicio debería aparecer con los roles del usuario elegidos.

    2. Repite el proceso para todas las demás cuentas de servicio que quieras agregar.

    3. Ve a la pestaña Usuarios para ver los usuarios existentes de la cuenta de servicio. Serán usuarios con una dirección de correo electrónico que termine en “gserviceaccount.com”.

  3. Ahora puedes acceder a tu cuenta de Manufacturer Center con la cuenta de servicio mediante el flujo de credenciales predeterminadas de la aplicación de Google o directamente con el flujo de la cuenta de servicio. Las muestras de la API de Manufacturer Center indican cómo usar ambos flujos para las credenciales de cuentas de servicio en cada lenguaje de programación compatible. Consulta las muestras de código para probar tu cuenta de servicio nueva y conocer los cambios que necesitarás para usar cuentas de servicio en tu propio código.

Preguntas frecuentes

¿Puedo acceder a la interfaz de usuario web de Manufacturer Center con mi cuenta de servicio?

No, las cuentas de servicio no son Cuentas de Google normales y no pueden acceder a la interfaz de usuario web de Manufacturer Center.

¿Con qué frecuencia debo actualizar los tokens de acceso de la cuenta de servicio?

Los tokens de acceso vencen una hora después de que son emitidos por el servidor de autorización de Google OAuth 2.0. Cuando vence un token de acceso, la aplicación debe usar la biblioteca cliente para recuperar otro token de acceso.