Skip to content

Secret Tech Club EP04:
Lost in connection

Custom title applied. Post title: Secret Tech Club EP04: Lost in connection

By Yeu-Kang Hua

Secret Tech Club EP04: Lost in connection

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

Yeu-Kang Hua
Generalist-specialist in digital experiences, or a hybrid designer-developer if you must pigeonhole. Curiosity is Kang’s trademark and his curse.
Keep me updated!
Subscribe