Download
Billbee API
With this package you can implement the official Billbee API in your application.
Prerequisites
Install
You can add this package as composer dependency $ composer require billbee/billbee-api
Official API Documentation
https://app.billbee.io/swagger/ui/index
Usage
Simply instantiate a client object for accessing the api: <?php
$user = 'Your Billbee username';
$apiPassword = 'Your Billbee API Password'; // https://app.billbee.io/de/settings/api
$apiKey = 'Your Billbee API Key';
$client = new \BillbeeDe\BillbeeAPI\Client($user, $apiPassword, $apiKey);
Example: Retrieve a list of products
<?php
$user = 'Your Billbee username';
$apiPassword = 'Your Billbee API Password'; // https://app.billbee.io/de/settings/api
$apiKey = 'Your Billbee API Key';
$client = new \BillbeeDe\BillbeeAPI\Client($user, $apiPassword, $apiKey);
/ @var \BillbeeDe\BillbeeAPI\Response\GetProductsResponse $productsResponse */
$productsResponse = $client->getProducts($page = 1, $pageSize = 10);
/ @var \BillbeeDe\BillbeeAPI\Model\Product $product */
foreach ($productsResponse->data as $product) {
echo sprintf("Id: %s, SKU: %s, Price: %f\n", $product->id, $product->sku, $product->price);
}
Example: Batch requests
<?php
$user = 'Your Billbee username';
$apiPassword = 'Your Billbee API Password'; // https://app.billbee.io/de/settings/api
$apiKey = 'Your Billbee API Key';
$client = new \BillbeeDe\BillbeeAPI\Client($user, $apiPassword, $apiKey);
$client->useBatching = true; # Enable batching
$client->getProducts(1, 1); # Adds the request to the batch pool / returns null
$client->getOrders(1, 1); # Adds the request to the batch pool / returns null
$client->getEvents(1, 1); # Adds the request to the batch pool / returns null
$results = $client->executeBatch(); # Results contain all responses in the added order
/ @var \BillbeeDe\BillbeeAPI\Response\GetProductsResponse $productsResult */
$productsResult = $results[0];
/ @var \BillbeeDe\BillbeeAPI\Response\GetOrdersResponse $productsResult */
$ordersResult = $results[1];
/ @var \BillbeeDe\BillbeeAPI\Response\GetEventsResponse $productsResult */
$eventsResult = $results[2];
Testing
Clone the repository, copy the test_config.dist.yml to test_config.yml and fill it.
Run phpunit
Contributing
Feel free to fork the repository and create pull-requests
|