async def create_channel(
self,
*,
config_overrides: Optional[AsyncMediaPackageClientConfig] = None,
description: Optional["capo_mediapackage.types.__string.__string"] = None,
id: Optional["capo_mediapackage.types.__string.__string"] = None,
tags: Optional["capo_mediapackage.types.tags.Tags"] = None,
) -> "capo_mediapackage.types.create_channel_response.CreateChannelResponse":
"""Creates a new Channel.
Args:
description: A short text description of the Channel.
id: The ID of the Channel. The ID must be unique within the region and it cannot be changed after a Channel is created.
Raises:
capo_mediapackage.errors.forbidden_exception.ForbiddenException: The client is not authorized to access the requested resource.
capo_mediapackage.errors.internal_server_error_exception.InternalServerErrorException: An unexpected error occurred.
capo_mediapackage.errors.not_found_exception.NotFoundException: The requested resource does not exist.
capo_mediapackage.errors.service_unavailable_exception.ServiceUnavailableException: An unexpected error occurred.
capo_mediapackage.errors.too_many_requests_exception.TooManyRequestsException: The client has exceeded their resource or throttling limits.
capo_mediapackage.errors.unprocessable_entity_exception.UnprocessableEntityException: The parameters sent in the request are not valid.
capo_mediapackage.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
async def _handler(
req: "AsyncOperationRequest[capo_mediapackage.types.create_channel_request.CreateChannelRequest]",
) -> AsyncOperationResponse[
"capo_mediapackage.types.create_channel_response.CreateChannelResponse"
]:
import capo_mediapackage._operations.media_package.create_channel
(
output,
http_response,
) = await capo_mediapackage._operations.media_package.create_channel.async_create_channel(
req.options, req.input
)
return AsyncOperationResponse(output=output, response=http_response)
def _redact_output(
output: "capo_mediapackage.types.create_channel_response.CreateChannelResponse",
) -> dict[str, Any]:
import capo_mediapackage.types.create_channel_response
return capo_mediapackage.types.create_channel_response.redact_sensitive(
output
)
interceptors_, options_ = self.operation_options(
config_overrides,
OperationLogging("CreateChannel", redact_output=_redact_output),
)
input_: capo_mediapackage.types.create_channel_request.CreateChannelRequest = {}
if description is not None:
input_["description"] = description
if id is not None:
input_["id"] = id
if tags is not None:
input_["tags"] = tags
response = await aexecute_pipeline(
AsyncOperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
await response.response.aclose()
return response.output