Passer au contenu principal
Base44 propose plusieurs façons de connecter votre app à des APIs externes. Chaque approche a des compromis différents en termes de complexité de configuration, de gestion des identifiants et de flexibilité.

Connecteurs

Connexion OAuth à des services comme Slack, Google Calendar ou Discord

Intégrations personnalisées

Accès API à l’échelle de l’espace de travail via des spécifications OpenAPI

Fonctions backend

Code backend avec contrôle total des requêtes

Connecteurs

Les connecteurs vous donnent un jeton d’accès OAuth brut pour un service tiers, que vous utilisez pour appeler directement l’API de ce service. Base44 gère le flux OAuth et le stockage des identifiants. Il existe deux types :
  • Connecteurs partagés : Un seul compte est connecté pour toute l’app. Tous les utilisateurs de l’app partagent le même jeton. Idéal pour les comptes de service, comme poster dans un canal Slack d’entreprise ou lire depuis un calendrier partagé.
  • Connecteurs d’utilisateur d’app : Chaque utilisateur d’app connecté connecte son propre compte. Chaque utilisateur obtient son propre jeton. Idéal pour les actions qui doivent se produire en tant qu’utilisateur individuel, comme envoyer un e-mail depuis leur compte Gmail.
const { accessToken } = await base44.asServiceRole.connectors.getConnection(
  "googlecalendar"
);

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

const calendars = await response.json();

connectors

Référence API complète

Intégrations personnalisées

Les intégrations personnalisées vous permettent d’appeler des APIs externes à l’aide d’identifiants partagés qui ne sont pas spécifiques à un utilisateur ou à une app. Un administrateur d’espace de travail importe une spécification OpenAPI, configure les identifiants, puis n’importe quelle app de l’espace de travail peut appeler cette API via le SDK. Les requêtes sont proxifiées via le backend de Base44, de sorte que les secrets n’atteignent jamais le navigateur. Une fois qu’une intégration est configurée, toutes les apps de l’espace de travail la partagent. Les développeurs ne manipulent jamais directement les clés API, donc l’admin peut faire tourner les identifiants sans toucher au code de l’app.
const response = await base44.integrations.custom.call(
  "my-crm", // integration slug
  "get:/contacts", // endpoint: method:path format
  {
    pathParams: { id: "123" },
    queryParams: { limit: 10 },
  }
);

if (response.success) {
  console.log(response.data);
}

custom integrations

Référence API complète

Fonctions backend

Les fonctions backend s’exécutent sur le serveur, vous pouvez donc stocker en toute sécurité les clés API et les secrets en tant que variables d’environnement sans les exposer au navigateur. Utilisez les fonctions backend lorsque vous avez besoin d’un contrôle total des requêtes API, que vous souhaitez ajouter une logique personnalisée ou une transformation de données, ou que vous travaillez avec des APIs qui n’ont pas d’intégration personnalisée disponible. Votre frontend appelle la fonction backend, qui effectue ensuite la requête à l’API externe et renvoie le résultat.
// In your backend function
export default async function handler(request: Request) {
  const apiKey = process.env.EXTERNAL_API_KEY;

  const response = await fetch("https://api.example.com/data", {
    headers: {
      Authorization: `Bearer ${apiKey}`,
      "Content-Type": "application/json",
    },
  });

  return Response.json(await response.json());
}

functions

En savoir plus sur les fonctions backend
Cette page a été traduite à l’aide de l’IA. Pour les informations les plus précises et à jour, consultez la version anglaise.