bwt-team / laravel-api
Package helping with API development
Installs: 10 196
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 2
Forks: 0
Open Issues: 0
pkg:composer/bwt-team/laravel-api
Requires
- php: ^8.0.2
- illuminate/http: ^9.0
- illuminate/support: ^9.0
Requires (Dev)
- phpunit/phpunit: ^9.0
This package is not auto-updated.
Last update: 2025-10-12 06:02:20 UTC
README
English description | Russian description
Laravel 5 API
This package allows to easily and quickly setup basics for API.
Content
Installation
Install this package with composer using the following command:
composer require bwt-team/laravel-api
Setup in Laravel
When composer updated, add service provider into providers array in config/app.php.
BwtTeam\LaravelAPI\Providers\ApiServiceProvider::class
This service provider will register api macros for more comfortable work.
You will have the following format of call available in api format:
response()->api($data)
In full format it will look as following:
new \BwtTeam\LaravelAPI\Response\ApiResponse($data)
Also, this service provider will allow to publish config file in order to update package settings according to your needs. Use the following command for publication:
php artisan vendor:publish --provider="BwtTeam\LaravelAPI\Providers\ApiServiceProvider" --tag=config
To make all responses (including alerts etc) be sent in the same format, change class parent to \BwtTeam\LaravelAPI\Exceptions\Handler in App\Exceptions\Handler class
class Handler extends \BwtTeam\LaravelAPI\Exceptions\Handler
And middleware \BwtTeam\LaravelAPI\Middleware\Api should be connected to specific path (or the whole app) to make this path be handled as API method.
If you are using App\Http\Requests class instances for validation, you need to inherit from BwtTeam\LaravelAPI\Requests\ApiRequest, rather than Illuminate\Foundation\Http\FormRequest.
Setup in Lumen
After composer update register a service provider, by adding the following lines into bootstrap/app.php:
$app->register(\BwtTeam\LaravelAPI\Providers\ApiServiceProvider::class);
Copy config file vendor/bwt-team/laravel-api/config/api.php into config directory, which is stored in root directory (or create it yourself if it is missing) and set it up according to your needs.
To load settings from this file in bootstrap/app.phpadd the following lines:
$app->configure('api');
To make all responses (including alerts etc) be sent in the same format, change class parent to BwtTeam\LaravelAPI\Exceptions\LumenHandler in App\Exceptions\Handler
class Handler extends \BwtTeam\LaravelAPI\Exceptions\LumenHandler
And middleware \BwtTeam\LaravelAPI\Middleware\Api should be connected to specific path (or the whole app) to make this path be handled as API method.
License
This package is using MIT.