Trello API:获取看板/列表/卡片信息
Posted
技术标签:
【中文标题】Trello API:获取看板/列表/卡片信息【英文标题】:Trello API: getting boards / lists / cards information 【发布时间】:2014-12-20 13:10:26 【问题描述】:使用 Trello API: - 我已经能够获得分配给 Trello 用户的所有卡片 - 我已经能够获得分配给组织的所有董事会
但我无法获得任何返回组织或用户中所有列表的 API 调用。 有没有允许这样做的功能?
提前致谢
【问题讨论】:
【参考方案1】:我不相信Trello API 中有一种方法可以执行此操作,因此您必须获取用户或组织的板列表:
GET /1/members/[idMember or username]/boards
返回(截断只显示我们关心的部分):
[
"id": "4eea4ffc91e31d1746000046",
"name": "Example Board",
"desc": "This board is used in the API examples",
...
"shortUrl": "https://trello.com/b/OXiBYZoj"
,
"id": "4ee7e707e582acdec800051a",
"name": "Public Board",
"desc": "A board that everyone can see",
...
"shortUrl": "https://trello.com/b/IwLRbh3F"
]
然后获取每个板的列表:
GET /1/boards/[board_id]/lists
返回(截断只显示列表 id 和名称:
[
"id": "4eea4ffc91e31d174600004a",
"name": "To Do Soon",
...
,
"id": "4eea4ffc91e31d174600004b",
"name": "Doing",
...
,
"id": "4eea4ffc91e31d174600004c",
"name": "Done",
...
]
并为每个板查看此响应,以构建用户或组织拥有的所有列表的列表。
【讨论】:
截至目前,有一个电话要求获取 trello 组织中所有板的列表。 /organization/ORG_ID/boards?fields=name 您仍然可以传递每个 ID 以获取板列表【参考方案2】:这是一个快速而肮脏的 bash 脚本,它使用 curl
和 jq
来获取任何给定的 Board 的 ID 或 List 的 ID:
key="<your-key>"
token="<your-token>"
trelloUsername="<you-trello-username>"
boardName="<board-name>"
listName="<list-name>"
boardID=$(curl -s --request GET --url "https://api.trello.com/1/members/$trelloUsername/boards?key=$key&token=$token" --header 'Accept: application/json' | jq -r ".[] | select(.name == \"$boardName\").id")
echo "boardID: $boardID"
listID=$(curl -s --request GET --url "https://api.trello.com/1/boards/$boardID/lists?key=$key&token=$token" | jq -r ".[] | select(.name == \"$listName\").id")
echo "listID: $listID"
示例输出:
boardID: 5eab513c719d2d681bafce0e
listID: 5eab519e66dd4272gb720e22
【讨论】:
【参考方案3】:让你所有的板子都使用
Trello.get("/members/me/boards")
使用 client.js
为我工作【讨论】:
这甚至适用于基本的 Trello REST API:https://api.trello.com/1/members/me/boards
【参考方案4】:
对于希望以最简单的方式访问列表 ID 的用户:
使用“.json”破解!
在您的看板 URL 末尾添加“.json”以显示该板的 API 查询的相同输出,在您的浏览器中! (无需其他工具,无需麻烦处理身份验证)。
例如,如果您的板子的 URL 是:
https://trello.com/b/EI6aGV1d/blahblah
将浏览器指向
https://trello.com/b/EI6aGV1d/blahblah.json
你会得到类似的东西
"id": "5a69a1935e732f529ef0ad8e",
"name": "blahblah",
"desc": "",
"descData": null,
"closed": false,
[...]
"cards": [
"id": "5b2776eba95348dd45f6b745",
"idMemberCreator": "58ef2cd98728a111e6fbd8d3",
"data":
"list":
"name": "Bla blah blah blah blah",
"id": "5a69a1b82f62a7af027d0378"
,
"board":
[...]
您可以在其中搜索列表名称,以便在其旁边轻松找到其 ID。
提示:使用 json 查看器扩展来让您的浏览器显示漂亮的 json。我个人使用https://github.com/tulios/json-viewer/tree/0.18.0,但我想那里有很多不错的选择。
【讨论】:
您可以使用fields
查询参数(...json?fields=...
)过滤掉输出中不必要的字段【参考方案5】:
你可以通过调用来做到这一点
GET /1/organizations/[idOrg]/boards?lists=all
在这里:https://developers.trello.com/advanced-reference/organization#get-1-organizations-idorg-or-name-boards
看看论据。
有几个过滤器和字段。您可以自定义它。
【讨论】:
以上是关于Trello API:获取看板/列表/卡片信息的主要内容,如果未能解决你的问题,请参考以下文章