Join us at GITEX 2024! Discover our solutions at Hall 4, Booth H-30 Schedule a Meeting Today.
Automate Marketing Initiatives with Salesforce Marketing Cloud Learn More
Join us at GITEX 2024! Discover our solutions at Hall 4, Booth H-30 Book your live demo today.

Why Laravel is the Best Platform for Creating Efficient APIs?

PHP has become the most popular web language in recent years due to its ease of use. Also due to its ability to quickly construct feature-rich web applications. Meanwhile, to design and consume APIs, dynamic, interactive, secure, and efficient websites require a robust tool suite. So, to create content that enhances discoverability and helps achieve business goals, we use Laravel for API development. In this article, we’ll look at how to use Laravel to create and test a robust API.

Requirements

Consider the following technologies as we develop our Laravel APIs:
PHP
Composer
Laravel
When it comes to developing our API, we’ll use PHP. There are other ways to install PHP on our machine.


A package manager for PHP is Composer. You can declare your application’s requirements, and it will download them for you. Let’s get Composer up and running.

 

To download, go to this link:


https://getcomposer.org/download/

 

To download, go to this link:


https://getcomposer.org/doc/00-intro.md

 

Now we can install Laravel by running the Composer command:

raycast untitled 2 1 1

The composer will download and install Laravel. And along with it any required dependencies when you execute this command. Here we are talking about the ones establishing a project for us to work on. You can quickly read the entire installation.

https://laravel.com/docs/9.x/installation


After everything has been downloaded, use the following command to test the installation:

raycast untitled 17

Planning the API

Build an API with Laravel 8 crud with a passport authentication. Example; This tutorial will show you how to create API using Laravel & passport auth. Passport auth is typically used to convey information that can be trusted and confirmed using a digital signature.


Use HTTP verbs/methods as actions in RESTful APIs, and endpoints as resources acted upon. The HTTP verbs will be used for their semantic meaning:

First, let’s define API method:

 

GET: retrieve resources
POST: create resources
PUT: update resources
DELETE: delete resources

 

Let’s now start building a robust RESTful API in the Laravel 8 app using Passport Authentication. We will also show you a fully functional CRUD for user products that use the API.

This Laravel 8 rest API crude tutorial with a passport; Using Passport Authentication would create an API like this

 

Login API
Register it
Get User Info API
Product List it
Create Product API
Edit Product API
Update Product API
Delete Product API

Rest CRUD APIs in Laravel 8 With These 8 Steps

 

Download Laravel 8 App
Database Configuration
Install Passport Auth
Passport Configuration
Create Product Table and Model
Run Migration
Create Auth and CRUD APIs Route
Create Passport Auth and CRUD Controller
Test Laravel 8 REST CRUD API with Passport Auth in Postman

Download Laravel 8 App


First of all, Open command prompt and run the following command to install laravel 8 app:

raycast untitled

Database Configuration

 

Now, navigate to the root directory of your Laravel restful authentication API with passport tutorial project that you just installed. Then open the .env file. Then, as follows, add the database information:

raycast untitled 1

Install Passport Auth

 

Run the following command to install the passport package:

raycast untitled 2 1 2

 

To produce passport encryption keys, you’ll need to install Laravel. This command will generate the encryption keys required for safe access token generation:

raycast untitled 3

Passport Configuration

 

Navigate to the App/Models directory and open the User.php file. Then, in User.php, add the following code:

raycast untitled 4 892x1536 1

Next In App/Providers/AuthServiceProvider.php, create passport routes. Update this line in App/Providers/AuthServiceProvider.php => Inside the boot method, register Passport::routes():

raycast untitled 5 1536x1417 1

Next, open the auth.php file in the config/auth.php directory. Then change the API driver to passport for the session. Put the following code in API: ‘driver’ => ‘passport’

raycast untitled 6

Create Product Table and Model

 

To build a product model and migration file, open a terminal and type the following command:

raycast untitled 7

After that, open the create products table.php file in the database/migrations directory. After that, add the following code to it:

raycast untitled 8 1120x1536 1

Then, in the product.php file, add the fillable property: navigate to the app/models directory, open product.php, and add the following code:

raycast untitled 9

Run Migration

 

In this phase, you’ll use the bellow command to migrate your data. This command generates the following database tables:

raycast untitled 10

Create Auth and CRUD APIs Route

 

Create the rest API auth and crud operation routes in this phase.


To begin, open api.php in the routes directory. Then, in the api.php file, edit the following routes.

raycast untitled 11

Create Passport Auth and CRUD Controller

 

In this step, Create a controllers name PassportAuthController and ProductController. Use the below command and create a controller :

raycast untitled 12 1

 

After that, in PassportAuthController.php, create several authentication methods. So, open the PassportAuthController.php file in the app/http/controllers/API directory. Also, in your PassportAuthController.php file, add the following methods:

raycast untitled 13 886x1536 1

 

Next, in ProductController.php, create rest api crud methods. So, open the ProductController.php file in the app/http/controllers/API directory. Also, in your ProductController.php file, add the following methods:

raycast untitled 14 463x1536 1

 

Then, to start the development server, open a command line and type the following command:

raycast untitled 15

Test Laravel 8 REST CRUD API with Passport Auth in Postman

Now, in the Postman app, we’ll call the above-mentioned generate crud and auth apis:

1 – Laravel Register Rest API :

Screenshot 44 1024x576 1 1

2 – Login API :

 

You’ll then use the getUser, create product, list product, edit product, and remove product APIs in the next step. The access token must be given as headers in this api:

raycast untitled 16

3 – Product List API
Method:- POST
URL:- http://127.0.0.1:8000/api/products

4 – Product Create API
Method:- POST
URL:- http://127.0.0.1:8000/api/products

image 27

5 – Product Fetch API
Method:- GET
URL :- http://127.0.0.1:8000/api/products/{id}

image 28

– Product Update API
Method:- PUT
URL :- http://127.0.0.1:8000/api/products/{id}

image 29

7 – Product Delete API
Method:- DELETE
URL :- http://127.0.0.1:8000/api/products/{id}

image 30

A place for big ideas.

Reimagine organizational performance while delivering a delightful experience through optimized operations.

 

To sum up, PHP is the language that most web developers use. And the software that has recently been the most successful in deploying web applications. You can create efficient APIs in Laravel 8 with passport auth. Also you can use the Postman app to call these APIs, hence making it a very useful language.

Top Stories

Enhancing GraphQL with Roles and Permissions
Enhancing GraphQL with Roles and Permissions
GraphQL has gained popularity due to its flexibility and efficiency in fetching data from the server. However, with great power comes great responsibility, especially when it comes to managing access to sensitive data. In this article, we'll explore how to implement roles and permissions in GraphQL APIs to ensure that
Exploring GraphQL with FastAPI A Practical Guide to begin with
Exploring GraphQL with FastAPI: A Practical Guide to begin with
GraphQL serves as a language for asking questions to APIs and as a tool for getting answers from existing data. It's like a translator that helps your application talk to databases and other systems. When you use GraphQL, you're like a detective asking for specific clues – you only get
Train tensorflow object detection model with custom data
Train Tensorflow Object Detection Model With Custom Data
In this article, we'll show you how to make your own tool that can recognize things in pictures. It's called an object detection model, and we'll use TensorFlow to teach it. We'll explain each step clearly, from gathering pictures, preparing data to telling the model what to look for in
Software Development Team
How to deploy chat completion model over EC2?
The Chat Completion model revolutionizes conversational experiences by proficiently generating responses derived from given contexts and inquiries. This innovative system harnesses the power of the Mistral-7B-Instruct-v0.2 model, renowned for its sophisticated natural language processing capabilities. The model can be accessed via Hugging Face at – https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.2.Operating on a dedicated GPU server g4dn.2xlarge,
How to deploy multilingual embedding model over EC2
How to deploy multilingual embedding model over EC2?
The multilingual embedding model represents a state-of-the-art solution designed to produce embeddings tailored explicitly for chat responses. By aligning paragraph embeddings, it ensures that the resulting replies are not only contextually relevant but also coherent. This is achieved through leveraging the advanced capabilities of the BAAI/bge-m3 model, widely recognized for
Tracking and Analyzing E commerce Performance with Odoo Analytics
Tracking and Analyzing E-commerce Performance with Odoo Analytics
Odoo is famous for its customizable nature. Businesses from around the world choose Odoo because of its scalability and modality. Regardless of the business size, Odoo can cater to the unique and diverse needs of any company. Odoo has proven its capacity and robust quality in terms of helping businesses

          Success!!

          Keep an eye on your inbox for the PDF, it's on its way!

          If you don't see it in your inbox, don't forget to give your junk folder a quick peek. Just in case.









              You have successfully subscribed to the newsletter

              There was an error while trying to send your request. Please try again.

              Zehntech will use the information you provide on this form to be in touch with you and to provide updates and marketing.