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
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
No More Post-its: Boost your login security with APIs
alnacle
0
24
Baking a great DX
alnacle
0
140
Designing APIs Like You'd Design Your House
alnacle
0
130
Build your first Spotify App
alnacle
0
26
How to use your API Gateway as Developer Relations Tool
alnacle
0
50
Building awesome SDKs for your APIs: Best Practices
alnacle
0
92
DevRel as Professional Career
alnacle
0
190
Building a partnership that scales through APIs
alnacle
0
110
The Journey of an OpenAPI platform
alnacle
0
150
Other Decks in Programming
See All in Programming
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
2
150
A full stack side project webapp all in Kotlin (KotlinConf 2025)
dankim
0
120
AIプログラマーDevinは PHPerの夢を見るか?
shinyasaita
1
210
ペアプロ × 生成AI 現場での実践と課題について / generative-ai-in-pair-programming
codmoninc
1
17k
GraphRAGの仕組みまるわかり
tosuri13
8
540
なぜ「共通化」を考え、失敗を繰り返すのか
rinchoku
1
650
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
450
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
160
MDN Web Docs に日本語翻訳でコントリビュートしたくなる
ohmori_yusuke
1
120
ISUCON研修おかわり会 講義スライド
arfes0e2b3c
1
440
Rails Frontend Evolution: It Was a Setup All Along
skryukov
0
110
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
220
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Why Our Code Smells
bkeepers
PRO
336
57k
Designing for Performance
lara
610
69k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Git: the NoSQL Database
bkeepers
PRO
430
65k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.9k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Code Reviewing Like a Champion
maltzj
524
40k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
970
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