如何使用 Trello 的 Rest API 获取看板的所有操作?

How can I get all Actions for a Board using Trello's Rest API?

我想获取看板的所有操作,但 Trello 将结果限制为 1000。我了解处理此问题的正确方法是分页。我试过 beforepage 作为关键词:

基本调用:

https://api.trello.com/1/board/[boardID]/
         ?key=[key]&token=[token]
         &actions=commentCard&actions_limit=1000

备选方案:

Before:

https://api.trello.com/1/board/[boardID]/
         ?key=[key]&token=[token]
         &actions=commentCard&actions_limit=1000&
         before=[oldest_returned_action's_date]

Page:

https://api.trello.com/1/board/[boardID]/
         ?key=[key]&token=[token]
         &actions=commentCard&actions_limit=1000&
         page=[page_number]

结果永远不变 --- 我总是返回 [limit] 次操作,而且无论调用什么,它们总是相同的。我检查了 returned 中的日期,他们肯定不遵守 before 参数。我什至尝试降低限制以确保我没有尝试 return 超过我拥有的。问题依旧。

如何正确获取 Trello 看板的所有操作?

操作按时间倒序排列(从新到旧),因此要翻阅板上的操作,您可以使用如下内容:

curl "https://api.trello.com/1/boards/${BOARD_ID}/actions/?key=${TRELLO_API_KEY}&token=${TRELLO_TOKEN}&limit=1000"

然后,从上面返回的数组的最后一个元素,select dateid 并将其作为 before 参数传递下次调用,例如:

curl "https://api.trello.com/1/boards/${BOARD_ID}/actions/?key=${TRELLO_API_KEY}&token=${TRELLO_TOKEN}&limit=1000&before=${DATE_OR_ID_OF_LAST_ACTION}"

并重复,传入最后一个操作的 iddate 作为后续 before 参数。

参考文献: