SlideShare a Scribd company logo
1 of 43
Using RAML 1.0 Like a Pro
Using RAML 1.0 Like a Pro
May 2016
Using RAML 1.0 Like a Pro
Mike Rose
Chief Architect
AvenueCode
End-to-End
Project
Delivery
Collaborativ
e
Developmen
t
Shared
Project
Ownership
Mobil
e
Dev Ops Agile Coaching
Using RAML 1.0 Like a Pro
End-to-End
Project
Delivery
Collaborativ
e
Developmen
t
Shared
Project
Ownership
Mobil
e
Dev Ops Agile Coaching
Customers
Using RAML 1.0 Like a Pro
End-to-End
Project
Delivery
Collaborativ
e
Developmen
t
Shared
Project
Ownership
Mobil
e
Dev Ops Agile Coaching
Partner
s
Using RAML 1.0 Like a Pro
Agenda
•API Challenges
•RAML explained
•RAML benefits
•RAML features
•RAML 1.0 Applied
•Q&A
5
Using RAML 1.0 Like a Pro
API Challenges
Using RAML 1.0 Like a Pro
Using RAML 1.0 Like a Pro
API Challenges
• REST is defined
by convention
- Some rules
- Few standards
- Many opinions
What is so hard about APIs?
7
RESTafarians debating the
merits of “shoe” vs. “gourd”
style APIs
Using RAML 1.0 Like a Pro
API Challenges
• High degree of abstraction
• Difficult to capture requirements
• Common vocabulary is largely absent
What is so hard about APIs?
8
Using RAML 1.0 Like a Pro
API Challenges
• Without
language
- Miscommunication
- Lack of shared
expectations
- Little opportunity
for collaboration
What is so hard about APIs?
9
Using RAML 1.0 Like a Pro
RAML Explained
Using RAML 1.0 Like a Pro
Using RAML 1.0 Like a Pro
RAML Explained
• Language for describing RESTful APIs
- Machine readable
- Human friendly
- Vocabulary for
• Functional aspects
• Non-functional aspects
• Descriptive aspects
What is RAML?
11
Using RAML 1.0 Like a Pro
RAML Explained
• RAML enables
- Design
• Design matters
What is RAML?
12
Using RAML 1.0 Like a Pro
RAML Explained
• Why design your APIs with RAML?
- You will not get it right the first time
- Done is short lived
- You need a strategy for dealing with change
What is RAML?
13
Using RAML 1.0 Like a Pro
RAML Explained
• RAML helps you manage change
• Change management choices
- Refactoring RAML
- Refactoring code
What is RAML?
14
Using RAML 1.0 Like a Pro
RAML Benefits
Using RAML 1.0 Like a Pro
Using RAML 1.0 Like a Pro
RAML benefits
• Reusable components
How does RAML help?
16
Using RAML 1.0 Like a Pro
RAML benefits
• Refactoring support
How does RAML help?
17
Using RAML 1.0 Like a Pro
RAML benefits
• Team development
How does RAML help?
18
Using RAML 1.0 Like a Pro
RAML benefits
• OAI / Swagger
- Strengths
• Generating documentation from existing
implementations
- Weaknesses
• Uneven / Inconsistent specification
• Lack of standardization / interoperability between tools
How does RAML compare to other tools?
19
Using RAML 1.0 Like a Pro
RAML benefits
• API Blueprint
- Strengths
• Creating API mocks from API Blueprint document
- Weaknesses
• Document format is only semi-structured
• Lacks tools for forward engineering
How does RAML compare to other tools?
20
Using RAML 1.0 Like a Pro
RAML Features
Using RAML 1.0 Like a Pro
Using RAML 1.0 Like a Pro
RAML Features
• The good stuff
- YAML
- Data modeling
- Patterns
- Tools
- Community
RAML 0.8 was a good start
22
Using RAML 1.0 Like a Pro
RAML Features
• The bad stuff
- JSON Schema
- YAML !include
- Uneven application of data types
RAML 0.8 was a good start
23
Using RAML 1.0 Like a Pro
RAML Features
• RAML data types
- Simple specification
- Applied consistently
- Syntactic sugar
- Easily reused
Improvements in RAML 1.0
24
Using RAML 1.0 Like a Pro
RAML Features
• Annotations
- Custom metadata
- Leverages RAML data types
Improvements in RAML 1.0
25
Using RAML 1.0 Like a Pro
RAML Features
• Modular RAML
- Components
• Fragments
• Libraries
- Definitions
• Overlays
• Extensions
Improvements in RAML 1.0
26
Using RAML 1.0 Like a Pro
Applying RAML 1.0
Using RAML 1.0 Like a Pro
Using RAML 1.0 Like a Pro
RAML 1.0 Example
• Design a simple service
• Progressively apply RAML 1.0 to
- Support the base API
- Add security constraints
- Implement HATEOAS principals
- Manage multiple versions
28
Using RAML 1.0 Like a Pro
RAML 1.0 Example
• Basic user data
- Name
- Email address
- List of friends
• Queryable
• CRUD
Simple profile API
29
Using RAML 1.0 Like a Pro
Applying RAML 1.0
• Challenges
- Managing multiple APIs
- Keeping DRY
- Team environment
Basic development tasks
30
Using RAML 1.0 Like a Pro
RAML 1.0 Example
• RAML solution
- Libraries
• Types
• ResourceTypes
• Traits
Basic development tasks
31
Using RAML 1.0 Like a Pro
RAML 1.0 Example
Basic development tasks
32
Using RAML 1.0 Like a Pro
Applying RAML 1.0
• Challenges
- Complexity
- Separation of concerns
API Security
33
Using RAML 1.0 Like a Pro
RAML 1.0 Example
• RAML solution
- SecurityScheme
• Choose a security provider type
• Specify client authentication requirements
API Security
34
Using RAML 1.0 Like a Pro
RAML 1.0 Example
API Security
35
Using RAML 1.0 Like a Pro
Applying RAML 1.0
• Challenges
- Collection query responses
• Array of links
• Links to first/prev/next/last pages
- Collection member responses
• URL aware
HATEOAS
36
Using RAML 1.0 Like a Pro
Applying RAML 1.0
• RAML solution
- Libraries
• Define new hypermedia types
• Extend type definitions with links
HATEOAS
37
Using RAML 1.0 Like a Pro
Applying RAML 1.0
HATEOAS
38
Using RAML 1.0 Like a Pro
Applying RAML 1.0
• Challenges
- Versioning
- Deprecation
- Retirement
API Lifecycle Management
39
Using RAML 1.0 Like a Pro
Applying RAML 1.0
• RAML solution
- Libraries
• Deprecation data types
• Deprecation annotations
- Extensions
• Refactor out common API definitions
• Override common API for each version
API Lifecycle Management
40
Using RAML 1.0 Like a Pro
Applying RAML 1.0
API Lifecycle Management
41
Using RAML 1.0 Like a Pro
Q & A
Using RAML 1.0 Like a Pro
Using RAML 1.0 Like a Pro
mrose@avenuecode.com
Skype: mutsys
GitHub: https://github.com/mrose-avenuecode
For more information, please visit
us
at booth G3 in the Expo
or online at
www.avenuecode.com
Project
Managemen
t
Busines
s
Analysis
Software
Developmen
t
Quality
Assuranc
e
Dev Ops
Product
Managemen
t

More Related Content

What's hot

Product Vision and Roadmap for Anypoint Platform
Product Vision and Roadmap for Anypoint PlatformProduct Vision and Roadmap for Anypoint Platform
Product Vision and Roadmap for Anypoint PlatformMuleSoft
 
API Management Within a Microservices Architecture
API Management Within a Microservices Architecture API Management Within a Microservices Architecture
API Management Within a Microservices Architecture Nadeesha Gamage
 
Rtf v2 ingress muleSoft meetup self managed kubernetes
Rtf v2 ingress muleSoft meetup self managed kubernetesRtf v2 ingress muleSoft meetup self managed kubernetes
Rtf v2 ingress muleSoft meetup self managed kubernetesSandeep Deshmukh
 
MuleSoft for Enterprises
MuleSoft for EnterprisesMuleSoft for Enterprises
MuleSoft for EnterprisesPrashantGolani1
 
MuleSoft Runtime Fabric (RTF): Foundations : MuleSoft Virtual Muleys Meetups
MuleSoft Runtime Fabric (RTF): Foundations  : MuleSoft Virtual Muleys MeetupsMuleSoft Runtime Fabric (RTF): Foundations  : MuleSoft Virtual Muleys Meetups
MuleSoft Runtime Fabric (RTF): Foundations : MuleSoft Virtual Muleys MeetupsAngel Alberici
 
REST-API introduction for developers
REST-API introduction for developersREST-API introduction for developers
REST-API introduction for developersPatrick Savalle
 
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63Angel Alberici
 
MuleSoft Anypoint Platform and Three Tier Architecture
MuleSoft Anypoint  Platform and Three Tier ArchitectureMuleSoft Anypoint  Platform and Three Tier Architecture
MuleSoft Anypoint Platform and Three Tier ArchitectureHarish Kumar
 
Introduction to CloudHub 2.0
Introduction to CloudHub 2.0Introduction to CloudHub 2.0
Introduction to CloudHub 2.0NeerajKumar1965
 
How to Execute a Successful API Strategy
How to Execute a Successful API StrategyHow to Execute a Successful API Strategy
How to Execute a Successful API StrategyMatt McLarty
 
Rest api standards and best practices
Rest api standards and best practicesRest api standards and best practices
Rest api standards and best practicesAnkita Mahajan
 
Error Handling in Mulesoft
Error Handling in MulesoftError Handling in Mulesoft
Error Handling in MulesoftAmit Singh
 
API Management in Digital Transformation
API Management in Digital TransformationAPI Management in Digital Transformation
API Management in Digital TransformationAditya Thatte
 
API Maturity Model (Webcast with Accenture)
API Maturity Model (Webcast with Accenture)API Maturity Model (Webcast with Accenture)
API Maturity Model (Webcast with Accenture)Apigee | Google Cloud
 
API Management architect presentation
API Management architect presentationAPI Management architect presentation
API Management architect presentationsflynn073
 
API Frenzy: API Strategy 101
API Frenzy: API Strategy 101API Frenzy: API Strategy 101
API Frenzy: API Strategy 101Akana
 
Overview of API Management Architectures
Overview of API Management ArchitecturesOverview of API Management Architectures
Overview of API Management ArchitecturesNordic APIs
 
API Security in a Microservice Architecture
API Security in a Microservice ArchitectureAPI Security in a Microservice Architecture
API Security in a Microservice ArchitectureMatt McLarty
 

What's hot (20)

Product Vision and Roadmap for Anypoint Platform
Product Vision and Roadmap for Anypoint PlatformProduct Vision and Roadmap for Anypoint Platform
Product Vision and Roadmap for Anypoint Platform
 
Web API Basics
Web API BasicsWeb API Basics
Web API Basics
 
API Management Within a Microservices Architecture
API Management Within a Microservices Architecture API Management Within a Microservices Architecture
API Management Within a Microservices Architecture
 
Rtf v2 ingress muleSoft meetup self managed kubernetes
Rtf v2 ingress muleSoft meetup self managed kubernetesRtf v2 ingress muleSoft meetup self managed kubernetes
Rtf v2 ingress muleSoft meetup self managed kubernetes
 
MuleSoft for Enterprises
MuleSoft for EnterprisesMuleSoft for Enterprises
MuleSoft for Enterprises
 
MuleSoft Runtime Fabric (RTF): Foundations : MuleSoft Virtual Muleys Meetups
MuleSoft Runtime Fabric (RTF): Foundations  : MuleSoft Virtual Muleys MeetupsMuleSoft Runtime Fabric (RTF): Foundations  : MuleSoft Virtual Muleys Meetups
MuleSoft Runtime Fabric (RTF): Foundations : MuleSoft Virtual Muleys Meetups
 
REST-API introduction for developers
REST-API introduction for developersREST-API introduction for developers
REST-API introduction for developers
 
Guide to an API-first Strategy
Guide to an API-first StrategyGuide to an API-first Strategy
Guide to an API-first Strategy
 
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
 
MuleSoft Anypoint Platform and Three Tier Architecture
MuleSoft Anypoint  Platform and Three Tier ArchitectureMuleSoft Anypoint  Platform and Three Tier Architecture
MuleSoft Anypoint Platform and Three Tier Architecture
 
Introduction to CloudHub 2.0
Introduction to CloudHub 2.0Introduction to CloudHub 2.0
Introduction to CloudHub 2.0
 
How to Execute a Successful API Strategy
How to Execute a Successful API StrategyHow to Execute a Successful API Strategy
How to Execute a Successful API Strategy
 
Rest api standards and best practices
Rest api standards and best practicesRest api standards and best practices
Rest api standards and best practices
 
Error Handling in Mulesoft
Error Handling in MulesoftError Handling in Mulesoft
Error Handling in Mulesoft
 
API Management in Digital Transformation
API Management in Digital TransformationAPI Management in Digital Transformation
API Management in Digital Transformation
 
API Maturity Model (Webcast with Accenture)
API Maturity Model (Webcast with Accenture)API Maturity Model (Webcast with Accenture)
API Maturity Model (Webcast with Accenture)
 
API Management architect presentation
API Management architect presentationAPI Management architect presentation
API Management architect presentation
 
API Frenzy: API Strategy 101
API Frenzy: API Strategy 101API Frenzy: API Strategy 101
API Frenzy: API Strategy 101
 
Overview of API Management Architectures
Overview of API Management ArchitecturesOverview of API Management Architectures
Overview of API Management Architectures
 
API Security in a Microservice Architecture
API Security in a Microservice ArchitectureAPI Security in a Microservice Architecture
API Security in a Microservice Architecture
 

Viewers also liked

RAML - APIs By Design
RAML - APIs By DesignRAML - APIs By Design
RAML - APIs By DesignUri Sarid
 
Microservices Best Practices
Microservices Best Practices Microservices Best Practices
Microservices Best Practices MuleSoft
 
Digital Businesses of the Future
Digital Businesses of the Future Digital Businesses of the Future
Digital Businesses of the Future MuleSoft
 
Creating a mule project with raml and api
Creating a mule project with raml and apiCreating a mule project with raml and api
Creating a mule project with raml and apiBhargav Ranjit
 
Mule: What's New and Coming?
Mule: What's New and Coming?Mule: What's New and Coming?
Mule: What's New and Coming?MuleSoft
 
Value of Integration: Results from a Benchmark Study
Value of Integration: Results from a Benchmark StudyValue of Integration: Results from a Benchmark Study
Value of Integration: Results from a Benchmark StudyMuleSoft
 
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...MuleSoft
 
The Blueprint for Change: How the Best Are Succeeding in Transformation
The Blueprint for Change: How the Best Are Succeeding in TransformationThe Blueprint for Change: How the Best Are Succeeding in Transformation
The Blueprint for Change: How the Best Are Succeeding in TransformationMuleSoft
 
Building a REST API for Longevity
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for LongevityMuleSoft
 
Digital Disruption in EDI
Digital Disruption in EDI Digital Disruption in EDI
Digital Disruption in EDI MuleSoft
 
The Payer of the Future: Modernizing Health Insurance with API-led Connectivity
The Payer of the Future: Modernizing Health Insurance with API-led ConnectivityThe Payer of the Future: Modernizing Health Insurance with API-led Connectivity
The Payer of the Future: Modernizing Health Insurance with API-led ConnectivityMuleSoft
 
ADP: Driving Faster Customer Onboarding with MuleSoft - Michael Bevilacqua, V...
ADP: Driving Faster Customer Onboarding with MuleSoft - Michael Bevilacqua, V...ADP: Driving Faster Customer Onboarding with MuleSoft - Michael Bevilacqua, V...
ADP: Driving Faster Customer Onboarding with MuleSoft - Michael Bevilacqua, V...MuleSoft
 
Guide to Application Performance: Planning to Continued Optimization
Guide to Application Performance: Planning to Continued OptimizationGuide to Application Performance: Planning to Continued Optimization
Guide to Application Performance: Planning to Continued OptimizationMuleSoft
 
Microservices on Anypoint Platform
Microservices on Anypoint PlatformMicroservices on Anypoint Platform
Microservices on Anypoint PlatformMuleSoft
 
How a Leading Brand Achieved Digital Transformation at a Global Scale - Jeff ...
How a Leading Brand Achieved Digital Transformation at a Global Scale - Jeff ...How a Leading Brand Achieved Digital Transformation at a Global Scale - Jeff ...
How a Leading Brand Achieved Digital Transformation at a Global Scale - Jeff ...MuleSoft
 
What Going Digital Really Means to IT
What Going Digital Really Means to IT What Going Digital Really Means to IT
What Going Digital Really Means to IT MuleSoft
 
How Customers are Building and Using their Own Connectors
How Customers are Building and Using their Own ConnectorsHow Customers are Building and Using their Own Connectors
How Customers are Building and Using their Own ConnectorsMuleSoft
 
Unilever: Driving Integration Speed and Agility - Frank Brandes, Director of ...
Unilever: Driving Integration Speed and Agility - Frank Brandes, Director of ...Unilever: Driving Integration Speed and Agility - Frank Brandes, Director of ...
Unilever: Driving Integration Speed and Agility - Frank Brandes, Director of ...MuleSoft
 
Application Networks: Microservices and APIs at Netflix
Application Networks: Microservices and APIs at NetflixApplication Networks: Microservices and APIs at Netflix
Application Networks: Microservices and APIs at NetflixMuleSoft
 
Future of Integration | MuleSoft
Future of Integration | MuleSoftFuture of Integration | MuleSoft
Future of Integration | MuleSoftMuleSoft
 

Viewers also liked (20)

RAML - APIs By Design
RAML - APIs By DesignRAML - APIs By Design
RAML - APIs By Design
 
Microservices Best Practices
Microservices Best Practices Microservices Best Practices
Microservices Best Practices
 
Digital Businesses of the Future
Digital Businesses of the Future Digital Businesses of the Future
Digital Businesses of the Future
 
Creating a mule project with raml and api
Creating a mule project with raml and apiCreating a mule project with raml and api
Creating a mule project with raml and api
 
Mule: What's New and Coming?
Mule: What's New and Coming?Mule: What's New and Coming?
Mule: What's New and Coming?
 
Value of Integration: Results from a Benchmark Study
Value of Integration: Results from a Benchmark StudyValue of Integration: Results from a Benchmark Study
Value of Integration: Results from a Benchmark Study
 
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...
How Cisco is Leveraging MuleSoft to Drive Continuous Innovation​ at Enterpris...
 
The Blueprint for Change: How the Best Are Succeeding in Transformation
The Blueprint for Change: How the Best Are Succeeding in TransformationThe Blueprint for Change: How the Best Are Succeeding in Transformation
The Blueprint for Change: How the Best Are Succeeding in Transformation
 
Building a REST API for Longevity
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for Longevity
 
Digital Disruption in EDI
Digital Disruption in EDI Digital Disruption in EDI
Digital Disruption in EDI
 
The Payer of the Future: Modernizing Health Insurance with API-led Connectivity
The Payer of the Future: Modernizing Health Insurance with API-led ConnectivityThe Payer of the Future: Modernizing Health Insurance with API-led Connectivity
The Payer of the Future: Modernizing Health Insurance with API-led Connectivity
 
ADP: Driving Faster Customer Onboarding with MuleSoft - Michael Bevilacqua, V...
ADP: Driving Faster Customer Onboarding with MuleSoft - Michael Bevilacqua, V...ADP: Driving Faster Customer Onboarding with MuleSoft - Michael Bevilacqua, V...
ADP: Driving Faster Customer Onboarding with MuleSoft - Michael Bevilacqua, V...
 
Guide to Application Performance: Planning to Continued Optimization
Guide to Application Performance: Planning to Continued OptimizationGuide to Application Performance: Planning to Continued Optimization
Guide to Application Performance: Planning to Continued Optimization
 
Microservices on Anypoint Platform
Microservices on Anypoint PlatformMicroservices on Anypoint Platform
Microservices on Anypoint Platform
 
How a Leading Brand Achieved Digital Transformation at a Global Scale - Jeff ...
How a Leading Brand Achieved Digital Transformation at a Global Scale - Jeff ...How a Leading Brand Achieved Digital Transformation at a Global Scale - Jeff ...
How a Leading Brand Achieved Digital Transformation at a Global Scale - Jeff ...
 
What Going Digital Really Means to IT
What Going Digital Really Means to IT What Going Digital Really Means to IT
What Going Digital Really Means to IT
 
How Customers are Building and Using their Own Connectors
How Customers are Building and Using their Own ConnectorsHow Customers are Building and Using their Own Connectors
How Customers are Building and Using their Own Connectors
 
Unilever: Driving Integration Speed and Agility - Frank Brandes, Director of ...
Unilever: Driving Integration Speed and Agility - Frank Brandes, Director of ...Unilever: Driving Integration Speed and Agility - Frank Brandes, Director of ...
Unilever: Driving Integration Speed and Agility - Frank Brandes, Director of ...
 
Application Networks: Microservices and APIs at Netflix
Application Networks: Microservices and APIs at NetflixApplication Networks: Microservices and APIs at Netflix
Application Networks: Microservices and APIs at Netflix
 
Future of Integration | MuleSoft
Future of Integration | MuleSoftFuture of Integration | MuleSoft
Future of Integration | MuleSoft
 

Similar to Using RAML 1.0 Like a Pro

mulesoft birmingham meetup_api_designing_with_raml
mulesoft birmingham meetup_api_designing_with_ramlmulesoft birmingham meetup_api_designing_with_raml
mulesoft birmingham meetup_api_designing_with_ramlmohammadsakifuddin
 
PHP framework difference
PHP framework differencePHP framework difference
PHP framework differenceiScripts
 
Tools and techniques for APIs
Tools and techniques for APIsTools and techniques for APIs
Tools and techniques for APIsJason Harmon
 
Swagger - Making REST APIs friendlier
Swagger - Making REST APIs friendlierSwagger - Making REST APIs friendlier
Swagger - Making REST APIs friendlierMiroslav Resetar
 
Uvod u php - Danilo Purić i Tarik Zaimović
Uvod u php - Danilo Purić i Tarik ZaimovićUvod u php - Danilo Purić i Tarik Zaimović
Uvod u php - Danilo Purić i Tarik ZaimovićBild_Studio
 
Solving micro-services and one site problem
Solving micro-services and one site problemSolving micro-services and one site problem
Solving micro-services and one site problemaragavan
 
API Workshop Amsterdam presented by API Architect Ronnie Mitra
API Workshop Amsterdam presented by API Architect Ronnie MitraAPI Workshop Amsterdam presented by API Architect Ronnie Mitra
API Workshop Amsterdam presented by API Architect Ronnie MitraCA API Management
 
Developing Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusDeveloping Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusObeo
 
APIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API LanguagesAPIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API LanguagesJerome Louvel
 
APIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API LanguagesAPIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API LanguagesRestlet
 
Ruby on Rails Vs. ASP.NET MVC
Ruby on Rails Vs. ASP.NET MVCRuby on Rails Vs. ASP.NET MVC
Ruby on Rails Vs. ASP.NET MVCShay Friedman
 
Benchmarking Redis by itself and versus other NoSQL databases
Benchmarking Redis by itself and versus other NoSQL databasesBenchmarking Redis by itself and versus other NoSQL databases
Benchmarking Redis by itself and versus other NoSQL databasesItamar Haber
 
Pythonsevilla2019 - Introduction to MLFlow
Pythonsevilla2019 - Introduction to MLFlowPythonsevilla2019 - Introduction to MLFlow
Pythonsevilla2019 - Introduction to MLFlowFernando Ortega Gallego
 
The Characteristics of a Successful SPA
The Characteristics of a Successful SPAThe Characteristics of a Successful SPA
The Characteristics of a Successful SPAGil Fink
 
How To Maintain Million Lines Of Open Source Code And Remain Sane or The Stor...
How To Maintain Million Lines Of Open Source Code And Remain Sane or The Stor...How To Maintain Million Lines Of Open Source Code And Remain Sane or The Stor...
How To Maintain Million Lines Of Open Source Code And Remain Sane or The Stor...Radovan Semancik
 
The History and Use of R
The History and Use of RThe History and Use of R
The History and Use of RAnalyticsWeek
 

Similar to Using RAML 1.0 Like a Pro (20)

mulesoft birmingham meetup_api_designing_with_raml
mulesoft birmingham meetup_api_designing_with_ramlmulesoft birmingham meetup_api_designing_with_raml
mulesoft birmingham meetup_api_designing_with_raml
 
Managing api development
Managing api developmentManaging api development
Managing api development
 
The ins and outs of RAML
The ins and outs of RAMLThe ins and outs of RAML
The ins and outs of RAML
 
PHP framework difference
PHP framework differencePHP framework difference
PHP framework difference
 
Tools and techniques for APIs
Tools and techniques for APIsTools and techniques for APIs
Tools and techniques for APIs
 
Swagger - Making REST APIs friendlier
Swagger - Making REST APIs friendlierSwagger - Making REST APIs friendlier
Swagger - Making REST APIs friendlier
 
How to define an api
How to define an apiHow to define an api
How to define an api
 
Uvod u php - Danilo Purić i Tarik Zaimović
Uvod u php - Danilo Purić i Tarik ZaimovićUvod u php - Danilo Purić i Tarik Zaimović
Uvod u php - Danilo Purić i Tarik Zaimović
 
Solving micro-services and one site problem
Solving micro-services and one site problemSolving micro-services and one site problem
Solving micro-services and one site problem
 
API Workshop Amsterdam presented by API Architect Ronnie Mitra
API Workshop Amsterdam presented by API Architect Ronnie MitraAPI Workshop Amsterdam presented by API Architect Ronnie Mitra
API Workshop Amsterdam presented by API Architect Ronnie Mitra
 
Software Development with PHP & Laravel
Software Development  with PHP & LaravelSoftware Development  with PHP & Laravel
Software Development with PHP & Laravel
 
Developing Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusDeveloping Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse Sirius
 
APIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API LanguagesAPIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API Languages
 
APIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API LanguagesAPIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API Languages
 
Ruby on Rails Vs. ASP.NET MVC
Ruby on Rails Vs. ASP.NET MVCRuby on Rails Vs. ASP.NET MVC
Ruby on Rails Vs. ASP.NET MVC
 
Benchmarking Redis by itself and versus other NoSQL databases
Benchmarking Redis by itself and versus other NoSQL databasesBenchmarking Redis by itself and versus other NoSQL databases
Benchmarking Redis by itself and versus other NoSQL databases
 
Pythonsevilla2019 - Introduction to MLFlow
Pythonsevilla2019 - Introduction to MLFlowPythonsevilla2019 - Introduction to MLFlow
Pythonsevilla2019 - Introduction to MLFlow
 
The Characteristics of a Successful SPA
The Characteristics of a Successful SPAThe Characteristics of a Successful SPA
The Characteristics of a Successful SPA
 
How To Maintain Million Lines Of Open Source Code And Remain Sane or The Stor...
How To Maintain Million Lines Of Open Source Code And Remain Sane or The Stor...How To Maintain Million Lines Of Open Source Code And Remain Sane or The Stor...
How To Maintain Million Lines Of Open Source Code And Remain Sane or The Stor...
 
The History and Use of R
The History and Use of RThe History and Use of R
The History and Use of R
 

More from MuleSoft

The CIO's Guide to Digital Transformation
The CIO's Guide to Digital TransformationThe CIO's Guide to Digital Transformation
The CIO's Guide to Digital TransformationMuleSoft
 
Gluecon 2017: Metadata is the Glue
Gluecon 2017: Metadata is the GlueGluecon 2017: Metadata is the Glue
Gluecon 2017: Metadata is the GlueMuleSoft
 
Gluecon 2017: API Modelling Framework - A Toolbox for Interacting With API S...
Gluecon 2017: API Modelling Framework -  A Toolbox for Interacting With API S...Gluecon 2017: API Modelling Framework -  A Toolbox for Interacting With API S...
Gluecon 2017: API Modelling Framework - A Toolbox for Interacting With API S...MuleSoft
 
How to Get Unstuck
How to Get Unstuck How to Get Unstuck
How to Get Unstuck MuleSoft
 
How API Enablement Drives Legacy Modernization
How API Enablement Drives Legacy ModernizationHow API Enablement Drives Legacy Modernization
How API Enablement Drives Legacy ModernizationMuleSoft
 
Microservices on Anypoint Platform
Microservices on Anypoint PlatformMicroservices on Anypoint Platform
Microservices on Anypoint PlatformMuleSoft
 
Applying UX principles and methods to APIs
Applying UX principles and methods to APIs Applying UX principles and methods to APIs
Applying UX principles and methods to APIs MuleSoft
 
Secure by design: Scaling security across the enterprise
Secure by design: Scaling security across the enterpriseSecure by design: Scaling security across the enterprise
Secure by design: Scaling security across the enterpriseMuleSoft
 
Gathering Operational Intelligence in Complex Environments at Splunk
Gathering Operational Intelligence in Complex Environments at SplunkGathering Operational Intelligence in Complex Environments at Splunk
Gathering Operational Intelligence in Complex Environments at SplunkMuleSoft
 
CloudHub and other Cloud Deployment Options
CloudHub and other Cloud Deployment OptionsCloudHub and other Cloud Deployment Options
CloudHub and other Cloud Deployment OptionsMuleSoft
 
Governing and Sharing your Integration Assets
Governing and Sharing your Integration AssetsGoverning and Sharing your Integration Assets
Governing and Sharing your Integration AssetsMuleSoft
 
MuleSoft's Approach to Driving Customer Outcomes
MuleSoft's Approach to Driving Customer Outcomes MuleSoft's Approach to Driving Customer Outcomes
MuleSoft's Approach to Driving Customer Outcomes MuleSoft
 
Designing and building Mule applications
Designing and building Mule applicationsDesigning and building Mule applications
Designing and building Mule applicationsMuleSoft
 
Object Store
Object StoreObject Store
Object StoreMuleSoft
 
Introducing Anypoint Exchange 2.0
Introducing Anypoint Exchange 2.0Introducing Anypoint Exchange 2.0
Introducing Anypoint Exchange 2.0MuleSoft
 
Troubleshooting Anypoint Platform
Troubleshooting Anypoint PlatformTroubleshooting Anypoint Platform
Troubleshooting Anypoint PlatformMuleSoft
 
Relevancy in a Rapidly Changing World (Yvonne Wassenaar)
Relevancy in a Rapidly Changing World (Yvonne Wassenaar)Relevancy in a Rapidly Changing World (Yvonne Wassenaar)
Relevancy in a Rapidly Changing World (Yvonne Wassenaar)MuleSoft
 
Leveraging APIs and the Cloud to Transform Veteran Care (Steve Rushing)
Leveraging APIs and the Cloud to Transform Veteran Care (Steve Rushing)Leveraging APIs and the Cloud to Transform Veteran Care (Steve Rushing)
Leveraging APIs and the Cloud to Transform Veteran Care (Steve Rushing)MuleSoft
 
Role of Technology in the Evolution of P&C Insurance (Marcus Ryu)
Role of Technology in the Evolution of P&C Insurance (Marcus Ryu)Role of Technology in the Evolution of P&C Insurance (Marcus Ryu)
Role of Technology in the Evolution of P&C Insurance (Marcus Ryu)MuleSoft
 
Industry Stories: How Application Networks are Delivering Agility (Ross Mason)
Industry Stories: How Application Networks are Delivering Agility (Ross Mason)Industry Stories: How Application Networks are Delivering Agility (Ross Mason)
Industry Stories: How Application Networks are Delivering Agility (Ross Mason)MuleSoft
 

More from MuleSoft (20)

The CIO's Guide to Digital Transformation
The CIO's Guide to Digital TransformationThe CIO's Guide to Digital Transformation
The CIO's Guide to Digital Transformation
 
Gluecon 2017: Metadata is the Glue
Gluecon 2017: Metadata is the GlueGluecon 2017: Metadata is the Glue
Gluecon 2017: Metadata is the Glue
 
Gluecon 2017: API Modelling Framework - A Toolbox for Interacting With API S...
Gluecon 2017: API Modelling Framework -  A Toolbox for Interacting With API S...Gluecon 2017: API Modelling Framework -  A Toolbox for Interacting With API S...
Gluecon 2017: API Modelling Framework - A Toolbox for Interacting With API S...
 
How to Get Unstuck
How to Get Unstuck How to Get Unstuck
How to Get Unstuck
 
How API Enablement Drives Legacy Modernization
How API Enablement Drives Legacy ModernizationHow API Enablement Drives Legacy Modernization
How API Enablement Drives Legacy Modernization
 
Microservices on Anypoint Platform
Microservices on Anypoint PlatformMicroservices on Anypoint Platform
Microservices on Anypoint Platform
 
Applying UX principles and methods to APIs
Applying UX principles and methods to APIs Applying UX principles and methods to APIs
Applying UX principles and methods to APIs
 
Secure by design: Scaling security across the enterprise
Secure by design: Scaling security across the enterpriseSecure by design: Scaling security across the enterprise
Secure by design: Scaling security across the enterprise
 
Gathering Operational Intelligence in Complex Environments at Splunk
Gathering Operational Intelligence in Complex Environments at SplunkGathering Operational Intelligence in Complex Environments at Splunk
Gathering Operational Intelligence in Complex Environments at Splunk
 
CloudHub and other Cloud Deployment Options
CloudHub and other Cloud Deployment OptionsCloudHub and other Cloud Deployment Options
CloudHub and other Cloud Deployment Options
 
Governing and Sharing your Integration Assets
Governing and Sharing your Integration AssetsGoverning and Sharing your Integration Assets
Governing and Sharing your Integration Assets
 
MuleSoft's Approach to Driving Customer Outcomes
MuleSoft's Approach to Driving Customer Outcomes MuleSoft's Approach to Driving Customer Outcomes
MuleSoft's Approach to Driving Customer Outcomes
 
Designing and building Mule applications
Designing and building Mule applicationsDesigning and building Mule applications
Designing and building Mule applications
 
Object Store
Object StoreObject Store
Object Store
 
Introducing Anypoint Exchange 2.0
Introducing Anypoint Exchange 2.0Introducing Anypoint Exchange 2.0
Introducing Anypoint Exchange 2.0
 
Troubleshooting Anypoint Platform
Troubleshooting Anypoint PlatformTroubleshooting Anypoint Platform
Troubleshooting Anypoint Platform
 
Relevancy in a Rapidly Changing World (Yvonne Wassenaar)
Relevancy in a Rapidly Changing World (Yvonne Wassenaar)Relevancy in a Rapidly Changing World (Yvonne Wassenaar)
Relevancy in a Rapidly Changing World (Yvonne Wassenaar)
 
Leveraging APIs and the Cloud to Transform Veteran Care (Steve Rushing)
Leveraging APIs and the Cloud to Transform Veteran Care (Steve Rushing)Leveraging APIs and the Cloud to Transform Veteran Care (Steve Rushing)
Leveraging APIs and the Cloud to Transform Veteran Care (Steve Rushing)
 
Role of Technology in the Evolution of P&C Insurance (Marcus Ryu)
Role of Technology in the Evolution of P&C Insurance (Marcus Ryu)Role of Technology in the Evolution of P&C Insurance (Marcus Ryu)
Role of Technology in the Evolution of P&C Insurance (Marcus Ryu)
 
Industry Stories: How Application Networks are Delivering Agility (Ross Mason)
Industry Stories: How Application Networks are Delivering Agility (Ross Mason)Industry Stories: How Application Networks are Delivering Agility (Ross Mason)
Industry Stories: How Application Networks are Delivering Agility (Ross Mason)
 

Recently uploaded

%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...masabamasaba
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 
tonesoftg
tonesoftgtonesoftg
tonesoftglanshi9
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...masabamasaba
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationJuha-Pekka Tolvanen
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 

Recently uploaded (20)

%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 

Using RAML 1.0 Like a Pro

  • 1. Using RAML 1.0 Like a Pro Using RAML 1.0 Like a Pro May 2016
  • 2. Using RAML 1.0 Like a Pro Mike Rose Chief Architect AvenueCode End-to-End Project Delivery Collaborativ e Developmen t Shared Project Ownership Mobil e Dev Ops Agile Coaching
  • 3. Using RAML 1.0 Like a Pro End-to-End Project Delivery Collaborativ e Developmen t Shared Project Ownership Mobil e Dev Ops Agile Coaching Customers
  • 4. Using RAML 1.0 Like a Pro End-to-End Project Delivery Collaborativ e Developmen t Shared Project Ownership Mobil e Dev Ops Agile Coaching Partner s
  • 5. Using RAML 1.0 Like a Pro Agenda •API Challenges •RAML explained •RAML benefits •RAML features •RAML 1.0 Applied •Q&A 5
  • 6. Using RAML 1.0 Like a Pro API Challenges Using RAML 1.0 Like a Pro
  • 7. Using RAML 1.0 Like a Pro API Challenges • REST is defined by convention - Some rules - Few standards - Many opinions What is so hard about APIs? 7 RESTafarians debating the merits of “shoe” vs. “gourd” style APIs
  • 8. Using RAML 1.0 Like a Pro API Challenges • High degree of abstraction • Difficult to capture requirements • Common vocabulary is largely absent What is so hard about APIs? 8
  • 9. Using RAML 1.0 Like a Pro API Challenges • Without language - Miscommunication - Lack of shared expectations - Little opportunity for collaboration What is so hard about APIs? 9
  • 10. Using RAML 1.0 Like a Pro RAML Explained Using RAML 1.0 Like a Pro
  • 11. Using RAML 1.0 Like a Pro RAML Explained • Language for describing RESTful APIs - Machine readable - Human friendly - Vocabulary for • Functional aspects • Non-functional aspects • Descriptive aspects What is RAML? 11
  • 12. Using RAML 1.0 Like a Pro RAML Explained • RAML enables - Design • Design matters What is RAML? 12
  • 13. Using RAML 1.0 Like a Pro RAML Explained • Why design your APIs with RAML? - You will not get it right the first time - Done is short lived - You need a strategy for dealing with change What is RAML? 13
  • 14. Using RAML 1.0 Like a Pro RAML Explained • RAML helps you manage change • Change management choices - Refactoring RAML - Refactoring code What is RAML? 14
  • 15. Using RAML 1.0 Like a Pro RAML Benefits Using RAML 1.0 Like a Pro
  • 16. Using RAML 1.0 Like a Pro RAML benefits • Reusable components How does RAML help? 16
  • 17. Using RAML 1.0 Like a Pro RAML benefits • Refactoring support How does RAML help? 17
  • 18. Using RAML 1.0 Like a Pro RAML benefits • Team development How does RAML help? 18
  • 19. Using RAML 1.0 Like a Pro RAML benefits • OAI / Swagger - Strengths • Generating documentation from existing implementations - Weaknesses • Uneven / Inconsistent specification • Lack of standardization / interoperability between tools How does RAML compare to other tools? 19
  • 20. Using RAML 1.0 Like a Pro RAML benefits • API Blueprint - Strengths • Creating API mocks from API Blueprint document - Weaknesses • Document format is only semi-structured • Lacks tools for forward engineering How does RAML compare to other tools? 20
  • 21. Using RAML 1.0 Like a Pro RAML Features Using RAML 1.0 Like a Pro
  • 22. Using RAML 1.0 Like a Pro RAML Features • The good stuff - YAML - Data modeling - Patterns - Tools - Community RAML 0.8 was a good start 22
  • 23. Using RAML 1.0 Like a Pro RAML Features • The bad stuff - JSON Schema - YAML !include - Uneven application of data types RAML 0.8 was a good start 23
  • 24. Using RAML 1.0 Like a Pro RAML Features • RAML data types - Simple specification - Applied consistently - Syntactic sugar - Easily reused Improvements in RAML 1.0 24
  • 25. Using RAML 1.0 Like a Pro RAML Features • Annotations - Custom metadata - Leverages RAML data types Improvements in RAML 1.0 25
  • 26. Using RAML 1.0 Like a Pro RAML Features • Modular RAML - Components • Fragments • Libraries - Definitions • Overlays • Extensions Improvements in RAML 1.0 26
  • 27. Using RAML 1.0 Like a Pro Applying RAML 1.0 Using RAML 1.0 Like a Pro
  • 28. Using RAML 1.0 Like a Pro RAML 1.0 Example • Design a simple service • Progressively apply RAML 1.0 to - Support the base API - Add security constraints - Implement HATEOAS principals - Manage multiple versions 28
  • 29. Using RAML 1.0 Like a Pro RAML 1.0 Example • Basic user data - Name - Email address - List of friends • Queryable • CRUD Simple profile API 29
  • 30. Using RAML 1.0 Like a Pro Applying RAML 1.0 • Challenges - Managing multiple APIs - Keeping DRY - Team environment Basic development tasks 30
  • 31. Using RAML 1.0 Like a Pro RAML 1.0 Example • RAML solution - Libraries • Types • ResourceTypes • Traits Basic development tasks 31
  • 32. Using RAML 1.0 Like a Pro RAML 1.0 Example Basic development tasks 32
  • 33. Using RAML 1.0 Like a Pro Applying RAML 1.0 • Challenges - Complexity - Separation of concerns API Security 33
  • 34. Using RAML 1.0 Like a Pro RAML 1.0 Example • RAML solution - SecurityScheme • Choose a security provider type • Specify client authentication requirements API Security 34
  • 35. Using RAML 1.0 Like a Pro RAML 1.0 Example API Security 35
  • 36. Using RAML 1.0 Like a Pro Applying RAML 1.0 • Challenges - Collection query responses • Array of links • Links to first/prev/next/last pages - Collection member responses • URL aware HATEOAS 36
  • 37. Using RAML 1.0 Like a Pro Applying RAML 1.0 • RAML solution - Libraries • Define new hypermedia types • Extend type definitions with links HATEOAS 37
  • 38. Using RAML 1.0 Like a Pro Applying RAML 1.0 HATEOAS 38
  • 39. Using RAML 1.0 Like a Pro Applying RAML 1.0 • Challenges - Versioning - Deprecation - Retirement API Lifecycle Management 39
  • 40. Using RAML 1.0 Like a Pro Applying RAML 1.0 • RAML solution - Libraries • Deprecation data types • Deprecation annotations - Extensions • Refactor out common API definitions • Override common API for each version API Lifecycle Management 40
  • 41. Using RAML 1.0 Like a Pro Applying RAML 1.0 API Lifecycle Management 41
  • 42. Using RAML 1.0 Like a Pro Q & A Using RAML 1.0 Like a Pro
  • 43. Using RAML 1.0 Like a Pro mrose@avenuecode.com Skype: mutsys GitHub: https://github.com/mrose-avenuecode For more information, please visit us at booth G3 in the Expo or online at www.avenuecode.com Project Managemen t Busines s Analysis Software Developmen t Quality Assuranc e Dev Ops Product Managemen t