Magento 2 Create API with samples - Snippet

Magento 2 Create API means helping online retailers generate an Application Programming Interface for the own using. The API is a set of routines, protocols and other tools to design software applications. Thus, API is a required element to connect among the data if you ask for any program or service from other websites. With the creation of API in Magento 2, you can easily get all building blocks to initiate a program successfully.

To support better in Magento 2 module development, Mageplaza team attempts to build API tester in your hello world module of Magento 2 module development series. http://<magento_host>/swagger

Table contents

What is API in Magento 2?

API stands for Application Programming Interface to allow you access the data from an application. API can be called as a middleman between a programmer and an application. When the programmer calls for a request via the middleman, if the request is approved, the right data will be turned back.

As eCommerce stores basing on Magento 2 platform, you should look at two architectural kinds of the web APIs: REST (Representational State Transfer) and SOAP (Simple Object Access Protocol). However, in the official documentation, they only come with raw curl request without any example. In order to connect and use Magento 2 API effectively, this topic will show you PHP examples in specific.

Snippet API

File: etc/webapi.xml

<?xml version="1.0" ?>
<routes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Webapi:etc/webapi.xsd">
	<route method="GET" url="/V1/mageplaza-helloworld/post">
		<service class="Mageplaza\HelloWorld\Api\PostManagementInterface" method="getPost"/>
		<resources>
			<resource ref="anonymous"/>
		</resources>
	</route>
</routes>

File: etc/di.xml

<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
	<preference for="Mageplaza\HelloWorld\Api\PostManagementInterface" type="Mageplaza\HelloWorld\Model\PostManagement"/>
</config>

File: Model/PostManagement.php

<?php 
namespace Mageplaza\HelloWorld\Model;
 
 
class PostManagement {

	/**
	 * {@inheritdoc}
	 */
	public function getPost($param)
	{
		return 'api GET return the $param ' . $param;
	}
}

File: Api/PostManagementInterface.php

<?php 
namespace Mageplaza\HelloWorld\Api;
 
 
interface PostManagementInterface {


	/**
	 * GET for Post api
	 * @param string $param
	 * @return string
	 */
	
	public function getPost($param);
}

Related Post

Enjoyed the tutorial? Spread it to your friends!

magento-2-tutorial
create
api
sample
sinppet
featured

Sam Thomas
Sam Thomas

CEO and Founder of Mageplaza. Pursueing a simple and healthy lifestyle. A friend, a husband and a dad of two children, a trainer and an influencer wannabe. He is a big fan of sports and travel, also.

People also searched for

  • magento 2 create api
  • magento 2 api
  • magento 2 create api endpoint
  • magento 2 custom rest api example
  • how to create api in magento 2
  • magento 2 create rest api
  • magento 2 create custom api
  • magento 2 custom api
  • create api in magento 2
  • magento api
  • create api magento 2
  • magento 2 create custom rest api
  • magento 2 rest api
  • create rest api magento 2
  • magento 2 api tutorial
  • api in magento 2
  • api magento 2
  • magento 2 rest api example
  • create custom api in magento 2
  • magento2 api
  • rest api magento 2
  • magento 2 webapi
  • custom api in magento 2
  • magento rest api
  • magento 2 rest api post example
  • web api magento 2
  • magento 2 api example
  • rest api in magento 2
  • magento api tutorial
  • magento 2 web api
  • 2.2.x, 2.3.x, 2.4.x