Slide 1

Slide 1 text

The Journey of an API Platform

Slide 2

Slide 2 text

Alvaro Navarro Developer Advocate

Slide 3

Slide 3 text

Why building an API platform? Main benefits for opening your APIs Promotes Innovation and Cocreation Open up new Business Opportunities Unlocks value of existing data

Slide 4

Slide 4 text

Defining the idea Photo by AbsolutVision on Unsplash

Slide 5

Slide 5 text

Defining the idea Platform characteristics Onboarding process: Self-Service, Manual validation Environments: Sandbox, Production Security: OAuth2 Support: from others APIs already delivered API Platform: Monitoring, Lifecycle, Usage

Slide 6

Slide 6 text

Building the Catalogue Photo by Markus Spiske on Unsplash

Slide 7

Slide 7 text

1 Proposal Step-by-step expansion process Building the API Catalogue

Slide 8

Slide 8 text

Open APIs proposal Drivers Market demands Innovation trends. Competitors’ offering Quick wins from others APIs already delivered Complement with Partner APIs

Slide 9

Slide 9 text

1 Proposal BUs, Legal & Security Approval 2 Step-by-step expansion process Building the API Catalogue

Slide 10

Slide 10 text

Building the catalogue Getting the approval

Slide 11

Slide 11 text

Building the catalogue Getting the approval

Slide 12

Slide 12 text

Building the catalogue Getting the approval

Slide 13

Slide 13 text

Building the catalogue Getting the approval

Slide 14

Slide 14 text

1 Proposal 3 BUs, Legal & Security Approval API Governance Board 2 Step-by-step expansion process Building the API Catalogue

Slide 15

Slide 15 text

API Design What is the API Governance? • Define the Use Case of the API • Flows (how to use the API) • Data Dictionary • URI • Examples • Swagger Specs API Designer Experts Owner of Rules & Guidelines Owner of Data Dictionary Owner of Processes

Slide 16

Slide 16 text

API Design Why API Governance is important? As a Designer Design guidelines and standardization: Errors Endpoints naming Improvements Data dictionaries Not only API Validation, support around APIs A place where designers can speak As a Consumer Better API integration

Slide 17

Slide 17 text

API Design Example of guidelines: API versioning 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 http://api.amadeus.com/flight-search?version=1

Slide 18

Slide 18 text

1 Proposal 3 BUs, Legal & Security Approval Development and Deployment 4 API Governance Board 2 Step-by-step expansion process Building the API Catalogue

Slide 19

Slide 19 text

1 1 API and Swagger locally created Traditional API Deployment flow

Slide 20

Slide 20 text

1 1 API and Swagger locally created 2 New routes on the API Gateway 2 API Gateway Traditional API Deployment flow

Slide 21

Slide 21 text

1 1 API and Swagger locally created 2 New routes on the API Gateway 2 3 Set up routes on Amadeus premises 3 API Gateway Traditional API Deployment flow

Slide 22

Slide 22 text

1 1 API and Swagger locally created 2 New routes on the API Gateway 2 4 Setup security configuration 3 4 API Gateway Auth Traditional API Deployment flow 3 Set up routes on Amadeus premises

Slide 23

Slide 23 text

1 1 API and Swagger locally created 2 New routes on the API Gateway 2 3 4 Auth API Gateway 5 5 Deploy API implementation on backend API Traditional API Deployment flow 4 Setup security configuration 3 Set up routes on Amadeus premises

Slide 24

Slide 24 text

1 1 API and Swagger locally created 2 New routes on the API Gateway 2 3 4 Auth API Gateway 5 API Traditional API Deployment flow 5 Deploy API implementation on backend 4 Setup security configuration 3 Set up routes on Amadeus premises

Slide 25

Slide 25 text

1 1 API and Swagger locally created 2 New routes on the API Gateway 2 3 4 Auth API Gateway 5 API Traditional API Deployment flow 5 Deploy API implementation on backend 4 Setup security configuration 3 Set up routes on Amadeus premises ¯\_()_/¯

Slide 26

Slide 26 text

1 Serverless API Deployment flow 1 Model commit and optionally tag

Slide 27

Slide 27 text

1 2 2 Run tests on every commit and start deployment Serverless API Deployment flow 1 Model commit and optionally tag

Slide 28

Slide 28 text

1 2 3 3 Serverless Environment and swagger generation Serverless API Deployment flow API Gateway 2 Run tests on every commit and start deployment 1 Model commit and optionally tag

Slide 29

Slide 29 text

1 2 3 4 Model deployment on public Cloud Serverless API Deployment flow 4 API Gateway 3 Serverless Environment and swagger generation 2 Run tests on every commit and start deployment 1 Model commit and optionally tag

Slide 30

Slide 30 text

1 2 3 Serverless API Deployment flow 4 < 1 minute API Gateway 4 Model deployment on public Cloud 3 Serverless Environment and swagger generation 2 Run tests on every commit and start deployment 1 Model commit and optionally tag

Slide 31

Slide 31 text

Traditional vs Serverless Traditional Sensible data content Inherited implementation Serverless Speed to Market No infrastructure to maintain Continuous experimentation enabler Pay per Use

Slide 32

Slide 32 text

1 Proposal 3 BUs, Legal & Security Approval 5 Development and Deployment 4 API Governance Board 2 Testing Step-by-step expansion process Building the API Catalogue

Slide 33

Slide 33 text

Beta Tester program Engaging developers to test your APIs Tests and shape the new APIs Community (internal & external) Remote usability tests (~45 minutes) Beta Tester rewards

Slide 34

Slide 34 text

Beta Tester program Safe and controlled environment 1 Beta Tester access privately to Swagger 1

Slide 35

Slide 35 text

Beta Tester program Safe and controlled environment 1 Beta Tester access privately to Swagger 1 2 2 Swagger shooter with auth Token

Slide 36

Slide 36 text

Beta Tester program Safe and controlled environment 1 Beta Tester access privately to Swagger 1 2 2 Swagger shooter with auth Token 3 3 Fake backend with static JSON responses

Slide 37

Slide 37 text

Beta Tester program Safe and controlled environment 1 Beta Tester access privately to Swagger 1 2 2 Swagger shooter with auth Token 3 3 Fake backend with static JSON responses 4 4 Private repository with automatic deployment

Slide 38

Slide 38 text

Beta Tester program Safe and controlled environment 1 Beta Tester access privately to Swagger 1 2 2 Swagger shooter with auth Token 3 3 Fake backend with static JSON responses 4 4 Private repository with automatic deployment 5 5 APIs shootable from Postman (or code)

Slide 39

Slide 39 text

No content

Slide 40

Slide 40 text

No content

Slide 41

Slide 41 text

© Amadeus IT Group and its affiliates and subsidiaries • First time Amadeus attends Hackwars, hackathon organized annually by American Airlines • 24 hours long, 20th-21st April 2018 • 1200 developers, 120 teams • 37 tech providers, including: Google, Amazon, IBM, Red-Hat, Oracle, Salesforce, MongoDB, GitHub, Docker, Intel, Cisco... Hackathons American Airlines Hackathon Key Figures

Slide 42

Slide 42 text

© Amadeus IT Group and its affiliates and subsidiaries • Hack the Journey, Nice • HackWars V, Dallas • Hack the Journey, Madrid • #Hack4SD, Oviedo • Blockchained Mobility Hackathon, Munich • Futurize, Bangalore • Hack MIT, Boston • Turkish Airlines Hackathon, Istanbul • South Summit, Madrid Hackathons Several Hackathons - Different approaches

Slide 43

Slide 43 text

Before the event During the event After the event 1. Preliminary interviews / surveys 2. Direct observation 3. Support questions 4. Additional challenges 5. Teams’ interviews 6. Anonymous surveys 7. Monitor metrics 8. Follow up with participants Maximizing the value of the Hackathons How do we collect and measure feedback?

Slide 44

Slide 44 text

1 Proposal 3 BUs, Legal & Security Approval 5 Development and Deployment 4 API Governance Board 2 Testing Release Step-by-step expansion process Building the API Catalogue

Slide 45

Slide 45 text

Developer Experience

Slide 46

Slide 46 text

Developer Experience Platform characteristics Documentation: Static, Dynamic Tutorials and Sample code SDK: How many languages?

Slide 47

Slide 47 text

Photo by Yvette de Wit on Unsplash

Slide 48

Slide 48 text

• Open innovation programs bring always value • Test from early phases of the program • Be consistent with the APIs • Listen to your API consumers! Conclusions & key takeaways

Slide 49

Slide 49 text

Thank you! Thank you! developers.amadeus.com @amadeus4dev amadeus4dev [email protected]