Connect to your Akeneo instance using the official akeneo/api-php-client. This package will ease configuration, dependency injection and testing for Laravel.
It also has an endpoint available to receive Akeneo events, if enabled.
<?php
use JustBetter\AkeneoClient\Client\Akeneo;
public function __construct(Akeneo $akeneo)
{
$product = $akeneo->getProductApi()->get('1000');
}
Install the composer package.
composer require justbetter/laravel-akeneo-client
By default, this package will require the latest version of akeneo/api-php-client
. You should take a look at the
compatibility table to see what version you need for your project.
composer require akeneo/api-php-client "^9.0"
Optionally, publish the configuration of the package.
php artisan vendor:publish --provider="JustBetter\AkeneoClient\ServiceProvider" --tag=config
Add the following values to your .env
file.
AKENEO_URL=
AKENEO_CLIENT_ID=
AKENEO_SECRET=
AKENEO_USERNAME=
AKENEO_PASSWORD=
AKENEO_EVENT_SECRET=
If you have enabled the event subscription in Akeneo you will be to listen to these events.
The event webhook is /akeneo/event
. This can be configured using the prefix
in your akeneo
config file.
All events are available.
<?php
use Illuminate\Support\Facades\Event;
use JustBetter\AkeneoClient\Events\ProductCreatedEvent;
Event::listen(function (ProductCreatedEvent $event): void {
//
});
This package makes testing and mocking Akeneo calls very easily.
<?php
use Illuminate\Support\Facades\Http;
use JustBetter\AkeneoClient\Client\Akeneo;
// This will fake Akeneo credentials and a sign in.
Akeneo::fake();
// Fake the specific call you will be using
Http::fake([
'akeneo/api/rest/v1/products/1000' => Http::response([
'identifier' => '1000',
'enabled' => true,
'family' => 'hydras',
'categories' => [],
'groups' => [],
'parent' => null,
'values' => [
'name' => [
[
'locale' => 'nl_NL',
'scope' => 'ecommerce',
'data' => 'Ziggy',
],
],
],
]),
]);
// Get the product with the fake response
$response = $akeneo->getProductApi()->get('1000');
To ensure the quality of this package, run the following command:
composer quality
This will execute three tasks:
- Makes sure all tests are passed
- Checks for any issues using static code analysis
- Checks if the code is correctly formatted
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.