API SwapFlow
Publiez du contenu par programmation via l'API REST
API REST
Publiez sur n'importe quelle plateforme sociale connectée avec curl, scripts ou vos propres outils.
Lister vos comptes sociaux
Publier du contenu sur une plateforme
Programmer une publication future
Voir l'historique des publications
Obtenir les détails de la publication
Mettre à jour une publication programmée
Obtenez votre clé API
Inscrivez-vous sur SwapFlow pour générer des clés API et publier du contenu de manière programmatique.
CommencerDeux étapes : récupérez vos IDs de connexion, puis publiez. Les fichiers sont envoyés directement — pas besoin de les télécharger sur SwapFlow d'abord.
# 1. Listez vos comptes connectés pour trouver votre ID de connexion
curl -s "https://www.swapflow.top/api/cli/connections" \
-H "X-API-Key: sf_your_api_key_here" | jq .
# 2. Publiez un fichier directement — pas besoin de le télécharger d'abord
curl -X POST "https://www.swapflow.top/api/cli/publish" \
-H "X-API-Key: sf_your_api_key_here" \
-F "file=@photo.jpg" \
-F "connectionId=YOUR_CONNECTION_ID" \
-F "platform=twitter" \
-F "caption=Posted from the API!"Programmez des publications futures sur n'importe quelle plateforme. Publiées automatiquement avec une précision de 5 minutes.
# Programmer une publication future
curl -X POST "https://www.swapflow.top/api/cli/posts" \
-H "X-API-Key: sf_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"connectionId": "CONNECTION_ID",
"caption": "Launching tomorrow!",
"scheduledAt": "2026-04-01T15:30:00Z"
}'Vous pouvez aussi télécharger un fichier et définir des options spécifiques à la plateforme :
# Programmer une publication future
curl -X POST "https://www.swapflow.top/api/cli/posts" \
-H "X-API-Key: sf_your_api_key_here" \
-F "file=@video.mp4" \
-F "connectionId=CONNECTION_ID" \
-F "caption=Check this out!" \
-F "scheduledAt=2026-04-01T15:30:00Z" \
-F 'platformSettings={"youtube":{"privacyStatus":"public","videoType":"shorts"}}'Référence des paramètres
| Paramètre | Requis | Description |
|---|---|---|
| connectionId | Yes | UUID de la connexion sociale cible |
| platform | Yes | Nom de la plateforme (twitter, tiktok, youtube, etc.) |
| file | No | Fichier média (multipart/form-data) |
| file1, file2, ... | No | Plusieurs fichiers image pour les posts carrousel (multipart) |
| mediaId | No | UUID du média existant de /api/media |
| mediaIds | No | Tableau JSON d'UUIDs de médias pour les posts multi-images |
| mediaUrl | No | URL directe vers le fichier média |
| caption | No | Texte ou légende de la publication |
| mediaType | No | video, image ou text (détecté automatiquement) |
| tiktokUserConsent | TikTok | Doit être true pour publier sur TikTok |
| tiktokPrivacyLevel | No | SELF_ONLY, MUTUAL_FOLLOW_FRIENDS, FOLLOWER_OF_CREATOR ou PUBLIC_TO_EVERYONE |
| youtubePrivacy | No | public, private ou unlisted (par défaut: private) |
| youtubeIsShorts | No | true pour Shorts, false pour long (par défaut: true) |
| pinterestBoardId | ID du tableau Pinterest (requis pour Pinterest) | |
| snapchatType | No | spotlight ou stories (par défaut: spotlight) |
| scheduledAt | No | Date ISO 8601 pour publication future (min 5 min). Omettre pour publication immédiate |
| webhookUrl | No | URL HTTPS pour les callbacks de statut publication/échec |
| platformSettings | No | Options spécifiques à la plateforme en JSON (ex. confidentialité TikTok, type YouTube) |