e.g. Microsoft Azure API Management, Mulesoft etc.
Table of content
- What is APIM ?
- What’s API Gateway ?
- Different examples /technology gaints surfacing API management solutions (Microsoft azure APIM, Amazon & Mulesoft)
let’s get started -
API Management: Putting in simple terms — API Management is a platform or a general layer serving a a solution to create and manage your APIs in one place (see it primarily as a facade pattern of oops)
Nutshell this is what it does → surface+ Manage your input apis+ Make them accessible to the outside world and+ Interact with your backend services all in a standarized, secure & consistent way.
in addition, this approach brings what we call a Unified API Management practise ahead & also best suited for Microservice based API architecture. Also on a side note, it can be done on public or private .
Now why you need it → Usually Your oranization always have different APIs exposed from multiple systems (say backends) interacting with each other in the landscape and also with the outside world for different web / mobile applications and this creates the NEED to have 1 consistant way to access & maintain those backend services, this is where your API management platform does the job of managing them all from one platform.
Elements, typically API management as an overall solution consists of primarily 3 core elements , you see it from Mulesoft, Google (apigee) or Microsoft Azure APIM perspective, perhaps just different names —
- API management portal (admin panel) to administrator and develop your api processes (core engine) this is where you — Create &manage your api schemas, API defination, API lifecycle Management, Manage access & policies (filter Ips, rate limit etc.)
- API Gateway (proxy server) — Routing & other cross cutting topics authentication & authorization (verify api keys JWT token certificates), Caching, logging and Monitoring, other policies, proxy api requests.
- Developer / consumer Portal (publishing / consuming) — self service portal, documentation , basically listing out all apis.
Clear so far! now we understood what is API managemnt platform and need for it. lets also see one of the important element in detail which is API gateway- generally its just one of the component (Proxy sever) sitting th umbrella.
API Gateway in the context of API Management is a single “service/ component” which acts as an acts as a “single entry point for your apis”. Now, what it does is- it accepts all the api calls, handles them & send them to backends & in return also handles the response mechanism to send it back to the caller. side note. You can build your own Api gateway as well or utilize exisitng from market leader
On one end, it provides capabilities to surface & shape your actual real apis to outer world and second end italso has other below jobs -
Imagine it like a guard! where the prime job is to consolidate all the cross cutting concerns from business logic layer(Security, authN, authZ, caching, routing, load balancing, protocol adapters, ip filtering etc.) and put this in one component level.
After unboxing this is how it looks →
User makes a request to accesss resource on web which makes an api call, hits front-end api (experience layer) which receives the request & front-end layer calls the backend which actually processes the operation and send the results back to caller.
Examples of Cloud based & on premise API Management platforms are:
- Microsoft Azure APIM
- Mulesoft’s Anypoint Platform (One platform for APIs and integrations)
- Amazon AWS Gateway
- Google Cloud apigee API Management
- Netflix Zuul
- Microsoft Azure API Management (how tha azure APIM console looks like)
- This is how you can visualize, showing API management layer sitting in middle as an abstraction between your business web/ mobile apps and the actual services exposed from individual backend systems.
Few Screens to share Mulesoft, Microsoft Azure :
Microsoft Azure API Gateway: →
Benefits you get with API management solution are:
- Access your cloud and on premise apis from one place
- Accelerate your busines with API first approach
- Improve the api discovery with parnters, interal teams etc.
- Secure your apis / resources with applied authentication, autz and rate limits
To know more about API managment solutions, you can check below links to learn about Microsoft , Mulesoft and Amazon solutions, below:
Happy Learning!!, leave me a comment if you like, also welcome any feedback to help improvise myself ! :)