API Reference

Quick reference for common framework surfaces

This page is a compact reference for APIs you will use frequently in Glueful applications.

Response Helpers

use Glueful\Http\Response;

Response::success($data);
Response::created($data);
Response::noContent();
Response::notFound('Not found');
Response::unauthorized('Unauthorized');
Response::forbidden('Forbidden');
Response::validation(['field' => ['Message']]);
Response::error('Server error', 500);
Response::paginated($items, $total, $page, $perPage);

BaseController Helpers

Inside controllers that extend Glueful\Controllers\BaseController:

$data = $this->getRequestData();
$putData = $this->getPutData();

return $this->success($data);
return $this->created($data);
return $this->notFound('Missing');

Database

BaseController exposes $this->db:

$users = $this->db->table('users')->get();
$user = $this->db->table('users')->where('id', 1)->first();
$id = $this->db->table('users')->insert(['name' => 'John']);
$this->db->table('users')->where('id', 1)->update(['name' => 'Jane']);
$this->db->table('users')->where('id', 1)->delete();

Validation

Simple controller validation:

if ($error = $this->validateRequest($data, [
    'email' => 'required|email|max:255',
])) {
    return $error;
}

Rule-object validation:

use Glueful\Validation\Validator;
use Glueful\Validation\Rules\Required;

$validator = new Validator([
    'name' => [new Required()],
]);

$errors = $validator->validate($input);

Routing Attributes

use Glueful\Routing\Attributes\Controller;
use Glueful\Routing\Attributes\Get;
use Glueful\Routing\Attributes\Route;

#[Controller(prefix: '/v1/users')]
class UserController
{
    #[Get('/{id}', where: ['id' => '\d+'])]
    public function show(int $id): \Glueful\Http\Response
    {
        return \Glueful\Http\Response::success(['id' => $id]);
    }

    #[Route('/search', methods: 'GET')]
    public function search(): \Glueful\Http\Response
    {
        return \Glueful\Http\Response::success([]);
    }
}

CLI

Current commonly used commands:

php glueful install
php glueful serve
php glueful migrate:run
php glueful migrate:status
php glueful scaffold:controller UserController
php glueful scaffold:model User
php glueful scaffold:request CreateUserRequest
php glueful generate:key
php glueful generate:openapi
php glueful cache:clear