upload-post について
upload-postは、Upload-Post APIを使って複数のソーシャルプラットフォームへ投稿するスキルです。メディアやテキストの投稿、予約、状況確認、履歴、分析、メディア処理を扱います。
主な機能
- 01動画、写真、テキストの投稿
- 02投稿の予約と管理
- 03アップロード状況と履歴の確認
- 04プラットフォーム分析の取得
- 05FFmpegによるメディア処理
活用シーン
- 01複数のプラットフォームへの一括投稿
- 02将来の日付で投稿を予約
- 03アップロード結果と指標の確認
- 04FFmpegを使ったメディア処理
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ upload-post/ upload-post-skill --skill upload-postインストール後、Claude Code で/upload-postを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.gitignoreREADME.mdreferences/platforms.mdrequirements.md詳細
Upload-Post API
1 回の API 呼び出しで、複数のソーシャルメディアプラットフォームにコンテンツを投稿します。
ドキュメント
- API ドキュメント全文:https://docs.upload-post.com
- LLM 向け:https://docs.upload-post.com/llm.txt
セットアップ
- upload-post.com でアカウントを作成します
- ソーシャルメディアアカウントを接続します
- Profile(例:「mybrand」)を作成します。これにより、接続済みのアカウントがひも付けられます
- ダッシュボードから API Key を生成します
- API 呼び出しの
userパラメーターにプロフィール名を指定します
認証
Authorization: Apikey YOUR_API_KEY
ベース URL:https://api.upload-post.com/api
すべてのエンドポイントの user パラメーターには、ユーザー名ではなくプロフィール名を指定します。これにより、コンテンツを受け取る接続済みソーシャルアカウントが決まります。
エンドポイント一覧
| エンドポイント | メソッド | 説明 |
|---|---|---|
/upload | POST | 動画をアップロードします |
/upload_photos | POST | 写真/カルーセルをアップロードします |
/upload_text | POST | テキストのみの投稿を作成します |
/upload_document | POST | ドキュメントをアップロードします(LinkedIn のみ) |
/uploadposts/status?request_id=X | GET | 非同期アップロードのステータスを確認します |
/uploadposts/history | GET | アップロード履歴を取得します |
/uploadposts/schedule | GET | 予約投稿の一覧を取得します |
/uploadposts/schedule/<job_id> | DELETE | 予約投稿をキャンセルします |
/uploadposts/schedule/<job_id> | PATCH | 予約投稿を編集します |
/uploadposts/me | GET | API キーを検証します |
/analytics/<profile> | GET | アナリティクスを取得します |
/uploadposts/facebook/pages | GET | Facebook ページの一覧を取得します |
/uploadposts/linkedin/pages | GET | LinkedIn ページの一覧を取得します |
/uploadposts/pinterest/boards | GET | Pinterest ボードの一覧を取得します |
/uploadposts/reddit/detailed-posts | GET | メディア付きの Reddit 投稿を取得します |
/ffmpeg | POST | FFmpeg でメディアを処理します |
動画のアップロード
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 "[email protected]" \
-F "title=My caption"
主なパラメーター:
user:プロフィールのユーザー名(必須)platform[]:投稿先プラットフォーム(必須)video:動画ファイルまたは URL(必須)title:キャプション/タイトル(必須)description:詳細な説明scheduled_date:予約投稿用の ISO-8601 日付timezone:IANA タイムゾーン(例:「Europe/Madrid」)async_upload:バックグラウンド処理を行う場合はtrueを設定しますfirst_comment:最初のコメントを自動投稿します
写真のアップロード
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[][email protected]" \
-F "photos[][email protected]" \
-F "title=My caption"
Instagram と Threads は、写真と動画を組み合わせたカルーセルに対応しています。
テキストの投稿
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"
}'
対応プラットフォーム:X、LinkedIn、Facebook、Threads、Reddit、Bluesky。
ドキュメントのアップロード(LinkedIn のみ)
PDF、PPT、DOC を、LinkedIn のネイティブなドキュメント投稿(カルーセルビューアー)としてアップロードします。
curl -X POST "https://api.upload-post.com/api/upload_document" \
-H "Authorization: Apikey YOUR_KEY" \
-F "user=profile_name" \
-F 'platform[]=linkedin' \
-F "[email protected]" \
-F "title=Document Title" \
-F "description=Post text above document"
パラメーター:
document:PDF、PPT、PPTX、DOC、DOCX(最大 100MB、300 ページ)title:ドキュメントのタイトル(必須)description:投稿のコメントvisibility:PUBLIC、CONNECTIONS、LOGGED_IN、CONTAINERtarget_linkedin_page_id:企業ページに投稿します
対応プラットフォーム
| プラットフォーム | 動画 | 写真 | テキスト | ドキュメント |
|---|---|---|---|---|
| TikTok | ✓ | ✓ | - | - |
| ✓ | ✓ | - | - | |
| YouTube | ✓ | - | - | - |
| ✓ | ✓ | ✓ | ✓ | |
| ✓ | ✓ | ✓ | - | |
| X (Twitter) | ✓ | ✓ | ✓ | - |
| Threads | ✓ | ✓ | ✓ | - |
| ✓ | ✓ | - | - | |
| - | ✓ | ✓ | - | |
| Bluesky | ✓ | ✓ | ✓ | - |
アップロード履歴
curl "https://api.upload-post.com/api/uploadposts/history?page=1&limit=20" \
-H "Authorization: Apikey YOUR_KEY"
パラメーター:
page:ページ番号(デフォルト:1)limit:10、20、50、100(デフォルト:10)
返される情報:アップロード日時、プラットフォーム、成功ステータス、投稿 URL、エラー。
予約投稿
scheduled_date パラメーター(ISO-8601)を追加します。
{
"scheduled_date": "2026-02-01T10:00:00Z",
"timezone": "Europe/Madrid"
}
レスポンスには job_id が含まれます。以下の方法で管理できます。
GET /uploadposts/schedule- すべての予約投稿を一覧表示しますDELETE /uploadposts/schedule/<job_id>- キャンセルしますPATCH /uploadposts/schedule/<job_id>- 編集します(日付、タイトル、キャプション)
アップロード状況の確認
非同期アップロードまたは予約投稿の場合:
curl "https://api.upload-post.com/api/uploadposts/status?request_id=XXX" \
-H "Authorization: Apikey YOUR_KEY"
予約投稿には job_id も使用できます。
アナリティクス
curl "https://api.upload-post.com/api/analytics/profile_name?platforms=instagram,tiktok" \
-H "Authorization: Apikey YOUR_KEY"
対応プラットフォーム:Instagram、TikTok、LinkedIn、Facebook、X、YouTube、Threads、Pinterest、Reddit、Bluesky。
返される情報:フォロワー数、インプレッション数、リーチ数、プロフィール閲覧数、時系列データ。
ページ/ボードの取得
# 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 の詳細な投稿
完全なメディア情報(画像、ギャラリー、動画)を含む投稿を取得します:
curl "https://api.upload-post.com/api/uploadposts/reddit/detailed-posts?profile_username=myprofile" \
-H "Authorization: Apikey YOUR_KEY"
メディア URL、サイズ、サムネイルを含む、最大 2000 件の投稿を返します。
FFmpeg エディター
カスタム FFmpeg コマンドでメディアを処理します:
curl -X POST "https://api.upload-post.com/api/ffmpeg" \
-H "Authorization: Apikey YOUR_KEY" \
-F "[email protected]" \
-F "full_command=ffmpeg -y -i {input} -c:v libx264 -crf 23 {output}" \
-F "output_extension=mp4"
{input}と{output}のプレースホルダーを使用しますFINISHEDになるまでジョブのステータスを確認します/ffmpeg/job/<job_id>/downloadから結果をダウンロードします- 複数の入力に対応しています:
{input0}、{input1}など
クォータ:Free は月 30 分、Basic は 300 分、Pro は 1000 分、Advanced は 3000 分、Business は 10000 分です。
プラットフォーム固有のパラメーター
プラットフォームのパラメーターの詳細については、references/platforms.md を参照してください。
メディア要件
各プラットフォームの形式仕様については、references/requirements.md を参照してください。
エラーコード
| コード | 意味 |
|---|---|
| 400 | リクエストが不正/パラメーターが不足しています |
| 401 | API キーが無効です |
| 404 | リソースが見つかりません |
| 429 | レート制限/クォータを超過しました |
| 500 | サーバーエラー |
注意事項
- 処理時間が 59 秒を超える場合、動画は自動的に非同期処理に切り替わります
x_long_text_as_post=trueが設定されていない場合、X の長文投稿はスレッドになります- Facebook ではページ ID が必要です(Meta は個人プロフィールに対応していません)
- Instagram/Threads は写真と動画を混在させたカルーセルに対応しています