Get profile
const url = 'https://api.fxbsky.app/2/profile/bsky.app';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.fxbsky.app/2/profile/bsky.appReturns profile fields in the same envelope as FxTwitter GET /2/profile/{handle} (code, message, user). handle may be a handle (e.g. user.bsky.social) or a DID (did:plc:…).
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Example
bsky.appBluesky handle or DID (did:plc:…)
Responses
Section titled “ Responses ”Profile (check code)
object
object
Discriminator: full user profile (API v2).
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
Set to suspended when the user is suspended; omitted for plain not found.
Numeric user id when the upstream payload includes it.
Example
{ "user": { "type": "profile", "verification": { "type": "organization" } }, "reason": "suspended"}Invalid path parameters
object
Example
{ "code": 400}User not found
object
object
Discriminator: full user profile (API v2).
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
Set to suspended when the user is suspended; omitted for plain not found.
Numeric user id when the upstream payload includes it.
Example
{ "user": { "type": "profile", "verification": { "type": "organization" } }, "reason": "suspended"}Server or upstream failure
object
object
Discriminator: full user profile (API v2).
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
Set to suspended when the user is suspended; omitted for plain not found.
Numeric user id when the upstream payload includes it.
Example
{ "user": { "type": "profile", "verification": { "type": "organization" } }, "reason": "suspended"}