1つずつ投稿すると、どれだけ時間を無駄にしているか
動画の編集が終わるたびに何が起こるか考えてみてください。TikTokを開いてアップロードし、キャプションを書いて、カバー画像を選ぶ。次にInstagramで同じことをする。そしてYouTube。LinkedIn。気づけば30分が過ぎていて、クリエイティブな作業は何もできていません。
複数ブランドを管理していると、さらに大変です。5つのクライアントにそれぞれ10プラットフォームがあれば、1つのコンテンツに対して50回の手動アップロードが必要になります。これは持続可能ではありません。まさにこの問題を解決するのがソーシャルメディアAPIです。
始める前に必要なもの
- Upload-Postアカウント(無料プランで月10回のアップロードが含まれます)
- APIキーダッシュボードから生成できるAPIキー
- Upload-Postプロフィールに連携済みのSNSアカウントが少なくとも1つ
- 投稿する動画または画像ファイル
ステップ1: アカウント作成とプラットフォーム連携
app.upload-post.comにアクセスして無料アカウントを作成してください。クレジットカードは不要です。ログインしたら、ユーザー管理からプロフィールを作成します。プロフィールは、1つのブランドやクライアントのSNSアカウントをまとめるコンテナのようなものです。
プロフィールから、投稿したいプラットフォームを接続します。Upload-Postは現在、TikTok、Instagram、YouTube、LinkedIn、Facebook、X(Twitter)、スレッド、Pinterest、Reddit、Blueskyに対応しています。10個すべてを接続することも、必要なものだけを選ぶこともできます。
ステップ2: APIキーを取得する
ダッシュボードのAPIキーページに移動して、新しいキーを生成します。すべてのAPIリクエストで認証ヘッダーとして使うので、安全な場所にコピーしておいてください。形式はシンプルです:
認可: Apikey your-api-key-here ステップ3: 1つのリクエストで全プラットフォームに投稿
ここが一番のポイントです。各プラットフォームに個別にアップロードする代わりに、/api/uploadエンドポイントに1つのPOSTリクエストを送り、複数のplatform[]パラメータを指定するだけです。フォーマット変換、アスペクト比の調整、キャプションの文字数制限など、すべてAPIが処理します。
cURLの例
curl -X POST https://api.upload-post.com/api/upload \
-H "認可: Apikey your-api-key-here" \
-F "[email protected]" \
-F "user=mybrand" \
-F "title=Check out our latest product launch" \
-F "platform[]=tiktok" \
-F "platform[]=instagram" \
-F "platform[]=youtube" \
-F "platform[]=linkedin" \
-F "platform[]=facebook" \
-F "platform[]=threads" これだけです。6つのプラットフォームに1つのコマンドで投稿できます。同じリクエストで対応する10プラットフォームすべてに投稿することも可能です。
Pythonの例
from upload_post import UploadPostClient
client = UploadPostClient(api_key="your-api-key-here")
response = client.upload_video(
video_path="/path/to/my-video.mp4",
title="最新の製品発表をチェックしてください",
user="mybrand",
platforms=["tiktok", "instagram", "youtube", "linkedin"]
)
for platform, result in response["results"].items():
if result["success"]:
print(f"{platform}: {result['url']}")
else:
print(f"{platform}: failed")
Python SDKはpip install upload-postでインストールできます。npmで利用可能なJavaScript SDKもあります。
Node.jsの例
import { UploadPost } from 'upload-post';
const uploader = new UploadPost('your-api-key-here');
const result = await uploader.upload('/path/to/my-video.mp4', {
title: '最新の製品発表をチェックしてください',
user: 'mybrand',
platforms: ['tiktok', 'instagram', 'youtube', 'linkedin', 'threads']
});
console.log(result); ステップ4: APIレスポンスの内容
アップロードが完了すると、APIは各プラットフォームの個別結果を含むJSONレスポンスを返します。どの投稿が公開されたかを確認でき、投稿への直接リンクも取得できます。
{
"success": true,
"results": {
"tiktok": {
"success": true,
"url": "https://www.tiktok.com/@yourbrand/video/123..."
},
"instagram": {
"success": true,
"url": "https://www.instagram.com/p/ABC..."
},
"youtube": {
"success": true,
"url": "https://youtube.com/shorts/XYZ..."
}
},
"usage": {
"count": 12,
"limit": 100,
"last_reset": "2025-09-01T10:00:00.000Z"
}
} 知っておくべきプラットフォーム固有のオプション
基本的なリクエストはほとんどのケースで機能しますが、各プラットフォームには投稿を細かく調整するための固有のパラメータがあります。最もよく使うものを紹介します:
| プラットフォーム | 便利なパラメータ | 備考 |
|---|---|---|
| TikTok | privacy_level, tiktok_title | 1アカウントあたり1日最大15本 |
media_type (REELS/STORIES), collaborators | 1日最大50アップロード | |
| YouTube | tags[], privacyStatus, thumbnail | 60秒未満の動画はShortsとして自動検出 |
visibility, target_linkedin_page_id | 個人プロフィールまたは会社ページに投稿可能 | |
facebook_page_id(必須), facebook_media_type | 接続済みのFacebookページが必要 | |
pinterest_board_id(必須), pinterest_link | すべてのピンにボードIDが必須 |
各プラットフォームで利用可能なすべてのパラメータについては、完全なAPIリファレンスをご確認ください。
コードを書きたくない場合は、n8nやMake.comを活用
開発者でなくても、ビジュアル自動化ツールを使って全プラットフォームに一括投稿できます。Upload-Postは主要なツールとの公式連携を提供しています:
- n8nには公式のUpload-Postコミュニティノードがあります。Google Drive、Dropboxなどからワークフローをトリガーして、全プラットフォームに自動配信できます。ワンクリックでインポートできるテンプレートも用意されています。
- Make.com(旧Integromat)はHTTPモジュールとマルチパートフォームデータで連携できます。
- Zapierはお気に入りのツールとUpload-Postを接続して、完全自動化された配信が可能です。
写真やカルーセルを複数プラットフォームに投稿
配信できるのは動画だけではありません。/api/upload_photosエンドポイントを使えば、画像やカルーセルも同じ方法で複数プラットフォームに投稿できます。videoパラメータの代わりにphotos[]を使うだけです:
curl -X POST https://api.upload-post.com/api/upload_photos \
-H "認可: Apikey your-api-key-here" \
-F "photos[][email protected]" \
-F "photos[][email protected]" \
-F "photos[][email protected]" \
-F "user=mybrand" \
-F "title=Our new collection" \
-F "platform[]=instagram" \
-F "platform[]=tiktok" \
-F "platform[]=linkedin" Instagramではカルーセル投稿になり、TikTokではスライドショーに、LinkedInでは複数画像投稿として表示されます。各プラットフォームのオーディエンスに最適な形式で配信されます。
最初のコメントを自動追加する
InstagramやTikTokでは、ハッシュタグやCTA(行動喚起)をキャプションではなく最初のコメントに入れるのがよくある戦略です。first_commentパラメータをリクエストに追加するだけで自動化できます:
-F "first_comment=#marketing #socialmedia #contentcreator Follow for more!"
この機能はInstagram、Facebook、Threads、Bluesky、Reddit、X、YouTubeで利用できます。instagram_first_commentやx_first_commentのように、プラットフォームごとに異なるコメントを設定することも可能です。
注意すべき文字数制限
同じキャプションを複数プラットフォームに投稿する場合、各プラットフォームの文字数制限が異なることを覚えておいてください:
| プラットフォーム | キャプション上限 |
|---|---|
| X(標準) | 280文字 |
| Bluesky | 300文字 |
| スレッド | 500文字 |
| 500文字 | |
| 2,200文字 | |
| TikTok | 2,200文字 |
| 3,000文字 | |
| YouTube | 5,000文字 |
| 63,206文字 |
必要に応じて、プラットフォーム固有のタイトルパラメータ(tiktok_title、youtube_titleなど)を使って、プラットフォームごとに異なるキャプションを設定できます。投稿前に文字数を確認するには、文字数カウンターツールをご活用ください。
大容量ファイルの非同期アップロード
動画が大きい場合や、多くのプラットフォームに投稿する場合はリクエストに時間がかかることがあります。async_upload=trueを追加すると、request_idを含む即時レスポンスが返され、後からステータスを確認できます:
curl https://api.upload-post.com/api/uploadposts/status?request_id=abc123 \
-H "認可: Apikey your-api-key-here" 各プラットフォームのアップロードが完了したときに自動通知を受け取るためのウェブフックも設定できます。
よくある質問
全プラットフォームに同時投稿すると、リーチやエンゲージメントに影響しますか?
いいえ。Upload-Postは各プラットフォームの公式APIとOAuth認証を使用しています。プラットフォーム側からは通常の投稿として認識されます。ローテーションIP、ボット、回避策は一切使用していません。手動でアップロードした場合と全く同じ再生数とエンゲージメントが得られます。
プラットフォームごとにキャプションをカスタマイズできますか?
はい。titleパラメータがすべてのプラットフォームのデフォルトキャプションになりますが、tiktok_title、instagram_title、youtube_title、linkedin_titleなどでプラットフォームごとに上書きできます。YouTubeには長い説明文、TikTokには短いキャプションを設定したい場合に便利です。
対応している動画形式は?
H.264エンコードのMP4がすべてのプラットフォームで動作します。別のコーデックのファイルでも、Upload-Postが自動的にトランスコードします。事前に動画を加工したい場合は、内蔵FFmpegエディターもご利用いただけます。
料金はいくらですか?
月10回のアップロードが含まれる無料プランがあります。有料プランは月額$16(年払い)からで、アップロード無制限です。BufferやHootsuiteと比べると、特にチャネルごとの課金を考慮するとかなりお得です。