A wrapper around the Trello API written in Python. Each Trello object is represented by a corresponding Python object. The attributes of these objects are cached, but the child objects are not. This can possibly be improved when the API allows for notification subscriptions; this would allow caching (assuming a connection was available to invalidate the cache as appropriate).
I've created a Trello Board for feature requests, discussion and some development tracking.
pip install py-trello
from trello import TrelloClient client = TrelloClient( api_key='your-key', api_secret='your-secret', token='your-oauth-token-key', token_secret='your-oauth-token-secret' )
token_secret come from the 3-legged OAuth process and
api_secret are your Trello API credentials that are
To use without 3-legged OAuth, use only
api_secret on client.
Working with boards
all_boards = client.list_boards() last_board = all_boards[-1] print(last_board.name)
working with board lists and cards
all_boards = client.list_boards() last_board = all_boards[-1] last_board.list_lists() my_list = last_board.get_list(list_id) for card in my_list.list_cards(): print(card.name)
Getting your Trello OAuth Token
Make sure the following environment variables are set:
These are obtained from the link mentioned above.
TRELLO_EXPIRATION is optional. Set it to a string such as 'never' or '1day'.
Trello's default OAuth Token expiration is 30 days.
Default permissions are read/write.
More info on setting the expiration here: https://trello.com/docs/gettingstarted/#getting-a-token-from-a-user
Required Python modules
To run the tests, run
python -m unittest discover. Four environment variables must be set:
TRELLO_API_KEY: your Trello API key
TRELLO_TOKEN: your Trello OAuth token
TRELLO_TEST_BOARD_COUNT: the number of boards in your Trello account
TRELLO_TEST_BOARD_NAME: name of the board to test card manipulation on. Must be unique, or the first match will be used
To run tests across various Python versions,
tox is supported. Install it
and simply run
tox from the