LUYA headless API client

Installs: 20 165

Dependents: 3

Suggesters: 0

Security: 0

Stars: 10

Watchers: 5

Forks: 2

Open Issues: 0


2.10.1 2023-09-13 08:46 UTC



LUYA Headless Client

A client library to access content from the LUYA APIs (or any other REST API).

LUYA Tests Latest Stable Version Maintainability Test Coverage Total Downloads


Add the LUYA headless client library to your composer.json:

composer require luyadev/luya-headless


Quick intro about how to use the headless library with a custom Endpoint: Create the Api Class (this very similar to Active Record pattern):

class ApiCars extends \luya\headless\ActiveEdnpoint
    public $id;
    public $name;
    public $year;

    public function getEndpointName()
        return '{{api-cars}}';

With the new ApiCars class you can now insert, update or fetch data:

use luya\headless\Client;

// build client object with token and server infos
$client = new Client('API_TOKEN', 'http://localhost/luya-kickstarter/public_html');

// create new value
$car = new ApiCars();
$car->name = 'BMW';
$car->year = 2019;

// find a given user by its ID
$car = ApiCars::viewOne(1, $client);
echo $car->name; // BMW
echo $car->year; // 2019

// update an existing value
$car->year = '2018';

// iterate all cars
$users = ApiCars::find()->setSort(['id' => SORT_ASC])->all($client);
foreach ($users->getModels() as $car) {
      echo $car->name;


See the full Documentation in order to see how to make put, delete or post request, handle pagination or access the cms blocks.

Development and Contribution