Profile viewer

Pick a platform, type a handle and see the profile in the unified schema, with the raw API call next to it.

BlueskyBluesky · @bsky.app
author.followers35,094,902
author.following15
author.createdAtnull

official Bluesky account (check username👆) Bugs, feature requests, feedback: support@bsky.app

Unified fields

Every platform answers with these same names, so a script written for one works on the others. Open the profile

Canonical fields returned
FieldValue
author.iddid:plc:z72i7hdynmk6r22z27h6tvur
author.usernamebsky.app
author.displayNameBluesky
author.followers35,094,902
author.following15
engagement.comments865
content.textofficial Bluesky account (check username👆) Bugs, feature requests, feedback: support@bsky.app

Returned as null (the source does not publish it, so nothing is guessed): computed.language

Recorded response. A saved answer from the real API. Press Run to fetch a live one.

  • Credits1 when run
  • Calls1
  • API time393 ms

The API call behind this

curl -G "https://api.onekey.dev/v1/bluesky/profile" \
  --data-urlencode "handle=bsky.app" \
  -H "x-api-key: $ONEKEY_KEY"
Raw response
{
  "success": true,
  "data": {
    "author": {
      "id": "did:plc:z72i7hdynmk6r22z27h6tvur",
      "username": "bsky.app",
      "displayName": "Bluesky",
      "followers": 35094902,
      "following": 15,
      "avatarUrl": "https://cdn.bsky.app/img/avatar/plain/did:plc:z72i7hdynmk6r22z27h6tvur/bafkreihwihm6kpd6zuwhhlro75p5qks5qtrcu55jp3gddbfjsieiv7wuka"
    },
    "engagement": {
      "comments": 865
    },
    "content": {
      "text": "official Bluesky account (check username👆)\n\nBugs, feature requests, feedback: support@bsky.app"
    },
    "computed": {
      "language": null
    }
  },
  "metadata": {
    "platform": "bluesky",
    "endpoint": "profile",
    "cached": false,
    "credits_charged": 1
  },
  "error": null
}
Get 1,000 free creditsRun this on any input with your own key. No card needed.

How it works

Each platform has a profile endpoint (bluesky/profile, hackernews/user, devto/profile and so on). Their upstream answers look nothing alike, but every one of them comes back with the same canonical names: author.username, author.followers, content.text for the bio. The table under the result lists exactly the fields that platform returned, and the ones it returned as null because the source does not publish them. Nothing is filled in or estimated. See the unified schema and the response envelope.

Each lookup costs one credit and nothing when the profile does not exist. Repeat lookups are answered from cache for free, and the tool tells you when that happened. This viewer runs nine sources; the API has profile endpoints for many more, including ones that need paid data routes and so are not offered in a free tool.