Bluesky
3 endpoints.
GET /v1/bluesky/post
Post
Fetches a single Bluesky post by URL, returning the post's record text, author info, embed content, replyCount, repostCount, likeCount, and quoteCount. Also includes a replies array with threaded reply posts.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
url required | query | string | Bluesky post URL |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/bluesky/post?url=https://bsky.app/profile/espn.com/post/3lqdfq7fkvm2g" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/bluesky/post?url=https://bsky.app/profile/espn.com/post/3lqdfq7fkvm2g", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/bluesky/post?url=https://bsky.app/profile/espn.com/post/3lqdfq7fkvm2g",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"post": {
"uri": "at://did:plc:x7d6j54pm22ufehkes6jo4jf/app.bsky.feed.post/3lqdfq7fkvm2g",
"cid": "bafyreibams5wyqdpg2cmmks7lhf5ccxu7hbu24sfatgc53jmb2nun5k5dm",
"author": {
"did": "did:plc:x7d6j54pm22ufehkes6jo4jf",
"handle": "espn.com",
"display_name": "ESPN",
"avatar": "https://cdn.bsky.app/img/avatar/plain/did:plc:x7d6j54pm22ufehkes6jo4jf/bafkreie4oxawqqsfzvk47ysr3unsnmviedzpylxmwxnpa534to2bzas4ie@jpeg",
"labels": [],
"created_at": "2024-11-25T21:49:49.345Z",
"verification": {
"verifications": [
{
"issuer": "did:plc:z72i7hdynmk6r22z27h6tvur",
"uri": "at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.graph.verification/3lndppjqgb72f",
"is_valid": true,
"created_at": "2025-04-21T10:44:20.398Z"
}
],
"verified_status": "valid",
"trusted_verifier_status": "none"
}
},
"record": {
"type": "app.bsky.feed.post",
"created_at": "2025-05-29T19:01:20.743Z",
"embed": {
"type": "app.bsky.embed.external",
"card": {
"description": "The Oilers apparently will have defenseman Mattias Ekholm back in their lineup for Game 5 of the Western Conference finals against the Stars.",
"thumb": {
"type": "blob",
"ref": "{...}",
"mime_type": "image/jpeg",
"size": 158648
},
"title": "Oilers' Ekholm set for return in Game 5 vs. Stars",
"uri": "http://spr.ly/63320N4OEy"
},
"external": {
"description": "The Oilers apparently will have defenseman Mattias Ekholm back in their lineup for Game 5 of the Western Conference finals against the Stars.",
"thumb": {
"type": "blob",
"ref": "{...}",
"mime_type": "image/jpeg",
"size": 158648
},
"title": "Oilers' Ekholm set for return in Game 5 vs. Stars",
"uri": "http://spr.ly/63320N4OEy"
}
},
"facets": [],
"text": "Oilers' defenseman Mattias Ekholm is set to return to action Thursday for Game 5 of the Western Conference finals against the Stars.\n\nEkholm has been out of ..."
},
"embed": {
"type": "app.bsky.embed.external#view",
"external": {
"uri": "http://spr.ly/63320N4OEy",
"title": "Oilers' Ekholm set for return in Game 5 vs. Stars",
"description": "The Oilers apparently will have defenseman Mattias Ekholm back in their lineup for Game 5 of the Western Conference finals against the Stars.",
"thumb": "https://cdn.bsky.app/img/feed_thumbnail/plain/did:plc:x7d6j54pm22ufehkes6jo4jf/bafkreihhffgngv4thcnw7sh7o43qnwwyjvfemdlccwalu76r3vnhlbssle@jpeg"
}
},
"reply_count": 1,
"repost_count": 0,
"like_count": 24,
"quote_count": 1,
"indexed_at": "2025-05-29T19:01:21.645Z",
"labels": []
},
"replies": [
{
"type": "app.bsky.feed.defs#threadViewPost",
"post": {
"uri": "at://did:plc:dzsbhwnnvblrpyy2fpnmaih3/app.bsky.feed.post/3lqdii5jmmc2p",
"cid": "bafyreicrfgr5rge655xy6wsgmdiexanr2vhwib7fkjbgu4kku3gzjzwowu",
"author": {
"did": "did:plc:dzsbhwnnvblrpyy2fpnmaih3",
"handle": "thinkasaurus.bsky.social",
"display_name": "Doris the Thinkasaurus",
"avatar": "https://cdn.bsky.app/img/avatar/plain/did:plc:dzsbhwnnvblrpyy2fpnmaih3/bafkreielkwohfe37wdka5336fl2sxijxur242dhovdb2edkk56yuzl4fyu@jpeg",
"labels": [
"{...}"
],
"created_at": "2024-10-21T17:22:27.408Z"
},
"record": {
"type": "app.bsky.feed.post",
"created_at": "2025-05-29T19:50:31.613Z",
"langs": [
"en"
],
"reply": {
"parent": "{...}",
"root": "{...}"
},
"text": "Alright! Now I have a reason to root for Edmonton aside from my burning hatred of Dallas!"
},
"reply_count": 0,
"repost_count": 0,
"like_count": 0,
"quote_count": 0,
"indexed_at": "2025-05-29T19:50:32.451Z",
"labels": []
},
"replies": [],
"thread_context": {}
}
]
}GET /v1/bluesky/user
Profile
Retrieves a Bluesky user's public profile including handle, displayName, avatar, description, followersCount, followsCount, postsCount, createdAt, and verification status. The associated field shows counts for lists, feed generators, and starter packs.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
handle required | query | string | Bluesky handle |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/bluesky/user?handle=espn.com" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/bluesky/user?handle=espn.com", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/bluesky/user?handle=espn.com",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"did": "did:plc:x7d6j54pm22ufehkes6jo4jf",
"handle": "espn.com",
"display_name": "ESPN",
"avatar": "https://cdn.bsky.app/img/avatar/plain/did:plc:x7d6j54pm22ufehkes6jo4jf/bafkreie4oxawqqsfzvk47ysr3unsnmviedzpylxmwxnpa534to2bzas4ie@jpeg",
"associated": {
"lists": 0,
"feedgens": 0,
"starter_packs": 0,
"labeler": false
},
"labels": [],
"created_at": "2024-11-25T21:49:49.345Z",
"verification": {
"verifications": [
{
"issuer": "did:plc:z72i7hdynmk6r22z27h6tvur",
"uri": "at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.graph.verification/3lndppjqgb72f",
"is_valid": true,
"created_at": "2025-04-21T10:44:20.398Z"
}
],
"verified_status": "valid",
"trusted_verifier_status": "none"
},
"description": "Serving sports fans. Anytime. Anywhere.",
"indexed_at": "2024-12-19T20:49:48.843Z",
"followers_count": 198477,
"follows_count": 32,
"posts_count": 659
}GET /v1/bluesky/user_posts
Posts
Fetches a paginated feed of posts from a Bluesky user, returning each post's uri, record text, author info, embed content, replyCount, repostCount, likeCount, quoteCount, and indexedAt. Supports pagination via cursor. Use user_id (the 'did') instead of handle for faster response times.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
handle | query | string | Bluesky handle |
user_id | query | string | Bluesky 'did'. (For some reason Bluesky calls their user ids, 'did' for whatever reason) |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/bluesky/user_posts" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/bluesky/user_posts", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/bluesky/user_posts",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"feed": [
{
"uri": "at://did:plc:x7d6j54pm22ufehkes6jo4jf/app.bsky.feed.post/3lqdfq7fkvm2g",
"cid": "bafyreibams5wyqdpg2cmmks7lhf5ccxu7hbu24sfatgc53jmb2nun5k5dm",
"author": {
"did": "did:plc:x7d6j54pm22ufehkes6jo4jf",
"handle": "espn.com",
"display_name": "ESPN",
"avatar": "https://cdn.bsky.app/img/avatar/plain/did:plc:x7d6j54pm22ufehkes6jo4jf/bafkreie4oxawqqsfzvk47ysr3unsnmviedzpylxmwxnpa534to2bzas4ie@jpeg",
"labels": [],
"created_at": "2024-11-25T21:49:49.345Z",
"verification": {
"verifications": [
"{...}"
],
"verified_status": "valid",
"trusted_verifier_status": "none"
}
},
"record": {
"type": "app.bsky.feed.post",
"created_at": "2025-05-29T19:01:20.743Z",
"embed": {
"type": "app.bsky.embed.external",
"card": {
"description": "The Oilers apparently will have defenseman Mattias Ekholm back in their lineup for Game 5 of the Western Conference finals against the Stars.",
"thumb": "{...}",
"title": "Oilers' Ekholm set for return in Game 5 vs. Stars",
"uri": "http://spr.ly/63320N4OEy"
},
"external": {
"description": "The Oilers apparently will have defenseman Mattias Ekholm back in their lineup for Game 5 of the Western Conference finals against the Stars.",
"thumb": "{...}",
"title": "Oilers' Ekholm set for return in Game 5 vs. Stars",
"uri": "http://spr.ly/63320N4OEy"
}
},
"facets": [],
"text": "Oilers' defenseman Mattias Ekholm is set to return to action Thursday for Game 5 of the Western Conference finals against the Stars.\n\nEkholm has been out of ..."
},
"embed": {},
"reply_count": 1,
"repost_count": 0,
"like_count": 24,
"quote_count": 1,
"indexed_at": "2025-05-29T19:01:21.645Z",
"labels": []
}
],
"next_cursor": "2025-05-22T17:02:02.847Z"
}