Your Bluesky Integration
Ready in Minutes

Publish, schedule, and measure on Bluesky through one endpoint.

Start for free

No credit card required

import { Configuration, PostsApi } from "@onepostly/sdk"; const posts = new PostsApi( new Configuration({ apiKey: process.env.ONEPOSTLY_API_KEY }), ); await posts.createPost({ createPostBody: { text: "Hello from Onepostly https://onepostly.com @handle.bsky.social #bluesky", mediaKind: "text", destinations: [{ accountId: "YOUR_BLUESKY_ACCOUNT_ID" }], }, });

Trusted by developers and teams shipping across every platform

The boring parts, handled

Every platform behind one integration

One integration covers publishing, scheduling, and analytics. Platform changes, app reviews, token refreshes, and rate limits are ours to absorb.

Features

Schedule, publish, and measure.

Changelog: faster media uploads

PublishedMon, 5 Oct09:30

Meet the new analytics view

PublishedTue, 6 Oct17:15

Planning your calendar, the short version

Thu, 8 Oct10:45Europe/Istanbul

We are at the API meetup today

Fri, 9 Oct13:00America/New_York

Case study: shipping every day

Mon, 12 Oct08:30Europe/London

Live demo: retries and webhooks

Tue, 13 Oct19:00Asia/Tokyo

Uptime report for last month

Wed, 14 Oct11:20America/Los_Angeles

Post Scheduling

Pick the time and timezone. Nothing goes out until its scheduled moment, and you can cancel any time before.

ReelsText
Video
Photos
Story

Images, Videos & Carousels

Upload images, videos, carousels, Stories, and Reels. One payload, every destination.

Webhooks & Events

Publish, fail, comment, or DM. Every event hits your endpoint the moment it happens.

First Comment Support

Add a first comment to the same call. It publishes alongside the post where supported.

Normalized Analytics

One call returns likes, comments, and shares from every platform in the same shape.

Why Onepostly?

You call one API, we handle the rest.

Onepostly API

  • App reviews and OAuth handled

    Platform apps and token refresh handled for you

  • One API key

    Connect once and publish everywhere with one key

  • One shape for every surface

    Comments DMs and metrics in normalized JSON

  • Platform changes absorbed

    Endpoint contracts stay stable when APIs shift

Building it yourself (platform APIs)

  • A separate app per platform

    App reviews and OAuth verification take months

  • A token refresh flow per platform

    Rate limits and expiry tracking on your side

  • A different shape per platform

    Inconsistent schemas across social networks

  • Every breaking change on you

    API version bumps and deprecations to track

Beyond publishing

Comments, DMs, and metrics on the same API.

Same accounts, same API key. Conversations, moderation, automations, and numbers run through the integration you already have.

Inbox API

Conversations from every platform, one inbox

All platformsAll accounts
mira.buildsCan you send the setup guide?2m
kai.drawsLoved the launch post!14m
james.codesIs there a Python SDK?1h
Engagement API

Like, bookmark, and repost as API calls

MBmira.builds2h

Launch day is live. Everything shipped from one call.

128248
Automations API

Comment to DM automations

MB@mira.buildsGUIDE please
KD@kai.drawssend the GUIDE
MBmira.buildsHi! Sent the guide · now
KDkai.drawsHi! Sent the guide · 1m
Analytics API

Metrics from every platform, one shape

PlatformLikesCommentsShares
Instagram1,2848641
TikTok3,410214132
LinkedIn4863218
X7924563

Frequently asked questions

Character limits, App Password connections, automatic link formatting, and what the API reports.

Bluesky caps posts at 300 characters, counted in graphemes — an emoji or a CJK character counts as one. Every thread segment counts too, so send a shorter Bluesky-specific text.

A handle and an App Password created in Bluesky's own settings — there is no developer portal and no OAuth step. Revoking the App Password disconnects the account, so create a fresh one to reconnect.

No. Handles, hashtags, and URLs are converted into AT Protocol facets automatically, so plain text turns into clickable links and hashtags with no markup.

No. Only interaction counts exist — likes, replies, reposts, quotes, and bookmarks. Impressions, reach, and plays are not part of the API.

Text, up to 4 images at 2 MB each, one MP4 video up to 100 MB, threads of up to 25 replies, quote posts, and link cards.

Yes to all three. Schedule with an IANA timezone, cancel before it publishes, delete the published record remotely, and list, create, or delete replies.

Yes. The OAuth screens your users see carry neutral names like Social Media Connector rather than our brand, so the experience reads as fully yours.