Via Composer
$ composer require friendsofapi/sylius-api-client
$apiClient = SyliusClient::create($endpoint, $clientId, $clientSecret);
$accessToken = $apiClient->createNewAccessToken($username, $password);
$apiClient->authenticate($accessToken);
$allProducts = $apiClient->product()->getAll()
APIs are usually split into categories, called Resources.
In your implementation you should also reflect these categories, for example by having their own classes in Api/
.
Let's take a look at Api/Stats
in our case. The response of any call should be an object in Model/Stats/X
,
like Model/Stats/Total
.
The end user chooses which hydrator to use. The default one should return domain objects.
The request builder creates a PSR-7 request with a multipart stream when necessary
If the API does not require multipart streams you should remove the RequestBuilder
and replace it with a RequestFactory
.
The MIT License (MIT). Please see License File for more information.