Mô tả

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 ConnectMulesoft 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.

Bạn sẽ học được gì

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)

Yêu cầu

  • 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

Nội dung khoá học

12 sections

Setting the stage

5 lectures
Introduction to the Author and the Course
05:09
Summary decks download link for the course
00:04
ACME Travels - Case study
07:05
Tools for Design, Development,Testing and Management or REST API
02:18
Crash course on MongoDB Atlas Offering
03:33

Evolution of RESTful services

7 lectures
What is an API
09:46
Evolution of REST/JSON API
07:20
Introduction to RESTful API
06:04
API 101
10 questions
Private, Public and Partner API
09:26
Example REST API Walkthrough
03:35
API Value Chain
09:45

REST API Architectural Constraints

10 lectures
Introduction to REST Architecture Constraints
04:19
REST API Architectural Constraint - Client Server
05:09
REST API Architectural Constraint - Uniform Interface
05:33
REST API Architectural Constraint - Statelessness
02: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

Desigining REST API

9 lectures
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
09: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

REST API Error Handling Patterns

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

REST API Handling Change - Versioning Patterns

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

REST API Cache Control Patterns

4 lectures
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

REST API Response Data Handling Patterns

5 lectures
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

10 lectures
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

REST API Specifications using Swagger 2.0 / OAI

10 lectures
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

API Management

7 lectures
Introduction to API Management
03:48
API Lifecycle & Developer Productivity
13:43
API Developer Portal
15:46
API Security Management
11:25
API Traffic Management
13:09
API Analytics
07:24
API Product and API Monetization
09:59

Good Bye & All the Best

1 lectures
Good bye
05:09

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.