Synthèse automatique
Ce skill publie des vidéos, photos, textes et documents sur une dizaine de réseaux sociaux (TikTok, Instagram, YouTube, LinkedIn, X, etc.) en un seul appel à l'API Upload-Post.
Points forts
- Un seul appel API permet de diffuser le même contenu vers plusieurs plateformes simultanément
- Prise en charge de la programmation des publications, de l'historique et des analytics via des endpoints dédiés
- Endpoints spécialisés pour chaque type de média, y compris les carrousels mixtes Instagram/Threads et les documents natifs LinkedIn
- Traitement média via FFmpeg et suivi des uploads asynchrones avec request_id
Limites
- Dépend entièrement d'un compte tiers Upload-Post et d'une clé API payante pour fonctionner
- La section sur les documents est tronquée dans le SKILL.md, ce qui laisse certains paramètres mal documentés
- Certaines fonctionnalités sont restreintes à une plateforme (documents réservés à LinkedIn, texte limité à X, LinkedIn, Facebook, Threads, Reddit et Bluesky)
À utiliser lorsqu'il faut publier ou programmer un même contenu sur plusieurs réseaux sociaux sans intégrer chaque API séparément.
À éviter si vous n'avez pas de compte Upload-Post actif ou si vous avez besoin d'un contrôle natif avancé propre à une seule plateforme.
Analyse de sécurité
SûrThe skill is pure API documentation: it lists endpoints, parameters, and curl examples against a single documented host (api.upload-post.com). There is no obfuscation, no curl|sh, no destructive filesystem command, no attempt to read or exfiltrate unrelated secrets, and no safety-disabling instructions. The only sensitive element is the user's own API key, which is passed to the vendor it belongs to. Powerful network calls are used for their legitimate purpose, so this rates safe.
- •Requires pasting a personal Upload-Post API key into requests; key handling guidance is minimal (no note on env vars / secret storage)
- •Examples send local media files to a third-party SaaS endpoint (api.upload-post.com) — expected for the stated purpose, but implies trust in that vendor with content and credentials
Exemples
Upload video.mp4 to Instagram and TikTok with the caption 'New tutorial is live!' using my upload-post profile 'mybrand'.Schedule a text post for tomorrow 9am Europe/Madrid on X, Threads and Bluesky saying 'Big announcement coming this week 👀'.Upload presentation.pdf as a LinkedIn document post titled 'Q3 Roadmap' with the description 'Here is our plan for the next quarter.'name: upload-post description: "Upload content to social media platforms via Upload-Post API. Use when posting videos, photos, text, or documents to TikTok, Instagram, YouTube, LinkedIn, Facebook, X (Twitter), Threads, Pinterest, Reddit, or Bluesky. Supports scheduling, analytics, FFmpeg processing, and upload history."
Upload-Post API
Post content to multiple social media platforms with a single API call.
Documentation
- Full API docs: https://docs.upload-post.com
- LLM-friendly: https://docs.upload-post.com/llm.txt
Setup
- Create account at upload-post.com
- Connect your social media accounts
- Create a Profile (e.g., "mybrand") - this links your connected accounts
- Generate an API Key from dashboard
- Use the profile name as
userparameter in API calls
Authentication
Authorization: Apikey YOUR_API_KEY
Base URL: https://api.upload-post.com/api
The user parameter in all endpoints refers to your profile name (not username), which determines which connected social accounts receive the content.
Endpoints Reference
| Endpoint | Method | Description |
|----------|--------|-------------|
| /upload | POST | Upload videos |
| /upload_photos | POST | Upload photos/carousels |
| /upload_text | POST | Text-only posts |
| /upload_document | POST | Upload documents (LinkedIn only) |
| /uploadposts/status?request_id=X | GET | Check async upload status |
| /uploadposts/history | GET | Upload history |
| /uploadposts/schedule | GET | List scheduled posts |
| /uploadposts/schedule/<job_id> | DELETE | Cancel scheduled post |
| /uploadposts/schedule/<job_id> | PATCH | Edit scheduled post |
| /uploadposts/me | GET | Validate API key |
| /analytics/<profile> | GET | Get analytics |
| /uploadposts/facebook/pages | GET | List Facebook pages |
| /uploadposts/linkedin/pages | GET | List LinkedIn pages |
| /uploadposts/pinterest/boards | GET | List Pinterest boards |
| /uploadposts/reddit/detailed-posts | GET | Get Reddit posts with media |
| /ffmpeg | POST | Process media with FFmpeg |
Upload Videos
curl -X POST "https://api.upload-post.com/api/upload" \
-H "Authorization: Apikey YOUR_KEY" \
-F "user=profile_name" \
-F "platform[]=instagram" \
-F "platform[]=tiktok" \
-F "video=@video.mp4" \
-F "title=My caption"
Key parameters:
user: Profile username (required)platform[]: Target platforms (required)video: Video file or URL (required)title: Caption/title (required)description: Extended descriptionscheduled_date: ISO-8601 date for schedulingtimezone: IANA timezone (e.g., "Europe/Madrid")async_upload: Settruefor background processingfirst_comment: Auto-post first comment
Upload Photos
curl -X POST "https://api.upload-post.com/api/upload_photos" \
-H "Authorization: Apikey YOUR_KEY" \
-F "user=profile_name" \
-F "platform[]=instagram" \
-F "photos[]=@photo1.jpg" \
-F "photos[]=@photo2.jpg" \
-F "title=My caption"
Instagram & Threads support mixed carousels (photos + videos in same post).
Upload Text
curl -X POST "https://api.upload-post.com/api/upload_text" \
-H "Authorization: Apikey YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"user": "profile_name",
"platform": ["x", "threads", "bluesky"],
"title": "My text post"
}'
Supported: X, LinkedIn, Facebook, Threads, Reddit, Bluesky.
Upload Document (LinkedIn only)
Upload PDFs, PPTs, DOCs as native LinkedIn document posts (carousel viewer).
curl -X POST "https://api.upload-post.com/api/upload_document" \
-H "Authorization: Apikey YOUR_KEY" \
-F "user=profile_name" \
-F 'platform[]=linkedin' \
-F "document=@presentation.pdf" \
-F "title=Document Title" \
-F "description=Post text above document"
Parameters:
document: PDF, PPT, PPTX, DOC, DOCX (max 100MB, 300 pages)title: Document title (required)description: Post commentaryvisibility: PUBLIC, CONNECTIONS, LOGGED_IN, CONTAINERtarget_linkedin_page_id: Post to company page
Supported Platforms
| Platform | Videos | Photos | Text | Documents | |----------|--------|--------|------|-----------| | TikTok | ✓ | ✓ | - | - | | Instagram | ✓ | ✓ | - | - | | YouTube | ✓ | - | - | - | | LinkedIn | ✓ | ✓ | ✓ | ✓ | | Facebook | ✓ | ✓ | ✓ | - | | X (Twitter) | ✓ | ✓ | ✓ | - | | Threads | ✓ | ✓ | ✓ | - | | Pinterest | ✓ | ✓ | - | - | | Reddit | - | ✓ | ✓ | - | | Bluesky | ✓ | ✓ | ✓ | - |
Upload History
curl "https://api.upload-post.com/api/uploadposts/history?page=1&limit=20" \
-H "Authorization: Apikey YOUR_KEY"
Parameters:
page: Page number (default: 1)limit: 10, 20, 50, or 100 (default: 10)
Returns: upload timestamp, platform, success status, post URLs, errors.
Scheduling
Add scheduled_date parameter (ISO-8601):
{
"scheduled_date": "2026-02-01T10:00:00Z",
"timezone": "Europe/Madrid"
}
Response includes job_id. Manage with:
GET /uploadposts/schedule- List all scheduledDELETE /uploadposts/schedule/<job_id>- CancelPATCH /uploadposts/schedule/<job_id>- Edit (date, title, caption)
Check Upload Status
For async uploads or scheduled posts:
curl "https://api.upload-post.com/api/uploadposts/status?request_id=XXX" \
-H "Authorization: Apikey YOUR_KEY"
Or use job_id for scheduled posts.
Analytics
curl "https://api.upload-post.com/api/analytics/profile_name?platforms=instagram,tiktok" \
-H "Authorization: Apikey YOUR_KEY"
Supported: Instagram, TikTok, LinkedIn, Facebook, X, YouTube, Threads, Pinterest, Reddit, Bluesky.
Returns: followers, impressions, reach, profile views, time-series data.
Get Pages/Boards
# Facebook Pages
curl "https://api.upload-post.com/api/uploadposts/facebook/pages" \
-H "Authorization: Apikey YOUR_KEY"
# LinkedIn Pages
curl "https://api.upload-post.com/api/uploadposts/linkedin/pages" \
-H "Authorization: Apikey YOUR_KEY"
# Pinterest Boards
curl "https://api.upload-post.com/api/uploadposts/pinterest/boards" \
-H "Authorization: Apikey YOUR_KEY"
Reddit Detailed Posts
Get posts with full media info (images, galleries, videos):
curl "https://api.upload-post.com/api/uploadposts/reddit/detailed-posts?profile_username=myprofile" \
-H "Authorization: Apikey YOUR_KEY"
Returns up to 2000 posts with media URLs, dimensions, thumbnails.
FFmpeg Editor
Process media with custom FFmpeg commands:
curl -X POST "https://api.upload-post.com/api/ffmpeg" \
-H "Authorization: Apikey YOUR_KEY" \
-F "file=@input.mp4" \
-F "full_command=ffmpeg -y -i {input} -c:v libx264 -crf 23 {output}" \
-F "output_extension=mp4"
- Use
{input}and{output}placeholders - Poll job status until
FINISHED - Download result from
/ffmpeg/job/<job_id>/download - Supports multiple inputs:
{input0},{input1}, etc.
Quotas: Free 30min/mo, Basic 300min, Pro 1000min, Advanced 3000min, Business 10000min.
Platform-Specific Parameters
See references/platforms.md for detailed platform parameters.
Media Requirements
See references/requirements.md for format specs per platform.
Error Codes
| Code | Meaning | |------|---------| | 400 | Bad request / missing params | | 401 | Invalid API key | | 404 | Resource not found | | 429 | Rate limit / quota exceeded | | 500 | Server error |
Notes
- Videos auto-switch to async if >59s processing time
- X long text creates threads unless
x_long_text_as_post=true - Facebook requires Page ID (personal profiles not supported by Meta)
- Instagram/Threads support mixed carousels (photos + videos)
Du fichier au premier essai
Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.
Consulter la source et ses fichiers annexesCe téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.
1. Télécharger le fichier
Télécharger SKILL.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.
Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.
mkdir -p '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/upload-content-to-social-media-via-upload-post-api-mrwakgks/download' --output '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks/SKILL.md.part' && mv '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks/SKILL.md.part' '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks/SKILL.md'2. Vérifier les prérequis
Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.
Extrait original : Setup
- Create account at upload-post.com
- Connect your social media accounts
- Create a Profile (e.g., "mybrand") - this links your connected accounts
- Generate an API Key from dashboard
- Use the profile name as
userparameter in API calls
Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.
3. Charger la skill
Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.
Claude Code
test -f '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks/SKILL.md' && test -s '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/upload-post' && cp -R '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks' '.claude/skills/upload-post'Cursor
test -f '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks/SKILL.md' && test -s '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks/SKILL.md' && mkdir -p '.cursor/skills' && test ! -e '.cursor/skills/upload-post' && cp -R '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks' '.cursor/skills/upload-post'Codex
test -f '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks/SKILL.md' && test -s '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks/SKILL.md' && mkdir -p '.agents/skills' && test ! -e '.agents/skills/upload-post' && cp -R '.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks' '.agents/skills/upload-post'OpenSkills
OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.
Installation officielle d’OpenSkillsopenskills install './.skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks'openskills read 'upload-content-to-social-media-via-upload-post-api-mrwakgks'La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.
Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.
openskills syncMode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.
4. Faire un premier essai
Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :
Lis .skill-downloads/upload-content-to-social-media-via-upload-post-api-mrwakgks/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.
Fragments d'écriture
Contenu
Extrayez des fragments d'écriture bruts via un entretien intensif, sans imposer de structure. Capturez idées, citations et mots porteurs pour une utilisation ultérieure.
Rédaction UI et audit
Contenu
Rédigez ou auditez les textes d'interface (boutons, erreurs, états vides, infobulles) dans le monorepo, en suivant la source de vérité du design system.
Extraction MIDI/score
Contenu
Extrait le MIDI ou la partition d'une production musicale existante via l'outil MCP CogMusic et confirme la disponibilité du fichier.