Vue d'ensemble
Workflow Automatisation Prospection
Statut des Services
Cloudflare — Site & Infrastructure
Zone DNS
Cliquez sur "Charger" pour récupérer les données.
Certificats SSL
Cliquez sur "Charger" pour récupérer les données.
Enregistrements DNS
Cliquez sur "Charger" pour récupérer les données.
Pages / Déploiements
Cliquez sur "Charger" pour récupérer les projets.
Brevo — Email Marketing
Compte Brevo
Chargement...
Listes de Contacts
Contacts Récents
Campagnes Email
Templates Email
Chargement...
Make.com — Automatisations
Scénarios Recommandés à Recréer
Tester Webhook Make.com
Template JSON Scénario Make.com #1
Importez ce JSON directement dans Make.com (Créer un scénario → Importer un Blueprint)
{
"name": "PSN - Lead Site → Brevo + Sheets",
"flow": [
{
"id": 1,
"module": "gateway:CustomWebHook",
"version": 1,
"parameters": {
"hook": 76543,
"maxResults": 1
},
"metadata": {
"designer": {
"x": 0,
"y": 0
}
}
},
{
"id": 2,
"module": "http:ActionSendData",
"version": 3,
"parameters": {
"method": "POST",
"url": "https://api.brevo.com/v3/contacts",
"headers": [
{
"name": "api-key",
"value": "{{BREVO_API_KEY}}"
},
{
"name": "Content-Type",
"value": "application/json"
}
],
"body": {
"email": "{{1.email}}",
"firstName": "{{1.firstName}}",
"lastName": "{{1.lastName}}",
"attributes": {
"PHONE": "{{1.phone}}",
"TYPE_SERVICE": "{{1.serviceType}}"
},
"listIds": [
"{{BREVO_PROSPECT_LIST_ID}}"
],
"updateEnabled": true
}
},
"metadata": {
"designer": {
"x": 300,
"y": 0
}
}
},
{
"id": 3,
"module": "google-sheets:addRow",
"version": 2,
"parameters": {
"spreadsheetId": "{{GOOGLE_SHEETS_ID}}",
"sheetId": "Leads",
"rowData": {
"Date": "{{formatDate(now; 'DD/MM/YYYY')}}",
"Prénom": "{{1.firstName}}",
"Nom": "{{1.lastName}}",
"Email": "{{1.email}}",
"Téléphone": "{{1.phone}}",
"Service": "{{1.serviceType}}",
"Statut": "Nouveau",
"Source": "Formulaire site"
}
},
"metadata": {
"designer": {
"x": 600,
"y": 0
}
}
},
{
"id": 4,
"module": "http:ActionSendData",
"version": 3,
"parameters": {
"method": "POST",
"url": "https://api.brevo.com/v3/smtp/email",
"headers": [
{
"name": "api-key",
"value": "{{BREVO_API_KEY}}"
}
],
"body": {
"to": [
{
"email": "{{1.email}}",
"name": "{{1.firstName}} {{1.lastName}}"
}
],
"templateId": 1,
"params": {
"PRENOM": "{{1.firstName}}",
"SERVICE": "{{1.serviceType}}"
}
}
},
"metadata": {
"designer": {
"x": 900,
"y": 0
}
}
}
],
"metadata": {
"instant": true,
"version": 1,
"scenario": {
"roundtrips": 1,
"maxErrors": 3,
"autoCommit": true
}
}
}
Ajouter un Nouveau Lead
Ajoute directement un lead dans Brevo ET déclenche le workflow Make.com (log Sheets + email confirmation).
Monitoring — Uptime & Alertes
État en Temps Réel
Cliquez sur "Vérifier maintenant" pour lancer une vérification.
Configuration Alertes
Audit Trail — Journal des Actions
Actions récentes
Credentials & Configuration
Ces variables doivent être configurées comme secrets Cloudflare Workers (jamais en clair dans le code). Utilisez le script de reconnexion pour les définir automatiquement.
CLOUDFLARE_API_TOKEN
Token API Cloudflare (permissions : Zone Read, DNS Edit, Cache Purge, Pages Read)
Requis
CLOUDFLARE_ZONE_ID
Zone ID depuis Cloudflare Dashboard → purespacenett.com → Overview (colonne droite)
Requis
CLOUDFLARE_ACCOUNT_ID
Account ID depuis Cloudflare Dashboard → Overview (colonne droite)
Requis
BREVO_API_KEY
Brevo → Paramètres → Clés API → Générer une clé
Requis
MAKE_WEBHOOK_URL
Make.com → Scénario → Webhook module → Copier l'URL (https://hook.eu1.make.com/xxx)
Optionnel
GOOGLE_SHEETS_ID
Google Sheets URL → docs.google.com/spreadsheets/d/CECI/edit
Optionnel
ADMIN_TOKEN
Token secret pour protéger ce dashboard (générez un UUID aléatoire)
Recommandé
Exporter la Configuration
Téléchargez le fichier JSON de configuration (sans les secrets). Complétez-le localement puis importez via le script de reconnexion.
Script de Reconnexion Rapide
Exécutez ce script dans votre terminal pour reconnecter tous les services automatiquement. Adaptez les valeurs entre guillemets.
#!/bin/bash
# ═══════════════════════════════════════════════════════════════════════
# PURE SPACE NETT — Script de Reconnexion Rapide
# Objectif : Reconfigurer tous les services en < 5 minutes
# ═══════════════════════════════════════════════════════════════════════
set -e
echo "🚀 PURE SPACE NETT — Reconnexion des services..."
# ── 1. VARIABLES À REMPLIR ─────────────────────────────────────────────
CF_API_TOKEN="votre-cloudflare-api-token"
CF_ZONE_ID="votre-zone-id"
CF_ACCOUNT_ID="votre-account-id"
BREVO_API_KEY="votre-brevo-api-key-v3"
MAKE_WEBHOOK_URL="https://hook.eu1.make.com/votre-webhook-id"
GOOGLE_SHEETS_ID="votre-google-sheets-id"
ADMIN_TOKEN=$(openssl rand -hex 32)
PROJECT_NAME="psn-ops-dashboard"
# ── 2. VÉRIFICATION CLOUDFLARE ─────────────────────────────────────────
echo ""
echo "📡 Vérification Cloudflare..."
CF_CHECK=$(curl -s -o /dev/null -w "%{http_code}" \
-H "Authorization: Bearer $CF_API_TOKEN" \
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID")
if [ "$CF_CHECK" = "200" ]; then
echo "✅ Cloudflare API OK — Zone ID valide"
else
echo "❌ Erreur Cloudflare (HTTP $CF_CHECK) — Vérifiez CF_API_TOKEN et CF_ZONE_ID"
exit 1
fi
# ── 3. VÉRIFICATION BREVO ──────────────────────────────────────────────
echo ""
echo "📧 Vérification Brevo..."
BREVO_CHECK=$(curl -s -o /dev/null -w "%{http_code}" \
-H "api-key: $BREVO_API_KEY" \
"https://api.brevo.com/v3/account")
if [ "$BREVO_CHECK" = "200" ]; then
echo "✅ Brevo API OK"
else
echo "❌ Erreur Brevo (HTTP $BREVO_CHECK) — Vérifiez BREVO_API_KEY"
exit 1
fi
# ── 4. BUILD DU PROJET ─────────────────────────────────────────────────
echo ""
echo "🔨 Build du dashboard..."
npm run build
echo "✅ Build réussi"
# ── 5. DÉPLOIEMENT CLOUDFLARE PAGES ────────────────────────────────────
echo ""
echo "🚀 Déploiement sur Cloudflare Pages..."
npx wrangler pages project create $PROJECT_NAME \
--production-branch main 2>/dev/null || echo "(projet existant)"
npx wrangler pages deploy dist --project-name $PROJECT_NAME
echo "✅ Déploiement réussi"
# ── 6. CONFIGURATION DES SECRETS ──────────────────────────────────────
echo ""
echo "🔐 Configuration des secrets..."
echo "$CF_API_TOKEN" | npx wrangler pages secret put CLOUDFLARE_API_TOKEN \
--project-name $PROJECT_NAME
echo "$CF_ZONE_ID" | npx wrangler pages secret put CLOUDFLARE_ZONE_ID \
--project-name $PROJECT_NAME
echo "$CF_ACCOUNT_ID" | npx wrangler pages secret put CLOUDFLARE_ACCOUNT_ID \
--project-name $PROJECT_NAME
echo "$BREVO_API_KEY" | npx wrangler pages secret put BREVO_API_KEY \
--project-name $PROJECT_NAME
echo "$MAKE_WEBHOOK_URL" | npx wrangler pages secret put MAKE_WEBHOOK_URL \
--project-name $PROJECT_NAME
echo "$GOOGLE_SHEETS_ID" | npx wrangler pages secret put GOOGLE_SHEETS_ID \
--project-name $PROJECT_NAME
echo "$ADMIN_TOKEN" | npx wrangler pages secret put ADMIN_TOKEN \
--project-name $PROJECT_NAME
echo "✅ Secrets configurés"
# ── 7. SAUVEGARDE TOKEN ADMIN ──────────────────────────────────────────
echo ""
echo "💾 Sauvegarde du token admin..."
echo "ADMIN_TOKEN=$ADMIN_TOKEN" >> .env.local
echo "⚠️ Token admin sauvegardé dans .env.local — NE PAS COMMITER"
# ── 8. TEST FINAL ──────────────────────────────────────────────────────
echo ""
echo "🧪 Test final..."
sleep 5 # Attendre propagation
DASHBOARD_URL="https://$PROJECT_NAME.pages.dev"
STATUS=$(curl -s -o /dev/null -w "%{http_code}" "$DASHBOARD_URL")
if [ "$STATUS" = "200" ]; then
echo "✅ Dashboard accessible : $DASHBOARD_URL"
else
echo "⚠️ Dashboard HTTP $STATUS — Attendez quelques secondes et réessayez"
fi
echo ""
echo "═══════════════════════════════════════════════════════════════"
echo "✅ RECONNEXION TERMINÉE"
echo "📊 Dashboard : $DASHBOARD_URL"
echo "🔑 Token admin : $ADMIN_TOKEN"
echo "═══════════════════════════════════════════════════════════════"
Checklist Reconnexion — Étapes Manuelles
- Récupérer Zone ID (Dashboard → purespacenett.com → Overview → droite)
- Récupérer Account ID (Dashboard → sidebar droite)
- Créer API Token : Mon profil → Tokens → Template "Edit zone DNS"
- Ajouter permissions : Cache Purge, Cloudflare Pages (Read)
- Connexion app.brevo.com
- Paramètres → Clés API SMTP → Générer clé v3
- Contacts → Listes → Créer liste "Prospects PSN" + noter l'ID
- Templates → Créer template "Confirmation devis" (template ID 1)
- Créer scénario "PSN Lead → Brevo + Sheets"
- Module 1 : Custom Webhook → copier URL
- Module 2 : HTTP POST vers api.brevo.com/v3/contacts
- Module 3 : Google Sheets → Add Row (créer feuille "Leads")
- Module 4 : HTTP POST email confirmation Brevo
- Activer le scénario
- Créer fichier "PSN - Suivi Leads"
- Créer onglet "Leads" avec colonnes : Date, Prénom, Nom, Email, Tel, Service, Statut, Source, Notes
- Partager avec le compte email de Make.com
- Copier l'ID du fichier dans l'URL
- Exécuter le script de reconnexion Bash
- Vérifier tous les services dans Vue d'ensemble
- Tester l'ajout d'un lead
- Tester le workflow complet
Fichier JSON Centralisé
Format JSON complet de référence pour tous vos services. Ne stockez jamais ce fichier avec les clés en clair sur GitHub.
{
"project": "pure-space-nett",
"version": "1.0.0",
"created": "1970-01-01",
"services": {
"cloudflare": {
"dashboard": "https://dash.cloudflare.com",
"zone_url": "https://dash.cloudflare.com/?to=/:account/purespacenett.com",
"api_base": "https://api.cloudflare.com/client/v4",
"env_vars": [
"CLOUDFLARE_API_TOKEN",
"CLOUDFLARE_ZONE_ID",
"CLOUDFLARE_ACCOUNT_ID"
],
"token_permissions": [
"Zone:Read",
"DNS:Edit",
"Cache Purge:Purge",
"Pages:Read"
]
},
"brevo": {
"dashboard": "https://app.brevo.com",
"api_base": "https://api.brevo.com/v3",
"env_vars": [
"BREVO_API_KEY"
],
"lists": {
"prospects": "ID_LISTE_PROSPECTS",
"clients": "ID_LISTE_CLIENTS"
},
"templates": {
"confirmation_devis": 1,
"relance": 2,
"bienvenue_client": 3
}
},
"make": {
"dashboard": "https://www.make.com",
"env_vars": [
"MAKE_WEBHOOK_URL"
],
"scenarios": [
{
"name": "PSN Lead → Brevo + Sheets",
"trigger": "webhook",
"status": "a_recreer"
},
{
"name": "Suivi RDV → Relance",
"trigger": "scheduler",
"status": "a_recreer"
}
]
},
"google": {
"sheets_url": "https://docs.google.com/spreadsheets",
"env_vars": [
"GOOGLE_SHEETS_ID"
],
"tabs": [
"Leads",
"Clients",
"RDV",
"Stats"
]
}
},
"site": {
"url": "https://www.purespacenett.com",
"platform": "WordPress / Cloudflare Pages",
"admin": "https://www.purespacenett.com/wp-admin"
},
"security": {
"note": "Ne jamais stocker les valeurs réelles dans ce fichier sur Git",
"use": "Variables d'environnement Cloudflare Pages Secrets"
}
}