Skip to content

Commit ad41dca

Browse files
author
awstools
committed
feat(client-ivs): This release introduces a new resource Playback Restriction Policy which can be used to geo-restrict or domain-restrict channel stream playback when associated with a channel. New APIs to support this resource were introduced in the form of Create/Delete/Get/Update/List.
1 parent fb81938 commit ad41dca

21 files changed

+2584
-317
lines changed

clients/client-ivs/README.md

Lines changed: 148 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -54,32 +54,40 @@ Amazon IVS</a>):</p>
5454
<ul>
5555
<li>
5656
<p>
57-
<b>Channel</b> — Stores configuration data related to your live stream. You first create a
58-
channel and then use the channel’s stream key to start your live stream. See the Channel
59-
endpoints for more information. </p>
57+
<b>Channel</b> — Stores configuration data related to your
58+
live stream. You first create a channel and then use the channel’s stream key to start
59+
your live stream. See the Channel endpoints for more information. </p>
6060
</li>
6161
<li>
6262
<p>
63-
<b>Stream key</b> — An identifier assigned by Amazon IVS when you create a channel, which is
64-
then used to authorize streaming. See the StreamKey endpoints for more information.
65-
<i>
66-
<b>Treat the stream key like a secret, since it allows
67-
anyone to stream to the channel.</b>
63+
<b>Stream key</b> — An identifier assigned by Amazon IVS
64+
when you create a channel, which is then used to authorize streaming. See the StreamKey
65+
endpoints for more information. <i>
66+
<b>Treat the stream key like
67+
a secret, since it allows anyone to stream to the
68+
channel.</b>
6869
</i>
6970
</p>
7071
</li>
7172
<li>
7273
<p>
73-
<b>Playback key pair</b> — Video playback may be restricted using playback-authorization
74-
tokens, which use public-key encryption. A playback key pair is the public-private pair of
75-
keys used to sign and validate the playback-authorization token. See the PlaybackKeyPair
74+
<b>Playback key pair</b> — Video playback may be restricted
75+
using playback-authorization tokens, which use public-key encryption. A playback key pair
76+
is the public-private pair of keys used to sign and validate the playback-authorization
77+
token. See the PlaybackKeyPair endpoints for more information.</p>
78+
</li>
79+
<li>
80+
<p>
81+
<b>Recording configuration</b> — Stores configuration
82+
related to recording a live stream and where to store the recorded content. Multiple
83+
channels can reference the same recording configuration. See the Recording Configuration
7684
endpoints for more information.</p>
7785
</li>
7886
<li>
7987
<p>
80-
<b>Recording configuration</b> — Stores configuration related to recording a live stream and
81-
where to store the recorded content. Multiple channels can reference the same recording
82-
configuration. See the Recording Configuration endpoints for more information.</p>
88+
<b>Playback restriction policy</b> — Restricts playback by
89+
countries and/or origin sites. See the Playback Restriction Policy endpoints for more
90+
information.</p>
8391
</li>
8492
</ul>
8593
<p>
@@ -111,11 +119,9 @@ authenticated to sign Amazon IVS API requests.</p>
111119
</li>
112120
<li>
113121
<p>
114-
<i>Authorization</i> is about granting permissions. Your IAM roles need
115-
to have permissions for Amazon IVS API requests. In addition, authorization is needed to
116-
view <a href="https://docs.aws.amazon.com/ivs/latest/userguide/private-channels.html">Amazon
117-
IVS private channels</a>. (Private channels are channels that are enabled for
118-
"playback authorization.")</p>
122+
<i>Authorization</i> is about granting permissions. Your IAM roles need to have permissions for Amazon IVS API requests. In addition,
123+
authorization is needed to view <a href="https://docs.aws.amazon.com/ivs/latest/userguide/private-channels.html">Amazon IVS private channels</a>.
124+
(Private channels are channels that are enabled for "playback authorization.")</p>
119125
</li>
120126
</ul>
121127
<p>
@@ -145,9 +151,9 @@ the Security page of the <i>Amazon IVS User Guide</i>.</p>
145151
<b>Amazon Resource Names (ARNs)</b>
146152
</p>
147153
<p>ARNs uniquely identify AWS resources. An ARN is required when you need to specify a
148-
resource unambiguously across all of AWS, such as in IAM policies and API calls. For more
149-
information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names</a> in the <i>AWS General
150-
Reference</i>.</p>
154+
resource unambiguously across all of AWS, such as in IAM policies and API
155+
calls. For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon
156+
Resource Names</a> in the <i>AWS General Reference</i>.</p>
151157
<p>
152158
<b>Channel Endpoints</b>
153159
</p>
@@ -187,72 +193,33 @@ changes to take effect.</p>
187193
</li>
188194
</ul>
189195
<p>
190-
<b>StreamKey Endpoints</b>
196+
<b>Playback Restriction Policy Endpoints</b>
191197
</p>
192198
<ul>
193199
<li>
194200
<p>
195-
<a>CreateStreamKey</a> — Creates a stream key, used to initiate a
196-
stream, for the specified channel ARN.</p>
201+
<a>CreatePlaybackRestrictionPolicy</a> — Creates a new playback
202+
restriction policy, for constraining playback by countries and/or origins.</p>
197203
</li>
198204
<li>
199205
<p>
200-
<a>GetStreamKey</a> — Gets stream key information for the specified
201-
ARN.</p>
206+
<a>DeletePlaybackRestrictionPolicy</a> — Deletes the specified
207+
playback restriction policy</p>
202208
</li>
203209
<li>
204210
<p>
205-
<a>BatchGetStreamKey</a> — Performs <a>GetStreamKey</a> on
206-
multiple ARNs simultaneously.</p>
211+
<a>GetPlaybackRestrictionPolicy</a> — Gets the specified playback
212+
restriction policy.</p>
207213
</li>
208214
<li>
209215
<p>
210-
<a>ListStreamKeys</a> — Gets summary information about stream keys
211-
for the specified channel.</p>
216+
<a>ListPlaybackRestrictionPolicies</a> — Gets summary information
217+
about playback restriction policies.</p>
212218
</li>
213219
<li>
214220
<p>
215-
<a>DeleteStreamKey</a> — Deletes the stream key for the specified
216-
ARN, so it can no longer be used to stream.</p>
217-
</li>
218-
</ul>
219-
<p>
220-
<b>Stream Endpoints</b>
221-
</p>
222-
<ul>
223-
<li>
224-
<p>
225-
<a>GetStream</a> — Gets information about the active (live) stream on
226-
a specified channel.</p>
227-
</li>
228-
<li>
229-
<p>
230-
<a>GetStreamSession</a> — Gets metadata on a specified stream.</p>
231-
</li>
232-
<li>
233-
<p>
234-
<a>ListStreams</a> — Gets summary information about live streams in
235-
your account, in the Amazon Web Services region where the API request is processed.</p>
236-
</li>
237-
<li>
238-
<p>
239-
<a>ListStreamSessions</a> — Gets a summary of current and previous
240-
streams for a specified channel in your account, in the AWS region where the API request
241-
is processed.</p>
242-
</li>
243-
<li>
244-
<p>
245-
<a>StopStream</a> — Disconnects the incoming RTMPS stream for the
246-
specified channel. Can be used in conjunction with <a>DeleteStreamKey</a> to
247-
prevent further streaming to a channel.</p>
248-
</li>
249-
<li>
250-
<p>
251-
<a>PutMetadata</a> — Inserts metadata into the active stream of the
252-
specified channel. At most 5 requests per second per channel are allowed, each with a
253-
maximum 1 KB payload. (If 5 TPS is not sufficient for your needs, we recommend batching
254-
your data into a single PutMetadata call.) At most 155 requests per second per account are
255-
allowed.</p>
221+
<a>UpdatePlaybackRestrictionPolicy</a> — Updates a specified playback
222+
restriction policy.</p>
256223
</li>
257224
</ul>
258225
<p>
@@ -327,6 +294,75 @@ configuration for the specified ARN.</p>
327294
</li>
328295
</ul>
329296
<p>
297+
<b>Stream Endpoints</b>
298+
</p>
299+
<ul>
300+
<li>
301+
<p>
302+
<a>GetStream</a> — Gets information about the active (live) stream on
303+
a specified channel.</p>
304+
</li>
305+
<li>
306+
<p>
307+
<a>GetStreamSession</a> — Gets metadata on a specified stream.</p>
308+
</li>
309+
<li>
310+
<p>
311+
<a>ListStreams</a> — Gets summary information about live streams in
312+
your account, in the Amazon Web Services region where the API request is processed.</p>
313+
</li>
314+
<li>
315+
<p>
316+
<a>ListStreamSessions</a> — Gets a summary of current and previous
317+
streams for a specified channel in your account, in the AWS region where the API request
318+
is processed.</p>
319+
</li>
320+
<li>
321+
<p>
322+
<a>StopStream</a> — Disconnects the incoming RTMPS stream for the
323+
specified channel. Can be used in conjunction with <a>DeleteStreamKey</a> to
324+
prevent further streaming to a channel.</p>
325+
</li>
326+
<li>
327+
<p>
328+
<a>PutMetadata</a> — Inserts metadata into the active stream of the
329+
specified channel. At most 5 requests per second per channel are allowed, each with a
330+
maximum 1 KB payload. (If 5 TPS is not sufficient for your needs, we recommend batching
331+
your data into a single PutMetadata call.) At most 155 requests per second per account are
332+
allowed.</p>
333+
</li>
334+
</ul>
335+
<p>
336+
<b>StreamKey Endpoints</b>
337+
</p>
338+
<ul>
339+
<li>
340+
<p>
341+
<a>CreateStreamKey</a> — Creates a stream key, used to initiate a
342+
stream, for the specified channel ARN.</p>
343+
</li>
344+
<li>
345+
<p>
346+
<a>GetStreamKey</a> — Gets stream key information for the specified
347+
ARN.</p>
348+
</li>
349+
<li>
350+
<p>
351+
<a>BatchGetStreamKey</a> — Performs <a>GetStreamKey</a> on
352+
multiple ARNs simultaneously.</p>
353+
</li>
354+
<li>
355+
<p>
356+
<a>ListStreamKeys</a> — Gets summary information about stream keys
357+
for the specified channel.</p>
358+
</li>
359+
<li>
360+
<p>
361+
<a>DeleteStreamKey</a> — Deletes the stream key for the specified
362+
ARN, so it can no longer be used to stream.</p>
363+
</li>
364+
</ul>
365+
<p>
330366
<b>Amazon Web Services Tags Endpoints</b>
331367
</p>
332368
<ul>
@@ -572,6 +608,14 @@ CreateChannel
572608

573609
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ivs/command/CreateChannelCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/CreateChannelCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/CreateChannelCommandOutput/)
574610

611+
</details>
612+
<details>
613+
<summary>
614+
CreatePlaybackRestrictionPolicy
615+
</summary>
616+
617+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ivs/command/CreatePlaybackRestrictionPolicyCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/CreatePlaybackRestrictionPolicyCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/CreatePlaybackRestrictionPolicyCommandOutput/)
618+
575619
</details>
576620
<details>
577621
<summary>
@@ -604,6 +648,14 @@ DeletePlaybackKeyPair
604648

605649
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ivs/command/DeletePlaybackKeyPairCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/DeletePlaybackKeyPairCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/DeletePlaybackKeyPairCommandOutput/)
606650

651+
</details>
652+
<details>
653+
<summary>
654+
DeletePlaybackRestrictionPolicy
655+
</summary>
656+
657+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ivs/command/DeletePlaybackRestrictionPolicyCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/DeletePlaybackRestrictionPolicyCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/DeletePlaybackRestrictionPolicyCommandOutput/)
658+
607659
</details>
608660
<details>
609661
<summary>
@@ -636,6 +688,14 @@ GetPlaybackKeyPair
636688

637689
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ivs/command/GetPlaybackKeyPairCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/GetPlaybackKeyPairCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/GetPlaybackKeyPairCommandOutput/)
638690

691+
</details>
692+
<details>
693+
<summary>
694+
GetPlaybackRestrictionPolicy
695+
</summary>
696+
697+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ivs/command/GetPlaybackRestrictionPolicyCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/GetPlaybackRestrictionPolicyCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/GetPlaybackRestrictionPolicyCommandOutput/)
698+
639699
</details>
640700
<details>
641701
<summary>
@@ -692,6 +752,14 @@ ListPlaybackKeyPairs
692752

693753
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ivs/command/ListPlaybackKeyPairsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/ListPlaybackKeyPairsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/ListPlaybackKeyPairsCommandOutput/)
694754

755+
</details>
756+
<details>
757+
<summary>
758+
ListPlaybackRestrictionPolicies
759+
</summary>
760+
761+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ivs/command/ListPlaybackRestrictionPoliciesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/ListPlaybackRestrictionPoliciesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/ListPlaybackRestrictionPoliciesCommandOutput/)
762+
695763
</details>
696764
<details>
697765
<summary>
@@ -781,3 +849,11 @@ UpdateChannel
781849
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ivs/command/UpdateChannelCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/UpdateChannelCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/UpdateChannelCommandOutput/)
782850

783851
</details>
852+
<details>
853+
<summary>
854+
UpdatePlaybackRestrictionPolicy
855+
</summary>
856+
857+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ivs/command/UpdatePlaybackRestrictionPolicyCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/UpdatePlaybackRestrictionPolicyCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ivs/Interface/UpdatePlaybackRestrictionPolicyCommandOutput/)
858+
859+
</details>

0 commit comments

Comments
 (0)