1
00:00:00,510 --> 00:00:01,830
Instructor: Hello and welcome

2
00:00:01,830 --> 00:00:03,719
to the REST API design course.

3
00:00:03,719 --> 00:00:04,830
Another installment

4
00:00:04,830 --> 00:00:08,340
in this Software Architecture Series of courses.

5
00:00:08,340 --> 00:00:11,010
Designing API is one of the core tasks

6
00:00:11,010 --> 00:00:15,420
of every software architect and REST API is no exception.

7
00:00:15,420 --> 00:00:17,610
In fact, as you will see in a minute

8
00:00:17,610 --> 00:00:21,480
REST API is perhaps the most common web API out there

9
00:00:21,480 --> 00:00:25,560
and every architect is expected to be able to design one.

10
00:00:25,560 --> 00:00:27,750
In this course, you will learn everything

11
00:00:27,750 --> 00:00:29,820
there is to know about REST API.

12
00:00:29,820 --> 00:00:32,460
You will know how to design it, how to use it,

13
00:00:32,460 --> 00:00:35,370
what are the basics of the REST API design

14
00:00:35,370 --> 00:00:39,450
and also some advanced topics about REST API.

15
00:00:39,450 --> 00:00:40,650
At the end of this course,

16
00:00:40,650 --> 00:00:43,710
you will know everything there is to know about REST API

17
00:00:43,710 --> 00:00:46,170
and you will be able to design a sophisticated,

18
00:00:46,170 --> 00:00:50,640
advanced and extremely useful and documented REST API,

19
00:00:50,640 --> 00:00:52,800
one that will attract developers

20
00:00:52,800 --> 00:00:55,113
and will boost your system's usage.

21
00:00:56,130 --> 00:00:58,560
But first, why REST API?

22
00:00:58,560 --> 00:01:00,810
Why do we need to learn about REST API?

23
00:01:00,810 --> 00:01:02,670
What's so special about it?

24
00:01:02,670 --> 00:01:07,020
So first, REST API is the defacto standard API

25
00:01:07,020 --> 00:01:08,130
on the web today.

26
00:01:08,130 --> 00:01:10,830
There are a lot of web API standards

27
00:01:10,830 --> 00:01:14,820
like GraphQL, gRPC, SOAP and so on and so forth,

28
00:01:14,820 --> 00:01:16,440
and we'll talk about some of them.

29
00:01:16,440 --> 00:01:19,650
But REST API is the most common and the most popular one,

30
00:01:19,650 --> 00:01:21,240
and you will probably use it

31
00:01:21,240 --> 00:01:26,130
either as a developer or as a user of the API in your job.

32
00:01:26,130 --> 00:01:30,150
In addition, all major websites expose REST API

33
00:01:30,150 --> 00:01:32,250
which adds to its popularity.

34
00:01:32,250 --> 00:01:35,850
REST API is exposed by sites like Amazon and Twitter

35
00:01:35,850 --> 00:01:40,850
and Facebook and eBay and Slack and Twilio and lots more.

36
00:01:41,430 --> 00:01:44,340
It's really the most popular web API out there

37
00:01:44,340 --> 00:01:46,203
and you should be familiar with it.

38
00:01:47,340 --> 00:01:50,310
Developers come to expect to see REST API

39
00:01:50,310 --> 00:01:52,950
when they're using a specific website.

40
00:01:52,950 --> 00:01:57,000
So when you will develop website or web app,

41
00:01:57,000 --> 00:02:00,030
your clients or developers that will use the website

42
00:02:00,030 --> 00:02:03,900
will expect to see REST API exposed by this site.

43
00:02:03,900 --> 00:02:07,500
And if your website will not expose REST API,

44
00:02:07,500 --> 00:02:09,810
then its popularity will dwindle

45
00:02:09,810 --> 00:02:11,463
and it'll hurt your business.

46
00:02:13,410 --> 00:02:16,500
REST API supported by all development platforms.

47
00:02:16,500 --> 00:02:19,770
It doesn't really matter how do you develop your backend.

48
00:02:19,770 --> 00:02:22,200
It could be .Net or Java or Python

49
00:02:22,200 --> 00:02:24,870
or Node or PHP or whatever.

50
00:02:24,870 --> 00:02:27,420
All those platforms contain libraries

51
00:02:27,420 --> 00:02:29,340
to expose easily REST API

52
00:02:29,340 --> 00:02:31,893
and they do it in a really, really good way.

53
00:02:33,690 --> 00:02:37,590
REST API knowledge is one of the most sought after skill

54
00:02:37,590 --> 00:02:38,850
in job applications.

55
00:02:38,850 --> 00:02:41,880
You will see a lot of job ads

56
00:02:41,880 --> 00:02:43,950
looking for REST API experts,

57
00:02:43,950 --> 00:02:46,560
backend developers with REST API experience

58
00:02:46,560 --> 00:02:48,360
and so on and so forth.

59
00:02:48,360 --> 00:02:51,460
So, if you don't have this knowledge of REST API,

60
00:02:51,460 --> 00:02:53,580
it'll probably hurt your chances

61
00:02:53,580 --> 00:02:56,730
to land a really really good job in the future.

62
00:02:56,730 --> 00:02:58,470
And last but not least,

63
00:02:58,470 --> 00:03:01,950
REST API is extremely simple to implement.

64
00:03:01,950 --> 00:03:05,640
Comparing to other web API like SOAP or GraphQL

65
00:03:05,640 --> 00:03:07,860
which are much more complicated to implement,

66
00:03:07,860 --> 00:03:09,990
REST API is very, very simple

67
00:03:09,990 --> 00:03:11,970
as you will see later in this course.

68
00:03:11,970 --> 00:03:14,820
Usually, you won't need more than a single line of code

69
00:03:14,820 --> 00:03:16,140
to implement REST API.

70
00:03:16,140 --> 00:03:19,140
Again, it doesn't matter which platform you are using,

71
00:03:19,140 --> 00:03:21,300
and it's really, really simple to implement.

72
00:03:21,300 --> 00:03:23,463
You will see it later in this course.

73
00:03:25,020 --> 00:03:26,460
So, what do you need to know

74
00:03:26,460 --> 00:03:28,740
about this course before we dive in?

75
00:03:28,740 --> 00:03:31,500
First, this course is very practical.

76
00:03:31,500 --> 00:03:33,210
We are not going just to look

77
00:03:33,210 --> 00:03:34,800
at the PowerPoint slides and talk,

78
00:03:34,800 --> 00:03:38,760
but we are actually going to use and implement REST API

79
00:03:38,760 --> 00:03:41,070
and we are going to use two tools for this,

80
00:03:41,070 --> 00:03:43,290
Postman and Beeceptor.

81
00:03:43,290 --> 00:03:44,123
Now don't worry

82
00:03:44,123 --> 00:03:47,070
if you have no idea what Postman and Beeceptor are.

83
00:03:47,070 --> 00:03:49,890
We're going to talk about it later in this course

84
00:03:49,890 --> 00:03:51,930
and I'll show you exactly what are those tools

85
00:03:51,930 --> 00:03:53,760
and how to use them.

86
00:03:53,760 --> 00:03:55,470
In addition, don't worry,

87
00:03:55,470 --> 00:03:57,630
no coding is required in this course.

88
00:03:57,630 --> 00:04:00,060
It doesn't matter which platform you are using

89
00:04:00,060 --> 00:04:01,410
in your day job,

90
00:04:01,410 --> 00:04:03,780
you are not going to code anything in this course.

91
00:04:03,780 --> 00:04:07,110
Everything will be implemented using Postman and Beeceptor.

92
00:04:07,110 --> 00:04:08,790
We will be looking at some code

93
00:04:08,790 --> 00:04:11,913
but again you won't need to code, just take a look.

94
00:04:13,890 --> 00:04:15,330
As I've mentioned before,

95
00:04:15,330 --> 00:04:18,480
I want this course to be as practical as possible

96
00:04:18,480 --> 00:04:22,320
and for this exact reason, I've prepared a special checklist

97
00:04:22,320 --> 00:04:25,200
which you can download at the end of this course.

98
00:04:25,200 --> 00:04:28,320
This checklist will guide you on your REST API journey

99
00:04:28,320 --> 00:04:30,660
and it contains all the practical knowledge

100
00:04:30,660 --> 00:04:32,670
learned in this course.

101
00:04:32,670 --> 00:04:36,360
Using this checklist will ensure the REST API you design

102
00:04:36,360 --> 00:04:38,550
will be professional, easy to use

103
00:04:38,550 --> 00:04:41,370
and very attractive for developers.

104
00:04:41,370 --> 00:04:44,790
So don't forget to download it at the end of this course,

105
00:04:44,790 --> 00:04:46,500
and I'm sure it'll come handy

106
00:04:46,500 --> 00:04:49,323
when you will design your own REST API.

107
00:04:51,570 --> 00:04:54,120
So first, a little bit about myself.

108
00:04:54,120 --> 00:04:55,650
So who am I?

109
00:04:55,650 --> 00:04:56,937
My name is Memi Lavi

110
00:04:56,937 --> 00:05:00,030
and you can see my website URL at the bottom of this slide.

111
00:05:00,030 --> 00:05:02,850
You are more than invited to visit it.

112
00:05:02,850 --> 00:05:04,710
I'm a senior software and Cloud architect

113
00:05:04,710 --> 00:05:07,503
with almost 20 years of experience in this field.

114
00:05:08,790 --> 00:05:10,920
I've worked with a lots of international

115
00:05:10,920 --> 00:05:13,650
and large clients as well as small startups

116
00:05:13,650 --> 00:05:15,960
and government organizations.

117
00:05:15,960 --> 00:05:17,430
I've helped all of those clients

118
00:05:17,430 --> 00:05:18,720
designing their architecture

119
00:05:18,720 --> 00:05:21,240
either on-prem or in the Cloud,

120
00:05:21,240 --> 00:05:24,783
and I've helped them also design and build their REST API.

121
00:05:26,040 --> 00:05:29,610
I'm quite proficient in a lot of technology stacks.

122
00:05:29,610 --> 00:05:30,840
At the development side

123
00:05:30,840 --> 00:05:34,770
with Microsoft .Net, Java, Python and some more.

124
00:05:34,770 --> 00:05:36,870
In the databases, I've worked with SQL Server,

125
00:05:36,870 --> 00:05:39,240
Oracle and little bit of MongoDB.

126
00:05:39,240 --> 00:05:41,910
On the front end of course, Angular and React

127
00:05:41,910 --> 00:05:46,910
and in the Cloud, mainly Azure and a little bit of AWS.

128
00:05:47,220 --> 00:05:48,633
So let's go on.

