com.amazonaws.services.ivs.AmazonIVS Maven / Gradle / Ivy
/*
* Copyright 2017-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.ivs;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.ivs.model.*;
/**
* Interface for accessing Amazon IVS.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.ivs.AbstractAmazonIVS} instead.
*
*
*
* Introduction
*
*
* The Amazon Interactive Video Service (IVS) API is REST compatible, using a standard HTTP API and an Amazon Web
* Services EventBridge event stream for responses. JSON is used for both requests and responses, including errors.
*
*
* The API is an Amazon Web Services regional service. For a list of supported regions and Amazon IVS HTTPS service
* endpoints, see the Amazon IVS page in the
* Amazon Web Services General Reference.
*
*
* All API request parameters and URLs are case sensitive.
*
*
* For a summary of notable documentation changes in each release, see Document History.
*
*
* Allowed Header Values
*
*
* -
*
* Accept:
application/json
*
*
* -
*
* Accept-Encoding:
gzip, deflate
*
*
* -
*
* Content-Type:
application/json
*
*
*
*
* Resources
*
*
* The following resources contain information about your IVS live stream (see Getting Started with Amazon IVS):
*
*
* -
*
* Channel — Stores configuration data related to your live stream. You first create a channel and then use the
* channel’s stream key to start your live stream. See the Channel endpoints for more information.
*
*
* -
*
* Stream key — An identifier assigned by Amazon IVS when you create a channel, which is then used to authorize
* streaming. See the StreamKey endpoints for more information. Treat the stream key like a secret, since it
* allows anyone to stream to the channel.
*
*
* -
*
* Playback key pair — Video playback may be restricted using playback-authorization tokens, which use public-key
* encryption. A playback key pair is the public-private pair of keys used to sign and validate the
* playback-authorization token. See the PlaybackKeyPair endpoints for more information.
*
*
* -
*
* Recording configuration — Stores configuration related to recording a live stream and where to store the recorded
* content. Multiple channels can reference the same recording configuration. See the Recording Configuration endpoints
* for more information.
*
*
*
*
* Tagging
*
*
* A tag is a metadata label that you assign to an Amazon Web Services resource. A tag comprises a key and
* a value, both set by you. For example, you might set a tag as topic:nature
to label a particular
* video category. See Tagging Amazon Web
* Services Resources for more information, including restrictions that apply to tags.
*
*
* Tags can help you identify and organize your Amazon Web Services resources. For example, you can use the same tag for
* different resources to indicate that they are related. You can also use tags to manage access (see Access Tags).
*
*
* The Amazon IVS API has these tag-related endpoints: TagResource, UntagResource, and
* ListTagsForResource. The following resources support tagging: Channels, Stream Keys, Playback Key Pairs, and
* Recording Configurations.
*
*
* At most 50 tags can be applied to a resource.
*
*
* Authentication versus Authorization
*
*
* Note the differences between these concepts:
*
*
* -
*
* Authentication is about verifying identity. You need to be authenticated to sign Amazon IVS API requests.
*
*
* -
*
* Authorization is about granting permissions. You need to be authorized to view Amazon IVS private channels.
* (Private channels are channels that are enabled for "playback authorization.")
*
*
*
*
* Authentication
*
*
* All Amazon IVS API requests must be authenticated with a signature. The Amazon Web Services Command-Line Interface
* (CLI) and Amazon IVS Player SDKs take care of signing the underlying API calls for you. However, if your application
* calls the Amazon IVS API directly, it’s your responsibility to sign the requests.
*
*
* You generate a signature using valid Amazon Web Services credentials that have permission to perform the requested
* action. For example, you must sign PutMetadata requests with a signature generated from an IAM user account that has
* the ivs:PutMetadata
permission.
*
*
* For more information:
*
*
* -
*
* Authentication and generating signatures — See Authenticating Requests
* (Amazon Web Services Signature Version 4) in the Amazon Web Services General Reference.
*
*
* -
*
* Managing Amazon IVS permissions — See Identity and Access Management on the
* Security page of the Amazon IVS User Guide.
*
*
*
*
* Channel Endpoints
*
*
* -
*
* CreateChannel — Creates a new channel and an associated stream key to start streaming.
*
*
* -
*
* GetChannel — Gets the channel configuration for the specified channel ARN (Amazon Resource Name).
*
*
* -
*
* BatchGetChannel — Performs GetChannel on multiple ARNs simultaneously.
*
*
* -
*
* ListChannels — Gets summary information about all channels in your account, in the Amazon Web Services region
* where the API request is processed. This list can be filtered to match a specified name or recording-configuration
* ARN. Filters are mutually exclusive and cannot be used together. If you try to use both filters, you will get an
* error (409 Conflict Exception).
*
*
* -
*
* UpdateChannel — Updates a channel's configuration. This does not affect an ongoing stream of this channel. You
* must stop and restart the stream for the changes to take effect.
*
*
* -
*
* DeleteChannel — Deletes the specified channel.
*
*
*
*
* StreamKey Endpoints
*
*
* -
*
* CreateStreamKey — Creates a stream key, used to initiate a stream, for the specified channel ARN.
*
*
* -
*
* GetStreamKey — Gets stream key information for the specified ARN.
*
*
* -
*
* BatchGetStreamKey — Performs GetStreamKey on multiple ARNs simultaneously.
*
*
* -
*
* ListStreamKeys — Gets summary information about stream keys for the specified channel.
*
*
* -
*
* DeleteStreamKey — Deletes the stream key for the specified ARN, so it can no longer be used to stream.
*
*
*
*
* Stream Endpoints
*
*
* -
*
* GetStream — Gets information about the active (live) stream on a specified channel.
*
*
* -
*
* GetStreamSession — Gets metadata on a specified stream.
*
*
* -
*
* ListStreams — Gets summary information about live streams in your account, in the Amazon Web Services region
* where the API request is processed.
*
*
* -
*
* ListStreamSessions — Gets a summary of current and previous streams for a specified channel in your account,
* in the AWS region where the API request is processed.
*
*
* -
*
* StopStream — Disconnects the incoming RTMPS stream for the specified channel. Can be used in conjunction with
* DeleteStreamKey to prevent further streaming to a channel.
*
*
* -
*
* PutMetadata — Inserts metadata into the active stream of the specified channel. At most 5 requests per second
* per channel are allowed, each with a maximum 1 KB payload. (If 5 TPS is not sufficient for your needs, we recommend
* batching your data into a single PutMetadata call.) At most 155 requests per second per account are allowed.
*
*
*
*
* PlaybackKeyPair Endpoints
*
*
* For more information, see Setting Up
* Private Channels in the Amazon IVS User Guide.
*
*
* -
*
* ImportPlaybackKeyPair — Imports the public portion of a new key pair and returns its arn
and
* fingerprint
. The privateKey
can then be used to generate viewer authorization tokens, to
* grant viewers access to private channels (channels enabled for playback authorization).
*
*
* -
*
* GetPlaybackKeyPair — Gets a specified playback authorization key pair and returns the arn
and
* fingerprint
. The privateKey
held by the caller can be used to generate viewer authorization
* tokens, to grant viewers access to private channels.
*
*
* -
*
* ListPlaybackKeyPairs — Gets summary information about playback key pairs.
*
*
* -
*
* DeletePlaybackKeyPair — Deletes a specified authorization key pair. This invalidates future viewer tokens
* generated using the key pair’s privateKey
.
*
*
*
*
* RecordingConfiguration Endpoints
*
*
* -
*
* CreateRecordingConfiguration — Creates a new recording configuration, used to enable recording to Amazon S3.
*
*
* -
*
* GetRecordingConfiguration — Gets the recording-configuration metadata for the specified ARN.
*
*
* -
*
* ListRecordingConfigurations — Gets summary information about all recording configurations in your account, in
* the Amazon Web Services region where the API request is processed.
*
*
* -
*
* DeleteRecordingConfiguration — Deletes the recording configuration for the specified ARN.
*
*
*
*
* Amazon Web Services Tags Endpoints
*
*
* -
*
* TagResource — Adds or updates tags for the Amazon Web Services resource with the specified ARN.
*
*
* -
*
* UntagResource — Removes tags from the resource with the specified ARN.
*
*
* -
*
* ListTagsForResource — Gets information about Amazon Web Services tags for the specified ARN.
*
*
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AmazonIVS {
/**
* The region metadata service name for computing region endpoints. You can use this value to retrieve metadata
* (such as supported regions) of the service.
*
* @see RegionUtils#getRegionsForService(String)
*/
String ENDPOINT_PREFIX = "ivs";
/**
*
* Performs GetChannel on multiple ARNs simultaneously.
*
*
* @param batchGetChannelRequest
* @return Result of the BatchGetChannel operation returned by the service.
* @sample AmazonIVS.BatchGetChannel
* @see AWS API
* Documentation
*/
BatchGetChannelResult batchGetChannel(BatchGetChannelRequest batchGetChannelRequest);
/**
*
* Performs GetStreamKey on multiple ARNs simultaneously.
*
*
* @param batchGetStreamKeyRequest
* @return Result of the BatchGetStreamKey operation returned by the service.
* @sample AmazonIVS.BatchGetStreamKey
* @see AWS API
* Documentation
*/
BatchGetStreamKeyResult batchGetStreamKey(BatchGetStreamKeyRequest batchGetStreamKeyRequest);
/**
*
* Creates a new channel and an associated stream key to start streaming.
*
*
* @param createChannelRequest
* @return Result of the CreateChannel operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @throws PendingVerificationException
* @throws ServiceQuotaExceededException
* @sample AmazonIVS.CreateChannel
* @see AWS API
* Documentation
*/
CreateChannelResult createChannel(CreateChannelRequest createChannelRequest);
/**
*
* Creates a new recording configuration, used to enable recording to Amazon S3.
*
*
* Known issue: In the us-east-1 region, if you use the Amazon Web Services CLI to create a recording
* configuration, it returns success even if the S3 bucket is in a different region. In this case, the
* state
of the recording configuration is CREATE_FAILED
(instead of ACTIVE
).
* (In other regions, the CLI correctly returns failure if the bucket is in a different region.)
*
*
* Workaround: Ensure that your S3 bucket is in the same region as the recording configuration. If you create
* a recording configuration in a different region as your S3 bucket, delete that recording configuration and create
* a new one with an S3 bucket from the correct region.
*
*
* @param createRecordingConfigurationRequest
* @return Result of the CreateRecordingConfiguration operation returned by the service.
* @throws InternalServerException
* @throws AccessDeniedException
* @throws ValidationException
* @throws PendingVerificationException
* @throws ConflictException
* @throws ServiceQuotaExceededException
* @sample AmazonIVS.CreateRecordingConfiguration
* @see AWS API Documentation
*/
CreateRecordingConfigurationResult createRecordingConfiguration(CreateRecordingConfigurationRequest createRecordingConfigurationRequest);
/**
*
* Creates a stream key, used to initiate a stream, for the specified channel ARN.
*
*
* Note that CreateChannel creates a stream key. If you subsequently use CreateStreamKey on the same channel,
* it will fail because a stream key already exists and there is a limit of 1 stream key per channel. To reset the
* stream key on a channel, use DeleteStreamKey and then CreateStreamKey.
*
*
* @param createStreamKeyRequest
* @return Result of the CreateStreamKey operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @throws PendingVerificationException
* @throws ServiceQuotaExceededException
* @sample AmazonIVS.CreateStreamKey
* @see AWS API
* Documentation
*/
CreateStreamKeyResult createStreamKey(CreateStreamKeyRequest createStreamKeyRequest);
/**
*
* Deletes the specified channel and its associated stream keys.
*
*
* If you try to delete a live channel, you will get an error (409 ConflictException). To delete a channel that is
* live, call StopStream, wait for the Amazon EventBridge "Stream End" event (to verify that the stream's
* state was changed from Live to Offline), then call DeleteChannel. (See Using EventBridge with Amazon IVS.)
*
*
* @param deleteChannelRequest
* @return Result of the DeleteChannel operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @throws PendingVerificationException
* @throws ConflictException
* @sample AmazonIVS.DeleteChannel
* @see AWS API
* Documentation
*/
DeleteChannelResult deleteChannel(DeleteChannelRequest deleteChannelRequest);
/**
*
* Deletes a specified authorization key pair. This invalidates future viewer tokens generated using the key pair’s
* privateKey
. For more information, see Setting Up Private Channels in
* the Amazon IVS User Guide.
*
*
* @param deletePlaybackKeyPairRequest
* @return Result of the DeletePlaybackKeyPair operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @throws PendingVerificationException
* @sample AmazonIVS.DeletePlaybackKeyPair
* @see AWS API
* Documentation
*/
DeletePlaybackKeyPairResult deletePlaybackKeyPair(DeletePlaybackKeyPairRequest deletePlaybackKeyPairRequest);
/**
*
* Deletes the recording configuration for the specified ARN.
*
*
* If you try to delete a recording configuration that is associated with a channel, you will get an error (409
* ConflictException). To avoid this, for all channels that reference the recording configuration, first use
* UpdateChannel to set the recordingConfigurationArn
field to an empty string, then use
* DeleteRecordingConfiguration.
*
*
* @param deleteRecordingConfigurationRequest
* @return Result of the DeleteRecordingConfiguration operation returned by the service.
* @throws ResourceNotFoundException
* @throws InternalServerException
* @throws AccessDeniedException
* @throws ValidationException
* @throws ConflictException
* @sample AmazonIVS.DeleteRecordingConfiguration
* @see AWS API Documentation
*/
DeleteRecordingConfigurationResult deleteRecordingConfiguration(DeleteRecordingConfigurationRequest deleteRecordingConfigurationRequest);
/**
*
* Deletes the stream key for the specified ARN, so it can no longer be used to stream.
*
*
* @param deleteStreamKeyRequest
* @return Result of the DeleteStreamKey operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @throws PendingVerificationException
* @sample AmazonIVS.DeleteStreamKey
* @see AWS API
* Documentation
*/
DeleteStreamKeyResult deleteStreamKey(DeleteStreamKeyRequest deleteStreamKeyRequest);
/**
*
* Gets the channel configuration for the specified channel ARN. See also BatchGetChannel.
*
*
* @param getChannelRequest
* @return Result of the GetChannel operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @sample AmazonIVS.GetChannel
* @see AWS API
* Documentation
*/
GetChannelResult getChannel(GetChannelRequest getChannelRequest);
/**
*
* Gets a specified playback authorization key pair and returns the arn
and fingerprint
.
* The privateKey
held by the caller can be used to generate viewer authorization tokens, to grant
* viewers access to private channels. For more information, see Setting Up Private Channels in
* the Amazon IVS User Guide.
*
*
* @param getPlaybackKeyPairRequest
* @return Result of the GetPlaybackKeyPair operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @sample AmazonIVS.GetPlaybackKeyPair
* @see AWS API
* Documentation
*/
GetPlaybackKeyPairResult getPlaybackKeyPair(GetPlaybackKeyPairRequest getPlaybackKeyPairRequest);
/**
*
* Gets the recording configuration for the specified ARN.
*
*
* @param getRecordingConfigurationRequest
* @return Result of the GetRecordingConfiguration operation returned by the service.
* @throws ResourceNotFoundException
* @throws InternalServerException
* @throws AccessDeniedException
* @throws ValidationException
* @sample AmazonIVS.GetRecordingConfiguration
* @see AWS
* API Documentation
*/
GetRecordingConfigurationResult getRecordingConfiguration(GetRecordingConfigurationRequest getRecordingConfigurationRequest);
/**
*
* Gets information about the active (live) stream on a specified channel.
*
*
* @param getStreamRequest
* @return Result of the GetStream operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @throws ChannelNotBroadcastingException
* @sample AmazonIVS.GetStream
* @see AWS API
* Documentation
*/
GetStreamResult getStream(GetStreamRequest getStreamRequest);
/**
*
* Gets stream-key information for a specified ARN.
*
*
* @param getStreamKeyRequest
* @return Result of the GetStreamKey operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @sample AmazonIVS.GetStreamKey
* @see AWS API
* Documentation
*/
GetStreamKeyResult getStreamKey(GetStreamKeyRequest getStreamKeyRequest);
/**
*
* Gets metadata on a specified stream.
*
*
* @param getStreamSessionRequest
* @return Result of the GetStreamSession operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @sample AmazonIVS.GetStreamSession
* @see AWS API
* Documentation
*/
GetStreamSessionResult getStreamSession(GetStreamSessionRequest getStreamSessionRequest);
/**
*
* Imports the public portion of a new key pair and returns its arn
and fingerprint
. The
* privateKey
can then be used to generate viewer authorization tokens, to grant viewers access to
* private channels. For more information, see Setting Up Private Channels in
* the Amazon IVS User Guide.
*
*
* @param importPlaybackKeyPairRequest
* @return Result of the ImportPlaybackKeyPair operation returned by the service.
* @throws AccessDeniedException
* @throws ValidationException
* @throws PendingVerificationException
* @throws ConflictException
* @throws ServiceQuotaExceededException
* @sample AmazonIVS.ImportPlaybackKeyPair
* @see AWS API
* Documentation
*/
ImportPlaybackKeyPairResult importPlaybackKeyPair(ImportPlaybackKeyPairRequest importPlaybackKeyPairRequest);
/**
*
* Gets summary information about all channels in your account, in the Amazon Web Services region where the API
* request is processed. This list can be filtered to match a specified name or recording-configuration ARN. Filters
* are mutually exclusive and cannot be used together. If you try to use both filters, you will get an error (409
* ConflictException).
*
*
* @param listChannelsRequest
* @return Result of the ListChannels operation returned by the service.
* @throws AccessDeniedException
* @throws ValidationException
* @throws ConflictException
* @sample AmazonIVS.ListChannels
* @see AWS API
* Documentation
*/
ListChannelsResult listChannels(ListChannelsRequest listChannelsRequest);
/**
*
* Gets summary information about playback key pairs. For more information, see Setting Up Private Channels in
* the Amazon IVS User Guide.
*
*
* @param listPlaybackKeyPairsRequest
* @return Result of the ListPlaybackKeyPairs operation returned by the service.
* @throws AccessDeniedException
* @throws ValidationException
* @sample AmazonIVS.ListPlaybackKeyPairs
* @see AWS API
* Documentation
*/
ListPlaybackKeyPairsResult listPlaybackKeyPairs(ListPlaybackKeyPairsRequest listPlaybackKeyPairsRequest);
/**
*
* Gets summary information about all recording configurations in your account, in the Amazon Web Services region
* where the API request is processed.
*
*
* @param listRecordingConfigurationsRequest
* @return Result of the ListRecordingConfigurations operation returned by the service.
* @throws InternalServerException
* @throws AccessDeniedException
* @throws ValidationException
* @sample AmazonIVS.ListRecordingConfigurations
* @see AWS API Documentation
*/
ListRecordingConfigurationsResult listRecordingConfigurations(ListRecordingConfigurationsRequest listRecordingConfigurationsRequest);
/**
*
* Gets summary information about stream keys for the specified channel.
*
*
* @param listStreamKeysRequest
* @return Result of the ListStreamKeys operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @sample AmazonIVS.ListStreamKeys
* @see AWS API
* Documentation
*/
ListStreamKeysResult listStreamKeys(ListStreamKeysRequest listStreamKeysRequest);
/**
*
* Gets a summary of current and previous streams for a specified channel in your account, in the AWS region where
* the API request is processed.
*
*
* @param listStreamSessionsRequest
* @return Result of the ListStreamSessions operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @sample AmazonIVS.ListStreamSessions
* @see AWS API
* Documentation
*/
ListStreamSessionsResult listStreamSessions(ListStreamSessionsRequest listStreamSessionsRequest);
/**
*
* Gets summary information about live streams in your account, in the Amazon Web Services region where the API
* request is processed.
*
*
* @param listStreamsRequest
* @return Result of the ListStreams operation returned by the service.
* @throws AccessDeniedException
* @throws ValidationException
* @sample AmazonIVS.ListStreams
* @see AWS API
* Documentation
*/
ListStreamsResult listStreams(ListStreamsRequest listStreamsRequest);
/**
*
* Gets information about Amazon Web Services tags for the specified ARN.
*
*
* @param listTagsForResourceRequest
* @return Result of the ListTagsForResource operation returned by the service.
* @throws ResourceNotFoundException
* @throws InternalServerException
* @throws ValidationException
* @sample AmazonIVS.ListTagsForResource
* @see AWS API
* Documentation
*/
ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest);
/**
*
* Inserts metadata into the active stream of the specified channel. At most 5 requests per second per channel are
* allowed, each with a maximum 1 KB payload. (If 5 TPS is not sufficient for your needs, we recommend batching your
* data into a single PutMetadata call.) At most 155 requests per second per account are allowed. Also see Embedding Metadata within a Video
* Stream in the Amazon IVS User Guide.
*
*
* @param putMetadataRequest
* @return Result of the PutMetadata operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @throws ChannelNotBroadcastingException
* @throws ThrottlingException
* @sample AmazonIVS.PutMetadata
* @see AWS API
* Documentation
*/
PutMetadataResult putMetadata(PutMetadataRequest putMetadataRequest);
/**
*
* Disconnects the incoming RTMPS stream for the specified channel. Can be used in conjunction with
* DeleteStreamKey to prevent further streaming to a channel.
*
*
*
* Many streaming client-software libraries automatically reconnect a dropped RTMPS session, so to stop the stream
* permanently, you may want to first revoke the streamKey
attached to the channel.
*
*
*
* @param stopStreamRequest
* @return Result of the StopStream operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @throws ChannelNotBroadcastingException
* @throws StreamUnavailableException
* @sample AmazonIVS.StopStream
* @see AWS API
* Documentation
*/
StopStreamResult stopStream(StopStreamRequest stopStreamRequest);
/**
*
* Adds or updates tags for the Amazon Web Services resource with the specified ARN.
*
*
* @param tagResourceRequest
* @return Result of the TagResource operation returned by the service.
* @throws ResourceNotFoundException
* @throws InternalServerException
* @throws ValidationException
* @sample AmazonIVS.TagResource
* @see AWS API
* Documentation
*/
TagResourceResult tagResource(TagResourceRequest tagResourceRequest);
/**
*
* Removes tags from the resource with the specified ARN.
*
*
* @param untagResourceRequest
* @return Result of the UntagResource operation returned by the service.
* @throws ResourceNotFoundException
* @throws InternalServerException
* @throws ValidationException
* @sample AmazonIVS.UntagResource
* @see AWS API
* Documentation
*/
UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest);
/**
*
* Updates a channel's configuration. This does not affect an ongoing stream of this channel. You must stop and
* restart the stream for the changes to take effect.
*
*
* @param updateChannelRequest
* @return Result of the UpdateChannel operation returned by the service.
* @throws ResourceNotFoundException
* @throws AccessDeniedException
* @throws ValidationException
* @throws PendingVerificationException
* @throws ConflictException
* @sample AmazonIVS.UpdateChannel
* @see AWS API
* Documentation
*/
UpdateChannelResult updateChannel(UpdateChannelRequest updateChannelRequest);
/**
* Shuts down this client object, releasing any resources that might be held open. This is an optional method, and
* callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client
* has been shutdown, it should not be used to make any more requests.
*/
void shutdown();
/**
* Returns additional metadata for a previously executed successful request, typically used for debugging issues
* where a service isn't acting as expected. This data isn't considered part of the result data returned by an
* operation, so it's available through this separate, diagnostic interface.
*
* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic
* information for an executed request, you should use this method to retrieve it as soon as possible after
* executing a request.
*
* @param request
* The originally executed request.
*
* @return The response metadata for the specified request, or null if none is available.
*/
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request);
}