upload-post
Upload to TikTok, Instagram, YouTube, LinkedIn, Facebook, X.
Installation
npx clawhub@latest install upload-postView the full skill documentation and source below.
Documentation
Upload-Post API
Post content to multiple social media platforms with a single API call.
Documentation
- Full API docs:
- LLM-friendly:
Setup
user parameter in API callsAuthentication
Authorization: Apikey YOUR_API_KEY
Base URL:
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_videos | 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/ | DELETE | Cancel scheduled post |
| /uploadposts/schedule/ | PATCH | Edit scheduled post |
| /uploadposts/me | GET | Validate API key |
| /analytics/ | 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
__CODE_BLOCK_1__
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
__CODE_BLOCK_2__
Instagram & Threads support mixed carousels (photos + videos in same post).
## Upload Text
__CODE_BLOCK_3__
Supported: X, LinkedIn, Facebook, Threads, Reddit, Bluesky.
## Upload Document (LinkedIn only)
Upload PDFs, PPTs, DOCs as native LinkedIn document posts (carousel viewer).
__CODE_BLOCK_4__
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
__CODE_BLOCK_5__
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):
__CODE_BLOCK_6__
Response includes job_id. Manage with:
- GET /uploadposts/schedule - List all scheduled
- DELETE /uploadposts/schedule/ - Cancel
- PATCH /uploadposts/schedule/ - Edit (date, title, caption)
## Check Upload Status
For async uploads or scheduled posts:
__CODE_BLOCK_7__
Or use job_id for scheduled posts.
## Analytics
__CODE_BLOCK_8__
Supported: Instagram, TikTok, LinkedIn, Facebook, X, YouTube, Threads, Pinterest, Reddit, Bluesky.
Returns: followers, impressions, reach, profile views, time-series data.
## Get Pages/Boards
__CODE_BLOCK_9__
## Reddit Detailed Posts
Get posts with full media info (images, galleries, videos):
__CODE_BLOCK_10__
Returns up to 2000 posts with media URLs, dimensions, thumbnails.
## FFmpeg Editor
Process media with custom FFmpeg commands:
__CODE_BLOCK_11__
- Use {input} and {output} placeholders
- Poll job status until FINISHED
- Download result from /ffmpeg/job//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](references/platforms.md) for detailed platform parameters.
## Media Requirements
See [references/requirements.md](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)