RESTful API package
596
1
5
Package Data
Maintainer Username: devfactory
Maintainer Contact: alcindo.dacosta@devfactory.ch (Alcindo Da Costa)
Package Create Date: 2014-12-08
Package Last Update: 2016-03-09
Language: PHP
License: MIT
Last Refreshed: 2024-04-15 15:02:28
Package Statistics
Total Downloads: 596
Monthly Downloads: 0
Daily Downloads: 0
Total Stars: 1
Total Watchers: 5
Total Forks: 0
Total Open Issues: 1

Api

Helpers to create an API for laravel 4.2

This module handle json and xml as response

Latest Stable Version Total Downloads License

##How to setup

update composer.json file:

{
    "require": {
        "devfactory/api": "1.0.*"
    }
}

and run composer update from terminal to download files.

update app.php file in app/config directory:

'providers' => array(
  'Devfactory\Api\ApiServiceProvider',
),
alias => array(
    'API'          => 'Devfactory\Api\Facades\ApiFacade',
),

##Configuration

 php artisan config:publish devfactory/api

##How to use api in your route

the param {format} are not mandatory

Route::group(array('prefix' => 'v1'), function()
{
    Route::get('foo.{format}', 'ApiV1\FooController@foo');
    Route::post('bar.{format}', 'ApiV1\FooController@bar');
});

Route::group(array('prefix' => '{format}/v1'), function()
{
    Route::get('foo', 'ApiV1\FooController@foo');
    Route::post('bar', 'ApiV1\FooController@bar');
});

In you controller you can use

  return Response::api(array("foo" => "bar"), 404);
  return Response::api(array("ok"));

or

  return API::createResponse(array("foo" => "bar"), 404);
  return API::createResponse(array("ok"));

##To call your service you can use the Facade

  API::get('v1/foo.json', array('foo' => 'bar'));
  API::post('v1/bar.xml', array('foo' => 'bar'));
  API::put('v1/bar.xml', array('foo' => 'bar'));