Skip to main content

Python wrapper around the Trello API (Home Assistant specific)

Project description

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).

Install

pip install ha-py-trello

Usage

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'
)

Where token and token_secret come from the 3-legged OAuth process and api_key and api_secret are your Trello API credentials that are (generated here).

To use without 3-legged OAuth, use only api_key and 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:

  • TRELLO_API_KEY

  • TRELLO_API_SECRET

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

Run

python -m trello oauth

Required Python modules

Found in requirements.txt

Tests

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

NOTE: It’s recommended to create a separate Trello account for testing. While the tests try to only modify or delete resources they’ve created, to remove all possibility of unintentional data loss, we recommend not using a personal Trello account with existing data.

To run tests across various Python versions, tox is supported. Install it and simply run tox from the ha-py-trello directory.

## Publishing To publish, simply create a release on GitHub and a workflow will kick off to publish to PyPI. If you’d like to publish locally, follow the below instructions.

First ensure the appropriate tools are installed locally: `shell python3 -m pip install --upgrade build python3 -m pip install --upgrade twine ` Then build and publish: `shell python3 -m build python3 -m twine upload dist/* ` For more information see the [official packaging and publishing docs](https://packaging.python.org/en/latest/tutorials/packaging-projects).

Forked from original: https://github.com/sarumont/py-trello

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ha_py_trello-0.24.1.tar.gz (32.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ha_py_trello-0.24.1-py3-none-any.whl (44.1 kB view details)

Uploaded Python 3

File details

Details for the file ha_py_trello-0.24.1.tar.gz.

File metadata

  • Download URL: ha_py_trello-0.24.1.tar.gz
  • Upload date:
  • Size: 32.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for ha_py_trello-0.24.1.tar.gz
Algorithm Hash digest
SHA256 14e4639ebd6ef3f1b5a0c77dcd44f4579e7110ccc132bca2371821e0a5675c9e
MD5 1e40eb39e585f0a5f7a28fa95a7d6115
BLAKE2b-256 88349de422a7e877e36e29fa4de54e26c85ddcc1957037ce2c0ec870c97328c3

See more details on using hashes here.

File details

Details for the file ha_py_trello-0.24.1-py3-none-any.whl.

File metadata

  • Download URL: ha_py_trello-0.24.1-py3-none-any.whl
  • Upload date:
  • Size: 44.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for ha_py_trello-0.24.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d1363ac21c4bcc19a1d728f5cc20681840f74ae74f0750bc31efbb3d35cb5202
MD5 d128089f870aab64f464066680c93439
BLAKE2b-256 388d18d35723e6affc2cd9e1998d291b093ba7d37130b082fb057533489df367

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page