🪺

BlueSky(ブルースカイ)を使えばいいのにね。

2024/10/02に公開

まえがき

SNSは、今を知るツールです。そのためたくさんの人が書き込み、読み漁ります。ツイッターからXになって、制限が増えました。文句をいっても大本は最強です。ツイッターをつくったジャック・ドーシーが手掛けるブルースカイならツイッター的なマインドが強いはずが、ヒトはいうて流れません。10年かけて気づいた壁の低さは、なかなか真似できません。クロームの覇権に12年?だったかかかったように、GoogleではなくY!がながらく使われていたように...

ツイッター感のあるAPIは健在

時代の流れもありますが、BOTとかおもしろいものはBlueSkyでできます。もし当時の人たちと同じマインドのスクリプター?(プログラマーとか趣味プログラマー)がこちらで構築を始めれば、いずれツイッター的なものの再来は可能です。シードです。10年先に種をまきませんか。

まずはレコードの取得

今は自由にアカウントをつくれます。そしてアカウントを作る=開発アカウントです。いましかないっしょ。レート制限はありますが、レコードの取得は、まちがってなければ5分間で3000リクエストできます。やばいっしょ。

curl -X POST "https://bsky.social/xrpc/com.atproto.server.createSession" \
  -H "Content-Type: application/json" \
  -d '{"identifier":"__ACCOUNT_EMAIL__", "password":"__PASSWORD__"}'

これで、返ってきたjson内に「accessJwt」ってのがあります。それをレコード取得APIのヘッダーにAuthorization Bearerとしてぶち込みます。

curl -L -X GET 'https://bsky.social/xrpc/com.atproto.repo.listRecords?repo=__TARFET_USER__&collection=app.bsky.feed.post' \
-H 'Accept: application/json' \
-H "Authorization: Bearer __KOKONIBUCHIKOMU__"

レコード取得時の逆引きはapp.bsky.feed.postなんだそうです。決まりなので深く考えない。
これで、ワッサーってjsonが返ってきます。

参考:APIリファレンス
https://docs.bsky.app/docs/api/com-atproto-repo-list-records

参考:APIレートリミット
https://docs.bsky.app/docs/advanced-guides/rate-limits

Discussion