Skip to content

sametsahindogan/response-object-creator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

response-object-creator

GitHub license

This package provides to standardized response objects for your API.

One of the important things in an API is that it has a standard response type. This package provides a standard response structure for your API.

Installation

composer require sametsahindogan/response-object-creator

Usage

If you want to return a "success" result;

// Your array that you want to return as an object. 
 $data = [
        'id' => 1,
        'name' => 'John',
        'surname' => 'Doe'
    ];

// If you use pure PHP;
 return json_encode( new SuccessResult($data) );
    
// If you use Laravel Framework;
 return response()->json( new SuccessResult($data) );

// If you use Symfony Framework;
 return new JsonResponse( new SuccessResult($data) );

Output;

{
      "success": true,
      "data": {
          "id": 1,
          "name": "John",
          "surname": "Doe"
      }
}

If you want to return an "error" result;

// You must create an Error Builder object.
 $errorBuilder = new ErrorBuilder();

// If you use pure PHP;
  return json_encode(new ErrorResult(
             $errorBuilder->title('Error')
                 ->message('Something wrong happened.')
                 ->code(1)
                 ->extra(['You can add some extra messages or etc.'])
         )
     );
    
// If you use Laravel Framework;
 return response()->json(new ErrorResult(
             $errorBuilder->title('Error')
                 ->message('Something wrong happened.')
                 ->code(1)
                 ->extra(['You can add some extra messages or etc.'])
         )
     );

// If you use Symfony Framework;
 return new JsonResponse(new ErrorResult(
             $errorBuilder->title('Error')
                 ->message('Something wrong happened.')
                 ->code(1)
                 ->extra(['You can add some extra messages or etc.'])
         )
     );

Output;

{
      "success": false,
      "data": {
          "message": "User does not have the right roles or permissions.",
          "title": "Operation Failed",
          "code": 1,
          "extra": [ 
               "You can add some extra messages or etc."
          ]
      }
}

License

MIT © Samet Sahindogan

About

Provide to standardized response objects for your API.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages