如何获取 Mastodon API 中的所有嘟嘟声并将其删除?

KEI*_*NOS 1 api microblogging mastodon

如何获取我发出过的所有嘟嘟ID?

我想删除我在 Mastodon 的所有嘟嘟声(状态帖子),但无法获取所有嘟嘟声。

如果我删除我的帐户会更容易,尽管我想保留我的帐户并清理我的新闻机器人造成的所有混乱。

目前看来,Mastodon 还没有将删除所有嘟嘟声作为标准功能。

因此,我尝试使用Mastodon API递归删除它们,如下所示,但无法获取所有要删除的 Toot ID(状态 ID)。

  1. GET来自端点的嘟嘟 ID /api/v1/timelines/home

    curl -X GET --header 'Authorization: Bearer <ACCESS_TOKEN>' -sS https://sample.com/api/v1/timelines/home

  2. DELETE在端点处发出嘟嘟声/api/v1/statuses,并带有我得到的嘟嘟 ID。

    curl -X DELETE --header 'Authorization: Bearer <ACCESS_TOKEN>' -sS https://sample.com/api/v1/statuses/<Toot ID>

  3. 循环 2,然后循环 1,直到为空。

它清理了家庭时间线。但公开资料页面上留下了许多嘟嘟声。我还尝试从 ATOM feed 获取 ID,但没有帮助。

我所需要的只是我发出的状态 ID 列表。有任何想法吗?


目前的结论

根据@unarist的建议

API端点

https://sample.com/api/v1/accounts/<account id>/statuses

GET /api/v1/accounts/:id/statuses

将进行抓取。

不过,有3点需要注意:

  1. 默认情况下,此 API 方法仅提供 20 个状态(嘟嘟信息),最多 40 个。
  2. 授权的 API 请求限制为 300 个请求/5 分钟(1 个请求/秒)。
  3. 因此,您每天最多可以删除 84,240 个嘟嘟。

看来我的要求过多,无法获得我需要的信息。所以最好小心服务器的消息!(>_<)/

祝乳齿象玩得愉快!

una*_*ist 5

主页时间线不仅包含您的帖子,还包含您的关注者的帖子,并且服务器仅保留每个主页时间线的最近帖子(默认为 400 条)。因此,您无法从中枚举您的所有帖子。

\n\n

使用帐户状态 API和您的帐户 ID:

\n\n

https://sample.com/api/v1/accounts\xe2\x80\x8b/<account id>/statuses

\n\n

WebUI 在您的个人资料页面 (/web/accounts/xxx) 上使用此 API。

\n