EveryData platform API
Bluesky API
Across Bluesky, Bluesky profiles, posts, follower and following relationships, and people discovery are available through 5 separately documented actions, with `profile`, `user_posts`, `followers` illustrating the distinct request shapes.
Two early Bluesky scopes are `profile` for the selected Bluesky record and `user_posts` for posts from a known account; passing `username` isolates account data while keeping their objects and fields interpretable.
- Endpoint
- POST /api/v1/social
- Capabilities
- 5
- Per 1,000
- $1.389
Available capabilities
Compare the Bluesky actions by required input, returned data, and price. Use the action identifier exactly as shown in your request.
| Action | Required | Optional | Delivery | Limit | Per 1,000 | Response fields |
|---|---|---|---|---|---|---|
profileDetails Retrieve details from Bluesky. Accepts these parameters: | username | — | Sync delivery | — | $1.39 per 1,000 requests | banner_url · follower_count · following_count · post_count |
user_postsPosts by user Retrieve public posts from Bluesky. Accepts these parameters: | username | — | Sync delivery | Catalog values: defaultLimit=20, maxLimit=200. A limit can control pages or per-parent expansion for some actions, so it is not always a final row count. | $1.39 per 1,000 requests | id · url · text · author_username · author_name · author_id · author_avatar_url · lang · like_count · repost_count · comment_count · quote_count · bookmark_count · is_reply · is_repost · posted_at · platform |
followersFollowers Retrieve public follower metrics from Bluesky. Accepts these parameters: | username | — | Sync delivery | Catalog values: defaultLimit=30, maxLimit=100. A limit can control pages or per-parent expansion for some actions, so it is not always a final row count. | $1.39 per 1,000 requests | user_id · username · display_name · bio · url · avatar_url · is_verified · joined_at · source_username · platform |
followingFollowing Retrieve accounts followed by a Bluesky user. Accepts these parameters: | username | — | Sync delivery | Catalog values: defaultLimit=30, maxLimit=100. A limit can control pages or per-parent expansion for some actions, so it is not always a final row count. | $1.39 per 1,000 requests | user_id · username · display_name · bio · url · avatar_url · is_verified · joined_at · source_username · platform |
search_peoplePeople search Search Bluesky with the | keyword | — | Sync delivery | Catalog values: defaultLimit=20, maxLimit=200. A limit can control pages or per-parent expansion for some actions, so it is not always a final row count. | $1.39 per 1,000 requests | user_id · username · display_name · bio · url · avatar_url · is_verified · joined_at · source_username · platform |
What does each Bluesky action accept?
Each answer below pairs one callable action with its real inputs. Parameter meanings and allowed values are action-specific; a familiar name does not carry the same meaning across every platform.
Official sources are linked only to clarify the platform term beside them. They do not imply platform authorization or endorsement, and they do not add official-site features to the EveryInfra API contract.
What do the Bluesky profile parameters mean?
Retrieve details from Bluesky. Accepts these parameters: username. Returns these fields: banner_url, following_count, follower_count, and post_count.
usernameRequired- Specifies a complete Bluesky handle, such as alice.bsky.social or a connected custom domain name. Do not pass a display nickname or a bsky.app/profile/ page URL. The profile, user_posts, followers, and following actions all use this parameter to locate the target account.AT Protocol: Handles and DIDsIn the protocol, a handle is a domain-name style user identifier that resolves to a stable DID; the two are not interchangeable inputs.Checked
What do the Bluesky user_posts parameters mean?
Retrieve public posts from Bluesky. Accepts these parameters: username. Returns these fields: is_reply, author_id, author_avatar_url, and author_name.
usernameRequired- Specifies a complete Bluesky handle, such as alice.bsky.social or a connected custom domain name. Do not pass a display nickname or a bsky.app/profile/ page URL. The profile, user_posts, followers, and following actions all use this parameter to locate the target account.AT Protocol: Handles and DIDsIn the protocol, a handle is a domain-name style user identifier that resolves to a stable DID; the two are not interchangeable inputs.Checked
What do the Bluesky followers parameters mean?
Retrieve public follower metrics from Bluesky. Accepts these parameters: username. Returns these fields: is_verified, display_name, source_username, and bio.
usernameRequired- Specifies a complete Bluesky handle, such as alice.bsky.social or a connected custom domain name. Do not pass a display nickname or a bsky.app/profile/ page URL. The profile, user_posts, followers, and following actions all use this parameter to locate the target account.AT Protocol: Handles and DIDsIn the protocol, a handle is a domain-name style user identifier that resolves to a stable DID; the two are not interchangeable inputs.Checked
What do the Bluesky following parameters mean?
Retrieve accounts followed by a Bluesky user. Accepts these parameters: username. Returns these fields: source_username, username, joined_at, and user_id.
usernameRequired- Specifies a complete Bluesky handle, such as alice.bsky.social or a connected custom domain name. Do not pass a display nickname or a bsky.app/profile/ page URL. The profile, user_posts, followers, and following actions all use this parameter to locate the target account.AT Protocol: Handles and DIDsIn the protocol, a handle is a domain-name style user identifier that resolves to a stable DID; the two are not interchangeable inputs.Checked
What do the Bluesky search_people parameters mean?
Search Bluesky with the search_people action. Accepts these parameters: keyword. Returns these fields: username, avatar_url, display_name, and bio.
keywordRequired- Specifies user or account search terms for the search_people action. This endpoint returns matching user profile results and does not search post text; use user_posts with a complete handle to retrieve posts.
How to use the Bluesky API
- 01Read the public catalog and choose a platform action.
- 02Send the platform, action, and required parameters to POST /api/v1/social.
- 03Handle a synchronous result or poll the returned job ID when the selected action is asynchronous.
- 04Store the structured response fields needed by your application.
curl -X POST https://api.everyinfra.com/api/v1/social \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"platform":"bluesky","action":"profile","params":{"username":"<username>"}}'
Bluesky API questions
What can I retrieve with the Bluesky API?
Set platform to bluesky. The current catalog lists details, posts by user, followers, following, and people search. These action names identify different Bluesky objects or views; they are not interchangeable search modes.
Which input starts a Bluesky `profile` request?
Specifies a complete Bluesky handle, such as alice.bsky.social or a connected custom domain name. Do not pass a display nickname or a bsky.app/profile/ page URL. The profile, user_posts, followers, and following actions all use this parameter to locate the target account. Send it as username inside params.
Which fields can Bluesky `profile` return?
Its declared schema includes banner_url, follower_count, following_count, and post_count. A declared field can still be absent from an individual source record, and every other action has its own field list.
Does every Bluesky action return immediately?
No assumption is needed: this page labels each action's delivery mode. The current catalog contains sync delivery; poll a returned job ID only for an action labeled asynchronous.