trello API 将标签添加到 python 中的卡片
trello API add label to card in python
我有一个带有列表的 trello 看板,用 python 和手动标签创建了一些卡片。我可以使用 python.
获取 card_id 和标签 ID
但我不明白如何将现有标签添加到现有卡中。
API description 处的示例代码是:
import requests
url = "https://api.trello.com/1/cards/{id}/idLabels"
query = {
'key': 'APIKey',
'token': 'APIToken'
}
response = requests.request(
"POST",
url,
params=query
)
我试过了:
main_trello_endpoint = "https://api.trello.com/1/"
def add_label_to_card(card_id, label_id):
add_label_endpoint = main_trello_endpoint+"cards/"+card_id+"/"+label_id
querystring = {"key":trello_key,"token": trello_token}
response = requests.post(add_label_endpoint, params= querystring)
return response
add_label_to_card(existing_card_id, existing_label_id))
响应是 404
我这边的误会是什么?
您发送请求的url+您的请求方式不正确
显然有一个端点可以按照您的方式执行此操作,对不起。
您需要发送一个 PUT 请求,并将 idLabels 作为 put 数据中的参数。
https://developer.atlassian.com/cloud/trello/rest/api-group-cards/#api-cards-id-put
您需要使用 request.put
标签对象本身 + 您想要的标签 ID
data = {
**current_label,
"idLabels": ",".join(current_label.idLabels + [new_label_ids])
}
request.put("trello_api/cards/card-id/", data=data, params=querystring)
对于端点,您 post 您 url 似乎是错误的。它只需要一个卡 ID,您需要 post 该值作为查询参数。 (这很荒谬,但事实就是如此)
def add_label_to_card(card_id, label_id):
url = f"https://api.trello.com/1/cards/{card_id}/idLabels"
params = {**auth_params, "value": label_id}
response = request.post(url, params=params)
# preferably some cleanup and status checks
return ...
如果这也不起作用,请尝试将 data={"value": label_id}
放入相同的 url
我有一个带有列表的 trello 看板,用 python 和手动标签创建了一些卡片。我可以使用 python.
获取 card_id 和标签 ID但我不明白如何将现有标签添加到现有卡中。 API description 处的示例代码是:
import requests
url = "https://api.trello.com/1/cards/{id}/idLabels"
query = {
'key': 'APIKey',
'token': 'APIToken'
}
response = requests.request(
"POST",
url,
params=query
)
我试过了:
main_trello_endpoint = "https://api.trello.com/1/"
def add_label_to_card(card_id, label_id):
add_label_endpoint = main_trello_endpoint+"cards/"+card_id+"/"+label_id
querystring = {"key":trello_key,"token": trello_token}
response = requests.post(add_label_endpoint, params= querystring)
return response
add_label_to_card(existing_card_id, existing_label_id))
响应是 404 我这边的误会是什么?
您发送请求的url+您的请求方式不正确
显然有一个端点可以按照您的方式执行此操作,对不起。
您需要发送一个 PUT 请求,并将 idLabels 作为 put 数据中的参数。
https://developer.atlassian.com/cloud/trello/rest/api-group-cards/#api-cards-id-put
您需要使用 request.put
标签对象本身 + 您想要的标签 ID
data = {
**current_label,
"idLabels": ",".join(current_label.idLabels + [new_label_ids])
}
request.put("trello_api/cards/card-id/", data=data, params=querystring)
对于端点,您 post 您 url 似乎是错误的。它只需要一个卡 ID,您需要 post 该值作为查询参数。 (这很荒谬,但事实就是如此)
def add_label_to_card(card_id, label_id):
url = f"https://api.trello.com/1/cards/{card_id}/idLabels"
params = {**auth_params, "value": label_id}
response = request.post(url, params=params)
# preferably some cleanup and status checks
return ...
如果这也不起作用,请尝试将 data={"value": label_id}
放入相同的 url