Instructor: Hello and welcome
to the REST API design course.
Another installment
in this Software Architecture Series of courses.
Designing API is one of the core tasks
of every software architect and REST API is no exception.
In fact, as you will see in a minute
REST API is perhaps the most common web API out there
and every architect is expected to be able to design one.
In this course, you will learn everything
there is to know about REST API.
You will know how to design it, how to use it,
what are the basics of the REST API design
and also some advanced topics about REST API.
At the end of this course,
you will know everything there is to know about REST API
and you will be able to design a sophisticated,
advanced and extremely useful and documented REST API,
one that will attract developers
and will boost your system's usage.
But first, why REST API?
Why do we need to learn about REST API?
What's so special about it?
So first, REST API is the defacto standard API
on the web today.
There are a lot of web API standards
like GraphQL, gRPC, SOAP and so on and so forth,
and we'll talk about some of them.
But REST API is the most common and the most popular one,
and you will probably use it
either as a developer or as a user of the API in your job.
In addition, all major websites expose REST API
which adds to its popularity.
REST API is exposed by sites like Amazon and Twitter
and Facebook and eBay and Slack and Twilio and lots more.
It's really the most popular web API out there
and you should be familiar with it.
Developers come to expect to see REST API
when they're using a specific website.
So when you will develop website or web app,
your clients or developers that will use the website
will expect to see REST API exposed by this site.
And if your website will not expose REST API,
then its popularity will dwindle
and it'll hurt your business.
REST API supported by all development platforms.
It doesn't really matter how do you develop your backend.
It could be .Net or Java or Python
or Node or PHP or whatever.
All those platforms contain libraries
to expose easily REST API
and they do it in a really, really good way.
REST API knowledge is one of the most sought after skill
in job applications.
You will see a lot of job ads
looking for REST API experts,
backend developers with REST API experience
and so on and so forth.
So, if you don't have this knowledge of REST API,
it'll probably hurt your chances
to land a really really good job in the future.
And last but not least,
REST API is extremely simple to implement.
Comparing to other web API like SOAP or GraphQL
which are much more complicated to implement,
REST API is very, very simple
as you will see later in this course.
Usually, you won't need more than a single line of code
to implement REST API.
Again, it doesn't matter which platform you are using,
and it's really, really simple to implement.
You will see it later in this course.
So, what do you need to know
about this course before we dive in?
First, this course is very practical.
We are not going just to look
at the PowerPoint slides and talk,
but we are actually going to use and implement REST API
and we are going to use two tools for this,
Postman and Beeceptor.
Now don't worry
if you have no idea what Postman and Beeceptor are.
We're going to talk about it later in this course
and I'll show you exactly what are those tools
and how to use them.
In addition, don't worry,
no coding is required in this course.
It doesn't matter which platform you are using
in your day job,
you are not going to code anything in this course.
Everything will be implemented using Postman and Beeceptor.
We will be looking at some code
but again you won't need to code, just take a look.
As I've mentioned before,
I want this course to be as practical as possible
and for this exact reason, I've prepared a special checklist
which you can download at the end of this course.
This checklist will guide you on your REST API journey
and it contains all the practical knowledge
learned in this course.
Using this checklist will ensure the REST API you design
will be professional, easy to use
and very attractive for developers.
So don't forget to download it at the end of this course,
and I'm sure it'll come handy
when you will design your own REST API.
So first, a little bit about myself.
So who am I?
My name is Memi Lavi
and you can see my website URL at the bottom of this slide.
You are more than invited to visit it.
I'm a senior software and Cloud architect
with almost 20 years of experience in this field.
I've worked with a lots of international
and large clients as well as small startups
and government organizations.
I've helped all of those clients
designing their architecture
either on-prem or in the Cloud,
and I've helped them also design and build their REST API.
I'm quite proficient in a lot of technology stacks.
At the development side
with Microsoft .Net, Java, Python and some more.
In the databases, I've worked with SQL Server,
Oracle and little bit of MongoDB.
On the front end of course, Angular and React
and in the Cloud, mainly Azure and a little bit of AWS.
So let's go on.