> ## Documentation Index
> Fetch the complete documentation index at: https://docs.base44.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Conectores de Google Workspace

> Conecta Gmail, Google Calendar, Contacts, Drive, Docs y Sheets con un conector individual, o trabaja con todos a la vez mediante el conector de Google Workspace.

Elige un conector y conéctalo con una cuenta compartida o con la cuenta propia de cada persona. Los alcances son los permisos que tu app pide a Google, así que pide solo los que necesita.

> [!NOTE]
>
> Necesitas un [**plan Builder**](https://base44.com/pricing) o superior para usar conectores en tu app.

***

## Qué puedes hacer

Conecta tu app a tu correo, calendarios, contactos y archivos.

> **Automatizar el correo**
>
> Envía confirmaciones y seguimientos, y convierte los correos entrantes en tareas o tickets.

> **Sincronizar calendarios y contactos**
>
> Sincroniza reservas, muestra tu disponibilidad y mantén tus contactos al día.

> **Trabajar con archivos y datos**
>
> Guarda informes en Drive, genera documentos de Docs e importa o exporta datos de Sheets.

***

## Conector de Google Workspace

Usa este conector cuando tu app combina varios servicios de Google, como un asistente que trabaja con tu bandeja de entrada, tu calendario y tus archivos de Drive. Si solo usa uno o dos, conecta esos servicios en su lugar.

**Prompts de ejemplo**

Describe en el chat de IA los servicios de Google implicados, qué activa la acción y cualquier campo dinámico. Por ejemplo:

```text wrap theme={null}
Conóceme: revisa mis correos, reuniones y archivos de Drive y dime en qué estoy trabajando.
```

```text wrap theme={null}
Sé mi asistente personal: vigila mi bandeja de entrada y mi calendario y dime qué requiere mi atención hoy.
```

```text wrap theme={null}
Prepara mi próxima reunión a partir de los hilos de correo, archivos y datos de los asistentes relacionados.
```

```text wrap theme={null}
Redacta seguimientos para los asistentes después de cada reunión.
```

```text wrap theme={null}
Convierte las reuniones y correos de esta semana en un documento de Docs y una hoja de Sheets.
```

**Alcances**

> Este conector pide los alcances siguientes en 6 servicios, así que necesita más acceso que un conector individual.
>
> * **Gmail:** `gmail.readonly`, `gmail.modify`, `gmail.compose`, `gmail.send`
> * **Calendar:** `calendar.readonly`, `calendar.settings.readonly`, `calendar.events`
> * **Contacts:** `contacts.readonly`
> * **Drive:** `drive.readonly`, `drive`
> * **Docs:** `documents.readonly`, `documents`
> * **Sheets:** `spreadsheets.readonly`, `spreadsheets`
>
> Cada alcance se describe en su servicio en [Servicios de Google](#google-services).
>
> **Acceso:** Tu app trabaja con los datos de la cuenta de Google que autoriza la conexión.

***

## Conectar un servicio de Google

Conecta un servicio de Google con una cuenta compartida o deja que cada persona conecte la suya.

**Conector compartido**

Conectas una cuenta una sola vez y todas las personas que usan tu app comparten esa conexión y sus datos.

**Para añadir un conector compartido de Google:**

1. Haz clic en **Connectors** en la barra lateral de tu workspace.
2. Haz clic en **Add connector**.
3. Busca el servicio que quieres, como **Google Calendar** o **Google Workspace**, y haz clic en él.
4. Selecciona **Shared connector** y luego haz clic en **Next**.
5. Introduce un **Connection name**.
6. Elige dónde se puede usar la conexión en **Who can access**. El valor predeterminado es **Apps and Super agent**.
7. Si aparece **Permissions**, elige **Read-only** para ver datos, o **Read & write** si tu app necesita enviarlos, crearlos o cambiarlos. El valor predeterminado es **Read-only**.
8. Haz clic en **Add connector** y luego inicia sesión con la cuenta de Google que quieres compartir.
9. Abre tu app en el editor de apps.
10. Pide al chat de IA que use la conexión compartida de Google para la función que quieres crear.

**Conector para usuarios de la app**

Cada persona conecta su propia cuenta de Google, así tu app trabaja con sus datos. Google Calendar también ofrece **Let Base44 manage OAuth**.

> [!TIP]
>
> **Antes de empezar:** Los propietarios y administradores del workspace configuran los conectores para usuarios de la app. Para dejar que Base44 gestione OAuth, necesitas un [plan Pro](https://base44.com/pricing) o superior. Si usas tu propio cliente OAuth, revisa [Alcances y permisos](#scopes-and-permissions) antes de crear tu app.

Si usas **Let Base44 manage OAuth** para Google Calendar, pasa directamente a **Para añadir un conector de Google para usuarios de la app**.

**Para preparar tu propio cliente OAuth:**

1. Crea o selecciona un proyecto en la consola de Google Cloud.
2. Activa la API de cada servicio de Google que usa tu app.
3. Configura la pantalla de consentimiento de OAuth con los alcances que piensas pedir.
4. Mientras tu app OAuth está en modo de prueba, añade como usuarios de prueba las cuentas de Google con las que vas a probar.
5. Crea un cliente OAuth para una aplicación web.
6. Añade `https://connectors.base44.com/api/oauth/callback` como URI de redirección autorizado.
7. Copia el ID de cliente y el secreto de cliente.

**Para añadir un conector de Google para usuarios de la app:**

1. Haz clic en **Connectors** en la barra lateral de tu workspace.
2. Haz clic en **Add connector**.
3. Busca el servicio que quieres, como **Google Calendar** o **Google Drive**, y haz clic en él.
4. Selecciona **App user connector** y luego haz clic en **Next**.
5. Si aparece **Choose how to manage authentication**, selecciona **Let Base44 manage OAuth** o **Use your own OAuth client**.
6. Introduce un **Connector name**.
7. Si usas tu propio cliente OAuth, introduce su **Client ID** y su **Client Secret**.
8. Quita en **Scopes** los alcances que tu app no necesita. Con tu propio cliente OAuth, añade otros en **Additional scopes**. Para ver qué hace cada alcance, consulta [Servicios de Google](#google-services).
9. Haz clic en **Add Connector**.
10. Abre tu app en el editor de apps.
11. Pide al chat de IA que añada una forma de que las personas conecten su propia cuenta de Google.

***

## Servicios de Google

Busca el servicio que usa tu app para ver qué puede hacer y qué alcances pide.

Para otros conectores de Google, como Google Analytics, Google Meet y Google Search Console, consulta el [catálogo de conectores](https://docs.base44.com/es/Integrations/connectors-catalog.md).

### Gmail

Envía, lee y gestiona correos en [Gmail](https://base44.com/integrations/connectors/gmail).

**Prompts de ejemplo**

Describe en el chat de IA el asunto, el cuerpo del mensaje, el formato, los destinatarios y cualquier campo dinámico. Por ejemplo:

```text wrap theme={null}
Envía correos de confirmación automáticos cuando se haga un nuevo pedido.
```

```text wrap theme={null}
Lee y analiza los correos entrantes para crear tickets de soporte.
```

```text wrap theme={null}
Activa un workflow automáticamente cuando llegue un correo nuevo.
```

```text wrap theme={null}
Envía correos de seguimiento personalizados a los nuevos leads.
```

```text wrap theme={null}
Notifica por correo a los miembros del equipo cuando se les asignen tareas.
```

**Alcances**

> Leer el contenido del correo es un alcance restringido de Google.
>
> Los nombres de los alcances de Gmail empiezan por `https://www.googleapis.com/auth/`:
>
> * `gmail.readonly`: Lee mensajes y metadatos
> * `gmail.modify`: Lee, etiqueta y cambia mensajes, pero no los elimina de forma permanente
> * `gmail.compose`: Crea borradores y envía correos
> * `gmail.send`: Envía mensajes
> * `gmail.labels`: Gestiona etiquetas
> * `gmail.settings.basic`: Gestiona filtros, firmas y la respuesta automática de vacaciones
>
> **Acceso:** Tu app trabaja con el correo de la cuenta de Gmail que autoriza la conexión.

### Google Calendar

Accede a eventos de [Google Calendar](https://base44.com/integrations/connectors/google-calendar) y gestiónalos.

**Prompts de ejemplo**

Describe en el chat de IA el calendario, los eventos, qué activa la acción y cualquier campo dinámico. Por ejemplo:

```text wrap theme={null}
Sincroniza todas mis reservas directamente con mi Google Calendar.
```

```text wrap theme={null}
Muestra a los clientes mi disponibilidad en tiempo real desde Google Calendar.
```

```text wrap theme={null}
Ejecuta una automatización cuando se cree o actualice un evento del calendario.
```

```text wrap theme={null}
Bloquea automáticamente los horarios de reuniones en mi calendario personal.
```

```text wrap theme={null}
Añade nuevos eventos al calendario cuando una tarea se marque como completada.
```

**Alcances**

> El alcance amplio `calendar` gestiona todos los calendarios, así que elige un alcance más limitado cuando tu app solo lee eventos o disponibilidad. Con **Let Base44 manage OAuth**, el selector solo ofrece los alcances más limitados.
>
> Los nombres de los alcances de Google Calendar empiezan por `https://www.googleapis.com/auth/`:
>
> * `calendar`: Gestiona todos los calendarios y eventos
> * `calendar.readonly`: Ve todos los calendarios, eventos y su configuración
> * `calendar.events`: Gestiona eventos de los calendarios
> * `calendar.events.readonly`: Ve eventos de los calendarios
> * `calendar.events.freebusy`: Ve la información de disponibilidad de los calendarios sin ver los detalles de los eventos
> * `calendar.freebusy`: Ve la información de disponibilidad de los calendarios
> * `calendar.app.created`: Gestiona los calendarios que creó tu app
> * `calendar.calendarlist.readonly`: Ve la lista de calendarios
> * `calendar.events.public.readonly`: Ve eventos públicos de los calendarios
> * `calendar.settings.readonly`: Ve la configuración de Google Calendar
>
> **Acceso:** Tu app trabaja con los calendarios de la cuenta de Google que autoriza la conexión.

### Google Contacts

Lee, crea y gestiona contactos en Google Contacts.

**Prompts de ejemplo**

Describe en el chat de IA los contactos, qué activa la acción y cualquier campo dinámico. Por ejemplo:

```text wrap theme={null}
Crea un CRM que sincronice los clientes en ambos sentidos con mis Google Contacts.
```

```text wrap theme={null}
Importa como leads a las personas a las que escribí pero que nunca guardé como contactos.
```

```text wrap theme={null}
Analiza mi red de contactos y clasifica los contactos automáticamente con IA.
```

```text wrap theme={null}
Crea un directorio de la empresa con búsqueda a partir de mi organización de Google Workspace.
```

```text wrap theme={null}
Guarda automáticamente a los nuevos clientes como contactos cuando se registren.
```

**Alcances**

> Elige `contacts.readonly` cuando tu app solo necesita leer los contactos guardados.
>
> Los nombres de los alcances de Google Contacts empiezan por `https://www.googleapis.com/auth/`:
>
> * `contacts.readonly`: Ve los contactos
> * `contacts`: Ve, crea, edita y elimina contactos
> * `contacts.other.readonly`: Ve otros contactos, como personas a las que escribiste pero no guardaste
> * `directory.readonly`: Ve el directorio de Google Workspace de tu organización
>
> **Acceso:** Tu app trabaja con los contactos de la cuenta de Google que autoriza la conexión.

### Google Drive

Busca, accede y gestiona archivos en [Google Drive](https://base44.com/integrations/connectors/google-drive).

**Prompts de ejemplo**

Describe en el chat de IA los archivos o carpetas, qué activa la acción y cualquier campo dinámico. Por ejemplo:

```text wrap theme={null}
Lista todos los archivos de mi Google Drive y muéstralos en mi app.
```

```text wrap theme={null}
Busca en Google Drive documentos que coincidan con una palabra clave y muestra los resultados.
```

```text wrap theme={null}
Guarda en Google Drive los informes PDF generados desde mi app.
```

```text wrap theme={null}
Lee una hoja de cálculo de Google Drive e importa sus datos a mi app.
```

```text wrap theme={null}
Activa un workflow cuando se añada o actualice un archivo en Drive.
```

**Alcances**

> El alcance `drive` da a tu app acceso a todos los archivos y carpetas de Google Drive, mientras que `drive.file` cubre solo los archivos que tu app crea o abre.
>
> Los nombres de los alcances de Google Drive empiezan por `https://www.googleapis.com/auth/`:
>
> * `drive`: Ve, crea, edita y elimina todos los archivos y carpetas de Google Drive
> * `drive.readonly`: Ve todos los archivos y carpetas de Google Drive
> * `drive.file`: Accede solo a los archivos que tu app crea o abre con permiso
>
> **Acceso:** Tu app trabaja con los archivos de Google Drive de la cuenta de Google que autoriza la conexión.

### Google Docs

Crea y edita documentos de [Google Docs](https://base44.com/integrations/connectors/google-docs).

**Prompts de ejemplo**

Describe en el chat de IA el documento, qué lo activa y cualquier campo dinámico. Por ejemplo:

```text wrap theme={null}
Genera automáticamente documentos con notas de reuniones.
```

```text wrap theme={null}
Crea contratos a partir de plantillas con datos de clientes.
```

```text wrap theme={null}
Actualiza los documentos compartidos cuando cambie el estado del proyecto.
```

```text wrap theme={null}
Exporta informes en formato de Google Docs.
```

```text wrap theme={null}
Colabora en documentos con comentarios del equipo.
```

**Alcances**

> El alcance `documents` permite a tu app ver y editar todos los documentos de Google Docs de la cuenta conectada, no solo los que crea.
>
> Los nombres de los alcances de Google Docs empiezan por `https://www.googleapis.com/auth/`:
>
> * `documents`: Ve, crea y edita todos los documentos de Google Docs
> * `documents.readonly`: Ve todos los documentos de Google Docs
>
> **Acceso:** Tu app trabaja con los documentos de la cuenta de Google que autoriza la conexión.

### Google Sheets

Lee y escribe datos en hojas de cálculo de [Google Sheets](https://base44.com/integrations/connectors/google-sheets).

**Prompts de ejemplo**

Describe en el chat de IA la hoja de cálculo, qué activa la acción y cualquier campo dinámico. Por ejemplo:

```text wrap theme={null}
Exporta los datos de la app a una hoja de cálculo de Google Sheets.
```

```text wrap theme={null}
Importa leads de una hoja de Google Sheets al CRM.
```

```text wrap theme={null}
Actualiza automáticamente el inventario en Google Sheets.
```

```text wrap theme={null}
Crea informes semanales y guárdalos en Google Sheets.
```

```text wrap theme={null}
Sincroniza los envíos de formularios con una base de datos de Google Sheets.
```

**Alcances**

> El alcance `spreadsheets` permite a tu app cambiar todas las hojas de cálculo de la cuenta, no solo las que crea.
>
> Los nombres de los alcances de Google Sheets empiezan por `https://www.googleapis.com/auth/`:
>
> * `spreadsheets`: Ve, edita, crea y elimina todas las hojas de cálculo de Google Sheets
> * `spreadsheets.readonly`: Ve todas las hojas de cálculo de Google Sheets
>
> **Acceso:** Tu app trabaja con las hojas de cálculo de la cuenta de Google que autoriza la conexión.

***

## Alcances y permisos

Cuando usas tu propio cliente OAuth, eres el propietario de la app OAuth y envías su verificación a Google. Los conectores compartidos de Google y **Let Base44 manage OAuth** funcionan con la app OAuth de Base44, así que en esos casos no envías nada a Google. Consulta [Usar tu propio cliente OAuth](https://docs.base44.com/es/Integrations/Connectors.md#using-your-own-oauth-client).

Google agrupa los permisos que pide tu app en 3 categorías. Estos grupos determinan la verificación que necesita tu app antes de publicarse, así que elige los alcances más limitados que cubran lo que hace tu app. Esto importa sobre todo en Gmail, Drive y Calendar.

* **Básicos:** Cubren el nombre, la dirección de correo y el perfil. Google no pide nada más.
* **Sensibles:** Cubren un acceso más amplio a un servicio de Google, como crear eventos de calendario. Google pide la verificación de la app, incluida una revisión de cómo usas los datos.
* **Restringidos:** Cubren leer el contenido de los mensajes o archivos de alguien, como leer Gmail. Google pide la verificación de la app, y también puede exigir una evaluación de seguridad independiente anual.

> [!TIP]
>
> Para enviar correos sin la verificación de alcances restringidos, pide solo `gmail.send`.

La verificación de alcances restringidos puede tardar varias semanas. Hasta que se complete, Google puede limitar cuántas personas pueden usar tu app y mostrar un aviso de app no verificada. Si Google exige una evaluación de seguridad, un evaluador independiente aprobado por Google evalúa tu app con el marco CASA. La evaluación pregunta tanto por la plataforma en la que funciona tu app como por tu propio código, así que [contacta con soporte](https://docs.base44.com/es/Community-and-support/Contacting-support.md) con antelación. Google fija los requisitos, plazos y excepciones, así que revisa la [documentación para desarrolladores de Google](https://developers.google.com/identity/protocols/oauth2/production-readiness/restricted-scope-verification) antes de planificar en función de ellos.

> [!NOTE]
>
> Base44 siempre añade el alcance `email` para identificar la cuenta de Google. Siempre está incluido, así que aparece como un alcance bloqueado en **Scopes**.

***

## Usar servicios de Google en una función de backend

Si escribes tus propias funciones de backend, pueden llamar directamente a las API de Google, y Base44 gestiona el flujo OAuth y el almacenamiento de tokens.

Para una conexión compartida, pasa a `getConnection()` un ID de servicio de la tabla siguiente. Para una conexión de usuario de la app, pasa el ID de tu propio conector, no un ID de servicio.

**Conector compartido**

```javascript theme={null}
// One account the whole app uses
const { accessToken } =
  await base44.asServiceRole.connectors.getConnection("googlecalendar");
// Use the access token to call the Google Calendar API.
```

**Conector para usuarios de la app**

```javascript theme={null}
// The signed-in person's own account
const { accessToken } =
  await base44.asServiceRole.connectors.getCurrentAppUserConnection(
    "YOUR_CONNECTOR_ID",
  );
// Use the access token to call the Google API for that person.
```

| Servicio | ID de servicio (conexiones compartidas) |
| - | - |
| Gmail | `gmail` |
| Google Calendar | `googlecalendar` |
| Google Contacts | `google_contacts` |
| Google Drive | `googledrive` |
| Google Docs | `googledocs` |
| Google Sheets | `googlesheets` |
| Google Workspace | `googleworkspace` |

> **[Conectores compartidos](https://docs.base44.com/es/developers/backend/resources/connectors/shared-connectors.md)**
>
> Configura, despliega y llama a una conexión compartida desde una función de backend.

> **[Conectores para usuarios de la app](https://docs.base44.com/es/developers/backend/resources/connectors/app-user-connectors.md)**
>
> Obtén un token por usuario y llama a la API como la persona que inició sesión.

***

## Solución de problemas

Si usas tu propio cliente OAuth, revisa estos puntos cuando las personas no puedan conectar su cuenta de Google.

> **Algunas personas no pueden conectar su propia cuenta**
>
> Si usas tu propio cliente OAuth, empieza en modo de prueba, donde solo pueden conectarse los usuarios de prueba aprobados. Antes de abrir el acceso a más personas, pasa tu app OAuth a producción y completa la verificación que exija Google.

> **La conexión falla con un error de URI de redirección**
>
> Registra la URL de callback que usa tu conexión como URI de redirección autorizado en tu cliente OAuth de Google:
>
> * Para la URL de callback única, introduce exactamente `https://connectors.base44.com/api/oauth/callback`.
> * Para las URL de callback por app, consulta [Ver tus URL de callback](https://docs.base44.com/es/Integrations/Connectors.md#viewing-your-callback-urls).

> [!NOTE]
>
> Esta página fue traducida con IA. Para obtener la información más precisa y actualizada, consulta la [versión en inglés](https://docs.base44.com/index.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.