Laravel API response format

Created at 21-Sep-2021 , By samar

Laravel API response format

In this article, we will see how to solve "Laravel API response format".

You can create a common response format for API response using a function in laravel. You can call this function to return the data or errors as an API response on call a route in laravel.
  • Function to create laravel API response format

    function create_output($is_success = false, $error=[], $data=[]) {
        if( $is_success ) {
            $output = ['success' => 1];
            if(count($data) > 0) {
                $output['data'] = $data;
            }
        } else {
            $output = [
                'success' => 0,
                'errors' => $error
            ];
        }
        return $this->array_filter_recursive($output);
    }
    
    function array_filter_recursive($array, $callback = null) {
        return $array;
        foreach ($array as $key => & $value) {
            if (is_array($value)) {
                $value = $this->array_filter_recursive($value, $callback);
            }
            else {
                if ( ! is_null($callback)) {
                    if ( ! $callback($value)) {
                        $array[$key] = '';
                    }
                }
                else {
                    if ( ! (bool) $value) {
                        $array[$key] = '';
                    }
                }
            }
        }
        unset($value);
        return $array;
    }
    
    //Call function and return data as API response
    //Return the status success with data
    return $this->create_output(1, [], [
        'id' => $user->id
    ]);
    
    // Return success with no data
    return $this->create_output(1);
    //Return status (success) false with validation error message 
    return $this->create_output(0, $validator->errors()->all());
    

    You can create a trait and copy/paste function in the trait file and call the function in from the controller’s method after importing the trait in the controller file.

Back to code snippet queries related laravel

If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.

Buy Me A Coffee

Don't forget to share this article! Help us spread the word by clicking the share button below.

We appreciate your support and are committed to providing you valuable and informative content.

We are thankful for your never ending support.