SlideShare a Scribd company logo
RAML
The Architecture
INDEX
RAML – Architecture
Root definition
The Resources & URI Parameters
The Methods
Query Parameters
Responses
RAML – Architecture
Architecture of somethings defines that what is the structure of a
system, what are its elements and other stuff. RAMLs architecture is
quite simple and understandable which makes it one of the top
vendors for designing APIs.
We’ll know more of its architectural components in further slides.
Root definition
Say you are creating webservices for Bla-Bla Mobile store. So first step is to create
the Root of your RAML file for that write following code:
#%RAML 0.8
title: Bla-Bla Mobile store API
baseUri: http://api.blablamobilestore.com/{version}
version: v1
Now what does the above code mean:
•#%RAML 0.8 – Defines the version of RAML specs
•Title - describes title of the API. It is mendatory property.
•baseUri – It is the URL where your API is hosted. All the resources for the
API can be accessed from this URL.
•Version – It depicts the version of API.
Resources & URI Parameters
Well resources are the services that a web API provides. In our example of Bla Bla mobile
store, a user can create an account and there are several orders he has done in past. So we
can declare the resources as follows:
/user:
/orders:
/profile:
Now in above code, user is a resource and in user resource further two resources orders
and profile are there. If we are to open orders for the user then we can just access through
following URL:
http://{baseUri}/user/orders
We can also add URI variables:
/user:
/orders:
/{id}:
The above code means for user there are orders and we can then fetch a specific order by
adding ID in path then. That’s how creation of resources works.
The Methods
The methods here are the HTTP methods. We can declare all the methods that a
resource can support. Some HTTP methods are -
GET - Retrieve the information defined in the request URI.
PUT - Replace the addressed collection. At the object-level, create or update it.
POST - Create a new entry in the collection. This method is generally not used at
the object-level.
Example:
/user:
/orders:
get:
post:
This code means the resource allows to get all the orders for user by using GET
HTTP method and also allow to create a new order by POST method.
Query Parameters
Query parameters are used to send various key-value pairs inside URI after ‘?’ symbol.
Developers mostly use query parameters to be able perform actions like filtering a collection.
Query parameters are a great way to accomplish this. Example –
/user:
/orders:
get:
queryParameters:
type:
quantity:
post:
In above code, the resource /orders can have two query parameters ‘type’ and ‘quantity’
which can be used to filter the results of the GET request for this resource.
Thank You 

More Related Content

PPT
Raml
Ankush Sharma
 
PPTX
Basic auth implementation using raml in mule
Adithya Kuchan
 
PPTX
Design API using RAML - basics
kunal vishe
 
PDF
RAML
Shanky Gupta
 
PPTX
Consuming raml
Davide Rapacciuolo
 
PPTX
Rest With Raml
vijay dhanakodi
 
PPTX
What is an Application programming interface(API)?
Akmal Ali
 
PPTX
What is an API
Elliott Richmond
 
Basic auth implementation using raml in mule
Adithya Kuchan
 
Design API using RAML - basics
kunal vishe
 
Consuming raml
Davide Rapacciuolo
 
Rest With Raml
vijay dhanakodi
 
What is an Application programming interface(API)?
Akmal Ali
 
What is an API
Elliott Richmond
 

What's hot (19)

PPTX
Api testing
vcubesoftsolutions
 
PPT
API Façade Pattern
Nabeel Yoosuf
 
PPTX
REST-API's for architects and managers
Patrick Savalle
 
PPTX
The anypoint platform for API's
Achyuta Lakshmi
 
PPTX
Super simple introduction to REST-APIs (2nd version)
Patrick Savalle
 
PPTX
API Best Practices
Sai Koppala
 
PDF
Api presentation
Tiago Cardoso
 
PPTX
Mule api management
Bhanu Chandra Nalleboyina
 
PPTX
The API Facade Pattern: Common Patterns - Episode 2
Apigee | Google Cloud
 
PPTX
Mule api gateway overview
Sanjeet Pandey
 
PPT
Mule esb–api layer
charan teja R
 
PPTX
Anypoint connector Roadmap
danishsm84
 
PDF
Building restful apis with laravel
Mindfire LLC
 
PPTX
Play with force.com metadata
Rakesh Kumar Kedia
 
PDF
Abap proxies
szchowdhury
 
PPTX
Design REST APIs using RAML
AIMDek Technologies
 
PDF
Mule Sap Integration
Bui Kiet
 
PPT
Mule oracle connectors
Praneethchampion
 
DOCX
Abap proxy
Ganesh Kumar
 
Api testing
vcubesoftsolutions
 
API Façade Pattern
Nabeel Yoosuf
 
REST-API's for architects and managers
Patrick Savalle
 
The anypoint platform for API's
Achyuta Lakshmi
 
Super simple introduction to REST-APIs (2nd version)
Patrick Savalle
 
API Best Practices
Sai Koppala
 
Api presentation
Tiago Cardoso
 
Mule api management
Bhanu Chandra Nalleboyina
 
The API Facade Pattern: Common Patterns - Episode 2
Apigee | Google Cloud
 
Mule api gateway overview
Sanjeet Pandey
 
Mule esb–api layer
charan teja R
 
Anypoint connector Roadmap
danishsm84
 
Building restful apis with laravel
Mindfire LLC
 
Play with force.com metadata
Rakesh Kumar Kedia
 
Abap proxies
szchowdhury
 
Design REST APIs using RAML
AIMDek Technologies
 
Mule Sap Integration
Bui Kiet
 
Mule oracle connectors
Praneethchampion
 
Abap proxy
Ganesh Kumar
 
Ad

Similar to RAML - The architecture (20)

PPTX
Mule soft RAML API Designing
Raja Reddy
 
PPTX
A Deep Dive into RESTful API Design Part 2
VivekKrishna34
 
PPTX
Raml part 1
venkata20k
 
PPTX
JAX-RS. Developing RESTful APIs with Java
Jerry Kurian
 
PPTX
Rest with Java EE 6 , Security , Backbone.js
Carol McDonald
 
PPTX
Rest
Carol McDonald
 
PDF
Doing REST Right
Kerry Buckley
 
PPTX
Rest APIs Training
Shekhar Kumar
 
PDF
RESTful web
Alvin Qi
 
PDF
Restful Services
SHAKIL AKHTAR
 
PPT
RESTful SOA - 中科院暑期讲座
Li Yi
 
PPTX
Real world RESTful service development problems and solutions
Bhakti Mehta
 
PPTX
RAML - APIs By Design
Uri Sarid
 
PDF
James Higginbotham - API Design
John Zozzaro
 
PDF
REST APIs
Arthur De Magalhaes
 
PDF
Cwinters Intro To Rest And JerREST and Jersey Introductionsey
elliando dias
 
PPT
Introduction to Google APIs
Siva Arunachalam
 
PDF
WebApp #3 : API
Jean Michel
 
ODP
RESTful Web Services with JAX-RS
Carol McDonald
 
PDF
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
Jitendra Bafna
 
Mule soft RAML API Designing
Raja Reddy
 
A Deep Dive into RESTful API Design Part 2
VivekKrishna34
 
Raml part 1
venkata20k
 
JAX-RS. Developing RESTful APIs with Java
Jerry Kurian
 
Rest with Java EE 6 , Security , Backbone.js
Carol McDonald
 
Doing REST Right
Kerry Buckley
 
Rest APIs Training
Shekhar Kumar
 
RESTful web
Alvin Qi
 
Restful Services
SHAKIL AKHTAR
 
RESTful SOA - 中科院暑期讲座
Li Yi
 
Real world RESTful service development problems and solutions
Bhakti Mehta
 
RAML - APIs By Design
Uri Sarid
 
James Higginbotham - API Design
John Zozzaro
 
Cwinters Intro To Rest And JerREST and Jersey Introductionsey
elliando dias
 
Introduction to Google APIs
Siva Arunachalam
 
WebApp #3 : API
Jean Michel
 
RESTful Web Services with JAX-RS
Carol McDonald
 
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
Jitendra Bafna
 
Ad

More from Ankush Sharma (20)

PPTX
Mule Microsoft Share Point 2010 Connector
Ankush Sharma
 
PPTX
Mule Microsoft Share Point 2013 Connector
Ankush Sharma
 
PPTX
Mule Microsoft Service Bus
Ankush Sharma
 
PPTX
Microsoft Dynamics CRM Connector
Ankush Sharma
 
PPTX
Mule Microsoft Dynamics AX 2012 Connector
Ankush Sharma
 
PPTX
Mule Marketo Connector
Ankush Sharma
 
PPTX
Mule LDAP Connector
Ankush Sharma
 
PPTX
Mule HDFS Connector
Ankush Sharma
 
PPTX
Mule Concur Connector
Ankush Sharma
 
PPTX
Mule Cloudhub Connector
Ankush Sharma
 
PPTX
Mule AMQP Connector
Ankush Sharma
 
PPTX
Mule Amazon SNS Connector
Ankush Sharma
 
PPTX
Mule Collection Aggregator
Ankush Sharma
 
PPTX
Mule Collection Splitter
Ankush Sharma
 
PPTX
Mule Custom Aggregator
Ankush Sharma
 
PPTX
Mule Message Chunk Aggregator
Ankush Sharma
 
PPTX
Mule Message Chunk Splitter
Ankush Sharma
 
PPTX
Mule Expression Transformer
Ankush Sharma
 
PPTX
Mule Schema Validation Filter
Ankush Sharma
 
PPTX
Mule Resequencer Filter
Ankush Sharma
 
Mule Microsoft Share Point 2010 Connector
Ankush Sharma
 
Mule Microsoft Share Point 2013 Connector
Ankush Sharma
 
Mule Microsoft Service Bus
Ankush Sharma
 
Microsoft Dynamics CRM Connector
Ankush Sharma
 
Mule Microsoft Dynamics AX 2012 Connector
Ankush Sharma
 
Mule Marketo Connector
Ankush Sharma
 
Mule LDAP Connector
Ankush Sharma
 
Mule HDFS Connector
Ankush Sharma
 
Mule Concur Connector
Ankush Sharma
 
Mule Cloudhub Connector
Ankush Sharma
 
Mule AMQP Connector
Ankush Sharma
 
Mule Amazon SNS Connector
Ankush Sharma
 
Mule Collection Aggregator
Ankush Sharma
 
Mule Collection Splitter
Ankush Sharma
 
Mule Custom Aggregator
Ankush Sharma
 
Mule Message Chunk Aggregator
Ankush Sharma
 
Mule Message Chunk Splitter
Ankush Sharma
 
Mule Expression Transformer
Ankush Sharma
 
Mule Schema Validation Filter
Ankush Sharma
 
Mule Resequencer Filter
Ankush Sharma
 

Recently uploaded (20)

PDF
Generating Union types w/ Static Analysis
K. Matthew Dupree
 
PDF
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
PDF
Applitools Platform Pulse: What's New and What's Coming - July 2025
Applitools
 
PDF
Enhancing Healthcare RPM Platforms with Contextual AI Integration
Cadabra Studio
 
PDF
Using licensed Data Loss Prevention (DLP) as a strategic proactive data secur...
Q-Advise
 
PPT
Activate_Methodology_Summary presentatio
annapureddyn
 
PDF
Download iTop VPN Free 6.1.0.5882 Crack Full Activated Pre Latest 2025
imang66g
 
PDF
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
PDF
An Experience-Based Look at AI Lead Generation Pricing, Features & B2B Results
Thomas albart
 
PDF
advancepresentationskillshdhdhhdhdhdhhfhf
jasmenrojas249
 
PDF
Bandai Playdia The Book - David Glotz
BluePanther6
 
PDF
Key Features to Look for in Arizona App Development Services
Net-Craft.com
 
PDF
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
PPTX
Presentation about variables and constant.pptx
safalsingh810
 
PDF
Protecting the Digital World Cyber Securit
dnthakkar16
 
PDF
49784907924775488180_LRN2959_Data_Pump_23ai.pdf
Abilash868456
 
PPTX
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
PPTX
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
PPTX
Presentation about variables and constant.pptx
kr2589474
 
PDF
vAdobe Premiere Pro 2025 (v25.2.3.004) Crack Pre-Activated Latest
imang66g
 
Generating Union types w/ Static Analysis
K. Matthew Dupree
 
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
Applitools Platform Pulse: What's New and What's Coming - July 2025
Applitools
 
Enhancing Healthcare RPM Platforms with Contextual AI Integration
Cadabra Studio
 
Using licensed Data Loss Prevention (DLP) as a strategic proactive data secur...
Q-Advise
 
Activate_Methodology_Summary presentatio
annapureddyn
 
Download iTop VPN Free 6.1.0.5882 Crack Full Activated Pre Latest 2025
imang66g
 
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
An Experience-Based Look at AI Lead Generation Pricing, Features & B2B Results
Thomas albart
 
advancepresentationskillshdhdhhdhdhdhhfhf
jasmenrojas249
 
Bandai Playdia The Book - David Glotz
BluePanther6
 
Key Features to Look for in Arizona App Development Services
Net-Craft.com
 
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
Presentation about variables and constant.pptx
safalsingh810
 
Protecting the Digital World Cyber Securit
dnthakkar16
 
49784907924775488180_LRN2959_Data_Pump_23ai.pdf
Abilash868456
 
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
Presentation about variables and constant.pptx
kr2589474
 
vAdobe Premiere Pro 2025 (v25.2.3.004) Crack Pre-Activated Latest
imang66g
 

RAML - The architecture

  • 2. INDEX RAML – Architecture Root definition The Resources & URI Parameters The Methods Query Parameters Responses
  • 3. RAML – Architecture Architecture of somethings defines that what is the structure of a system, what are its elements and other stuff. RAMLs architecture is quite simple and understandable which makes it one of the top vendors for designing APIs. We’ll know more of its architectural components in further slides.
  • 4. Root definition Say you are creating webservices for Bla-Bla Mobile store. So first step is to create the Root of your RAML file for that write following code: #%RAML 0.8 title: Bla-Bla Mobile store API baseUri: http://api.blablamobilestore.com/{version} version: v1 Now what does the above code mean: •#%RAML 0.8 – Defines the version of RAML specs •Title - describes title of the API. It is mendatory property. •baseUri – It is the URL where your API is hosted. All the resources for the API can be accessed from this URL. •Version – It depicts the version of API.
  • 5. Resources & URI Parameters Well resources are the services that a web API provides. In our example of Bla Bla mobile store, a user can create an account and there are several orders he has done in past. So we can declare the resources as follows: /user: /orders: /profile: Now in above code, user is a resource and in user resource further two resources orders and profile are there. If we are to open orders for the user then we can just access through following URL: http://{baseUri}/user/orders We can also add URI variables: /user: /orders: /{id}: The above code means for user there are orders and we can then fetch a specific order by adding ID in path then. That’s how creation of resources works.
  • 6. The Methods The methods here are the HTTP methods. We can declare all the methods that a resource can support. Some HTTP methods are - GET - Retrieve the information defined in the request URI. PUT - Replace the addressed collection. At the object-level, create or update it. POST - Create a new entry in the collection. This method is generally not used at the object-level. Example: /user: /orders: get: post: This code means the resource allows to get all the orders for user by using GET HTTP method and also allow to create a new order by POST method.
  • 7. Query Parameters Query parameters are used to send various key-value pairs inside URI after ‘?’ symbol. Developers mostly use query parameters to be able perform actions like filtering a collection. Query parameters are a great way to accomplish this. Example – /user: /orders: get: queryParameters: type: quantity: post: In above code, the resource /orders can have two query parameters ‘type’ and ‘quantity’ which can be used to filter the results of the GET request for this resource.