WEBVTT

1
00:00:00.000 --> 00:00:02.070
<v Instructor>In this lesson, we will learn</v>

2
00:00:02.070 --> 00:00:05.820
about cloud application programming interfaces,

3
00:00:05.820 --> 00:00:10.230
or APIs and software development kits or SDKs.

4
00:00:11.070 --> 00:00:16.070
Cloud APIs and SDKs enable developers to interact

5
00:00:16.200 --> 00:00:18.930
with cloud services programmatically.

6
00:00:18.930 --> 00:00:22.290
Programmatic interaction enables the automation

7
00:00:22.290 --> 00:00:25.770
and integration of security controls directly

8
00:00:25.770 --> 00:00:30.330
into applications through functions such as webhooks.

9
00:00:30.330 --> 00:00:33.090
Webhooks are user-defined callbacks

10
00:00:33.090 --> 00:00:37.170
that trigger automated workflows or actions in response

11
00:00:37.170 --> 00:00:40.710
to specific events within the cloud environment.

12
00:00:40.710 --> 00:00:43.710
Webhooks, prompt, real-time communication

13
00:00:43.710 --> 00:00:45.330
between services.

14
00:00:45.330 --> 00:00:50.010
Use cases for webhooks include automating security alerts,

15
00:00:50.010 --> 00:00:51.900
provisioning resources,

16
00:00:51.900 --> 00:00:55.110
or triggering incident response processes based

17
00:00:55.110 --> 00:00:57.510
on predefined conditions.

18
00:00:57.510 --> 00:01:00.960
Let's learn more about cloud application programming

19
00:01:00.960 --> 00:01:05.550
interfaces or APIs and Software Development Kits

20
00:01:05.550 --> 00:01:10.020
or SDKs, and specifically their implementation methods

21
00:01:10.020 --> 00:01:11.460
for webhooks.

22
00:01:11.460 --> 00:01:14.190
First, we have cloud APIs.

23
00:01:14.190 --> 00:01:17.130
Cloud application programming interfaces

24
00:01:17.130 --> 00:01:21.480
or APIs enable developers to interact directly

25
00:01:21.480 --> 00:01:25.980
with cloud services through HTTP based requests.

26
00:01:25.980 --> 00:01:30.980
By using cloud APIs, developers can perform various tasks

27
00:01:31.380 --> 00:01:35.880
such as creating virtual machines, managing databases,

28
00:01:35.880 --> 00:01:40.320
and automating workflows all through programmatic commands.

29
00:01:40.320 --> 00:01:44.160
A key feature of cloud APIs is the ability

30
00:01:44.160 --> 00:01:48.720
to set up webhooks, which are user-defined callbacks

31
00:01:48.720 --> 00:01:51.240
that listen for specific events

32
00:01:51.240 --> 00:01:55.860
and trigger automated actions when those events occur.

33
00:01:55.860 --> 00:01:59.550
This allows cloud services to communicate directly

34
00:01:59.550 --> 00:02:02.910
with other applications in real time.

35
00:02:02.910 --> 00:02:06.960
Streamlining workflows and enabling fast responses

36
00:02:06.960 --> 00:02:09.240
to changes or incidents.

37
00:02:09.240 --> 00:02:12.870
In practice, cloud APIs implement webhooks

38
00:02:12.870 --> 00:02:16.980
by allowing developers to register specific URLs

39
00:02:16.980 --> 00:02:19.170
that will receive notifications

40
00:02:19.170 --> 00:02:23.310
when predefined events happen within the cloud service.

41
00:02:23.310 --> 00:02:27.420
For example, a developer can configure a webhook

42
00:02:27.420 --> 00:02:29.850
in a cloud storage API

43
00:02:29.850 --> 00:02:33.720
to automatically notify a designated URL

44
00:02:33.720 --> 00:02:37.320
whenever a file is uploaded or modified.

45
00:02:37.320 --> 00:02:42.150
When this event occurs, the API sends a POST request

46
00:02:42.150 --> 00:02:45.750
to the specified URL, including information

47
00:02:45.750 --> 00:02:48.840
about the event such as the file's name

48
00:02:48.840 --> 00:02:51.120
and the time of modification.

49
00:02:51.120 --> 00:02:55.380
This setup helps organizations maintain visibility

50
00:02:55.380 --> 00:02:59.370
over their resources and initiate timely responses

51
00:02:59.370 --> 00:03:00.420
to changes.

52
00:03:00.420 --> 00:03:03.570
So think of webhooks in cloud APIs

53
00:03:03.570 --> 00:03:06.930
as a digital dispatcher for cloud events.

54
00:03:06.930 --> 00:03:11.100
Similar to how a fire alarm system might alert emergency

55
00:03:11.100 --> 00:03:14.070
responders as soon as it detects smoke,

56
00:03:14.070 --> 00:03:17.280
just as a fire alarm instantly triggers a response

57
00:03:17.280 --> 00:03:22.170
without manual input, webhooks notify other services

58
00:03:22.170 --> 00:03:27.170
as soon as an event occurs, again, without manual input.

59
00:03:27.270 --> 00:03:29.850
This approach is especially useful

60
00:03:29.850 --> 00:03:32.310
for security related use cases.

61
00:03:32.310 --> 00:03:35.190
For instance, a webhook can be set up

62
00:03:35.190 --> 00:03:38.250
to trigger a security scan each time a new

63
00:03:38.250 --> 00:03:42.390
cloud resource is deployed, ensuring all resources adhere

64
00:03:42.390 --> 00:03:46.050
to security standards immediately after creation.

65
00:03:46.050 --> 00:03:49.230
Second, we have software development kits.

66
00:03:49.230 --> 00:03:54.000
A software development kit or SDK is a collection of tools

67
00:03:54.000 --> 00:03:56.820
and libraries that allow developers

68
00:03:56.820 --> 00:03:59.640
to integrate specific functionalities

69
00:03:59.640 --> 00:04:03.030
into their applications with minimal setup.

70
00:04:03.030 --> 00:04:06.960
SDKs make it easier to use cloud services

71
00:04:06.960 --> 00:04:11.490
by handling the complex parts of the API calls for you

72
00:04:11.490 --> 00:04:14.880
and offering simple language specific functions

73
00:04:14.880 --> 00:04:16.680
for you to implement.

74
00:04:16.680 --> 00:04:20.220
SDKs are especially useful for webhooks

75
00:04:20.220 --> 00:04:23.490
as they often include predefined functions

76
00:04:23.490 --> 00:04:27.900
and helper utilities to register and manage the webhooks.

77
00:04:27.900 --> 00:04:31.500
In this context, register means setting up

78
00:04:31.500 --> 00:04:34.710
or configuring a webhook so that it is ready

79
00:04:34.710 --> 00:04:38.490
to receive notifications from the cloud service

80
00:04:38.490 --> 00:04:41.340
when specific events occur.

81
00:04:41.340 --> 00:04:46.020
By registering a webhook, a developer provides a URL

82
00:04:46.020 --> 00:04:49.200
or endpoint that the cloud service will use

83
00:04:49.200 --> 00:04:51.210
to send event data to.

84
00:04:51.210 --> 00:04:54.900
Software development kits make this process easier

85
00:04:54.900 --> 00:04:59.520
by offering built-in functions that help developers define

86
00:04:59.520 --> 00:05:04.140
and configure these webhook URLs so they don't have

87
00:05:04.140 --> 00:05:09.140
to manually handle the setup through raw HTTP requests.

88
00:05:09.510 --> 00:05:13.230
For example, in an e-commerce application built

89
00:05:13.230 --> 00:05:15.690
with a cloud provider's SDK,

90
00:05:15.690 --> 00:05:20.690
the developer can use SDK functions to register a webhook

91
00:05:20.700 --> 00:05:24.600
that monitors changes in user order statuses.

92
00:05:24.600 --> 00:05:27.060
When an order is marked as shipped,

93
00:05:27.060 --> 00:05:31.350
the SDK's webhook management functions trigger an alert

94
00:05:31.350 --> 00:05:34.890
that sends a confirmation email to the customer.

95
00:05:34.890 --> 00:05:37.470
By handling complex web requests

96
00:05:37.470 --> 00:05:39.690
and error checking in the background,

97
00:05:39.690 --> 00:05:41.940
SDK's make it much simpler

98
00:05:41.940 --> 00:05:45.240
to manage event based communication.

99
00:05:45.240 --> 00:05:48.780
So think of SDKs for webhooks like setting

100
00:05:48.780 --> 00:05:52.140
up automated reminders in a calendar app

101
00:05:52.140 --> 00:05:55.590
that are pre-configured to work with your device.

102
00:05:55.590 --> 00:05:58.860
Just as the calendar app sends notifications

103
00:05:58.860 --> 00:06:01.710
without needing manual setup each time,

104
00:06:01.710 --> 00:06:05.940
and SDK's webhook functions automatically respond

105
00:06:05.940 --> 00:06:08.970
to specified events with little extra work

106
00:06:08.970 --> 00:06:10.170
from the developer.

107
00:06:10.170 --> 00:06:13.080
This simplicity encourages developers

108
00:06:13.080 --> 00:06:16.380
to implement webhooks improving automation

109
00:06:16.380 --> 00:06:19.860
and responsiveness across their applications.

110
00:06:19.860 --> 00:06:24.690
So remember, cloud application programming interfaces

111
00:06:24.690 --> 00:06:28.950
and software development kits allow developers to interact

112
00:06:28.950 --> 00:06:32.490
with cloud services through code making it possible

113
00:06:32.490 --> 00:06:37.230
to automate tasks and integrate security controls directly

114
00:06:37.230 --> 00:06:39.090
within applications.

115
00:06:39.090 --> 00:06:41.220
Webhooks are a key function

116
00:06:41.220 --> 00:06:44.670
of both cloud application programming interfaces,

117
00:06:44.670 --> 00:06:49.350
or APIs and software development kits, or SDKs.

118
00:06:49.350 --> 00:06:52.140
Enabling realtime communication

119
00:06:52.140 --> 00:06:55.350
by triggering automated actions in response

120
00:06:55.350 --> 00:06:57.210
to specific events.

121
00:06:57.210 --> 00:07:00.660
Cloud APIs typically allow developers

122
00:07:00.660 --> 00:07:04.170
to set up webhooks by registering URLs

123
00:07:04.170 --> 00:07:08.370
that receive notifications when certain events occur.

124
00:07:08.370 --> 00:07:12.660
SDKs, on the other hand, simplify webhooks setup

125
00:07:12.660 --> 00:07:17.070
by providing built-in methods to register, verify,

126
00:07:17.070 --> 00:07:21.090
and manage them more easily within application code.

127
00:07:21.090 --> 00:07:25.890
Both cloud APIs and SDKs play a significant role

128
00:07:25.890 --> 00:07:29.400
in streamlining workflows in enhancing automation

129
00:07:29.400 --> 00:07:31.920
and ensuring responsive interactions

130
00:07:31.920 --> 00:07:33.963
within cloud environments.

