API Reference

Bluesky API

Bluesky runs on the AT Protocol, which means DID-based auth, XRPC calls, and blob uploads for media. Zernio abstracts all of that into one simple POST for text, images, and links.

Quick Start

  1. 1.
    Get API Key
    Sign up for free and get your API key in seconds.
  2. 2.
    Connect Account
    Use our OAuth flow to connect Bluesky accounts.
  3. 3.
    Start Posting
    Make API calls to post content to Bluesky.
Post to Bluesky
JavaScript
const response = await fetch('https://zernio.com/api/v1/posts', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    content: 'Just launched our new API! Check it out ๐Ÿš€',
    mediaItems: [{ type: 'image', url: 'https://example.com/launch.png' }],
    platforms: [{
      platform: 'bluesky',
      accountId: 'acc_abc123'
    }],
    publishNow: true
  })
});

const post = await response.json();
console.log(post.post._id); // '65f1c0a9e2b5af0012ab34cd'

Bluesky Endpoints

POST/v1/posts

Create or schedule a Bluesky post (text, images, or link card)

GET/v1/posts/{id}

Get status and details of a Bluesky post

DELETE/v1/posts/{id}

Cancel a scheduled Bluesky post

GET/v1/profiles

List all connected Bluesky accounts

Media Requirements

TypeFormatMax SizeNotes
ImageJPEG, PNG1 MBUp to 4 images per post
TextUTF-8300 charsWith facets support
Link CardURLN/AAuto-generates embed

Zernio automatically transcodes and optimizes media for Bluesky's requirements.

API Limits

Bluesky uses AT Protocol with rate limits on record creation. Zernio handles these automatically for reliable posting.

Zernio handles all rate limiting automatically. We queue and retry requests as needed.

Features

  • โœ“Post text, images, and link cards
  • โœ“Schedule posts for optimal times
  • โœ“Multi-image posts (up to 4)
  • โœ“Automatic link embedding
  • โœ“Multi-account management
  • โœ“Webhook notifications for post status
  • โœ“Handle and DID support

Response Example

Response
JSON
{
  "post": {
    "_id": "65f1c0a9e2b5af0012ab34cd",
    "status": "published",
    "content": "Just launched our new API! Check it out ๐Ÿš€",
    "platforms": [{
      "platform": "bluesky",
      "accountId": { "_id": "acc_abc123", "username": "yourhandle.bsky.social" },
      "status": "published",
      "platformPostId": "xyz789",
      "platformPostUrl": "https://bsky.app/profile/yourhandle.bsky.social/post/xyz789"
    }],
    "publishedAt": "2025-01-10T10:30:00Z"
  },
  "message": "Post published successfully"
}

Start building with Bluesky API

Free tier available ยท No credit card required ยท 99.97% uptime

SOC 2 CompliantGDPR Compliant