--- name: adaptly-post description: Publish or schedule one post to X, Instagram, TikTok, YouTube, LinkedIn, Threads, Bluesky, Facebook, Pinterest and more through AdaptlyPost. Use when the user wants to post, schedule or draft social content. Needs ADAPTLY_POST_API_KEY. --- # AdaptlyPost Key: `ADAPTLY_POST_API_KEY`. Get one at https://adaptlypost.com/api-tokens (Editor role or above can publish). Base URL: `https://post.adaptlypost.com/post/api/v1` ## 1. Find the connected accounts ```bash curl -s https://post.adaptlypost.com/post/api/v1/social-accounts \ -H "Authorization: Bearer $ADAPTLY_POST_API_KEY" ``` Use the `id` of accounts whose `status` is `active`. Accounts are connected in the AdaptlyPost app. ## 2. Post ```bash curl -s -X POST https://post.adaptlypost.com/post/api/v1/social-posts \ -H "Authorization: Bearer $ADAPTLY_POST_API_KEY" -H "Content-Type: application/json" \ -d '{"platforms":["TWITTER","BLUESKY"],"contentType":"TEXT","text":"New drop Friday.","timezone":"America/New_York","twitterConnectionIds":["ID"],"blueskyConnectionIds":["ID"]}' ``` - Each platform has its own id list: `twitterConnectionIds`, `instagramConnectionIds`, `tiktokConnectionIds`, `youtubeConnectionIds`, `linkedinConnectionIds`, `threadsConnectionIds`, `blueskyConnectionIds`, `pinterestConnectionIds`, `mastodonConnectionIds`, `tumblrConnectionIds`, `telegramConnectionIds`, `googleBusinessConnectionIds`, and `pageIds` for Facebook. - `contentType` is `TEXT`, `IMAGE`, `CAROUSEL` or `VIDEO`. Media goes in `mediaUrls` (public https links). - Add `"scheduledAt":"2026-12-01T09:00:00-05:00"` to schedule, or `"saveAsDraft":true` for a draft. - Check a post later with `GET /social-posts/{postId}`. ## Upload a local file `POST /upload-urls` with `{"files":[{"fileName":"clip.mp4","mimeType":"video/mp4"}]}` returns `uploadUrl` and `publicUrl`. PUT the bytes to `uploadUrl`, then put `publicUrl` in `mediaUrls`. Always show the user the final text and accounts before posting. Posts go out to the public.