Saltar al contenido principal
Estás viendo la documentación para desarrolladores
Esta documentación es para desarrolladores que trabajan con la plataforma para desarrolladores de Base44. Para información sobre conectores en el editor de apps, consulta Usar conectores.
Los conectores de usuario de app permiten que cada usuario de app que haya iniciado sesión conecte su propia cuenta de terceros. Cada usuario de app obtiene su propio token OAuth. Usa esto cuando las acciones deban ocurrir como el usuario individual de la app, como enviar email desde su cuenta de Gmail, publicar en su LinkedIn personal o leer los eventos de su propio Google Calendar. A diferencia de los conectores compartidos, donde una cuenta se comparte entre todos los usuarios de la app, los conectores de usuario de app almacenan un token OAuth distinto por usuario. El flujo OAuth se ejecuta bajo tu aplicación OAuth registrada, por lo que los usuarios de la app ven el nombre de tu app en la pantalla de consentimiento del proveedor.
Los conectores de usuario de app requieren un plan Builder o superior.

Configurar

Antes de que los usuarios de la app puedan conectar sus cuentas, registra las credenciales de tu app OAuth en tu workspace. Esto requiere acceso de administrador del workspace. También necesitas un client ID y client secret del servicio externo. Registra el conector desde la configuración de tu workspace. Consulta Configurar conectores para usuarios de app para instrucciones paso a paso. Después de registrar el conector, el workspace le asigna un ID. Usa ese ID para conectar y desconectar usuarios de app en tu código de frontend y recuperar sus tokens en tus funciones de backend.

Conectar y desconectar en tu frontend

Usa base44.connectors en tu código de frontend para iniciar y finalizar el flujo OAuth para cada usuario de app. Para conectar un usuario de app, llama a connectAppUser con el ID del conector. Devuelve una URL de redirección. Navega al usuario de app a esa URL para iniciar el flujo OAuth.
const redirectUrl = await base44.connectors.connectAppUser("YOUR_CONNECTOR_ID");
window.location.href = redirectUrl;
Después de que el usuario de app complete el flujo, su token se almacena y tus funciones de backend pueden recuperarlo.
Para desconectar un usuario de app, llama a disconnectAppUser con el ID del conector. Elimina el token almacenado del usuario de app actualmente conectado.
await base44.connectors.disconnectAppUser("YOUR_CONNECTOR_ID");

Recuperar el token en una función de backend

Usa createClientFromRequest() para crear el cliente del SDK en tu función de backend. Lee la identidad del usuario de app desde la solicitud entrante automáticamente, por lo que el SDK sabe qué token de usuario devolver. Luego llama a getCurrentAppUserConnection() con el ID del conector para recuperar el token del usuario de app que realiza la solicitud actual.
import { createClientFromRequest } from "@base44/sdk";

export default async function handler(req: Request) {
  const base44 = createClientFromRequest(req);

  const { accessToken } =
    await base44.asServiceRole.connectors.getCurrentAppUserConnection(
      "YOUR_CONNECTOR_ID",
    );

  const response = await fetch(
    "https://www.googleapis.com/calendar/v3/calendars/primary/events",
    {
      headers: { Authorization: `Bearer ${accessToken}` },
    },
  );

  const events = await response.json();
  return Response.json(events);
}

Ver también

Esta página se tradujo con IA. Para información más precisa y actualizada, consulta la versión en inglés.