API generator for laravel 5

1.0 2016-11-09 00:33 UTC

This package is auto-updated.

Last update: 2024-06-29 02:05:23 UTC



API generator for Laravel 5

StyleCI StyleCI StyleCI

Apify Logo

Table Of Contents


To install apify use composer


composer require consoletvs/apify

Add service provider & alias

Add the following service provider to the array in: config/app.php


Publish the assets

php artisan vendor:publish


To configure the package go to: config/apify.php

The default file have a valid example and it's documented, check it out, should look like this:


return [
    | Prefix used to access the API
    'prefix' => 'apify',

    | Enables or disabled the whole API endpoints
    'enabled' => true,

    | The tables enabled for the api and it's columns
    'tables' => [

        // Specify all the tables below

        'users' => [

            // The columns from the table that will be displayed in the JSON

            'id', 'name', 'email', 'created_at', 'updated_at'




Visit the endpoint like this:

Website URL + /api/ + Prefix + /{table}/{accessor?}/{data?}

table: is the table you want to look at, must be an index of the table array in the configuration.

accessor: is optional, and it's the colum to filter data.

data: is the data you're filtering, you can add multiple data separated with a ,

Note: Remember that all calls to the API goes first to the api middleware, if you need to modify the api throttle go to: App\Http\Kernel.php and modify the api throttle.

'api' => [

The 60 determines the max calls / minute.

The 1 determines the minutes to wait if the max calls are exceded.

Some examples:

http://localhost/web/Laralum3/public/api/apify/users (example URL)
{"users":[{"id":1,"name":"\u00c8rik Campobadal","email":"","created_at":"2016-09-22 16:13:28","updated_at":"2016-10-02 11:18:25"},{"id":2,"name":"Second User","email":"","created_at":"2016-09-21 16:13:28","updated_at":"2016-09-22 16:20:00"},{"id":3,"name":"Third User","email":"","created_at":"2016-08-22 16:13:28","updated_at":"2016-09-22 16:20:00"}]}
http://localhost/web/Laralum3/public/api/apify/users/email/, (example URL)
{"users":[{"id":1,"name":"\u00c8rik Campobadal","email":"","created_at":"2016-09-22 16:13:28","updated_at":"2016-10-02 11:18:25"},{"id":3,"name":"Third User","email":"","created_at":"2016-08-22 16:13:28","updated_at":"2016-09-22 16:20:00"}]}