Sei sulla pagina 1di 22

Managing the full API lifecycle

API
Service
with APIs
Managing the
full API lifecycle
Spec
Managing the full API lifecycle

Introduction
In today’s competitive landscape, businesses need to make decisions
quickly; whether it’s a new marketing campaign, a new product
enhancement, a new partner portal or an employee productivity app,
businesses are competing on speed.

What is needed is flexibility. And what better way to do this than to


create purposeful, agile application building blocks that can be easily
pieced together with well-designed, well-managed APIs to quickly create
what is needed.

Connecting these building blocks results in a network of


interchangeable functionality — a network of sub-functions, or
applications. We call it the application network.

Let's future-proof ourselves and hedge against uncertainty by creating


these building blocks, and then allow for the flexibility to rapidly piece
them together on an on-demand basis.
Managing the full API lifecycle

Welcome to the application


network
The application network is the future. It emerges from
the creation of multiple API-enabled microservices;
connecting these microservices with a strategic API
approach results in a composable network. The network
allows the flexibility to rapidly piece together different
services for multiple functionalities an on-demand basis,
providing business agility and a robust platform for
innovation.

Application building blocks


are key to enabling the
application network.
Managing the full API lifecycle

The anatomy of an application


building block
An application network is composed of application
building blocks. These have multiple elements. and it's
critical to separate the concerns between each. The API
interface, the API implementation, and the API
Purposefully Powerful runtime Automatic and management aspects all have their own specific, unique
productized API core with ubiquitous enforced security lifecycles to follow. This building block should itself be
connectivity and governance
treated as a product since these characteristics are
common to what a good product should also have.

Aesthetics Performance Serviceability Therefore, it makes sense to treat a building block from a
and reliability
product-centric approach.

We see this product-centric lifecycle as having three


distinct stages: design, implementation, and management.
The lifecycle of an application building
Managing the full API lifecycle block

Design

Service
with APIs

Implementation
API
Spec

Management
Managing the full API lifecycle

Service

Design
with APIs

API
Spec
Managing the full API lifecycle

How to design an API


Designing an API starts with an acknowledgement
ahead of time that the API production process will start
from an outside-in perspective, beginning with the
“interface/contract” of the API. That is to say, first let us
decide what the API will look and behave like before
we actually begin to code the backend logic.

Often, developers build APIs without knowing the


API has been validated and accepted. As a result,
there is always this air of uncertainty: “is this what my
consuming developers want?”
Managing the full API lifecycle

6
• Mock up the API


Publish interactive console
Create Notebook use cases
• Modify API design as appropriate
based on developer feedback. “Outside-in” done right
• Receive developer feedback • Continue to validate

API developers must design the “user interface” of the


API first – this is also known as the API contract. This
approach is typically known as a “design-first” approach,
and it should follow a deliberate API design lifecycle in
API order to optimize for the best API experience.
Spec
As a result, it is important to be able to do this in a
human-readable fashion — to specify the contract in
way that humans can easily digest.

• Identify process and business


• Model API resources requirements
• Model API operations/methods • Create logical data model
• Model request/response • Translate into logical service/
payload/codes API groupings
Managing the full API lifecycle

Soliciting feedback on the


| Tips | What is API
Notebook and why is it

API design
important?
Think of API Notebook as Exchange

the artifact to convey the Show content from:


Add item Search

inspiration for what is


Everywhere Status Scope Sort by: Rating

Show:
At this point in the process, the API designer (i.e. the designer
possible with an API.
Connectors
Sending JSON to a JMS Queue MuleSoft Download

of the API contract) is ready to have the API be validated and


Templates Learn how to connect toJMS Queues and Topics.
Examples (5 votes) View details

RAMLs

It serves as a client
WSDLs

Others Salesforce Data Retrieval Download

tested by the API consumers (i.e. a client mobile app /website


MuleSoft

Learn how to build a simple HTTP application to query Salesforce in a dynamic way.
Edit terms View details

application – it calls one or


(5 votes)

developer, or another API provider in some cases).


Object
Product
Account
Salesforce to Salesforce, Workday, SAP and Database Account

more APIs; it is therefore a


Contact
Download
Custum Object Broadcast MuleSoft
Lead Real time synchronization of accounts from one Salesforce org to another as well as a
Opportunity Workday HCM instance, an SAP instance and a Database using a non-persistent JMS topic. View details

live use case in action,


User
(5 votes)
Worker
Employee

The currency of conversation between both parties will be via


Video

where one can easily


Demo Extracting Data from LDAP MuleSoft Download
Learn how to connect to an LDAP directory using Mule and retrieve a list of users.
Products
Salesforce (4 votes) View details
SAP

mash up multiple APIs, interactive tools such as the API Notebook and interactive
Siebel
Workday

experiment, tinker and see


documentation ,to name a few. There are many other tools
what can be built.
that can be referenced from the raml.org site.
Another benefit of having
a Notebook is that it also
This process of validation may be brief or extended over
serves as a sort of testing
sandbox for an API. numerous iterations.
Managing the full API lifecycle

Exchange
Repeatable design
Any well-designed API will have repeatability in it as well
Add item Search
Show content from:

Everywhere Status Scope Sort by: Rating

Show:
Connectors
Sending JSON to a JMS Queue MuleSoft Download
as repeatability across other APIs. This can easily be
Templates

encapsulated into best practice patterns both at the


Learn how to connect toJMS Queues and Topics.
Examples (5 votes) View details

RAMLs

structural level of the API (nouns /resources), as well as


WSDLs

Others Salesforce Data Retrieval MuleSoft Download


Learn how to build a simple HTTP application to query Salesforce in a dynamic way.

at the method level (verbs) . So as API developers go


Edit terms (5 votes) View details

Object
Product
Account
Salesforce to Salesforce, Workday, SAP and Database Account

about the design process, it is important to be able to


Contact
Download
Custum Object Broadcast MuleSoft
Lead Real time synchronization of accounts from one Salesforce org to another as well as a
Opportunity Workday HCM instance, an SAP instance and a Database using a non-persistent JMS topic. View details

discover and share repeatable patterns.


User
(5 votes)
Worker
Employee

Video
Demo Extracting Data from LDAP MuleSoft Download
Learn how to connect to an LDAP directory using Mule and retrieve a list of users.
Products
Salesforce (4 votes) View details
SAP
Siebel
Workday
Managing the full API lifecycle

Service

Implementation
with APIs

API
Spec
Managing the full API lifecycle

10

| Tips | What do we
mean by ‘systematic’
Connect systematically, not in
in this case? We see it
as having the following an ad-hoc fashion
architectural patterns
easily available to the API
API implementation is a critical piece of enabling
developer:
a next generation enterprise. Enabling for dozens,

VS
• Orchestration
potentially even hundreds or thousands of APIs to be
• Transformation
• Routing connected down to a backend and connected to each
• Data mapping other will be key.
• Connectivity to popular
SaaS, on-prem systems This must be done in a systematic manner (as
and data, file and other
opposed to point-to-point code).
protocols

It also must be: Orders Customers Orders Customers


• Out of the box
• Pattern based
• Extendable and based on
best practices
Managing the full API lifecycle

11

| Tips | Best practice


patterns to be leveraged Put API design principles and
best practices in a common
when creating new
building blocks. Exchange

repository
Add item Search
Show content from:

• popular database calls Everywhere Status Scope Sort by: Rating

• most commonly done


Show:
Connectors
Sending JSON to a JMS Queue MuleSoft Download
Templates Learn how to connect toJMS Queues and Topics.

transformations
Examples (5 votes) View details

RAMLs

WSDLs

• most popular workflows Others Salesforce Data Retrieval MuleSoft

Learn how to build a simple HTTP application to query Salesforce in a dynamic way.
Download

Benefits of a best practices repository:


Edit terms (5 votes) View details

across multiple systems Object

• Increase business agility


Product
Account
Salesforce to Salesforce, Workday, SAP and Database Account

• connections to popular
Contact
Download
Custum Object Broadcast MuleSoft
Lead Real time synchronization of accounts from one Salesforce org to another as well as a
Opportunity Workday HCM instance, an SAP instance and a Database using a non-persistent JMS topic. View details

SaaS and on-premise • Share best practices with reusable templates and
User
(5 votes)
Worker
Employee

Video

endpoints logic
Demo Extracting Data from LDAP MuleSoft Download
Learn how to connect to an LDAP directory using Mule and retrieve a list of users.
Products
Salesforce (4 votes) View details

• REST-SOAP
SAP

• Leverage best practice patterns


Siebel
Workday

transformations
• Rapidly deploy APIs: fail fast, succeed faster
• Minimize point-to-point logic, and future proof for
stability
Managing the full API lifecycle

12

Testing the API


implementation
Exchange

Add item Search


Show content from:

Everywhere Status Scope Sort by: Rating

Show:

At this point in the process, the API provider (i.e. the


Connectors
Sending JSON to a JMS Queue MuleSoft Download
Templates Learn how to connect toJMS Queues and Topics.
Examples (5 votes) View details

RAMLs

WSDLs developer behind the API implementation) is ready to


Others Salesforce Data Retrieval MuleSoft Download

Edit terms
Learn how to build a simple HTTP application to query Salesforce in a dynamic way.
(5 votes) View details have the ‘guts’ of the API tested.
Object
Product
Account
Salesforce to Salesforce, Workday, SAP and Database Account
Contact
Download
Broadcast MuleSoft

MUnit is MuleSoft’s testing solution, which is


Custum Object
Lead Real time synchronization of accounts from one Salesforce org to another as well as a
Opportunity Workday HCM instance, an SAP instance and a Database using a non-persistent JMS topic. View details
User
(5 votes)
Worker

incorporated into the full application building block


Employee

Video
Demo Extracting Data from LDAP MuleSoft Download
Learn how to connect to an LDAP directory using Mule and retrieve a list of users.

lifecycle.
Products
Salesforce (4 votes) View details
SAP
Siebel
Workday

Test automation tools are critical here, as this


integrates into the DevOps processes of continuous
delivery and deployment.
Managing the full API lifecycle

Service

Management
with APIs

API
Spec
Managing the full API lifecycle

14

Embrace DevOps
Embracing modern DevOps-centric processes and tooling
is critical to reduce mean time-to-production, and this
should apply to your application building blocks as well.

Once the application building block has been assembled


and tested, deployment should be as easy as the click of
a button.

Production
The use of a hybrid integration platform that is
Continuous delivery
lightweight, easy to install, and suitable for CICD
workflows is key. The ability to have seamless support
for dependency management, testing, version control,
and automated deployment tooling should be an
assumption.
Managing the full API lifecycle

15

| Tips |
Policy configuration
Govern and secure all traffic
Examples
• Traffic management (eg, It is critical to ensure your application building blocks
rate limit) are following best practices in security and
• Access Policies (eg.,
Policy architectural governance by applying policies to them
OAuth2 ) configuration
• Identity policies at runtime. Monitoring all traffic is equally critical
• Custom policies because it just takes just one weak link to bring the
Monitoring and
Monitoring and Analytics Analytics ship down.
Examples
• Infrastructure logs
• Service uptime analysis
• Client consumption data
• Provider analytics

Orders Customers
Managing the full API lifecycle

16

Don’t forget about the


discoverability and onramp
Imagine your company with hundreds — if not
Mobile API Experience
Web app API
thousands — of APIs in your expansive application
APIs
network. Imagine you're adding several new ones
Order status every day.
Shipment Order Process
status history APIs
Customers
Being able to appropriately publish them so the
consuming developer can find, research, and
System
Toll UPS SAP Salesforce
shipments shipments customers customers
Orders APIs understand them easily could make or break your
entire program.

There is no point in building something that won’t ever


be found, let alone used.
Managing the full API lifecycle

17

Just like any product, application


Consume v1 Consume v2 Consume v2

building blocks change


Client A Client B Client A

Building blocks will change. It’s a WHEN, not an IF.

So be ready for it, which requires a carefully planned


set of policies, procedures and the right platform to
All new clients, and existing
seamlessly migrate clients across new versions of APIs.
clients after deprecation of v1

V2 Getting this migration wrong will affect your


customers. That’s not a risk worth taking.

Deprecation warning timeline

V1
Deprecation
Managing the full API lifecycle

18

App Dev
It takes a village to have an
application network
API Manager API Admin It's key to have the ability to adapt towards the new
operating model, one where DevOps and lean
practices are adopted, as well as the creation of new
Service
with APIs roles and responsibilities to support this new
API
Spec
RSHUDWLQJPRGHO

Application Network
Architect

Integration Dev

Ops API Analyst


Managing the full API lifecycle

19

Where people play in the


Ops
lifecycle
API Admin Depending on the maturity of your organization, there
may be one person handling all these responsibilities
Application Network Architect or there may be multiple people doing so. The
important thing to note is that each stage in the
lifecycle provides specific value, which ensures
API Admin
application building blocks provide desired business
outcomes.
Integration Dev

API Analyst

API Manager

Design Implementation Management


Managing the full API lifecycle

So, now what?


For more background on full lifecycle API management,
take a look at the Gartner Magic Quadrant, in which
MuleSoft is a Leader. You can also take a look at further
resources on API strategy and API development.

Contact us to find out more information about how


full lifecycle API management can make a difference in
your organization. MuleSoft.com

MuleSoft’s mission is to connect the world’s applications, data and devices. MuleSoft makes
connecting anything easy with Anypoint Platform™, the only complete integration platform
for SaaS, SOA and APIs. Thousands of organizations in 60 countries, from emerging brands
to Global 500 enterprises, use MuleSoft to innovate faster and gain competitive advantage.

Potrebbero piacerti anche