async def create_input(
self,
input_name: "capo_iot_events.types.input_name.InputName",
input_definition: "capo_iot_events.types.input_definition.InputDefinition",
*,
config_overrides: Optional[AsyncIoTEventsClientConfig] = None,
input_description: Optional[
"capo_iot_events.types.input_description.InputDescription"
] = None,
tags: Optional["capo_iot_events.types.tags.Tags"] = None,
) -> "capo_iot_events.types.create_input_response.CreateInputResponse":
"""<p>Creates an input.</p>
Args:
input_name: <p>The name you want to give to the input.</p>
input_description: <p>A brief description of the input.</p>
input_definition: <p>The definition of the input.</p>
tags: <p>Metadata that can be used to manage the input.</p>
Raises:
capo_iot_events.errors.internal_failure_exception.InternalFailureException: <p>An internal failure occurred.</p>
capo_iot_events.errors.invalid_request_exception.InvalidRequestException: <p>The request was invalid.</p>
capo_iot_events.errors.resource_already_exists_exception.ResourceAlreadyExistsException: <p>The resource already exists.</p>
capo_iot_events.errors.service_unavailable_exception.ServiceUnavailableException: <p>The service is currently unavailable.</p>
capo_iot_events.errors.throttling_exception.ThrottlingException: <p>The request could not be completed due to throttling.</p>
capo_iot_events.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
async def _handler(
req: "AsyncOperationRequest[capo_iot_events.types.create_input_request.CreateInputRequest]",
) -> AsyncOperationResponse[
"capo_iot_events.types.create_input_response.CreateInputResponse"
]:
import capo_iot_events._operations.iot_columbo_service.create_input
(
output,
http_response,
) = await capo_iot_events._operations.iot_columbo_service.create_input.async_create_input(
req.options, req.input
)
return AsyncOperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("CreateInput")
)
input_: capo_iot_events.types.create_input_request.CreateInputRequest = {
"input_name": input_name,
"input_definition": input_definition,
}
if input_description is not None:
input_["input_description"] = input_description
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