La réponse en une phrase

WeWeb propose une intégration Supabase native en quelques clics, tandis que Bubble passe par un connecteur HTTP configuré avec l'URL du projet et la clé anon, les deux devant impérativement s'appuyer sur les règles Row Level Security pour rester sécurisés.

Avant de commencer : les prérequis

Cette connexion suppose un projet Supabase déjà créé, avec au moins une table remplie de données de test. Deux informations sont à récupérer dans Supabase avant de configurer Bubble ou WeWeb : l'URL du projet et la clé API publique (clé anon), toutes deux visibles dans Project Settings → API.

1URL du projet

L'adresse unique de votre instance Supabase, au format https://xxxx.supabase.co.

2Clé API anon

La clé publique, pensée pour être utilisée côté interface, jamais la clé service_role.

3Au moins une table

Une table de test avec quelques lignes, pour vérifier la connexion une fois configurée.

Connecter WeWeb à Supabase

WeWeb propose un plugin Supabase natif, ce qui simplifie nettement la mise en place par rapport à un connecteur HTTP générique.

  1. 1. Ajouter le plugin SupabaseDans l'éditeur WeWeb, ouvrir la section Plugins et ajouter l'intégration Supabase officielle.
  2. 2. Renseigner l'URL et la clé anonColler les deux informations récupérées dans Project Settings → API de Supabase.
  3. 3. Synchroniser les tablesWeWeb détecte automatiquement les tables existantes et leurs colonnes, sans configuration manuelle.
  4. 4. Lier les données aux composantsBrancher une collection Supabase à une liste ou un formulaire de l'éditeur visuel, comme n'importe quelle source de données WeWeb.

Connecter Bubble à Supabase

Bubble n'a pas de plugin Supabase officiel : la connexion passe par le plugin API Connector, qui appelle directement l'API REST générée automatiquement par Supabase pour chaque table.

  1. 1. Installer le plugin API ConnectorDisponible gratuitement dans la marketplace de plugins Bubble, c'est l'outil standard pour appeler une API externe.
  2. 2. Configurer l'en-tête d'authentificationAjouter la clé anon dans les en-têtes apikey et Authorization: Bearer de chaque appel.
  3. 3. Déclarer un appel par actionCréer une requête GET pour lire les données et une requête POST pour en créer, en ciblant l'URL de la table au format https://xxxx.supabase.co/rest/v1/nom_table.
  4. 4. Initialiser puis utiliser dans les workflowsLancer un appel de test pour que Bubble détecte la structure de la réponse, puis utiliser ces appels dans les workflows comme une source de données classique.

Comment sécuriser la connexion ?

La clé anon seule ne protège rien

Sans règles Row Level Security (RLS) activées, la clé anon donne un accès en lecture et écriture à toute la table, à quiconque l'intercepte.

Supabase repose sur PostgreSQL et ses règles RLS pour filtrer les données au niveau de la base, indépendamment de l'outil no-code utilisé en façade. Trois réflexes à appliquer systématiquement :

  • Activer RLS sur chaque table dès sa création, avant même d'y insérer des données réelles.
  • Écrire une règle qui limite chaque utilisateur à ses propres lignes, par exemple via une colonne user_id comparée à l'utilisateur authentifié.
  • Réserver la clé service_role à des traitements serveur à serveur, jamais à un appel émis depuis Bubble ou WeWeb côté client.

Ce que nous observons chez les projets que nous accompagnons

Voici un exemple représentatif de notre méthode, sans donnée client ni promesse de résultat garantie.

Retour d’expérience Amari Agency

L'erreur la plus fréquente : oublier d'activer RLS

Chez Amari Agency, l'erreur la plus fréquente que nous corrigeons sur ce type de connexion n'est pas la configuration de l'API, mais l'oubli des règles RLS une fois la table créée dans Supabase. Nous vérifions systématiquement ce point avant toute mise en production, qu'il s'agisse d'un projet Bubble ou WeWeb.

RLS vérifié avant mise en ligneClé anon seule, jamais service_roleAppel de test avant intégration

Quels contenus lire ensuite ?

Ces ressources complètent ce tutoriel sans cibler la même requête :

Questions fréquentes sur Bubble, WeWeb et Supabase

Faut-il un plugin payant pour connecter Bubble à Supabase ?

Non, le plugin API Connector utilisé pour cette connexion est gratuit dans la marketplace Bubble.

WeWeb est-il plus simple que Bubble pour cette connexion ?

Oui, WeWeb propose un plugin Supabase natif qui détecte automatiquement les tables, alors que Bubble demande de configurer chaque appel API manuellement.

Peut-on utiliser la même base Supabase pour un site WeWeb et une app FlutterFlow ?

Oui, Supabase expose une seule API REST utilisable simultanément par plusieurs outils, à condition que les règles RLS couvrent chaque cas d'usage.

Que risque-t-on à exposer la clé service_role ?

Un accès total en lecture et écriture à toute la base, sans filtrage RLS : cette clé ne doit jamais apparaître dans un appel émis depuis Bubble ou WeWeb.

Les règles RLS ralentissent-elles l'application ?

Non, l'impact est négligeable pour la plupart des projets : les règles RLS s'exécutent au niveau de PostgreSQL, optimisé pour ce type de filtrage.

Sources officielles

  1. Supabase — Documentation officielle de l'API REST.
  2. Supabase — Documentation officielle Row Level Security.
  3. WeWeb — Documentation officielle du plugin Supabase.