Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA CompTIA Security+ Amazon AWS Microsoft AZ-900
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Personal Transformation Mindfulness Life Purpose Meditation CBT Emotional Intelligence
Web Development JavaScript React CSS Angular PHP Node.Js WordPress Vue JS
Google Flutter Android Development iOS Development React Native Swift Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
Microsoft Power BI SQL Tableau Business Analysis Data Modeling Business Intelligence MySQL Data Analysis Blockchain
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Business Plan Startup Freelancing Online Business Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
IT & Software Other IT & Software REST API

REST API Design, Development & Management

Learn the REST API Concepts, Design best practices, Security practices, Swagger 2.0/OAI, Hands on API Management
Bestseller
Rating: 4.4 out of 54.4 (5,160 ratings)
27,657 students
Created by Rajeev Sakhuja
Last updated 8/2020
English
English [Auto], French [Auto], 
30-Day Money-Back Guarantee

What you'll learn

  • Design and Develop RESTful API by applying the best practices & REST constraints
  • Create practices for API security, versioning, lifecycle management, documentation and other important aspects
  • Write specifications in Swagger2.0/OAI specifications in YAML format
  • Create an API management strategy for your enterprise
  • Leverage some of the common API management platforms for building API proxies (APIGEE, IBM API Connect, Mulesoft Anypoint)
Curated for the Udemy for Business collection

Requirements

  • Any one modern programming language such as Java or Node JS or Go or PHP
  • Familiarity with web application architecture
  • Idea on XML or JSON formats
  • Understanding of the concept of service

Description

PS: 

  • This COURSE does NOT focus on Coding of REST API - Focus is on Designing  using proven patterns.

  • Please do NOT enroll if your objective/Goal is just to learn "Coding" part of the REST API.


How was this course created?

Author (Raj) has worked with many large organizations for building their Digital Strategy in which API was a central theme. Over the years author recognized certain patterns and practices that led to successful API initiatives. Intrigued by his findings author did thorough research of 100's other successful API providers (examples: Facebook, Expedia, Capital One ...) and that resulted in a collection of Best practices and Design patterns that are covered in this course.

This course covers all the important aspects related to design, development and management of API. The best practices, design patterns, challenges, suggestions & options discussed in this course are either:

  • Created by analyzing how the popular API providers such as Facebook, Twitter, Capital One etc are building and managing their API

  • Taken from personal experiences of the author


Course is divided into 6 Parts:

1. Setting the stage - Discusses a case study (ACME travels) used through the course + provides information on tools used

2. Evolution of  REST API - Lectures in this section will cover the foundational concepts + Why REST/JSON has become a defacto standard

3. Designing the REST API (Covered in multiple sections)

This is where students will learn the:

  • Best Practices

  • Implementation patterns

To demonstrate the implementation aspects, a set of NodeJS based API is also implemented for a fictitious enterprise ACME Travels.

4. Securing the REST API

When an API is exposed by an enterprise to the public internet, it poses a risk to the enterprise as hackers may use the vulnerabilities in the API to launch attacks against the enterprise. There are multiple types of such Functional attacks that the API provider must consider. You will learn about the common attacks and the best practices for protecting the API.

5. Swagger 2.0 / Open API Initiative specifications

This section will begin with the description of Collaborative specifications development process & benefits of adopting contract first approach. At the end of this section student will be able to write Swagger/OAI specifications for their own API. As part of the lectures, a complete specification will be created for ACME Vacations. 

6. API Management

API management  is the process of publishing, documenting and overseeing application programming interfaces (APIs) in a secure, scalable environment. Lectures in this section cover the details of the following activities that an API provider carry out within the scope of API management.

APIgee, IBM API Connect & Mulesoft platforms will be used for demonstrating the various API management aspects discussed in the lectures. Students are encouraged to try out these platforms on their own to get a good feel of what API management platforms bring to table. The three platforms offer a free trial version that can be used for testing.


WHY REST API?

Today Enterprises are using REST APIs for not just building mobile applications but also for:

  • Creating new channels for partnership

  • Building new revenue streams & business models

  • Promoting their brands

Just creating the API does not guarantee that the enterprise will be able to achieve the desired goals from API perspective. Adoption of API by developers depend on multiple aspects such as its utility, ease of use, performance, scalability, security. The API provider must apply best practices throughout the life cycle of an API.


Who should take this course?

This course is suited for any technologist interested in learning REST API from end to end perspective not just from the coding perspective. Though this course uses NodeJS for demonstrating the design best practices, it does not require students to have any prior experience wth NodeJS. 

To take this course the student is expected to know any one (or more) programming language; have understanding of web application architecture; to be familiar with the concept of services ; understands the data formats such as JSON or XML

Please note that this course will NOT teach how to code REST API in NodeJS.

Who this course is for:

  • Technologists interested in learning where, when and how RESTful services should be used in application
  • Developers of web, mobile, IoT applications looking to build RESTful services on the backend
  • Solution architects interested in learning how they can leverage "API Management Platforms" such as Apigee/Mulesoft/IBM API Connect
  • IT Leads aspiring to become architects
  • This course will NOT teach the student how to code Node JS. Use of NodeJS is to demonstrate the implementation of concepts discussed in the lectures.
  • This course is NOT for students looking to learn just the coding of REST API

Featured review

Alain D'Hont
Alain D'Hont
6 courses
2 reviews
Rating: 4.5 out of 510 months ago
This course is exactly what I needed to get started with REST/JSON. Rajeev knows this domain very well and brings it in very structured, clear and well presented lectures that cover the complete domain of REST API development.

Course content

12 sections • 60 lectures • 7h 35m total length

  • Preview05:09
  • Summary decks download link for the course
    00:04
  • Preview07:05
  • Tools for Design, Development,Testing and Management or REST API
    02:18
  • Crash course on MongoDB Atlas Offering
    03:33

  • What is an API
    09:46
  • Evolution of REST/JSON API
    07:20
  • Introduction to RESTful API
    06:04
  • API 101
    10 questions
  • Preview09:26
  • Example REST API Walkthrough
    03:35
  • API Value Chain
    09:45

  • Introduction to REST Architecture Constraints
    04:19
  • REST API Architectural Constraint - Client Server
    05:09
  • REST API Architectural Constraint - Uniform Interface
    05:33
  • Preview02:55
  • REST API Architectural Constraint - Caching
    06:12
  • REST API Architectural Constraint - Layered System
    03:16
  • REST API Architectural Constraint - Code On Demand
    06:18
  • Richardson Maturity Model for REST API
    06:23
  • REST API Architectural Constraints
    10 questions
  • WebApp versus REST API Architecture
    02:40

  • API Endpoint URL
    06:45
  • Practices for Resource Names, Actions & Associations
    05:25
  • Walk through: Setup the API URI for ACME API
    06:26
  • HTTP API Request flow and HTTP Status Code
    06:59
  • Implementing REST API CRUD operations
    Preview09:20
  • API Data Format Setup
    06:09
  • Setup the Demo/Test environment
    08:35
  • Walkthrough: Creating a Vacations API in Node JS
    06:23
  • Implement REST API
    12 questions

  • Preview07:14
  • Application Error Handling Patterns
    07:22
  • Walkthrough: Implementation of error handling for POST API
    11:19
  • REST API Error Handling
    10 questions

  • Handling changes to API
    10:50
  • Versioning the API
    06:04
  • Walk through : ACME API Versioning
    04:45

  • API Caching (1 of 2) Concepts & Design decisions
    09:29
  • API Caching (2 of 2) Cache Control Directive
    12:08
  • Walk Through : API Caching using Cache-Control Directives
    05:04
  • API Caching
    5 questions

  • Building support for Partial Responses
    06:53
  • Walk through : Setup Partial Response Support in ACME API
    06:21
  • Building support for Pagination
    08:27
  • Walk through : Building support for Pagination in ACME API
    03:15
  • Building support for Partial Responses & Pagination
    5 questions

  • REST API Security - Introduction
    06:17
  • Securing API with Basic Authentication
    10:03
  • API Basic Authentication
    8 questions
  • Securing API with Tokens & JWT
    15:45
  • API Token based Authentication & JWT
    11 questions
  • Securing API with API Key & Secret
    09:14
  • API Keys and Secret
    5 questions
  • API Authorization using OAuth2.0
    19:57
  • API Authorization OAuth2.0
    10 questions
  • API Security - Functional Attack
    13:49

  • Requirements Analysis Process & Intro to REST Specifications
    05:58
  • REST API Specifications
    5 questions
  • Swagger/OAI Specifications Walkthrough
    05:38
  • Introduction to Swagger/OAI specifications
    5 questions
  • Swagger/OAI Specifications, Part 1 of 3
    08:32
  • Structure & Elements of Swagger/OAI specifications
    5 questions
  • Swagger/OAI Specifications, Part 2 of 3
    09:34
  • Structure & Elements of Swagger/OAI specifications (2/3)
    6 questions
  • Swagger/OAI Specifications, Part 3 of 3
    08:05
  • Structure & Elements of Swagger/OAI specifications (3/3)
    5 questions

Instructor

Rajeev Sakhuja
IT Consultant, Mentor, Innovation evangelist
Rajeev Sakhuja
  • 4.4 Instructor Rating
  • 10,686 Reviews
  • 53,703 Students
  • 6 Courses

I am a hands-on Information Technology consultant experienced in large scale applications development, infrastructure management & Strategy development in Fortune 500 companies. Have over 20 years of experience in IT industry. Passionate technologist who likes to learn and teach new technologies.

Currently assisting large companies in the adoption of Cloud, emerging technologies such as AI, Machine Learning & Blockchain.

IBM Champion 2017. Thanks to over 50,000 students worldwide for their continuous support and encouragement.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.