- Learn
- The Tech Hub
- Secret Tech Club EP04: Lost in connection
Secret Tech Club EP04:
Lost in connection
Custom title applied. Post title: Secret Tech Club EP04: Lost in connectionBy Yeu-Kang Hua
APIs are the unsung heroes that enable your apps to communicate behind the scenes. Whether you’re here for the technology or simply to watch middle-aged men reach their endpoints with epic dad puns, you’re in for a treat.
In this episode of Secret Tech Club, I am joined by full-stack developer Marko and SEO expert Daniel for a thorough exploration of the world of APIs. Using a language barrier sketch and numerous real-life metaphors, we examine what APIs are, how they power the tools we use every day, and why marketers, developers, and even your grandma have likely interacted with one—without even realising.
Whether you're deep into dev tools or just API-curious, this episode will have you both AHA-ing and HAHA-ing — especially as Daniel hits us with dad-tier jokes so powerful, they retroactively improve your childhood.
Episode Breakdown
- 00:00 – Opening sketch
- 03:11 – Intro
- 05:07 – What is an API?
- 06:06 – How we interact with APIs every day
- 07:33 – Getting to know REST
- 08:25 – The pizza RESTaurant
- 10:20 – Securing APIs with authentication
- 11:21 – GraphQL: Data on demand
- 12:10 – Wrapping up
- 12:53 – Behind the scenes & bloopers
Additional Resources
Transcript
00:00 --> 00:03
[Serbian]
I can’t work, this database is driving me nuts
00:03 --> 00:08
My brain is still asleep, and my fingers won’t listen
00:08 --> 00:10
I can’t get it to connect
00:10 --> 00:13
Could any one of you bring me the coffee?
00:14 --> 00:16
What is he saying?
00:16 --> 00:18
I think he says that he needs
00:18 --> 00:20
to update the database tables
00:26 --> 00:30
Ask him if we need to
update the security protocol as well
00:35 --> 00:38
[Serbian]
Hello…?
00:40 --> 00:44
[Serbian]
Hello, I need the coffee
00:52 --> 00:53
He says yes
00:53 --> 00:56
And we also need to update the API tokens
00:59 --> 01:01
But you know this sucks
01:01 --> 01:02
It’s like playing the whispering game
01:02 --> 01:04
If it wasn’t for his contact network…
01:04 --> 01:05
Yeah!
01:05 --> 01:08
This is exactly like an API!
01:09 --> 01:10
Yeah?
01:10 --> 01:11
You know
01:11 --> 01:13
This! What we’re doing!
01:13 --> 01:13
What we’re doing
01:13 --> 01:16
is exactly how an API works!
01:17 --> 01:19
When two systems
want to talk to each other
01:19 --> 01:21
without knowing the same language
01:21 --> 01:23
[speaks in a foreign language]
01:23 --> 01:25
[speaks in an even more foreign language]
01:25 --> 01:26
They can bring in
01:26 --> 01:27
a middleman, the API
01:27 --> 01:29
to enable the communication
01:29 --> 01:31
Hello — Hello.
01:32 --> 01:34
[Serbian]
Hello — Hello
01:34 --> 01:37
An API is often used as a middleman
01:37 --> 01:39
to communicate with your SaaS platform
01:39 --> 01:40
Traditional systems
01:40 --> 01:42
would directly access data
01:42 --> 01:44
like Daniel here
01:44 --> 01:47
talking to Marko without a translator
01:48 --> 01:49
[Serbian]
Hello — Hello
01:49 --> 01:51
But with an API
01:51 --> 01:54
it’s like Daniel
sending his question to me first
01:55 --> 01:56
Hello — Hello
01:56 --> 01:58
And let me do the talking!
01:59 --> 02:00
[Serbian]
Oh brother, could any of you two
02:00 --> 02:02
just please bring me the coffee already
02:02 --> 02:03
I don’t understand what you
02:03 --> 02:05
are talking about all this time
02:06 --> 02:07
Can I get the coffee?
02:07 --> 02:08
Right!
02:08 --> 02:10
That means I don’t need
to know how to speak Serbian
02:10 --> 02:13
I just need to know how to speak to Kang
02:13 --> 02:16
Exactly… but in “real life”
02:16 --> 02:18
APIs come with challenges
02:18 --> 02:19
such as security
02:19 --> 02:21
and permissions
02:21 --> 02:23
(and a whole lot of errors…)
02:23 --> 02:25
And that is why
we use standardized rules
02:25 --> 02:27
like REST APIs
02:27 --> 02:29
to make communication
02:29 --> 02:30
safer and easier
02:32 --> 02:35
Inte-REST-ing API facts, for sure
02:36 --> 02:38
I REST my case
02:41 --> 02:42
The more you know
02:45 --> 02:46
[Serbian]
There is no point!
02:46 --> 02:49
I’ll go to Espresso House myself for coffee
02:56 --> 02:58
Zdravo (Hello)
03:10 --> 03:11
(start)
03:11 --> 03:12
Zdravo!
03:12 --> 03:14
And welcome to The Secret Tech Club
03:14 --> 03:17
— a video series where
we make tech fun and approachable
03:18 --> 03:22
Today my special guests are Marko,
full-stack developer
03:22 --> 03:25
and Daniel, our SEO master
03:26 --> 03:26
Thanks
03:26 --> 03:27
Is it SEO “expert”?
03:27 --> 03:29
Yeah, I can say that
03:30 --> 03:33
And today we got to talk about APIs
03:34 --> 03:36
And to make this session as
pleasant as possible
03:36 --> 03:39
we have finally provided Marko
with his cup of coffee
03:40 --> 03:42
I’m awake
03:42 --> 03:43
Marko
03:43 --> 03:46
Was it hard to learn Serbian
03:46 --> 03:48
to play the part in our skit?
03:49 --> 03:50
Yeah
03:50 --> 03:54
I spent like 40 years to learn it, so
03:54 --> 03:57
It was very authentic and believable
03:57 --> 03:58
But it took time
03:58 --> 03:59
Yeah
03:59 --> 04:03
And you really enjoyed playing in
our skit, didn’t you?
04:03 --> 04:04
Yeah, it was a lot of fun
04:04 --> 04:09
A lot of laughing and really
cool ideas that made me laugh
04:09 --> 04:11
So, really cool experience
04:11 --> 04:16
And Daniel, his acting prowess is already
well established at Zooma
04:16 --> 04:20
Maybe not to the external world,
but internally
04:20 --> 04:24
We all know you, and
04:24 --> 04:28
Yeah, but this was the
first time you played in a scripted skit
04:28 --> 04:30
Yeah, it was
04:30 --> 04:32
So, yeah, it was fun
04:32 --> 04:34
It was amazing
04:34 --> 04:38
I was pulled into Daniel’s
zone, so I really believed I was there
04:38 --> 04:40
I think you too, right?
04:40 --> 04:42
Yeah, it was authentic
04:42 --> 04:43
Okay
04:43 --> 04:46
But let’s take the chance
to remind our viewers that
04:46 --> 04:50
our skits are all in good fun
04:50 --> 04:53
And in reality,
we are very professional
04:54 --> 04:56
Solid communicators
04:56 --> 04:59
And we speak English
04:59 --> 05:03
And most importantly,
we love speaking about tech
05:03 --> 05:06
And today we’re
gonna speak about APIs
05:07 --> 05:09
Okay, so does anyone here
05:09 --> 05:13
know what A.P.I. stands for?
05:14 --> 05:15
[Nervous laugh]
05:15 --> 05:18
No? You’re the developer,
you should know!
05:18 --> 05:20
Application Programming Interface, right?
05:20 --> 05:23
Yeah, Application Programming Interface
05:23 --> 05:27
What a full-stack guy we have
05:28 --> 05:29
“What a fool”
05:31 --> 05:32
No, we need to
05:32 --> 05:33
Should we stop?
05:33 --> 05:34
No, it was great
05:34 --> 05:36
But ask me again
05:36 --> 05:37
Cuz I was stupid
05:37 --> 05:38
Okay
05:38 --> 05:40
What is API?
— Application Programming Interface
05:40 --> 05:43
Wow, that was really fast
05:45 --> 05:46
Okay
05:46 --> 05:49
But I did worry about this episode
05:49 --> 05:55
Because it is a
pretty technical concept, APIs
05:55 --> 05:57
But when I did research
05:57 --> 05:59
I discovered that it’s actually something
05:59 --> 06:02
that we get in contact with everyday
06:02 --> 06:04
without thinking about it
06:04 --> 06:09
And I have a little list here
about “Daily API examples”
06:09 --> 06:14
But can anyone guess
what kind of interactions I will say?
06:16 --> 06:17
Yeah…
06:17 --> 06:20
Probably…
06:20 --> 06:23
(Full-stack developer)
06:26 --> 06:29
I don’t know what we
need to talk about, sorry
06:29 --> 06:31
You can just guess!
06:31 --> 06:32
Okay, the examples
06:32 --> 06:35
What? Guess, like “Swish”, or guess…
06:35 --> 06:35
Yeah
06:35 --> 06:37
Ah okay, sorry
06:37 --> 06:38
So yeah
06:38 --> 06:39
Swish is a great example
06:39 --> 06:42
Our app needs to communicate
with the banks
06:44 --> 06:46
Maybe when you’re using
a weather app or something?
06:46 --> 06:47
It’s probably…
06:47 --> 06:52
I don’t think the weather app makers
have their own satellites
06:52 --> 06:55
No, they are fetching the data
from somewhere
06:55 --> 06:59
Also, when you book flight tickets,
you have these, what do you call these?
06:59 --> 07:00
Aggregators
07:00 --> 07:05
And they pull tickets from different,
you know, flight
07:06 --> 07:09
agencies? Or flight companies?
07:09 --> 07:12
Yeah, there is a name for these kind of websites
07:12 --> 07:15
Yes, a professional name that
we native Swedish people don’t know
07:17 --> 07:23
Last is the smart home devices that need
to interact with different services
07:23 --> 07:24
So, yeah
07:24 --> 07:26
APIs are something that we use every day
07:26 --> 07:31
but today we’re gonna explain a
little bit how they work
07:32 --> 07:34
And in our skit
07:34 --> 07:39
we mentioned REST APIs because it’s
a very commonly used protocol
07:40 --> 07:42
Or what we called it in the skit, we called it…
07:42 --> 07:44
“Commonly used rules”
07:44 --> 07:44
Yeah
07:44 --> 07:48
But in technical terms, we call them protocols
07:49 --> 07:50
And you, Marko, have prepared
07:50 --> 07:52
a mini lesson for us, haven’t you? – Yeah
07:52 --> 07:54
I think it’s good to start from the
07:54 --> 07:57
definition and from the beginning
07:57 --> 08:02
So the “REST” means
REpresentational State Transfer
08:02 --> 08:06
And it’s an
architectural style for designing
08:06 --> 08:09
distributed systems as APIs
08:10 --> 08:15
And it was originally defined by
Roy Fielding in his 2000…
08:15 --> 08:17
Boring
08:17 --> 08:19
Not inte-REST-ing
08:19 --> 08:20
Okay
08:20 --> 08:21
You have to do better
08:21 --> 08:24
Let’s talk about a pizza
restaurant then
08:24 --> 08:25
(start)
08:25 --> 08:28
Okay, so imagine the REST API
08:28 --> 08:29
as a pizza place
08:29 --> 08:31
but instead of phone calls
08:31 --> 08:33
we use an ordering app
08:33 --> 08:35
Every time the app needs something
08:35 --> 08:36
from the restaurant
08:36 --> 08:39
like getting the menu or placing the order
08:39 --> 08:41
it needs to send a request
08:41 --> 08:43
All requests go to the restaurant’s
08:43 --> 08:44
special addresses
08:45 --> 08:46
Think phone numbers
08:46 --> 08:48
These are endpoints
08:48 --> 08:51
Now, what you do at each endpoint
08:51 --> 08:53
depends on the method you use
08:53 --> 08:54
like looking at the menu
08:54 --> 08:56
placing an order
08:56 --> 08:57
or tracking your delivery
08:57 --> 09:00
The four most common methods are
09:05 --> 09:07
Yeah, I know right?
09:07 --> 09:09
These keywords almost make total sense
09:11 --> 09:13
Let’s say you just want to see the menu
09:13 --> 09:14
With the GET method
09:14 --> 09:15
you’re asking
09:15 --> 09:18
“Hey, what pizzas do you have today?”
09:19 --> 09:21
The pizza place replies
09:21 --> 09:23
with the success code
09:23 --> 09:24
and a list
09:24 --> 09:27
That’s your status and response
09:27 --> 09:28
When you’re ready to order
09:28 --> 09:30
you send a POST request
09:30 --> 09:32
along with your order details
09:32 --> 09:33
also known as the payload
09:34 --> 09:35
In return
09:35 --> 09:38
the API gives you an order number
09:38 --> 09:39
your personal tracking code
09:40 --> 09:41
You need to save that one
09:42 --> 09:43
Cuz if you want to
09:43 --> 09:44
change your order later
09:44 --> 09:45
you use PUT
09:45 --> 09:47
with that number
09:47 --> 09:49
along with your update details
09:51 --> 09:53
What? 200?
09:53 --> 09:57
Mama Mia…
10:01 --> 10:02
And if you panic
10:02 --> 10:04
and completely change your mind
10:04 --> 10:06
DELETE cancels it
10:08 --> 10:09
So yeah
10:09 --> 10:11
That’s basically how Rest APIs work
10:11 --> 10:13
and how most of our apps
10:13 --> 10:14
and systems
10:14 --> 10:15
communicate with each other
10:21 --> 10:23
That sounds like a public buffet
10:23 --> 10:26
But what if you are running
an exclusive RESTaurant
10:26 --> 10:29
and want to RESTrict access
to VIPs only?
10:30 --> 10:32
Yeah, that’s a good point.
10:32 --> 10:35
If you want to only grant access
10:35 --> 10:38
to the VIP members only
10:39 --> 10:42
then you need to add authentication
to the whole process
10:43 --> 10:46
And that means that you need
a membership number
10:46 --> 10:49
in order to get access to the services
10:50 --> 10:52
And if you don’t have
a valid membership number
10:52 --> 10:54
then your access is denied
10:58 --> 10:59
You okay, Daniel?
10:59 --> 11:01
Looks like you’re zoning out
11:01 --> 11:04
Yeah, but it’s been a tough night
11:04 --> 11:05
My kid didn’t want to sleep
11:05 --> 11:07
That happened to me as well
11:07 --> 11:08
Yesterday, my daughter…
11:08 --> 11:10
So I told the cops
11:10 --> 11:12
What? Why?
11:12 --> 11:14
Cuz my kid clearly needed
11:14 --> 11:17
arrest (a REST)
11:20 --> 11:21
Okay.
11:21 --> 11:24
So let’s talk a little bit
about GraphQL as well
11:24 --> 11:27
That’s an alternative to REST
11:27 --> 11:30
So if REST is like calling
a pizza restaurant
11:31 --> 11:35
and ordering from the
existing menu with set options
11:35 --> 11:38
GraphQL could be thought of as a
11:38 --> 11:40
mobile pizza ordering app
11:40 --> 11:43
where inside the app, you can choose
11:43 --> 11:45
all of the extra options
11:45 --> 11:49
and the different choices in the app
11:49 --> 11:52
and then send it in only one request
11:52 --> 11:57
So to repeat,
with REST you are limited to fixed choices
11:57 --> 12:02
and with GraphQL, you get
everything you want in only one go
12:03 --> 12:06
So instead of REST, you use GRAPH
12:07 --> 12:09
Q-L
12:10 --> 12:14
Thank you, Marko,
for the amazing lecture about REST
12:14 --> 12:16
Now let’s put that to REST
12:16 --> 12:19
Or what do you say, Daniel?
12:19 --> 12:19
Yeah
12:19 --> 12:21
I took your puns!
12:21 --> 12:22
Let’s go to REST
12:22 --> 12:24
Yeah, let’s do that
12:25 --> 12:27
I hope you liked this episode
12:27 --> 12:30
We had so much fun filming it
12:30 --> 12:33
So until next time, keep learning
12:33 --> 12:35
Bye bye