#python #api #trello
#python #API #trello
Вопрос:
Trello добавили возможность размещать «обложку» на отдельных карточках. Это может быть сплошной цвет или изображение.
Согласно их API, вы должны иметь возможность обновить это с помощью запроса PUT. Смотрите здесь, в котором говорится об обновлении карточки и включена ‘обложка’. Карточка содержит ряд элементов данных (json), таких как:
«desc»: «старый desc»,
«обложка»: { «яркость»: «свет», «цвет»: нуль, «idAttachment»: нуль, «idUploadedBackground»: нуль, «размер»: «нормальный» },
Я могу обновить другие данные на карточке, например, ‘desc’ через PUT, например, следующим образом:
import requests
url = "https://api.trello.com/1/cards/{myCardID}"
query = {'key': "{myAPIkey}", 'token': "{myToken}"}
payload = {'desc': 'new desc',}
response = requests.request("PUT", url, params=query, data=payload)
print(response.text)
Это успешно обновляет desc до ‘new desc’ следующим образом:
«desc»: «новый desc»,
Я не могу понять, что мне нужно передать, чтобы обновить цвет обложки. Я думаю, что смогу передать это в приведенном выше коде, но это не работает.
payload = {'cover': {'color': 'purple'} }
Я всегда получаю null для цвета в объекте обложки.
«обложка»: { «яркость»: «свет», «цвет»: нуль, «idAttachment»: нуль, «idUploadedBackground»: нуль, «размер»: «нормальный» },
Что мне нужно передать в качестве данных / полезной нагрузки в моем запросе PUT????
примечание: допустимыми цветами являются «розовый», «желтый», «лаймовый», «синий», «черный», «оранжевый», «красный», «фиолетовый», «небесный», «зеленый»
Ответ №1:
следующий код сработал для меня:
headers = {
"Accept": "application/json"
}
url = "https://api.trello.com/1/cards/{card_id}/cover"
params = {"key":key,"token":token,"value":{'idAttachment': None,
'color': 'purple',
'idUploadedBackground': None,
'size': 'full',
'brightness': 'light'}}
response = requests.request("PUT", url, headers=headers, json=params)
Замените правильный идентификатор карты в URL,
Удачи
Комментарии:
1. Ага … спасибо!! Недостающая ссылка… похоже, что их API должен передавать ‘обложку’ через параметр ‘json’ в запросе, а не через параметры или параметры данных (как используются в документации Trello API / примере кода). Изменение параметра на json и оставление URL в качестве конечной точки карты позволяет мне одновременно изменять любые данные карты.
2. Да, их документация неточна