Skip to content

eozden/api-response

Repository files navigation

Api Response Macros for Laravel

Latest Version on Packagist Software License Build Status StyleCI Total Downloads

image

This package makes it easy to create rest api responses for Laravel 5.5+, 6.x, 7.x and 8.x.

Contents

Installation

Via Composer

$ composer require eozden/api-response

Or you can manually update your require block and run composer update if you choose so:

{
    "require": {
        "eozden/api-response": "^1.0"
    }
}

Usage

Available macros

response()->ok($data = null, int $code = null);
response()->error($data = null, int $code = null);

Sample Responses

{
  "success": true,
  "code": 200,
  "locale": "en",
  "message": "OK",
  "data": null
}
{
  "success": false,
  "code": 422,
  "locale": "en",
  "message": "UNPROCESSABLE ENTITY",
  "data": null
}

Examples

public function delete()
{
    User::find(1)->delete();

    return response()->ok();
}

Config

return [

    /**
     * Default response code settings
     */ 
    "default" => [
        "ok" => \Eozden\ApiResponse\ResponseStatus::OK,
        "error" => \Eozden\ApiResponse\ResponseStatus::UNPROCESSABLE_ENTITY,
    ],
    
    /**
     * Force to use middleware to return response as a json
     */ 
    "force" => true,
    
    /**
     * You can add your custom HTTP Status Codes
     */ 
    "map" => [
        \Eozden\ApiResponse\ResponseStatus::OK => "ok",
        \Eozden\ApiResponse\ResponseStatus::CREATED => "created",
        \Eozden\ApiResponse\ResponseStatus::ACCEPTED => "accepted",
        \Eozden\ApiResponse\ResponseStatus::NO_CONTENT => "no_content",
        \Eozden\ApiResponse\ResponseStatus::NOT_MODIFIED => "not_modified",
        \Eozden\ApiResponse\ResponseStatus::BAD_REQUEST => "bad_request",
        \Eozden\ApiResponse\ResponseStatus::UNAUTHORIZED => "unauthorized",
        \Eozden\ApiResponse\ResponseStatus::FORBIDDEN => "forbidden",
        \Eozden\ApiResponse\ResponseStatus::NOT_FOUND => "not_found",
        \Eozden\ApiResponse\ResponseStatus::CONFLICT => "conflict",
        \Eozden\ApiResponse\ResponseStatus::UNPROCESSABLE_ENTITY => "unprocessable_entity",
        \Eozden\ApiResponse\ResponseStatus::INTERNAL_SERVER_ERROR => "internal_server_error"
    ]
];

Changelog

Please see CHANGELOG for more information what has changed recently.

Testing

$ composer test

Security

If you discover any security related issues, please email enes@emarka.com.tr instead of using the issue tracker.

Contributing

Please see CONTRIBUTING for details.

Credits

License

The MIT License (MIT). Please see License File for more information.

About

Easily create rest api responses

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages