> ## 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.

# Crear conectores

> Los conectores son integraciones OAuth que permiten a tu app de Base44 conectarse a servicios externos como Google Calendar, Slack, Notion y más. Una vez conectados, puedes usar tokens de acceso en funciones de backend...

<Warning>
  Esta página es parte de una habilidad de agente de codificación con IA y está escrita para agentes, no para humanos. Para la documentación de Base44 legible por humanos, consulta la [documentación para desarrolladores](/developers).
</Warning>

# Crear conectores

Los conectores son integraciones OAuth que permiten a tu app de Base44 conectarse a servicios externos como Google Calendar, Slack, Notion y más. Una vez conectados, puedes usar tokens de acceso en funciones de backend para llamar directamente a APIs externas.

## Conceptos clave

* **Acceso directo a la API**: Los conectores proporcionan tokens de acceso OAuth sin procesar - llamas directamente a las APIs externas desde funciones de backend
* **Cuenta del constructor de la app**: Conecta tu cuenta (el constructor de la app), no las cuentas de tus usuarios finales
* **Solo funciones de backend**: Los tokens solo son accesibles del lado del servidor por seguridad

## Ubicación del archivo

Crea archivos de conector en el directorio `base44/connectors/` (o el directorio especificado por `connectorsDir` en tu config.jsonc).

**Nomenclatura de archivos:** `{type}.jsonc` o `{type}.json`

Ejemplos:

* `base44/connectors/googlecalendar.jsonc`
* `base44/connectors/slack.jsonc`
* `base44/connectors/notion.json`

## Esquema

Cada archivo de conector debe especificar un `type` y opcionalmente una lista de `scopes`:

```jsonc theme={null}
{
  "type": "googlecalendar",
  "scopes": [
    "https://www.googleapis.com/auth/calendar.readonly",
    "https://www.googleapis.com/auth/calendar.events"
  ]
}
```

### Campos

| Campo    | Tipo      | Requerido | Descripción                                                                                   |
| -------- | --------- | --------- | --------------------------------------------------------------------------------------------- |
| `type`   | string    | Sí        | El tipo de integración (ejecuta `npx base44 connectors list-available` para ver las opciones) |
| `scopes` | string\[] | No        | Alcances OAuth a solicitar (por defecto `[]`)                                                 |

## Descubrir tipos de conectores disponibles

Ejecuta el siguiente comando para obtener la lista actualizada de tipos de conectores admitidos. Nota: `stripe` también es un tipo válido pero no lo devuelve este comando — trátalo como admitido (ver ejemplo de Stripe abajo).

```bash theme={null}
npx base44 connectors list-available
```

Esto devuelve un objeto JSON con todas las integraciones disponibles, sus nombres para mostrar, descripciones y cualquier campo de configuración de conexión requerido. Ejemplo de salida (recortada):

```json theme={null}
{
    "integrations": [
        {
            "integration_type": "googlecalendar",
            "display_name": "Google Calendar",
            "description": "Access and manage Google Calendar events",
            "connection_config_fields": []
        },
        {
            "integration_type": "slack",
            "display_name": "Slack User",
            "description": "Send messages and interact with Slack as yourself (user integration)",
            "connection_config_fields": []
        },
        {
            "integration_type": "share_point",
            "display_name": "SharePoint",
            "description": "Manage documents, lists, sites, and collaboration content in SharePoint",
            "connection_config_fields": [
                {
                    "name": "subdomain",
                    "display_name": "SharePoint Site",
                    "description": "The name of your SharePoint site (e.g., sites/mysite)",
                    "placeholder": "sites/mysite",
                    "required": true,
                    "validation_pattern": "^[a-zA-Z0-9/_-]+$",
                    "validation_error": "Please enter a valid SharePoint site path"
                }
            ]
        }
    ]
}
```

Usa el valor `integration_type` de esta salida como el campo `type` en tu archivo de conector. Algunos conectores requieren `connection_config_fields` adicionales — revisa la salida para más detalles.

### Stripe (Sandbox)

```jsonc theme={null}
// base44/connectors/stripe.jsonc
{
  "type": "stripe",
  "scopes": []
}
```

Nota: Stripe no requiere un flujo OAuth de navegador. Cuando envías este conector, Base44 aprovisiona automáticamente una cuenta sandbox de Stripe del lado del servidor. Es posible que recibas una URL de reclamación en la salida del envío para vincular la sandbox a tu cuenta de Stripe.

## Reglas y restricciones

1. **Un conector por tipo**: No puedes tener varios conectores del mismo tipo (por ejemplo, dos conectores `googlecalendar`)

2. **El tipo debe ser válido**: El campo `type` debe ser un tipo de integración válido (ejecuta `npx base44 connectors list-available` para ver los tipos disponibles)

3. **Los alcances son específicos del proveedor**: Cada servicio tiene su propio formato de alcance - consulta la documentación del proveedor

## Próximos pasos

Después de crear archivos de conector, envíalos a Base44:

```bash theme={null}
npx base44 connectors push
```

Esto te pedirá autorizar cada nuevo conector OAuth en tu navegador. Stripe es la excepción — se aprovisiona automáticamente sin un flujo de navegador. Consulta [connectors-push.md](https://docs.base44.com/developers/skills/base44-cli/references/connectors-push.md) para más detalles.

Para extraer conectores existentes de Base44 a archivos locales:

```bash theme={null}
npx base44 connectors pull
```

Consulta [connectors-pull.md](https://docs.base44.com/developers/skills/base44-cli/references/connectors-pull.md) para más detalles.

<Note>Esta página fue traducida usando IA. Para obtener la información más precisa y actualizada, consulta la [versión en inglés](/).</Note>
