トゥートしたすべてのトゥート ID を取得するにはどうすればよいですか?
マストドンのトゥート(ステータス投稿)を全て削除したいのですが、トゥートが取れません。
アカウントを削除した方が簡単ですが、アカウントを存続させて、NEWS-BOT が行った混乱をすべてクリーンアップしたいと考えています。
現在、マストドンには全トゥース削除機能が標準装備されていないようです。
そこで以下のようにMastodon APIを再帰的に使って削除しようとしたのですが、削除対象のToot ID(ステータスID)をすべて取得できませんでした。
GET
/api/v1/timelines/home
エンドポイントからのトゥート ID 。curl -X GET --header 'Authorization: Bearer <ACCESS_TOKEN>' -sS https://sample.com/api/v1/timelines/home
DELETE
/api/v1/statuses
私が取得したToot IDを持つエンドポイントのtoot 。curl -X DELETE --header 'Authorization: Bearer <ACCESS_TOKEN>' -sS https://sample.com/api/v1/statuses/<Toot ID>
空になるまで 2 をループしてから 1 をループします。
ホームタイムラインをクリーンアップしました。しかし、公開プロフィール ページには多くのトゥースが残されていました。また、ATOM フィードから ID を取得しようとしましたが、役に立ちませんでした。
必要なのは、私が取得したステータス ID のリストだけです。何か案は?
現在の結論
@unaristのアドバイスの時点で、
API エンドポイント
https://sample.com/api/v1/accounts/<account id>/statuses
フェッチを行います。
ただし、注意すべき点が 3 つあります。
- デフォルトでは、この API メソッドは 20 のステータス (トゥート情報) と最大 40 のみを提供します。
- 承認された API リクエストは、300 リクエスト/5 分(1 リクエスト/秒) に制限されています。
- したがって、削除できるツールは 1 日あたり 84,240 個までです。
リクエストが多すぎて、必要な情報を取得できなかったようです。そのため、サーバーのメッセージには注意してください! (>_<)/
楽しいマストドンを!