denysloshkarev / laravel-api
The Laravel Api Module.
Installs: 12
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 1
Language:CSS
pkg:composer/denysloshkarev/laravel-api
Requires
This package is auto-updated.
Last update: 2025-10-29 03:03:36 UTC
README
$ php composer.phar require dskripchenko/laravel-api "@dev"
or add
"dskripchenko/laravel-api": "@dev"
to the require section of your composer.json file.
Usage
See Dskripchenko\LaravelApiExample\
- make
ApiModuleextended fromDskripchenko\LaravelApi\Components\BaseModule - make
Apiextended fromDskripchenko\LaravelApi\Components\BaseApi - define
getMethodsmethod - override
getApiVersionListinApiModule, return array of['version' => Api::class] - make
ApiServiceProviderextended fromDskripchenko\LaravelApi\ApiServiceProvider - override
getApiModulein newApiServiceProvider - register
ApiServiceProvider
Api methods template
protected static function getMethods(){ return [ 'controllers' => [ '{controllesKey1}' => [ 'controller' => '{Controller::class}', 'actions' => [ '{actionKey1}', // api/version/{controllesKey1}/{actionKey1} '{actionKey2}' => '{real method name}', //api/version/{controllesKey1}/{actionKey2} '{actionKey3}' => false, //disable //api/version/{controllesKey1}/{actionKey3} '{actionKey4}' => [ 'exclude-all-middleware' => true, //optional, exclude all global and controller middleware 'middleware' => [ "{Middleware::class}" ], //optional, define specific middleware 'exclude-middleware' => [], //optional, exclude specific middleware ], ], 'exclude-all-middleware' => true, //optional, ... 'middleware' => [], //optional, ... 'exclude-middleware' => [], //optional, ... ] ], 'middleware' => [] //optional, ... ]; }
AutoDoc comments to swagger
/** * Method title * Method description * * @input type $requiredVariable1 name1 * @input type ?$optionalVariable2 name2 * * @output type $variable1 name1 * @output type $variable2 name2 */
Available types string|number|integer|boolean|file
Facades
- ApiRequest
- getApiVersion
- getApiMethod
- getApiControllerKey
- getApiActionKey
- ApiModule
- getApiPrefix
- getAvailableApiMethods
- getApiUriPattern
- getControllerNamespace
- getApiMiddleware
- getApiVersionList
- makeApi
- ApiErrorHandler
- addErrorHandler
- handle
Helpers
- ApiResponseHelper
- say
- sayError
- ArrayMergeHelper
- merge //deep array merge
Example
- register
Dskripchenko\LaravelApiExample\ExampleApiServiceProvider - run
php artisan vendor:publish - run
php artisan storage:link - open
/api/doc