matteocacciola / php-trello-api
Trello API v2 client
Requires
- php: >=7.4
- guzzlehttp/guzzle: ~5.3
Requires (Dev)
- phpunit/phpunit: ^4.8
Suggests
- symfony/http-foundation: Needed for the Trello webhook service
README
A simple Object Oriented wrapper for the Trello API, written in PHP7.4.
Uses Trello API v1. The object API is very similar to the RESTful API.
Features
- Follows PSR-0 conventions and coding standards: autoload friendly
- Light and fast thanks to lazy loading of API classes
- Extensively tested
- Ready for Symfony 5
Requirements
Installation
The recommended way is using composer:
$ composer require matteocacciola/php-trello-api
However, php-trello-api
follows the PSR-0 naming conventions, which means you can easily integrate php-trello-api
class loading in your own autoloader.
Basic usage
use Trello\Client; $client = new Client(); $client->authenticate('api_key', 'token', Client::AUTH_URL_CLIENT_ID); $boards = $client->api('member')->boards()->all();
The $client
object gives you access to the entire Trello API.
Advanced usage with the Trello manager
This package includes a simple model layer above the API with a nice chainable API allowing following manipulation of Trello objects:
use Trello\Client; use Trello\Manager; $client = new Client(); $client->authenticate('api_key', 'token', Client::AUTH_URL_CLIENT_ID); $manager = new Manager($client); $card = $manager->getCard('547440ad3f8b882bc11f0497'); $card ->setName('Test card') ->setDescription('Test description') ->save();
Dispatching Trello events to your app
The service uses the Symfony EventDispatcher component to dispatch events occuring on incoming webhooks.
Take a look at the Events class constants for names and associated event classes.
use Trello\Client; use Trello\Service; use Trello\Events; $client = new Client(); $client->authenticate('api_key', 'token', Client::AUTH_URL_CLIENT_ID); $service = new Service($client); // Bind a callable to a given event... $service->addListener(Events::BOARD_UPDATE, function ($event) { $board = $event->getBoard(); // do something }); // Check if the current request was made by a Trello webhook // This will dispatch any Trello event to listeners defined above $service->handleWebhook();
Documentation
- Package API
- Official API documentation.
Contributing
Feel free to make any comments, file issues or make pull requests.
License
php-trello-api
is licensed under the MIT License - see the LICENSE file for details
Credits
- Forked by cdaguerre/php-trello-api
- Largely inspired by the excellent php-github-api developed by the guys at KnpLabs
- Thanks to Trello for the API and documentation.