SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
Lecture Series by
Tharindu Weerasinghe
For the 3rd Year Undergrads of APIIT – Sri Lanka
www.tharinduweerasinghe.com
REST API Basics
Outline
• REST API Introduction
• REST API Action Flow
• HTTP Methods
• Sample usage of the HTTP Methods in the Requests
• Example API Requests
• 3 steps to design API end-points
• Testing REST End-Points
www.tharinduweerasinghe.com
REST API Introduction
• REST ➔ REpresentational State Transfer (REST)
• API ➔ Application Programming Interface
• It can be regarded as a protocol that defines a set of constraints to be
used for creating web services.
• It is a way of accessing web services in a less complex manner without
having any processing.
• It caters only HTTP (Hypertext Transfer Protocol) requests.
• It’s a medium for two computers to communicate over HTTP in the
same way clients and servers communicate.
www.tharinduweerasinghe.com
REST API Action Flow
• Credit:
https://faun.pub/consumin
g-rest-apis-with-python-
eb86c6b724c5
www.tharinduweerasinghe.com
HTTP Methods used in REST APIs
1. GET: The HTTP GET method is used to retrieve a representation of a resource. In the successful path, GET returns a representation in XML or JSON and
an HTTP response code of 200 (OK). In the erroneous situation, it most often returns a 404 (NOT FOUND) or 400 (BAD REQUEST).
2. POST: The POST method is used to create new resources. In particular, it is utilized to create subordinate resources. That is, subordinate to some other
(e.g. parent) resource. On successful creation, return HTTP status 201, returning a Location header with a link to the newly-created resource with the
201 HTTP status.
NOTE: POST is neither safe nor idempotent.
3. PUT: The PUT method for updating the capabilities. However, PUT can also be used to create a resource in the case where the resource ID is chosen
by the client instead of by the server. In other words, if the PUT is to a URI that contains the value of a non-existent resource ID. On successful update,
return 200 (or 204 if not returning any content in the body) from a PUT. If using PUT for create, return HTTP status 201 on successful creation. PUT is
not safe operation but it’s idempotent.
4. PATCH: The PATCH method used for modify capabilities. The PATCH request only needs to contain the changes to the resource, not the complete
resource. This resembles PUT, but the body contains a set of instructions describing how a resource currently residing on the server should be
modified to produce a new version. This means that the PATCH body should not just be a modified part of the resource, but in some kind of patch
language like JSON Patch or XML Patch. PATCH is neither safe nor idempotent.
5. DELETE: The DELETE method is used to delete a resource identified by a URI. On successful deletion, return HTTP status 200 (OK) along with a
response body.
Credits: REST API (Introduction) - GeeksforGeeks
www.tharinduweerasinghe.com
www.tharinduweerasinghe.com
Sample usage of the HTTP Methods in the Requests
Credits: https://assertible.com/blog/7-http-methods-every-web-developer-should-know-and-how-to-test-them
HTTP Status Codes
• Credits:
https://faun.pub/consuming-
rest-apis-with-python-
eb86c6b724c5
www.tharinduweerasinghe.com
Example:
Calling a REST API End-Point in Javascript
www.tharinduweerasinghe.com
The following slide will show you how can you
include your JavaScript code shown in the
previous slide in an HTML code!
www.tharinduweerasinghe.com
www.tharinduweerasinghe.com
3 steps to design API end-points using Python
• Step 1: Design your API Interface
• The most vital step
• You need to know the problem you want to address for a successful design
• Basically, this will cater the business requirements of sending relevant data for respective HTTP
requests
• You need to decide on the format of the request and response
• Use API URL best practices in designing your APIs.
• You need to describe your REST APIs using OpenAPI definition, designing an API means creating
an OpenAPI document for it.
Credit: https://blog.stoplight.io/how-to-create-an-api-in-three-steps
www.tharinduweerasinghe.com
3 steps to design API end-points using Python
(contd.)
• Step 2: Mock your API Server
• Once you have your design, you need to check the manipulated response.
• After you create your OpenAPI document for your new API, create a mock server. There are a few
ways to do this, one of the methods is to use an open-source command-line utility like the Prism API
server.
www.tharinduweerasinghe.com
Credit: https://blog.stoplight.io/how-to-create-an-api-in-three-steps
3 steps to design API end-points using Python
(contd.)
• Step 3: Code your API
• Once you have your OpenAPI
document then, you can select
whatever the platform or
language you would like to
code your API and build the
API server. Here I’m using
Python with a library called
Flask.
www.tharinduweerasinghe.com
Credit: https://blog.stoplight.io/how-to-create-an-api-in-three-steps
REST API Testing Tools
• Postman
• Swagger
https://www.softwaretestingmaterial.com/best-api-testing-tools/
Reference
• Understanding And Using REST APIs — Smashing Magazine
• REST API (Introduction) – GeeksforGeeks
• Python and REST APIs: Interacting With Web Services – Real Python
• 7 Simple REST Client Examples for Retrieving API Data (dreamfactory.com)
• REST API Example Requests – Tableau
• Building a Basic RestFul API in Python | Codementor
• REST API Testing Strategy: What Exactly Should You Test? l Sisense
• Online API Testing Tool | Test Your API Online (reqbin.com)
• Postman API Platform | Sign Up for Free
• SwaggerHub | API Design and Documentation with OpenAPI
• Python REST API Tutorial - Building a Flask REST API – YouTube
• https://levelup.gitconnected.com/all-possible-ways-of-making-an-api-call-in-plain-javascript-c0dee3c11b8b
• https://www.testim.io/blog/the-9-api-testing-tools-you-cant-live-without-in-2019-2/
• https://www.freecodecamp.org/news/rest-api-best-practices-rest-endpoint-design-examples/
• https://www.freecodecamp.org/news/rest-api-best-practices-rest-endpoint-design-examples/
• https://rapidapi.com/blog/how-to-use-an-api-with-javascript/
• https://www.softwaretestingmaterial.com/best-api-testing-tools/
www.tharinduweerasinghe.com

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

REST API and CRUD
REST API and CRUDREST API and CRUD
REST API and CRUD
 
RESTful API - Best Practices
RESTful API - Best PracticesRESTful API - Best Practices
RESTful API - Best Practices
 
REST API
REST APIREST API
REST API
 
Test Design and Automation for REST API
Test Design and Automation for REST APITest Design and Automation for REST API
Test Design and Automation for REST API
 
What is an API?
What is an API?What is an API?
What is an API?
 
Rest api standards and best practices
Rest api standards and best practicesRest api standards and best practices
Rest api standards and best practices
 
Learn REST in 18 Slides
Learn REST in 18 SlidesLearn REST in 18 Slides
Learn REST in 18 Slides
 
Rest api and-crud-api
Rest api and-crud-apiRest api and-crud-api
Rest api and-crud-api
 
REST & RESTful Web Services
REST & RESTful Web ServicesREST & RESTful Web Services
REST & RESTful Web Services
 
Restful api
Restful apiRestful api
Restful api
 
Understanding REST
Understanding RESTUnderstanding REST
Understanding REST
 
What is an API
What is an APIWhat is an API
What is an API
 
Api types
Api typesApi types
Api types
 
Introduction to API
Introduction to APIIntroduction to API
Introduction to API
 
An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST
 
Rest assured
Rest assuredRest assured
Rest assured
 
API
APIAPI
API
 
Web api
Web apiWeb api
Web api
 
Api testing
Api testingApi testing
Api testing
 
Swagger
SwaggerSwagger
Swagger
 

Semelhante a REST API Basics

Semelhante a REST API Basics (20)

Crafting APIs
Crafting APIsCrafting APIs
Crafting APIs
 
Best Practices for Architecting a Pragmatic Web API.
Best Practices for Architecting a Pragmatic Web API.Best Practices for Architecting a Pragmatic Web API.
Best Practices for Architecting a Pragmatic Web API.
 
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...
 
ASP.NET Mvc 4 web api
ASP.NET Mvc 4 web apiASP.NET Mvc 4 web api
ASP.NET Mvc 4 web api
 
Standards of rest api
Standards of rest apiStandards of rest api
Standards of rest api
 
Do not automate GUI testing
Do not automate GUI testingDo not automate GUI testing
Do not automate GUI testing
 
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 WebAPI with OData
Rest WebAPI with ODataRest WebAPI with OData
Rest WebAPI with OData
 
Api design and development
Api design and developmentApi design and development
Api design and development
 
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!
 
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
 
Apitesting.pptx
Apitesting.pptxApitesting.pptx
Apitesting.pptx
 
Best Practices in Api Design
Best Practices in Api DesignBest Practices in Api Design
Best Practices in Api Design
 
Pragmatic REST APIs
Pragmatic REST APIsPragmatic REST APIs
Pragmatic REST APIs
 
Resting with OroCRM Webinar
Resting with OroCRM WebinarResting with OroCRM Webinar
Resting with OroCRM Webinar
 
Web Dev 21-01-2024.pptx
Web Dev 21-01-2024.pptxWeb Dev 21-01-2024.pptx
Web Dev 21-01-2024.pptx
 
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
 
Automating and Testing a REST API
Automating and Testing a REST APIAutomating and Testing a REST API
Automating and Testing a REST API
 
Best practices and advantages of REST APIs
Best practices and advantages of REST APIsBest practices and advantages of REST APIs
Best practices and advantages of REST APIs
 
Schema-First API Design
Schema-First API DesignSchema-First API Design
Schema-First API Design
 

Mais de Tharindu Weerasinghe

Mais de Tharindu Weerasinghe (20)

C Propgramming.pdf
C Propgramming.pdfC Propgramming.pdf
C Propgramming.pdf
 
Basics of Computer Networks in Sinhala
Basics of Computer Networks in SinhalaBasics of Computer Networks in Sinhala
Basics of Computer Networks in Sinhala
 
Data Structures & Algorithms in Sinhala
Data Structures & Algorithms in SinhalaData Structures & Algorithms in Sinhala
Data Structures & Algorithms in Sinhala
 
Object Oriended Programming in Sinhala
Object Oriended Programming in Sinhala Object Oriended Programming in Sinhala
Object Oriended Programming in Sinhala
 
Tips For A Better Undergraduate Research
Tips For A Better Undergraduate ResearchTips For A Better Undergraduate Research
Tips For A Better Undergraduate Research
 
Basics of Block Chain
Basics of Block ChainBasics of Block Chain
Basics of Block Chain
 
Basics of IoT
Basics of IoTBasics of IoT
Basics of IoT
 
Cloud Conputing Basics and some Related Research Topics
Cloud Conputing Basics and some Related Research TopicsCloud Conputing Basics and some Related Research Topics
Cloud Conputing Basics and some Related Research Topics
 
Basic Concepts and Trends in Emerging Technologies
Basic Concepts and Trends in Emerging TechnologiesBasic Concepts and Trends in Emerging Technologies
Basic Concepts and Trends in Emerging Technologies
 
Introcution to EJB
Introcution to EJBIntrocution to EJB
Introcution to EJB
 
Introduction to Enterprise Applications and Tools
Introduction to Enterprise Applications and ToolsIntroduction to Enterprise Applications and Tools
Introduction to Enterprise Applications and Tools
 
Introduction to Agile Software Development & Python
Introduction to Agile Software Development & PythonIntroduction to Agile Software Development & Python
Introduction to Agile Software Development & Python
 
Agile Languages for Rapid Prototyping
Agile Languages for Rapid PrototypingAgile Languages for Rapid Prototyping
Agile Languages for Rapid Prototyping
 
Things to ponder before you start building [cooperate] software
Things to ponder before you start building [cooperate] softwareThings to ponder before you start building [cooperate] software
Things to ponder before you start building [cooperate] software
 
How to make screens and the internet safe for Children
How to make screens and the internet safe for Children How to make screens and the internet safe for Children
How to make screens and the internet safe for Children
 
Different Concepts on Databases
Different Concepts on DatabasesDifferent Concepts on Databases
Different Concepts on Databases
 
A Survey Study on Higher Education Trends among Sri Lankan IT Professionals
A Survey Study on Higher Education Trends among Sri Lankan IT ProfessionalsA Survey Study on Higher Education Trends among Sri Lankan IT Professionals
A Survey Study on Higher Education Trends among Sri Lankan IT Professionals
 
A Survey Study on Higher Education Trends among Information Technology Prof...
A Survey Study  on  Higher Education Trends among Information Technology Prof...A Survey Study  on  Higher Education Trends among Information Technology Prof...
A Survey Study on Higher Education Trends among Information Technology Prof...
 
Professionalism and Industry Expectations related to IT industry
Professionalism and Industry Expectations related to IT industry  Professionalism and Industry Expectations related to IT industry
Professionalism and Industry Expectations related to IT industry
 
Triggers and Stored Procedures
Triggers and Stored ProceduresTriggers and Stored Procedures
Triggers and Stored Procedures
 

Último

AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
+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
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Último (20)

AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
+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...
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
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
 
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-...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
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 ...
 
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
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
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
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
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 ...
 
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
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
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
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 

REST API Basics

  • 1. Lecture Series by Tharindu Weerasinghe For the 3rd Year Undergrads of APIIT – Sri Lanka www.tharinduweerasinghe.com REST API Basics
  • 2. Outline • REST API Introduction • REST API Action Flow • HTTP Methods • Sample usage of the HTTP Methods in the Requests • Example API Requests • 3 steps to design API end-points • Testing REST End-Points www.tharinduweerasinghe.com
  • 3. REST API Introduction • REST ➔ REpresentational State Transfer (REST) • API ➔ Application Programming Interface • It can be regarded as a protocol that defines a set of constraints to be used for creating web services. • It is a way of accessing web services in a less complex manner without having any processing. • It caters only HTTP (Hypertext Transfer Protocol) requests. • It’s a medium for two computers to communicate over HTTP in the same way clients and servers communicate. www.tharinduweerasinghe.com
  • 4. REST API Action Flow • Credit: https://faun.pub/consumin g-rest-apis-with-python- eb86c6b724c5 www.tharinduweerasinghe.com
  • 5. HTTP Methods used in REST APIs 1. GET: The HTTP GET method is used to retrieve a representation of a resource. In the successful path, GET returns a representation in XML or JSON and an HTTP response code of 200 (OK). In the erroneous situation, it most often returns a 404 (NOT FOUND) or 400 (BAD REQUEST). 2. POST: The POST method is used to create new resources. In particular, it is utilized to create subordinate resources. That is, subordinate to some other (e.g. parent) resource. On successful creation, return HTTP status 201, returning a Location header with a link to the newly-created resource with the 201 HTTP status. NOTE: POST is neither safe nor idempotent. 3. PUT: The PUT method for updating the capabilities. However, PUT can also be used to create a resource in the case where the resource ID is chosen by the client instead of by the server. In other words, if the PUT is to a URI that contains the value of a non-existent resource ID. On successful update, return 200 (or 204 if not returning any content in the body) from a PUT. If using PUT for create, return HTTP status 201 on successful creation. PUT is not safe operation but it’s idempotent. 4. PATCH: The PATCH method used for modify capabilities. The PATCH request only needs to contain the changes to the resource, not the complete resource. This resembles PUT, but the body contains a set of instructions describing how a resource currently residing on the server should be modified to produce a new version. This means that the PATCH body should not just be a modified part of the resource, but in some kind of patch language like JSON Patch or XML Patch. PATCH is neither safe nor idempotent. 5. DELETE: The DELETE method is used to delete a resource identified by a URI. On successful deletion, return HTTP status 200 (OK) along with a response body. Credits: REST API (Introduction) - GeeksforGeeks www.tharinduweerasinghe.com
  • 6. www.tharinduweerasinghe.com Sample usage of the HTTP Methods in the Requests Credits: https://assertible.com/blog/7-http-methods-every-web-developer-should-know-and-how-to-test-them
  • 7. HTTP Status Codes • Credits: https://faun.pub/consuming- rest-apis-with-python- eb86c6b724c5 www.tharinduweerasinghe.com
  • 8. Example: Calling a REST API End-Point in Javascript www.tharinduweerasinghe.com
  • 9. The following slide will show you how can you include your JavaScript code shown in the previous slide in an HTML code! www.tharinduweerasinghe.com
  • 11. 3 steps to design API end-points using Python • Step 1: Design your API Interface • The most vital step • You need to know the problem you want to address for a successful design • Basically, this will cater the business requirements of sending relevant data for respective HTTP requests • You need to decide on the format of the request and response • Use API URL best practices in designing your APIs. • You need to describe your REST APIs using OpenAPI definition, designing an API means creating an OpenAPI document for it. Credit: https://blog.stoplight.io/how-to-create-an-api-in-three-steps www.tharinduweerasinghe.com
  • 12. 3 steps to design API end-points using Python (contd.) • Step 2: Mock your API Server • Once you have your design, you need to check the manipulated response. • After you create your OpenAPI document for your new API, create a mock server. There are a few ways to do this, one of the methods is to use an open-source command-line utility like the Prism API server. www.tharinduweerasinghe.com Credit: https://blog.stoplight.io/how-to-create-an-api-in-three-steps
  • 13. 3 steps to design API end-points using Python (contd.) • Step 3: Code your API • Once you have your OpenAPI document then, you can select whatever the platform or language you would like to code your API and build the API server. Here I’m using Python with a library called Flask. www.tharinduweerasinghe.com Credit: https://blog.stoplight.io/how-to-create-an-api-in-three-steps
  • 14. REST API Testing Tools • Postman • Swagger https://www.softwaretestingmaterial.com/best-api-testing-tools/
  • 15. Reference • Understanding And Using REST APIs — Smashing Magazine • REST API (Introduction) – GeeksforGeeks • Python and REST APIs: Interacting With Web Services – Real Python • 7 Simple REST Client Examples for Retrieving API Data (dreamfactory.com) • REST API Example Requests – Tableau • Building a Basic RestFul API in Python | Codementor • REST API Testing Strategy: What Exactly Should You Test? l Sisense • Online API Testing Tool | Test Your API Online (reqbin.com) • Postman API Platform | Sign Up for Free • SwaggerHub | API Design and Documentation with OpenAPI • Python REST API Tutorial - Building a Flask REST API – YouTube • https://levelup.gitconnected.com/all-possible-ways-of-making-an-api-call-in-plain-javascript-c0dee3c11b8b • https://www.testim.io/blog/the-9-api-testing-tools-you-cant-live-without-in-2019-2/ • https://www.freecodecamp.org/news/rest-api-best-practices-rest-endpoint-design-examples/ • https://www.freecodecamp.org/news/rest-api-best-practices-rest-endpoint-design-examples/ • https://rapidapi.com/blog/how-to-use-an-api-with-javascript/ • https://www.softwaretestingmaterial.com/best-api-testing-tools/ www.tharinduweerasinghe.com