PHP code example of rawnoq / laravel-api-response

1. Go to this page and download the library: Download rawnoq/laravel-api-response library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

rawnoq / laravel-api-response example snippets


use function respond;

// Success response
return respond()->success($data, 'Operation successful');

// Error response
return respond()->error('Something went wrong', null, 400);

// Custom response
return respond()->response($data, 'Custom message', 200, true, 'custom-action');

// In your controller
public function index()
{
    $users = User::all();
    return respond()->success($users, 'Users retrieved successfully');
}

public function store(Request $request)
{
    $user = User::create($request->validated());
    return respond()->created($user, 'User created successfully');
}

public function show($id)
{
    $user = User::findOrFail($id);
    return respond()->ok('User retrieved successfully', $user);
}

// 200 OK
return respond()->ok('Operation successful', $data);

// 201 Created
return respond()->created($data, 'Resource created successfully');

// 202 Accepted
return respond()->accepted('Request accepted', $data);

// 204 No Content
return respond()->noContent('Resource deleted successfully');

// 400 Bad Request
return respond()->badRequest('Invalid request data');

// 401 Unauthorized
return respond()->unauthorized('Authentication alServerError('An error occurred');

// 502 Bad Gateway
return respond()->badGateway('Bad gateway');

// 503 Service Unavailable
return respond()->serviceUnavailable('Service temporarily unavailable');

// 504 Gateway Timeout
return respond()->gatewayTimeout('Gateway timeout');

public function index()
{
    $users = User::paginate(15);
    return respond()->success($users, 'Users retrieved successfully');
}

$respond = new \Rawnoq\ApiResponse\Support\Respond(
    status_key: 'success',
    enable_status_key: true,
    data_key: 'payload',
    message_key: 'msg',
    messages_key: 'errors'
);

return $respond->success($data, 'Operation successful');

$respond = respond();
$respond->status_key = 'success';
$respond->data_key = 'payload';
$respond->message_key = 'msg';

return $respond->success($data, 'Operation successful');

return respond()->error([
    'Email is ters'
], null, 422);

return [
    'status_key' => 'status',
    'enable_status_key' => true,
    'data_key' => 'data',
    'message_key' => 'message',
    'messages_key' => 'messages',
];



namespace App\Http\Controllers;

use App\Http\Requests\StoreUserRequest;
use App\Models\User;
use Illuminate\Http\Request;
use function respond;

class UserController extends Controller
{
    public function index()
    {
        $users = User::paginate(15);
        return respond()->success($users, 'Users retrieved successfully');
    }

    public function store(StoreUserRequest $request)
    {
        $user = User::create($request->validated());
        return respond()->created($user, 'User created successfully');
    }

    public function show($id)
    {
        $user = User::findOrFail($id);
        return respond()->ok('User retrieved successfully', $user);
    }

    public function update(StoreUserRequest $request, $id)
    {
        $user = User::findOrFail($id);
        $user->update($request->validated());
        return respond()->ok('User updated successfully', $user);
    }

    public function destroy($id)
    {
        $user = User::findOrFail($id);
        $user->delete();
        return respond()->noContent('User deleted successfully');
    }
}

public function store(Request $request)
{
    $validator = Validator::make($request->all(), [
        'email' => 'ssableEntity(
            $validator->errors()->all(),
            $validator->errors()
        );
    }

    // ...
}

public function custom()
{
    $data = ['custom' => 'data'];
    return respond()->response(
        $data,
        'Custom message',
        200,
        true,
        'custom-action'
    );
}
bash
php artisan vendor:publish --tag=api-response-config