To get started, simply require the project using Composer.
You will also need to install packages that "provide" psr/http-client-implementation and psr/http-factory-implementation.
A list with compatible HTTP clients and client adapters can be found at php-http.org.
If you don't know which HTTP client to use, we recommend using Guzzle 7:
composer require mbvienasbaitas/strapi-php-client guzzlehttp/guzzle http-interop/http-factory-guzzle:^1.0use MBVienasBaitas\Strapi\Client\Client;
use MBVienasBaitas\Strapi\Client\Contracts\Requests\Collection\IndexRequest;
use MBVienasBaitas\Strapi\Client\Contracts\Requests\Options\OptionLocale;
use MBVienasBaitas\Strapi\Client\Contracts\Requests\Options\OptionSortAsc;
$client = new Client('{url}', '{token}');
$request = IndexRequest::make(
new OptionLocale('en'),
new OptionSortAsc('title'),
);
$endpoint = $client->collection('articles');
$response = $endpoint->index($request);More usage examples can be found in examples folder.
Each request can accept multiple options. Here is a list of all available options.
| Option | Description |
|---|---|
| OptionFields | Defines which fields to load. |
| OptionFilters | Applies specified filters. |
| OptionId | Sets active resource ID. |
| OptionJsonBody | Ads application/json body from a given array. |
| OptionLocale | Sets resource locale. |
| OptionPaginationOffset | Offset based pagination. |
| OptionPaginationPaged | Page based pagination. |
| OptionPopulateDeep | Sets populate option, requires strapi-plugin-populate-deep plugin to be installed in strapi build. |
| OptionPopulateNested | Defines which relations to load. |
| OptionPopulateWildcard | Loads all first level relations. |
| OptionPublicationStateLive | Set publication state to live. |
| OptionPublicationStatePreview | Set publication state to preview. |
| OptionSort | Define sorting options. |
| OptionSortAsc | Set single field sort in ascending order. |
| OptionSortDesc | Set single field sort in descending order. |
| OptionStreamBody | Set custom stream body, mainly used for media uploads. |
composer testPlease see CHANGELOG for more information on what has changed recently.
This package structure was inspired by meilisearch-php package.
The MIT License (MIT). Please see License File for more information.