如何获取Mastodon API中的所有toots以删除它们?

时间:2017-12-13 10:15:35

标签: api microblogging

如何获得我所有的toot ID?

我想在Mastodon删除所有的toots(状态帖子),但无法获得所有的麻烦。

如果我删除我的帐户会更容易,但我想让我的帐户保持活力并清理我的NEWS-BOT所造成的所有混乱。

目前似乎Mastodon doesn't have the ability to delete all the toots作为标准功能。

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

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

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

  2. DELETE使用Toot ID在/api/v1/statuses端点进行嘟嘟。

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

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

  4. 它清理了家庭时间表。但是许多嘟嘟声都留在了公共资料页面上。我也尝试从ATOM提要中获取ID,但没有帮助。

    我需要的只是我的状态ID列表。有什么想法吗?

    当前结论

    截至@ unarist的advice

      

    API端点

         

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

         

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

    将进行提取。

    虽然,有3点需要注意:

    1. 默认情况下,此API方法仅为您提供20个状态(嘟嘟信息)和最多40个。
    2. 授权的API请求为limited to 300 requests / 5min(1个请求/秒)。
    3. 因此,您可以删除不超过84,240 toots / day。
    4. 似乎我已经过度要求而无法得到我需要的信息。所以最好小心服务器的消息! (大于_≤)/

      有一个很好的乳齿象时间!

1 个答案:

答案 0 :(得分:2)

家庭时间线不仅包含您的帖子,还包含以下帖子,服务器仅保留每个家庭时间线的近期帖子(默认为400项)。因此,您无法枚举其中的所有帖子。

account statuses API与您的帐户ID一起使用:

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

此API是您的个人资料页面上使用的Web站点(/ web / accounts / xxx)。