Relai · Postiz self-host · septembre 2026

Guide détaillé : clés API des 6 réseaux

Sans ces clés, le bouton Relier de Relai ne peut pas ouvrir Facebook, Instagram, TikTok, YouTube, LinkedIn ou X. Elles se collent uniquement dans Postiz (VPS), jamais dans l’app Relai ni dans Cloudflare Pages.

Domaine Postiz : https://postiz.relai-ia.com
Confidentialité (à coller chez TikTok / Google / Meta) : https://relai-ia.com/privacy
Site : https://relai-ia.com
Sommaire 0. Avant de commencer 1. Facebook + Instagram (une seule app Meta) 2. YouTube (Google) 3. TikTok 4. LinkedIn 5. X (Twitter) 6. Coller dans Postiz et redémarrer 7. Tester dans Relai

0. Avant de commencer

⚠️ Copie les identifiants dans un fichier privé. Ne les envoie pas sur WhatsApp public. Quand tu les as, donne-les à Relai (moi) pour les coller sur le VPS, ou colle-les toi-même puis redémarre Postiz.

1. Facebook + Instagram — une seule app

Instagram Relai passe par la Page Facebook liée au compte Instagram pro. Pas besoin de 2 apps.

Portail : developers.facebook.com/apps/creation

  1. Connecte-toi. Choisis un portefeuille Business (ou crée-en un).
  2. Créer une application.
  3. À « Cas d’utilisation » : filtre Tous, ne coche rien, descends, clique Autre → Suivant.
  4. Type : Business.
  5. Nom d’app : Relai. E-mail de contact : le tien. Crée l’app.
  6. Dans le tableau de bord : configure Connexion pour les entreprises / Login for Business (pas seulement « Login Facebook » grand public).
  7. URI de redirection — colle les deux lignes :
    https://postiz.relai-ia.com/integrations/social/facebook

    https://postiz.relai-ia.com/integrations/social/instagram
  8. Permissions avancées (demander l’accès, même en dev pour toi) :
    Facebook : pages_show_list pages_manage_posts pages_read_engagement pages_manage_engagement business_management read_insights
    Instagram : instagram_basic instagram_content_publish instagram_manage_comments instagram_manage_insights
  9. Paramètres → Général (Basic) : copie Identifiant de l’app et Clé secrète (afficher).
  10. Passe l’app en Live dès que Meta l’autorise. En Development, toi tu vois le post, le client non.

Dans Postiz :

FACEBOOK_APP_ID="…"
FACEBOOK_APP_SECRET="…"

Les clients Relai : Page Facebook + Instagram professionnel lié à cette Page. Compte Instagram perso pur = ça ne reliera pas.

Option plus tard (sans Page Facebook) : Instagram Standalone → autre URI …/instagram-standalone et variables INSTAGRAM_APP_ID / INSTAGRAM_APP_SECRET. Relai « Relier Instagram » utilise surtout le flux Facebook Business.

2. YouTube (Google Cloud)

Portail : console.cloud.google.com → Identifiants

  1. Accepte les conditions. Créer un projet : nom Relai.
  2. Écran de consentement OAuth : type Externe (ou Interne si Google Workspace). App name Relai. E-mail support. Logo optionnel. Lien confidentialité : https://relai-ia.com/privacy. Enregistre.
  3. Champs / scopes : ajoute au moins YouTube (youtube.upload, youtube, youtube.readonly si proposés). Tu pourras publier l’app plus tard ; en test, ajoute les Gmail des testeurs.
  4. Créer des identifiants → ID client OAuth → type Application Web.
  5. URI de redirection autorisée (une seule ligne, exacte) :
    https://postiz.relai-ia.com/integrations/social/youtube
  6. Copie ID client et Code secret.
  7. Bibliothèque d’API : active YouTube Data API v3, YouTube Analytics API, YouTube Reporting API.
  8. Consentement → Utilisateurs de test : ajoute ton Gmail YouTube (obligatoire tant que l’app n’est pas publiée).
YOUTUBE_CLIENT_ID="….apps.googleusercontent.com"
YOUTUBE_CLIENT_SECRET="…"

Chaîne « Marque » Google : parfois 5 h de délai + app de confiance dans l’admin Workspace. Compte YouTube perso : le test user suffit.

3. TikTok

Le plus exigeant. Portail : developers.tiktok.com/apps

  1. Compte développeur TikTok (souvent lié à un TikTok + e-mail).
  2. Créer une app. Nom : Relai. Plateforme : Web.
  3. URL Conditions + Confidentialité HTTPS : https://relai-ia.com/privacy (et mentions légales si demandé).
  4. Ajoute les produits : Login Kit et Content Posting API. Active Direct Post.
  5. Redirect Login Kit (HTTPS obligatoire) :
    https://postiz.relai-ia.com/integrations/social/tiktok
  6. Scopes : user.info.basic user.info.profile video.create video.publish video.upload
  7. Vérifie le domaine du site et le domaine des médias (fichiers Relai, ex. postiz.relai-ia.com) dans les sites vérifiés TikTok — TikTok télécharge la vidéo depuis une URL HTTPS publique.
  8. Copie Client Key (≈16 car.) et Client Secret (≈32 car.).
TIKTOK_CLIENT_ID="…"
TIKTOK_CLIENT_SECRET="…"
Avant l’audit TikTok : les Direct Post partent souvent en privé (SELF_ONLY), et ~5 utilisateurs / 24 h. Après audit : public + commentaires, etc. Relai pourra quand même relier le compte.

4. LinkedIn

Portail : linkedin.com/developers/apps

  1. Créer une app. Nom Relai. Page LinkedIn d’entreprise associée (crée une Page Relai si besoin). Logo + politique : https://relai-ia.com/privacy.
  2. Onglet Products, demander :
    • Share on LinkedIn
    • Sign In with LinkedIn using OpenID Connect
    • Advertising API (formulaire à remplir — sans ça, les jetons ne se rafraîchissent pas, Relai perd la liaison)
  3. Onglet Auth → Redirect URLs, les deux :
    https://postiz.relai-ia.com/integrations/social/linkedin

    https://postiz.relai-ia.com/integrations/social/linkedin-page
  4. Vérifie les scopes listés : openid profile w_member_social r_basicprofile rw_organization_admin w_organization_social r_organization_social. S’il en manque, Relai affiche une erreur du type « pas assez de droits » (NotEnoughScopes) sans que LinkedIn le dise à la connexion.
  5. Auth → Client ID + Client Secret.
LINKEDIN_CLIENT_ID="…"
LINKEDIN_CLIENT_SECRET="…"

Profil perso = premier URI. Page entreprise = second URI. Une seule app pour les deux.

5. X (Twitter)

Portail : developer.x.com → Dashboard

  1. Compte développeur X (demande d’accès si pas encore accepté — décris Relai : « outil de publication pour commerces, posts programmés »).
  2. Créer un Project + App. Permissions : Read and Write (pas Read only).
  3. User authentication / OAuth 2.0 : type Web App. Callback :
    https://postiz.relai-ia.com/integrations/social/x

    Si X refuse, ajoute aussi :
    https://postiz.relai-ia.com/integrations/social/twitter
  4. Website : https://relai-ia.com
  5. Onglet Keys : API Key et API Key Secret (parfois appelés Consumer Key / Secret). Ce ne sont pas les « Bearer » seuls, ni les Access Token d’un compte perso.
X_API_KEY="…"
X_API_SECRET="…"

Les plans X payants (Basic, etc.) peuvent limiter le nombre de posts. Relai n’y peut rien : c’est le plafond X.

6. Coller dans Postiz et redémarrer

Sur le VPS, fichier d’environnement Postiz (souvent .env ou postiz.env à côté de docker-compose). Ajoute les lignes, sans espaces autour du =, puis :

docker compose restart
# ou : docker compose up -d

Vérifie que FRONTEND_URL et l’URL publique sont bien https://postiz.relai-ia.com (sinon OAuth redirige vers le mauvais hôte).

Bloc complet à remplir :

FACEBOOK_APP_ID=
FACEBOOK_APP_SECRET=
YOUTUBE_CLIENT_ID=
YOUTUBE_CLIENT_SECRET=
TIKTOK_CLIENT_ID=
TIKTOK_CLIENT_SECRET=
LINKEDIN_CLIENT_ID=
LINKEDIN_CLIENT_SECRET=
X_API_KEY=
X_API_SECRET=

7. Tester dans Relai

  1. Rafraîchis Relai. Compte avec essai ou forfait actif.
  2. Réseaux → Relier Facebook (d’abord). Autorise → reviens. Clique Vérifier les comptes liés si la Page n’apparaît pas tout de suite.
  3. Répète Instagram, YouTube, etc.
  4. Publie un post test (image JPG, légende courte) sur un réseau.
SymptômeCause fréquente
Relier n’ouvre rien / erreur OAuthURI pas collée mot pour mot, ou Postiz pas redémarré
Tu vois le post, le client non (Facebook)App Meta encore en Development — passer Live
Instagram refusePas un compte pro, ou pas lié à une Page
YouTube « accès bloqué »Gmail pas dans les utilisateurs de test
LinkedIn NotEnoughScopesAdvertising API pas approuvé / scopes manquants
TikTok privé seulementNormal avant audit

Quand une paire ID + secret est prête, envoie-la (réseau par réseau). On la pose sur le VPS et on teste Relier tout de suite.