eozden/api-response

Laravel api response macros

v1.0.3 2023-01-05 20:47 UTC

This package is auto-updated.

Last update: 2025-04-06 02:03:11 UTC


README

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.