Publication sur réseaux sociaux via Upload-Post API

VérifiéSûr

API pour publier vidéos, photos, textes et documents sur plusieurs réseaux sociaux. Programmation, analyse et traitement FFmpeg inclus.

Spar Skills Guide Bot
ContenuIntermédiaire
22/07/2026
Claude CodeCursorCodex
#social-media#api#content-publishing#scheduling#automation

Recommandé pour

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)
Quand l'utiliser

À utiliser lorsqu'il faut publier ou programmer un même contenu sur plusieurs réseaux sociaux sans intégrer chaque API séparément.

Quand l'éviter

À é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ûr
Score qualité76/100

The 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.

Points d'attention
  • •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
Comment cette analyse est faite

Exemples

Cross-platform video post
Upload video.mp4 to Instagram and TikTok with the caption 'New tutorial is live!' using my upload-post profile 'mybrand'.
Schedule a text post
Schedule a text post for tomorrow 9am Europe/Madrid on X, Threads and Bluesky saying 'Big announcement coming this week 👀'.
LinkedIn document carousel
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

  1. Create account at upload-post.com
  2. Connect your social media accounts
  3. Create a Profile (e.g., "mybrand") - this links your connected accounts
  4. Generate an API Key from dashboard
  5. Use the profile name as user parameter 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 description
  • scheduled_date: ISO-8601 date for scheduling
  • timezone: IANA timezone (e.g., "Europe/Madrid")
  • async_upload: Set true for background processing
  • first_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 commentary
  • visibility: PUBLIC, CONNECTIONS, LOGGED_IN, CONTAINER
  • target_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 scheduled
  • DELETE /uploadposts/schedule/<job_id> - Cancel
  • PATCH /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 annexes

Ce 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.md

Depuis 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
  1. Create account at upload-post.com
  2. Connect your social media accounts
  3. Create a Profile (e.g., "mybrand") - this links your connected accounts
  4. Generate an API Key from dashboard
  5. Use the profile name as user parameter 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’OpenSkills
openskills 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 sync

Mode 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.

Skills similaires