SlideShare a Scribd company logo
1 of 8
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

What's hot

REST-API's for architects and managers
REST-API's for architects and managersREST-API's for architects and managers
REST-API's for architects and managersPatrick Savalle
 
The anypoint platform for API's
The anypoint platform for API'sThe anypoint platform for API's
The anypoint platform for API'sAchyuta Lakshmi
 
Super simple introduction to REST-APIs (2nd version)
Super simple introduction to REST-APIs (2nd version)Super simple introduction to REST-APIs (2nd version)
Super simple introduction to REST-APIs (2nd version)Patrick Savalle
 
API Best Practices
API Best PracticesAPI Best Practices
API Best PracticesSai Koppala
 
The API Facade Pattern: Common Patterns - Episode 2
The API Facade Pattern: Common Patterns - Episode 2The API Facade Pattern: Common Patterns - Episode 2
The API Facade Pattern: Common Patterns - Episode 2Apigee | Google Cloud
 
Mule api gateway overview
Mule api gateway overviewMule api gateway overview
Mule api gateway overviewSanjeet Pandey
 
Mule esb–api layer
Mule esb–api layerMule esb–api layer
Mule esb–api layercharan teja R
 
Anypoint connector Roadmap
Anypoint connector RoadmapAnypoint connector Roadmap
Anypoint connector Roadmapdanishsm84
 
Building restful apis with laravel
Building restful apis with laravelBuilding restful apis with laravel
Building restful apis with laravelMindfire LLC
 
Mule Sap Integration
Mule Sap IntegrationMule Sap Integration
Mule Sap IntegrationBui Kiet
 

What's hot (19)

Api testing
Api testingApi testing
Api testing
 
API Façade Pattern
API Façade PatternAPI Façade Pattern
API Façade Pattern
 
REST-API's for architects and managers
REST-API's for architects and managersREST-API's for architects and managers
REST-API's for architects and managers
 
The anypoint platform for API's
The anypoint platform for API'sThe anypoint platform for API's
The anypoint platform for API's
 
Super simple introduction to REST-APIs (2nd version)
Super simple introduction to REST-APIs (2nd version)Super simple introduction to REST-APIs (2nd version)
Super simple introduction to REST-APIs (2nd version)
 
API Best Practices
API Best PracticesAPI Best Practices
API Best Practices
 
Api presentation
Api presentationApi presentation
Api presentation
 
Mule api management
Mule  api managementMule  api management
Mule api management
 
The API Facade Pattern: Common Patterns - Episode 2
The API Facade Pattern: Common Patterns - Episode 2The API Facade Pattern: Common Patterns - Episode 2
The API Facade Pattern: Common Patterns - Episode 2
 
Mule api gateway overview
Mule api gateway overviewMule api gateway overview
Mule api gateway overview
 
Mule esb–api layer
Mule esb–api layerMule esb–api layer
Mule esb–api layer
 
Anypoint connector Roadmap
Anypoint connector RoadmapAnypoint connector Roadmap
Anypoint connector Roadmap
 
Building restful apis with laravel
Building restful apis with laravelBuilding restful apis with laravel
Building restful apis with laravel
 
Play with force.com metadata
Play with force.com metadataPlay with force.com metadata
Play with force.com metadata
 
Abap proxies
Abap proxiesAbap proxies
Abap proxies
 
Design REST APIs using RAML
Design REST APIs using RAMLDesign REST APIs using RAML
Design REST APIs using RAML
 
Mule Sap Integration
Mule Sap IntegrationMule Sap Integration
Mule Sap Integration
 
Mule oracle connectors
Mule oracle connectorsMule oracle connectors
Mule oracle connectors
 
Abap proxy
Abap proxyAbap proxy
Abap proxy
 

Similar to RAML - The architecture

Api design and development
Api design and developmentApi design and development
Api design and developmentoquidave
 
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...Jitendra Bafna
 
IBM Integration Bus and REST APIs - Sanjay Nagchowdhury
IBM Integration Bus and REST APIs - Sanjay NagchowdhuryIBM Integration Bus and REST APIs - Sanjay Nagchowdhury
IBM Integration Bus and REST APIs - Sanjay NagchowdhuryKaren Broughton-Mabbitt
 
What are restful web services?
What are restful web services?What are restful web services?
What are restful web services?Aparna Sharma
 
Hia 1691-using iib-to_support_api_economy
Hia 1691-using iib-to_support_api_economyHia 1691-using iib-to_support_api_economy
Hia 1691-using iib-to_support_api_economyAndrew Coleman
 
SFScon 2020 - Nikola Milisavljevic - BASE - Python REST API framework
SFScon 2020 - Nikola Milisavljevic - BASE - Python REST API frameworkSFScon 2020 - Nikola Milisavljevic - BASE - Python REST API framework
SFScon 2020 - Nikola Milisavljevic - BASE - Python REST API frameworkSouth Tyrol Free Software Conference
 
A Practical Guide to Automating End-to-End API Testing
A Practical Guide to Automating End-to-End API TestingA Practical Guide to Automating End-to-End API Testing
A Practical Guide to Automating End-to-End API TestingpCloudy
 
Rest api best practices – comprehensive handbook
Rest api best practices – comprehensive handbookRest api best practices – comprehensive handbook
Rest api best practices – comprehensive handbookKaty Slemon
 
Lunacloud's Compute RESTful API - Programmer's Guide
Lunacloud's Compute RESTful API - Programmer's GuideLunacloud's Compute RESTful API - Programmer's Guide
Lunacloud's Compute RESTful API - Programmer's GuideLunacloud
 
EST is a software architectural style that was created to guide the design an...
EST is a software architectural style that was created to guide the design an...EST is a software architectural style that was created to guide the design an...
EST is a software architectural style that was created to guide the design an...michaelaaron25322
 
Rest WebAPI with OData
Rest WebAPI with ODataRest WebAPI with OData
Rest WebAPI with ODataMahek Merchant
 
WordCamp Raleigh 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Raleigh 2016 - WP API, What is it good for? Absolutely Everything!WordCamp Raleigh 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Raleigh 2016 - WP API, What is it good for? Absolutely Everything!Evan Mullins
 
Building Restful Applications Using Php
Building Restful Applications Using PhpBuilding Restful Applications Using Php
Building Restful Applications Using PhpSudheer Satyanarayana
 
Introduction to API
Introduction to APIIntroduction to API
Introduction to APIrajnishjha29
 

Similar to RAML - The architecture (20)

Api design and development
Api design and developmentApi design and development
Api design and development
 
Raml part 1
Raml part 1Raml part 1
Raml part 1
 
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
 
IBM Integration Bus and REST APIs - Sanjay Nagchowdhury
IBM Integration Bus and REST APIs - Sanjay NagchowdhuryIBM Integration Bus and REST APIs - Sanjay Nagchowdhury
IBM Integration Bus and REST APIs - Sanjay Nagchowdhury
 
Http and REST APIs.
Http and REST APIs.Http and REST APIs.
Http and REST APIs.
 
What are restful web services?
What are restful web services?What are restful web services?
What are restful web services?
 
Hia 1691-using iib-to_support_api_economy
Hia 1691-using iib-to_support_api_economyHia 1691-using iib-to_support_api_economy
Hia 1691-using iib-to_support_api_economy
 
Cqrs api
Cqrs apiCqrs api
Cqrs api
 
SFScon 2020 - Nikola Milisavljevic - BASE - Python REST API framework
SFScon 2020 - Nikola Milisavljevic - BASE - Python REST API frameworkSFScon 2020 - Nikola Milisavljevic - BASE - Python REST API framework
SFScon 2020 - Nikola Milisavljevic - BASE - Python REST API framework
 
A Practical Guide to Automating End-to-End API Testing
A Practical Guide to Automating End-to-End API TestingA Practical Guide to Automating End-to-End API Testing
A Practical Guide to Automating End-to-End API Testing
 
Rest api best practices – comprehensive handbook
Rest api best practices – comprehensive handbookRest api best practices – comprehensive handbook
Rest api best practices – comprehensive handbook
 
Lunacloud's Compute RESTful API - Programmer's Guide
Lunacloud's Compute RESTful API - Programmer's GuideLunacloud's Compute RESTful API - Programmer's Guide
Lunacloud's Compute RESTful API - Programmer's Guide
 
EST is a software architectural style that was created to guide the design an...
EST is a software architectural style that was created to guide the design an...EST is a software architectural style that was created to guide the design an...
EST is a software architectural style that was created to guide the design an...
 
Laravel 5
Laravel 5Laravel 5
Laravel 5
 
Rest WebAPI with OData
Rest WebAPI with ODataRest WebAPI with OData
Rest WebAPI with OData
 
API Basics
API BasicsAPI Basics
API Basics
 
WordCamp Raleigh 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Raleigh 2016 - WP API, What is it good for? Absolutely Everything!WordCamp Raleigh 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Raleigh 2016 - WP API, What is it good for? Absolutely Everything!
 
Building Restful Applications Using Php
Building Restful Applications Using PhpBuilding Restful Applications Using Php
Building Restful Applications Using Php
 
Introduction to API
Introduction to APIIntroduction to API
Introduction to API
 
Restful web services
Restful web servicesRestful web services
Restful web services
 

More from Ankush Sharma

Mule Microsoft Share Point 2010 Connector
Mule Microsoft Share Point 2010 ConnectorMule Microsoft Share Point 2010 Connector
Mule Microsoft Share Point 2010 ConnectorAnkush Sharma
 
Mule Microsoft Share Point 2013 Connector
Mule Microsoft Share Point 2013 ConnectorMule Microsoft Share Point 2013 Connector
Mule Microsoft Share Point 2013 ConnectorAnkush Sharma
 
Mule Microsoft Service Bus
Mule Microsoft Service BusMule Microsoft Service Bus
Mule Microsoft Service BusAnkush Sharma
 
Microsoft Dynamics CRM Connector
Microsoft Dynamics CRM ConnectorMicrosoft Dynamics CRM Connector
Microsoft Dynamics CRM ConnectorAnkush Sharma
 
Mule Microsoft Dynamics AX 2012 Connector
Mule Microsoft Dynamics AX 2012 ConnectorMule Microsoft Dynamics AX 2012 Connector
Mule Microsoft Dynamics AX 2012 ConnectorAnkush Sharma
 
Mule Marketo Connector
Mule Marketo ConnectorMule Marketo Connector
Mule Marketo ConnectorAnkush Sharma
 
Mule Concur Connector
Mule Concur ConnectorMule Concur Connector
Mule Concur ConnectorAnkush Sharma
 
Mule Cloudhub Connector
Mule Cloudhub ConnectorMule Cloudhub Connector
Mule Cloudhub ConnectorAnkush Sharma
 
Mule Amazon SNS Connector
Mule Amazon SNS ConnectorMule Amazon SNS Connector
Mule Amazon SNS ConnectorAnkush Sharma
 
Mule Collection Aggregator
Mule Collection AggregatorMule Collection Aggregator
Mule Collection AggregatorAnkush Sharma
 
Mule Collection Splitter
Mule Collection SplitterMule Collection Splitter
Mule Collection SplitterAnkush Sharma
 
Mule Custom Aggregator
Mule Custom AggregatorMule Custom Aggregator
Mule Custom AggregatorAnkush Sharma
 
Mule Message Chunk Aggregator
Mule Message Chunk AggregatorMule Message Chunk Aggregator
Mule Message Chunk AggregatorAnkush Sharma
 
Mule Message Chunk Splitter
Mule Message Chunk SplitterMule Message Chunk Splitter
Mule Message Chunk SplitterAnkush Sharma
 
Mule Expression Transformer
Mule Expression TransformerMule Expression Transformer
Mule Expression TransformerAnkush Sharma
 
Mule Schema Validation Filter
Mule Schema Validation FilterMule Schema Validation Filter
Mule Schema Validation FilterAnkush Sharma
 
Mule Resequencer Filter
Mule Resequencer FilterMule Resequencer Filter
Mule Resequencer FilterAnkush Sharma
 

More from Ankush Sharma (20)

Mule Microsoft Share Point 2010 Connector
Mule Microsoft Share Point 2010 ConnectorMule Microsoft Share Point 2010 Connector
Mule Microsoft Share Point 2010 Connector
 
Mule Microsoft Share Point 2013 Connector
Mule Microsoft Share Point 2013 ConnectorMule Microsoft Share Point 2013 Connector
Mule Microsoft Share Point 2013 Connector
 
Mule Microsoft Service Bus
Mule Microsoft Service BusMule Microsoft Service Bus
Mule Microsoft Service Bus
 
Microsoft Dynamics CRM Connector
Microsoft Dynamics CRM ConnectorMicrosoft Dynamics CRM Connector
Microsoft Dynamics CRM Connector
 
Mule Microsoft Dynamics AX 2012 Connector
Mule Microsoft Dynamics AX 2012 ConnectorMule Microsoft Dynamics AX 2012 Connector
Mule Microsoft Dynamics AX 2012 Connector
 
Mule Marketo Connector
Mule Marketo ConnectorMule Marketo Connector
Mule Marketo Connector
 
Mule LDAP Connector
Mule LDAP ConnectorMule LDAP Connector
Mule LDAP Connector
 
Mule HDFS Connector
Mule HDFS ConnectorMule HDFS Connector
Mule HDFS Connector
 
Mule Concur Connector
Mule Concur ConnectorMule Concur Connector
Mule Concur Connector
 
Mule Cloudhub Connector
Mule Cloudhub ConnectorMule Cloudhub Connector
Mule Cloudhub Connector
 
Mule AMQP Connector
Mule AMQP ConnectorMule AMQP Connector
Mule AMQP Connector
 
Mule Amazon SNS Connector
Mule Amazon SNS ConnectorMule Amazon SNS Connector
Mule Amazon SNS Connector
 
Mule Collection Aggregator
Mule Collection AggregatorMule Collection Aggregator
Mule Collection Aggregator
 
Mule Collection Splitter
Mule Collection SplitterMule Collection Splitter
Mule Collection Splitter
 
Mule Custom Aggregator
Mule Custom AggregatorMule Custom Aggregator
Mule Custom Aggregator
 
Mule Message Chunk Aggregator
Mule Message Chunk AggregatorMule Message Chunk Aggregator
Mule Message Chunk Aggregator
 
Mule Message Chunk Splitter
Mule Message Chunk SplitterMule Message Chunk Splitter
Mule Message Chunk Splitter
 
Mule Expression Transformer
Mule Expression TransformerMule Expression Transformer
Mule Expression Transformer
 
Mule Schema Validation Filter
Mule Schema Validation FilterMule Schema Validation Filter
Mule Schema Validation Filter
 
Mule Resequencer Filter
Mule Resequencer FilterMule Resequencer Filter
Mule Resequencer Filter
 

Recently uploaded

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 

Recently uploaded (20)

Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 

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.