Connect Your Account
Link your Bluesky account with your handle and an app password. PostZen keeps ownership, permissions, and campaign context in one place.
Stop wrestling with the AT Protocol, session tokens, and rich-text facets. PostZen publishes to Bluesky through one simple endpoint - so you can focus on building your product.
No credit card required. View Bluesky API documentation ->
{
"platforms": ["bluesky"],
"accountId": "acc_abc123",
"content": "Hello from PostZen!",
"scheduledFor": "2025-01-15T19:00:00Z"
}WHY POSTZEN VS. AT PROTOCOL?
Save 4-6 weeks of development time. Ship your Bluesky API integration today, not next month.
Bluesky skips the developer portal entirely. Create an app password in Bluesky under Settings → Privacy and Security → App Passwords, then connect with your handle. No app registration and no OAuth review queue.
App passwords are scoped, revocable credentials - remove one anytime without changing your main Bluesky password.CONTENT TYPES
HOW IT WORKS
Link your Bluesky account with your handle and an app password. PostZen keeps ownership, permissions, and campaign context in one place.
Draft posts, images, and alt text in the same workspace your team already uses. Links, mentions, and hashtags are detected for you.
PostZen keeps the queue clear and gives your team publishing status without checking Bluesky directly.
FEATURES
Go from zero to scheduled Bluesky posts in under 30 seconds. No developer portal and no app review - connect a handle and an app password, then build.
We publish through Bluesky's AT Protocol under the hood. You get native reach and reliability without touching session tokens or facet byte offsets.
Rich-text facets, handle resolution, image blobs, and link cards - all built for you. Focus on your content, not the protocol.
CODE EXAMPLE
const response = await fetch("https://api.postzen.dev/v1/posts", {
method: "POST",
headers: {
"Authorization": "Bearer POSTZEN_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
platforms: [{ platform: "bluesky", accountId: "your-bluesky-account-id" }],
content: "Now publishing to Bluesky from PostZen 🦋",
mediaItems: [{ url: "https://cdn.example.com/launch-image.jpg", title: "Launch day dashboard" }],
scheduledFor: "2026-06-15T19:00:00Z",
tags: ["launch", "bluesky"]
})
});
const result = await response.json();
console.log("Scheduled successfully:", result.post._id);ONE API, 9 PLATFORMS
Join focused teams who chose PostZen over building around disconnected platform tools. Same reliability, 10x less code.