mbvienasbaitas / strapi-php-client
PHP Client wrapper for Strapi API.
Installs: 2 118
Dependents: 1
Suggesters: 0
Security: 0
Stars: 5
Watchers: 0
Forks: 1
Open Issues: 1
pkg:composer/mbvienasbaitas/strapi-php-client
Requires
- php: ^8.1
- ext-json: *
- php-http/client-common: ^2.6
- php-http/discovery: ^1.14
- php-http/httplug: ^2.3
Requires (Dev)
- guzzlehttp/guzzle: ^7.5
- phpunit/phpunit: ^9.5
Suggests
- guzzlehttp/guzzle: Use Guzzle ^7 as HTTP client
- http-interop/http-factory-guzzle: Factory for guzzlehttp/guzzle
README
Installation
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.0
Usage
use 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.
Available request options
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-deepplugin 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. | 
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
Credits
This package structure was inspired by meilisearch-php package.
Alternatives
License
The MIT License (MIT). Please see License File for more information.