Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Effective API Governance: Lessons Learnt
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Alvaro Navarro
October 10, 2019
Programming
0
3.2k
Effective API Governance: Lessons Learnt
Talk delivered at API the Docs Amsterdam 2019
Alvaro Navarro
October 10, 2019
Tweet
Share
More Decks by Alvaro Navarro
See All by Alvaro Navarro
Design Your APIs Before Laying the First Brick
alnacle
0
17
No More Post-its: Boost your login security with APIs
alnacle
0
78
Baking a great DX
alnacle
0
150
Designing APIs Like You'd Design Your House
alnacle
0
160
Build your first Spotify App
alnacle
0
39
How to use your API Gateway as Developer Relations Tool
alnacle
0
63
Building awesome SDKs for your APIs: Best Practices
alnacle
0
98
DevRel as Professional Career
alnacle
0
210
Building a partnership that scales through APIs
alnacle
0
120
Other Decks in Programming
See All in Programming
手戻りゼロ? Spec Driven Developmentとは@KAG AI week
tmhirai
1
190
Go1.26 go fixをプロダクトに適用して困ったこと
kurakura0916
0
360
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
890
オブザーバビリティ駆動開発って実際どうなの?
yohfee
3
820
How to stabilize UI tests using XCTest
akkeylab
0
110
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
980
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
5
870
文字コードの話
qnighy
44
17k
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
270
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
560
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
320
エンジニアの「手元の自動化」を加速するn8n 2026.02.27
symy2co
0
140
Featured
See All Featured
How to Ace a Technical Interview
jacobian
281
24k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
170
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
390
WCS-LA-2024
lcolladotor
0
480
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Evolving SEO for Evolving Search Engines
ryanjones
0
150
The Curse of the Amulet
leimatthew05
1
9.8k
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
84
WENDY [Excerpt]
tessaabrams
9
36k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
120
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
61
52k
Transcript
© 2016 Amadeus IT Group and its affiliates and subsidiaries
Effective API Governance Lessons Learnt Alvaro Navarro Amsterdam, 10th October 2019
Once upon a time
Trip Purpose Prediction API Once upon a time
Once upon a time Returns the forecast purpose of a
trip Business or Leisure based on a search criteria.
GET /flights/predictions/purpose Once upon a time
origin : MAD destination : AMS departure : 20191012 return
: 20191015 Once upon a time
{ "result": { "prediction" : "BUSINESS", "probability": 0.751 } }
Once upon a time
Accept: application/vnd.amadeus.v1.full+json Once upon a time
Once upon a time
You need your API validated by the API Governance Board!
Once upon a time
Once upon a time
Once upon a time
Once upon a time
Once upon a time
Once upon a time
Hello World @alnacle
Motivation More than 20 years working with APIs ◦ EDIFACT
◦ SOAP/XML ◦ REST/JSON ◦ Protobuf ◦ GraphQL
Motivation Many people designing and implementing APIs
Motivation Difficult to reuse across backends
Motivation We need to regulate this!
What is the API Governance?
What is the API Governance? Community of API Designers and
Developers
What is the API Governance? Owners of guidelines, data dictionaries
and processes
What is the API Governance? Support
In Amadeus we introduced the HAPPY principle
What is the API Governance? Homogeneous
What is the API Governance? Homogeneous Active
What is the API Governance? Homogeneous Active Pragmatic
What is the API Governance? Homogeneous Active Pragmatic Positive
What is the API Governance? Homogeneous Active Pragmatic Positive Young
Why API Governance?
Why API Governance? As API Producer
Why API Governance? Design Guidelines and Standardization
Why API Governance? Design Guidelines and Standardization ❏ Errors ❏
Endpoint/parameters naming ❏ Improvements ❏ Data Dictionaries ❏ Versioning
Why API Governance? Using URLs http://api.amadeus.com/v1/flight-search http://api.amadeus.com/2018/flight-search http://api.amadeus.com/2018/02/flight-search Using HTTP
Header Accept: application/vnd.amadeus.v1 Accept-Version: 1 Using a Query parameter $ curl http://api.amadeus.com/flight-search?version=1
Why API Governance? As API Consumer
Why API Governance? Better API integration and consistency
Why API Governance? import amadeus client = amadeus.Client() response =
client.shopping.flight_destinations.get(origin = 'AMS', maxPrice = '500')
How do we make it work?
How do we make it work? Technical discussions: Decision Logs
How do we make it work? API submissions: Review Cards
How do we make it work?
How do we make it work? Under Construction In Progress
Pending Validated Review Process ( 1 week ) 1 to 4 weeks ❏ Validated Review Card ❏ Documentation ❏ Swagger Designer
Lessons Learnt
Lessons Learnt Tools are your friends! ◦ Designing ◦ Documenting
◦ Testing
Lessons Learnt Be an advocate and spread the word!
Lessons Learnt It's not a control entity ! Democratic approach
when designing APIs
Lessons Learnt It is a place to speak and share
knowledge
Thanks! developers.amadeus.com