Product updates

SocialClaw changelog

New publishing capabilities, provider improvements, API and documentation changes, and reliability fixes, in reverse chronological order.

Pinterest pins accept media from any URL

  • Scheduling a Pinterest pin with an image on your own domain or an external link (for example a Canva export URL) now works. Pinterest fetches image sources itself and rejects domains that disallow saving, so we copy your file into your SocialClaw media library at schedule time and publish the pin from there.
  • This is the same at-schedule-time media copy that TikTok already uses, extended to Pinterest, and it happens once per file even when the same image is fanned out across several boards.
  • If the URL cannot be downloaded, scheduling fails immediately with media_ingest_unreachable instead of the pin failing later at Pinterest.

Post analytics for Instagram, TikTok, YouTube, Reddit, and X

  • Published posts now show real per-post performance — views, likes, comments, and shares — pulled natively from Instagram, TikTok, YouTube, Reddit, and X, alongside the existing Pinterest and Snapchat support. No extra permissions are needed for Instagram, YouTube, Reddit, or X; TikTok stats need the video.list scope, so reconnect TikTok accounts once to enable them.
  • Opening a published post in the dashboard now shows a clean read-only recap — the post preview, its description, and a performance panel that refreshes automatically — instead of the full editor.
  • Agents and integrations can pull fresh numbers too: a new refresh_analytics MCP tool fetches current stats and stores a snapshot, and the same is available over REST (POST /v1/analytics/refresh) and the CLI (socialclaw analytics refresh --post-id <id>).
  • Providers without a public post-metrics API (Facebook, LinkedIn, and others) return an explicit “stats not available” state rather than fabricated numbers.

Faster, more resilient media serving

  • Playing a large video in the dashboard now streams it directly from storage via a short-lived signed URL instead of proxying every byte through the API, so video scrubbing is faster and can no longer slow down media delivery for anyone else.
  • Media downloads that are abandoned mid-transfer (a closed tab, a scrubbed video) are now cancelled immediately instead of continuing to hold a storage connection.
  • Raised the storage connection pool and added explicit timeouts so a burst of media traffic cannot stall publishing media pulls from TikTok, Instagram, or YouTube.

Instagram carousels and Stories

  • Instagram Business and standalone professional accounts can now publish image, video, or mixed-media carousels with up to ten items.
  • The composer now offers Post only, Story only, and Post + story destinations. Combined publishes create independent jobs so either surface can retry safely without duplicating the other.
  • SocialClaw now warms and normalizes hosted Instagram images to JPEG and retries transient Meta media-download failures before handing the post back to the scheduler.

TikTok posts accept media from any URL

  • Scheduling a TikTok post with a media_link on your own domain now works. TikTok only fetches media from domains verified under our developer app, so we copy your file into your SocialClaw media library at schedule time and publish from there.
  • The copy happens once per file, even when the same clip is scheduled across several posts, and the asset shows up in your media library like any other upload.
  • If the URL cannot be downloaded, scheduling fails immediately with media_ingest_unreachable instead of the post failing hours later with url_ownership_unverified.

Email notification settings in the dashboard

  • You can now turn post published/failed email notifications on or off from the account menu in the dashboard — open the workspace popover and use the Email notifications toggle.
  • The preference is per user: other owners in your workspace keep their own setting.

Clearer reconcile responses for unpublished posts

  • POST /v1/posts/:id/reconcile now returns HTTP 409 post_reconcile_not_ready when a post has not published yet, instead of a 200 with a failed reconciliation embedded in the body. Retry after the post publishes.
  • Calling reconcile early no longer marks the post's reconciliation as failed — scheduled posts stay clean and post-publish verification (e.g. TikTok) runs as normal.

Browse your media library from agents (list_assets)

  • Added the list_assets MCP tool and GET /v1/assets endpoint so Claude and other agents can browse media you already uploaded and reuse each asset's publicUrl as media_link.
  • Post a file you uploaded in the dashboard by simply asking your agent to use your latest upload — no re-uploading required.

MCP server, interactive API reference, and llms-full.txt

  • Shipped the SocialClaw MCP server: run npx -y socialclaw mcp to give Claude, Cursor, and other MCP clients 17 validation-first publishing tools across all connected accounts.
  • Rebuilt /docs/api as a fully interactive API reference: endpoint search, a try-it console, and request samples in Python, TypeScript, Go, PHP, Ruby, and more, generated from the live OpenAPI 3.1 contract.
  • Published /llms-full.txt, a complete machine-readable companion to the docs for AI agents and LLM tools.

TikTok photo publishing improvements

  • TikTok photo posts now auto-convert PNG media to JPEG so uploads pass TikTok's file format checks.
  • TikTok account connection is easier to find in the dashboard.

Slack app and dashboard AI chat

  • Added the SocialClaw Slack app: draft posts with AI chat, review the content calendar, browse media, and approve publishes from Slack.
  • Replaced the dashboard analytics tab with an AI chat workspace that can inspect posts, runs, and analytics.
  • Expanded agent tool capabilities and raised the agent tool-step ceiling.

Reliability fixes

  • Fixed a YouTube refresh-token loss case and quieted false token-expiry warnings; the dashboard now only flags accounts that genuinely need reconnecting.
  • Calendar views now load lightweight thumbnails instead of full-resolution media.

OpenAPI 3.1 contract and complete API documentation

  • Published the OpenAPI 3.1 document at /openapi.json covering 80 endpoints with JSON Schema 2020-12 contracts.
  • Shipped the full API documentation page at /docs/api with authentication, webhooks, callbacks, and media delivery URLs.

New product pages, tools, and comparisons

  • Added scheduling and posting API product pages, an AI social media scheduler page, and platform task pages for Instagram and LinkedIn.
  • Launched free tools: LinkedIn post generator, Instagram caption generator, API payload validator, and schedule validator.
  • Upgraded comparison pages for Postiz, Buffer, Later, Hootsuite, SocialBee, and Publer.
Schedule to social media Works with Claude ChatGPT Codex OpenClaw
Start free