invalid tokenReconnectBluesky rejected the session token.
Reconnect the account and create a fresh session with the user's PDS.
Review Bluesky and AT Protocol errors for session tokens, PDS host mismatch, record validation, blob uploads, text length, moderation, rate limits, and delayed propagation. Use this page to decide whether to reconnect, write through the correct PDS, compress media, or retry later.
Last updated: May 2026
10 documented error patterns across 5 categories
Clear guidance on reconnecting, retrying, replacing media, or changing content
Official platform references plus bundle.social production troubleshooting notes
Error categories
10 documented errors
All error codes
3 mapped cases
invalid tokenReconnectBluesky rejected the session token.
Reconnect the account and create a fresh session with the user's PDS.
expiredReconnectThe Bluesky session expired.
Reconnect or refresh the session before writing records.
unauthorizedReconnectBluesky authentication failed.
Verify the handle, app password, and authenticated PDS host.
2 mapped cases
rate limitRetry laterBluesky rate limited the request.
Retry after a delay and reduce rapid record writes.
too many requestsRetry laterBluesky received too many requests.
Queue writes and use exponential backoff.
2 mapped cases
blockedFix inputBluesky moderation blocked the content.
Change the content to comply with Bluesky community rules.
moderationFix inputModeration filters flagged the post.
Remove spam, harassment, or policy-sensitive content before retrying.
2 mapped cases
blob too largeFix inputThe uploaded blob exceeds Bluesky media limits.
Compress the image and retry with a smaller file.
blob invalidFix inputThe uploaded blob is invalid or corrupted.
Re-export the media as a supported image file.
1 mapped case
text too longFix inputThe Bluesky post text exceeds character limits.
Shorten the post or split it into a thread.
The PDS validates record schemas and media limits. Oversized images or invalid post records fail before they reach the app view.
Bluesky has multiple services. A write can succeed while an app-view or feed service is temporarily delayed.
Bluesky uses AT Protocol, so publishing depends on the user's personal data server, session state, record validation, blob upload limits, moderation checks, and app-view propagation. A post can be written successfully but appear delayed in the app view.
For transient Bluesky errors, confirm whether the record exists in the user's repository before creating a duplicate post. Some failures are visibility or propagation delays rather than failed writes.
bundle.social groups Bluesky failures by session auth, PDS host, record validation, blob media, moderation, rate limits, and app-view propagation so failed posts are easier to reason about.
Retry only temporary platform failures, processing delays, timeouts, 5xx responses, and rate-limit errors after the platform allows it. Do not retry the same request when the failure is caused by expired tokens, missing permissions, unsupported media, invalid captions, duplicate content, account restrictions, or policy blocks. The same payload will usually fail again until the account, media, content, or platform-specific setting is fixed.
Platform APIs change. Use these links to confirm current error behavior and field support.
Bluesky errors depend on the user's PDS, AT Protocol record schema, blob limits, moderation systems, and app-view propagation. Confirm the service host and record write stage before assuming a post failed.
No. Reconnect Bluesky for invalid sessions or authentication failures. For record schema, blob size, text length, moderation, rate limit, or propagation issues, fix the payload or wait before writing again.
bundle.social keeps the AT Protocol response available and clarifies whether the problem is auth, PDS routing, record shape, blob upload, moderation, or delayed visibility.
Related
Build with less platform drag