Notes: Module 1: Mule 3 Fundamentals: Introducing API-Led Connectivity

1-1) Introducing API-Led Connectivity

Image: The API-led connectivity approach: System APIs > Process APIs > Experience APIs

“You are not bound into this big monolithic architecture that is impossible to change!”

1-2) Introducing APIs and web services
1-3) Introducing SOAP web services

SOAP web services:
- Other systems interact with the web service in a manner prescribed by its WSDL description using SOAP protocol.
- WSDL (Web Services Description Language)
--- An interaction in XML-based, machine processable format.
--- Defines operations, arguments, data types, and more.
- SOAP (Simple Object Access Protocol)
--- An XML-based protocol.
--- Defines the message architecture and message formats.
- Requires tooling to publish and consume them.

1-4) Introducing RESTful web services

RESTful web services:
- Second generation web services
- Simple and easy to use
--- Do not require XML-based web services protocols (SOAP and WSDL) to support their interfaces.
--- Use standard HTTP protocol.
- Lightweight without a lot of extra XML markup.
- Human readable results (usually JSON or XML.)
- Easy to build & no toolkits required.

RESTful web service requests:
GET retrieves the current state of a resource
POST creates a new resource
DELETE deletes a resource
PUT replaces a resource completely
PATCH partially updates a resource

The leading source of news & information about APIs:

Mulesoft: Developer Portal:

1-5) Calling RESTful web services

Image: Common HTTP status code

1-6) Building successful APIs

“Whether it is private or public, it is one that developers want to use and share with others.”
“Focus on getting API design right before investing in building it.”
“Design the API for the business use case(s) it will fulfil, not to model the backend services or applications they expose.”

Image: API development cycle: API definition > API Implementation > API

1-7) Introducing API-led connectivity with Anypoint Platform

Tools for API definition stage:
- API Designer
- Mocking Service
- API Console
- API Portal
- Exchange
- API Notebook

Tools for API implementation stage:
- Anypoint Studio (Build)
- MUnit (Test)

Tools for API:
- API Manager (Version + Secure + Troubleshoot + Scale + Respond)
- Runtime Manager (Deploy & Register + Monitor + Troubleshoot)
- API Analytics (Analyze + Troubleshoot)

Image: Anypoint Platform: The components

1-8) Summary

“Anypoint Platform is a connectivity platform for connecting any app, data source, device, and API - both in the cloud and on-prem.”