Changelog
A reverse-chronological log of API changes. Subscribe to updates via the Webhooks API or check this page periodically.
Versioning and deprecation policy
The API is versioned through the URL path (/api/v1). Additive changes, such as new endpoints, new optional parameters, new response fields, and new enum values, are non-breaking and are announced in this changelog. Breaking changes only ship in a new version path.
When an endpoint or version is deprecated, it keeps working for at least 90 days. The deprecation is announced in this changelog and by email to owners of active API keys.
v1.12.0October 23, 2026
New Feature
- •Your own YouTube translations:
platformSettings.youtube.localizationssets the title and description per language yourself, for any language YouTube supports (for example{ "ko": { "title": "..." } }). Withtranslate: truewe translate the other languages and yours win; without it only yours are added. Invalid entries (an unknown language, a title over 100 characters, a description over 5000) return400 validation_errorbefore anything uploads.platforms[].translation.ownLanguageslists them before upload.
v1.11.0October 23, 2026
New Feature
- •See YouTube translations before posting in Claude and ChatGPT: with translation on,
show_post_previewnow shows the title and description in 10 languages, and a post with the same YouTube title and description publishes exactly those. A Claude or ChatGPT connector post whose translations were never shown is published without them. - •Translation state before upload: YouTube entries in
platforms[]carrytranslation:previewedwith the language codes, ornot_previewed. After upload,localizedLanguagesreports what YouTube stored.
v1.10.0October 22, 2026
New FeatureFix
- •YouTube title and description translation:
platformSettings.youtube.translate: truetranslates the YouTube title and description into 10 languages when the video uploads, so viewers whose YouTube is set to one of those languages see the title in their language, Shorts included.falseturns it off for that post, and a value that is not a boolean returns400 validation_error. When it is left out, API keys, the CLI, and the npm MCP package do not translate; the Claude and ChatGPT connectors follow the "Translate title and description" switch in your composer. - •See which languages were stored:
GET /api/v1/posts/:idreturnsplatforms[].localizedLanguageson published YouTube posts that had translation on: the language codes stored on the video. - •Edits keep YouTube settings: a
PATCH /api/v1/posts/:idthat changes YouTube content now keeps the video's other YouTube settings (privacy, tags, category, made-for-kids, and translate). Before, they were lost.
v1.9.2October 18, 2026
Fix
- •Queued posts work on standard keys:
"queue": trueonPOST /api/v1/postsnow uses your dashboard Queue Settings when your key has no queue created through the API. Before, it returned400 validation_errorunless you had an API Profile queue, which only partner keys can create. The post gets the same slot Add to Queue would pick in the dashboard. - •API queues keep their timezone: posts queued into a queue created through the API now land on the queue's local times (they were read as UTC), skip slots another post already holds, and are always at least 5 minutes out.
v1.9.1September 15, 2026
Improvement
- •Media URLs are checked up front:
mediaItems[].urlmust be a public http(s) URL. A local file path or any other scheme now returns400 validation_erroron create, bulk, validate, PATCH, and threads instead of scheduling a post that fails at publish time. Upload local files viaPOST /api/v1/mediaand pass the returned url or mediaId. - •Edits reach the queue:
PATCH /api/v1/posts/:idre-queues a scheduled post whenever content, media, platforms, or platform settings change (previously only a newscheduledFordid), andDELETE /api/v1/posts/:idon a scheduled post now removes its queued jobs as well as marking it cancelled.
v1.9August 1, 2026
New Feature
- •First Comment (auto-plug): pass
firstComment(plain string) orfirstComments([{target, text}]) onPOST /api/v1/posts, bulk, threads, validate, and PATCH to auto-post a comment ~15 seconds after the post publishes — the "link in the first comment" workflow. Supported on LinkedIn, Facebook, Instagram, YouTube, X, Threads, Bluesky, and Mastodon; thread-targeted comments (target > 0) on X/Threads/Bluesky viaPOST /api/v1/threads. Delivery status is reported per account inplatforms[].firstComments. Also available in the MCP tools (create_post,bulk_create_posts,create_thread,update_post,validate_post) and the CLI (--first-comment). See Posts.
v1.8July 14, 2026
New FeatureImprovementBreaking Change
- •Explicit accountId required with multiple accounts (breaking): creating a post without an
accountIdon a platform where you have MORE than one connected account now returns a 400 listing the choices, instead of silently posting from the first account. Single-account platforms are unchanged. See Posts. - •Merged analytics: omit
accountIdonGET /api/v1/analytics/postsand/analytics/followersto get results across ALL your analytics-enabled accounts in one call (matching best-time). Follower totals exclude YouTube per its API policy. See Analytics. - •LinkedIn document (PDF) posts end-to-end:
mediaItems[].type: "pdf"is now accepted by the MCP tools, and the in-chatattach_mediawidget uploads PDFs (100 MB max). - •Honest account listing:
GET /api/v1/accountsnow reports realbrandId/brandName(dashboard workspaces) and flags dead tokens withneedsReconnect+isConnected: false. Post previews warn about over-limit media counts per platform. The MCP server is v0.8.0.
v1.7July 12, 2026
New Feature
- •Mastodon on the API: post to all 11 platforms, including per-post
platformSettings.mastodonvisibility, content warnings, language and polls. See Mastodon. - •Media library + list endpoint: upload photos and videos (up to 500 MB) once in the dashboard Media page, then reference them anywhere:
GET /api/v1/medialists your recent uploads, and the MCPlist_mediatool lets AI assistants act on "post my latest upload". This is the path for posting videos from Claude or ChatGPT. See Media. - •Inline image upload for AI chats:
POST /api/v1/medianow also accepts a JSON body with base64data(images, 3 MB max), so a photo attached in a chat can be posted without a public URL. And the newattach_mediatool renders an upload widget IN the conversation: drop a photo or video (up to 500 MB) and it uploads straight to your media library at full quality, ready to post. The MCP server (v0.7.0) exposes 29 tools. - •CLI 1.2.0:
--medianow attaches correctly, new--platform-settingsflag, strict flag validation, and scheduling fixes.
v1.6June 11, 2026
New FeatureImprovement
- •Analytics on all nine platforms: post metrics, follower growth, and best posting times now cover instagram, twitter, bluesky, threads, facebook, linkedin, pinterest, tiktok, and youtube (previously four platforms). See Analytics.
- •YouTube transcripts and retention:
GET /api/v1/engagement/transcriptreturns a video's caption tracks and parsed transcript;GET /api/v1/analytics/retentionreturns per-video audience retention for connected YouTube channels. - •Feeds (social listening): keyword search via
GET /api/v1/feeds/search(bluesky and threads), saved keyword lists via/api/v1/feeds/keywords, and public Bluesky profile lookup via/api/v1/feeds/profile. Results include reply targets that chain into the Engagement API. - •Media upload from a URL:
POST /api/v1/media/from-urldownloads a public image or video and re-hosts it on the Schedulala CDN. See Media. - •Claude connector: remote MCP server at
/api/mcpwith OAuth 2.1; the MCP server now exposes 27 tools. See Claude Connector. - •Security hardening: rate limiting on the OAuth and device-flow endpoints, and stricter sandbox isolation for test keys. See Sandbox Mode.
v1.5March 4, 2026
New Feature
- •Device authorization flow — get API keys from the terminal without a browser sign-up. See Authentication.
- •Event logging — new event log in the developer dashboard showing API key creation, plan changes, and billing events.
- •Developer dashboard — real-time usage charts, request logs, and billing overview at Dashboard → Developer.
- •Documentation overhaul — added Platforms reference, Connecting Accounts guide, and this Changelog.
v1.4March 4, 2026
Improvement
- •Media dimension validation — upload endpoint now validates image width/height against per-platform minimum dimensions.
- •Aspect ratio validation — images outside the target platform's allowed aspect ratio range are rejected with a descriptive error.
- •Video duration validation — videos exceeding a platform's max duration are rejected at upload time instead of failing silently during posting.
- •GIF support detection — GIFs are now rejected for platforms that don't support them (Instagram, TikTok, Threads, Pinterest, YouTube) with a clear error message.
v1.3March 1, 2026
Breaking Change
- •Renamed
profileIdtobrandId— all endpoints that acceptedprofileIdnow usebrandId. The old parameter name will continue to work for 90 days (until June 1, 2026), but will log a deprecation warning. - •GET /api/v1/usage — new endpoint returning current billing period usage, rate limit stats, and plan details. See Rate Limits.
v1.2March 1, 2026
New Feature
- •Stripe billing integration — developer API plans are now billed via Stripe. Manage your subscription at Dashboard → Developer.
- •Plan management endpoints —
GET /api/v1/billing/planandPOST /api/v1/billing/checkoutfor programmatic plan management. - •Usage endpoint —
GET /api/v1/usagereturns requests used, limits, and reset date for the current billing cycle.
v1.1March 1, 2026
New Feature
- •Full API launch — 30 endpoints covering posts, threads, queues, media, profiles, accounts, analytics, and webhooks. See the Quickstart.
- •Webhook delivery — receive real-time notifications for post status changes, account health events, and more. See Webhooks.
- •Bulk operations — create, update, and delete multiple posts in a single request.
- •Analytics API — retrieve post performance metrics across all platforms. See Analytics.
v1.0February 28, 2026
New Feature
- •Initial release — API key authentication, rate limiting, and core data models.
- •API key management — create, rotate, and revoke API keys from the dashboard. See Authentication.
- •Rate limiting — tiered rate limits by plan with
X-RateLimit-*headers. See Rate Limits.