APIのレート制限
BlueskyのAPIのアクセスに対して、全体的なボット対策目的のレート制限と、一部のAPIについては総当たり攻撃防止などの目的でアクセス回数の制限が設けられました。
レート制限の追加
DIDごとに作成されるアクション数のレート制限を追加します。 これらの数字は、一般的なブルースカイ・ユーザーには影響しないはずです。 また、大多数の開発者にも影響はないだでしょう。しかし、ネットワーク上のすべてのユーザーをフォローしたり、すべての投稿に「いいね!」を押したりするような多用なボットには影響します。
上限は1時間あたり5,000ポイント、1日あたり35,000ポイント:
CREATE(ポストの作成など)
3 points
UPDATE(更新、変更。プロフの変更とか、フィードの登録内容更新など)
2 points
DELETE(削除)
1 point
このシステムにより、アカウントは1時間に最大1,666件、1日に最大11,666件のレコードを作成できます。つまり、1時間以内に1,666件までなら問題なく「いいね!」を押すことができます。この閾値を設定する際には、ネットワーク上で最もアクティブな人間のユーザーを考慮に入れました(あなたは私たちの期待を上回りました!)。
2023-08-22 には、これに先立って、ログイン総当たり攻撃などの防止のために、以下のレート制限も導入されています。
BlueskyのAPIの一部にレート制限がかけられました。
対象はupdateHandleやresetPassword等を含むエンドポイントのようです。
ネットワークの安定性とセキュリティを向上させるために、パスワードのリセットなどのアクションに対するアプリケーション レート制限を追加します。
このアップデートは、このサービスのエクスペリエンスに影響を与えることはありません。
詳細については、以下の開発者向けスレッドに記載されています 🧵:
また、開発者が動的に適応できるように、各応答でレート制限ヘッダーを返すようになりました。
より積極的なレート制限を持つルートには、エクスプロイトを防ぐためのupdateHandleやresetPasswordなどのエンドポイントが含まれています。ただし、予期せぬ影響を受けた場合は、お知らせください。
現在のレート制限の入っているAPI
2023/08/25 現在の atproto ソースで確認できたレート制限のかかっている API とその制限です。
グローバルリミット (全ルートで集計)
IPアドレスごとのレート制限
3000回 / 5分
updateHandle
DIDごとのレート制限
10回 / 5分
50回 / 日
createAccount
IPアドレスごとのレート制限
100回 / 5分
createSession
Handleごとのレート制限
30回 / 5分
300回 / 日
deleteAccount
IPアドレスごとのレート制限
50回 / 5分
resetPassword
IPアドレスごとのレート制限
50回 / 5分