使用 R 在自定义字段上使用 trello API
trello API on custom fields using R
我正在尝试更新 trello 上的自定义字段。
我已经创建了一个虚拟帐户来共享它的凭据,以确保有一个可重现的示例。
require("httr")
PUT("https://api.trello.com/1/cards/5f6888ab6301b68b8a614156/customField/5f6889e2d2536e5364eed893/item?key=d674c81261ea78489bcef67dda228790&token=bdcdd065a63b82fb0e2f5f98a7464791698e4fa98004ec02f2690bce9ce2a59d&value=")
content(GET("https://api.trello.com/1/boards/5f6888aa5f8b800c21e81f6e?key=d674c81261ea78489bcef67dda228790&token=bdcdd065a63b82fb0e2f5f98a7464791698e4fa98004ec02f2690bce9ce2a59d&cards=all&card_fields=all&customFields=true&card_customFieldItems=true"))[["cards"]][[1]][["customFieldItems"]][[1]][["value"]][["text"]]
PUT("https://api.trello.com/1/cards/5f6888ab6301b68b8a614156/customField/5f6889e2d2536e5364eed893/item?key=d674c81261ea78489bcef67dda228790&token=bdcdd065a63b82fb0e2f5f98a7464791698e4fa98004ec02f2690bce9ce2a59d&value=something")
content(GET("https://api.trello.com/1/boards/5f6888aa5f8b800c21e81f6e?key=d674c81261ea78489bcef67dda228790&token=bdcdd065a63b82fb0e2f5f98a7464791698e4fa98004ec02f2690bce9ce2a59d&cards=all&card_fields=all&customFields=true&card_customFieldItems=true"))[["cards"]][[1]][["customFieldItems"]][[1]][["value"]][["text"]]
第 2 行我正在尝试删除字段上的值(“请将我从 API”更改为
第 3 行我正在获取值并意识到它仍然是相同的
第 4 行我将尝试将值更改为“ee”
第 5 行我会检查它是否仍然无法正常工作。
错误略有不同(404 对 400)所以我猜我很接近。
花了我好几天终于搞定了。
对于可能遇到相同问题的任何人:
而不是在 url 本身上使用 "&value=something"
,您必须使用 PUT 中的 body 参数。像这样:
PUT("https://api.trello.com/1/cards/aa/customField/bb/item?key=cc&token=dd", body = list(value = list("text" = "something")), encode = "json")
看起来 trello api 需要将值作为 json 传递,并且必须通过 body 参数完成。
根据需要更改aa
bb
cc
dd
和something
"text"
如果使用不同的数据类型
为了完整起见,您可以使用 API client:
library(trelloR)
update_card_field(card_id, field = "field_id", key = "text",
value = "Updated!")
我正在尝试更新 trello 上的自定义字段。
我已经创建了一个虚拟帐户来共享它的凭据,以确保有一个可重现的示例。
require("httr")
PUT("https://api.trello.com/1/cards/5f6888ab6301b68b8a614156/customField/5f6889e2d2536e5364eed893/item?key=d674c81261ea78489bcef67dda228790&token=bdcdd065a63b82fb0e2f5f98a7464791698e4fa98004ec02f2690bce9ce2a59d&value=")
content(GET("https://api.trello.com/1/boards/5f6888aa5f8b800c21e81f6e?key=d674c81261ea78489bcef67dda228790&token=bdcdd065a63b82fb0e2f5f98a7464791698e4fa98004ec02f2690bce9ce2a59d&cards=all&card_fields=all&customFields=true&card_customFieldItems=true"))[["cards"]][[1]][["customFieldItems"]][[1]][["value"]][["text"]]
PUT("https://api.trello.com/1/cards/5f6888ab6301b68b8a614156/customField/5f6889e2d2536e5364eed893/item?key=d674c81261ea78489bcef67dda228790&token=bdcdd065a63b82fb0e2f5f98a7464791698e4fa98004ec02f2690bce9ce2a59d&value=something")
content(GET("https://api.trello.com/1/boards/5f6888aa5f8b800c21e81f6e?key=d674c81261ea78489bcef67dda228790&token=bdcdd065a63b82fb0e2f5f98a7464791698e4fa98004ec02f2690bce9ce2a59d&cards=all&card_fields=all&customFields=true&card_customFieldItems=true"))[["cards"]][[1]][["customFieldItems"]][[1]][["value"]][["text"]]
第 2 行我正在尝试删除字段上的值(“请将我从 API”更改为 第 3 行我正在获取值并意识到它仍然是相同的
第 4 行我将尝试将值更改为“ee” 第 5 行我会检查它是否仍然无法正常工作。
错误略有不同(404 对 400)所以我猜我很接近。
花了我好几天终于搞定了。
对于可能遇到相同问题的任何人:
而不是在 url 本身上使用 "&value=something"
,您必须使用 PUT 中的 body 参数。像这样:
PUT("https://api.trello.com/1/cards/aa/customField/bb/item?key=cc&token=dd", body = list(value = list("text" = "something")), encode = "json")
看起来 trello api 需要将值作为 json 传递,并且必须通过 body 参数完成。
根据需要更改aa
bb
cc
dd
和something
"text"
如果使用不同的数据类型
为了完整起见,您可以使用 API client:
library(trelloR)
update_card_field(card_id, field = "field_id", key = "text",
value = "Updated!")