Skip to content

create_ml_input_channel async

create_ml_input_channel(
    membership_identifier: UUID,
    configured_model_algorithm_associations: ConfiguredModelAlgorithmAssociationArnList,
    input_channel: InputChannel,
    name: NameString,
    retention_in_days: int,
    *,
    config_overrides: Optional[AsyncCleanRoomsMLClientConfig] = None,
    description: Optional[ResourceDescription] = None,
    kms_key_arn: Optional[KmsKeyArn] = None,
    tags: Optional[TagMap] = None,
    payer_configuration: Optional[PayerConfiguration] = None,
) -> CreateMLInputChannelResponse

Provides the information to create an ML input channel. An ML input channel is the result of a query that can be used for ML modeling.

Parameters:

  • membership_identifier (UUID) –

    The membership ID of the member that is creating the ML input channel.

  • configured_model_algorithm_associations (ConfiguredModelAlgorithmAssociationArnList) –

    The associated configured model algorithms that are necessary to create this ML input channel.

  • input_channel (InputChannel) –

    The input data that is used to create this ML input channel.

  • name (NameString) –

    The name of the ML input channel.

  • retention_in_days (int) –

    The number of days that the data in the ML input channel is retained.

  • description (Optional[ResourceDescription], default: None ) –

    The description of the ML input channel.

  • kms_key_arn (Optional[KmsKeyArn], default: None ) –

    The Amazon Resource Name (ARN) of the KMS key that is used to access the input channel.

  • tags (Optional[TagMap], default: None ) –

    The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.

    The following basic restrictions apply to tags:

    • Maximum number of tags per resource - 50.

    • For each resource, each tag key must be unique, and each tag key can have only one value.

    • Maximum key length - 128 Unicode characters in UTF-8.

    • Maximum value length - 256 Unicode characters in UTF-8.

    • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.

    • Tag keys and values are case sensitive.

    • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Clean Rooms ML considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.

  • payer_configuration (Optional[PayerConfiguration], default: None ) –

    The payer configuration for the ML input channel. Determines which member account pays for compute and synthetic data costs.

Raises:

Source code in docs_src/capo_cleanroomsml/_services/async_clean_rooms_ml.py
async def create_ml_input_channel(
    self,
    membership_identifier: "capo_cleanroomsml.types.uuid.UUID",
    configured_model_algorithm_associations: "capo_cleanroomsml.types.configured_model_algorithm_association_arn_list.ConfiguredModelAlgorithmAssociationArnList",
    input_channel: "capo_cleanroomsml.types.input_channel.InputChannel",
    name: "capo_cleanroomsml.types.name_string.NameString",
    retention_in_days: int,
    *,
    config_overrides: Optional[AsyncCleanRoomsMLClientConfig] = None,
    description: Optional[
        "capo_cleanroomsml.types.resource_description.ResourceDescription"
    ] = None,
    kms_key_arn: Optional["capo_cleanroomsml.types.kms_key_arn.KmsKeyArn"] = None,
    tags: Optional["capo_cleanroomsml.types.tag_map.TagMap"] = None,
    payer_configuration: Optional[
        "capo_cleanroomsml.types.payer_configuration.PayerConfiguration"
    ] = None,
) -> "capo_cleanroomsml.types.create_ml_input_channel_response.CreateMLInputChannelResponse":
    """<p>Provides the information to create an ML input channel. An ML input channel is the result of a query that can be used for ML modeling.</p>

    Args:
        membership_identifier: <p>The membership ID of the member that is creating the ML input channel.</p>
        configured_model_algorithm_associations: <p>The associated configured model algorithms that are necessary to create this ML input channel.</p>
        input_channel: <p>The input data that is used to create this ML input channel.</p>
        name: <p>The name of the ML input channel.</p>
        retention_in_days: <p>The number of days that the data in the ML input channel is retained.</p>
        description: <p>The description of the ML input channel.</p>
        kms_key_arn: <p>The Amazon Resource Name (ARN) of the KMS key that is used to access the input channel.</p>
        tags: <p>The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.</p> <p>The following basic restrictions apply to tags:</p> <ul> <li> <p>Maximum number of tags per resource - 50.</p> </li> <li> <p>For each resource, each tag key must be unique, and each tag key can have only one value.</p> </li> <li> <p>Maximum key length - 128 Unicode characters in UTF-8.</p> </li> <li> <p>Maximum value length - 256 Unicode characters in UTF-8.</p> </li> <li> <p>If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.</p> </li> <li> <p>Tag keys and values are case sensitive.</p> </li> <li> <p>Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Clean Rooms ML considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.</p> </li> </ul>
        payer_configuration: <p>The payer configuration for the ML input channel. Determines which member account pays for compute and synthetic data costs.</p>

    Raises:
        capo_cleanroomsml.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
        capo_cleanroomsml.errors.conflict_exception.ConflictException: <p>You can't complete this action because another resource depends on this resource.</p>
        capo_cleanroomsml.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource you are requesting does not exist.</p>
        capo_cleanroomsml.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>You have exceeded your service quota.</p>
        capo_cleanroomsml.errors.throttling_exception.ThrottlingException: <p>The request was denied due to request throttling.</p>
        capo_cleanroomsml.errors.validation_exception.ValidationException: <p>The request parameters for this request are incorrect.</p>
        capo_cleanroomsml.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_cleanroomsml.types.create_ml_input_channel_request.CreateMLInputChannelRequest]",
    ) -> AsyncOperationResponse[
        "capo_cleanroomsml.types.create_ml_input_channel_response.CreateMLInputChannelResponse"
    ]:
        import capo_cleanroomsml._operations.aws_stark_control_service.create_ml_input_channel

        (
            output,
            http_response,
        ) = await capo_cleanroomsml._operations.aws_stark_control_service.create_ml_input_channel.async_create_ml_input_channel(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    def _redact_input(
        input_: "capo_cleanroomsml.types.create_ml_input_channel_request.CreateMLInputChannelRequest",
    ) -> dict[str, Any]:
        import capo_cleanroomsml.types.create_ml_input_channel_request

        return capo_cleanroomsml.types.create_ml_input_channel_request.redact_sensitive(
            input_
        )

    interceptors_, options_ = self.operation_options(
        config_overrides,
        OperationLogging("CreateMLInputChannel", redact_input=_redact_input),
    )
    input_: capo_cleanroomsml.types.create_ml_input_channel_request.CreateMLInputChannelRequest = {
        "membership_identifier": membership_identifier,
        "configured_model_algorithm_associations": configured_model_algorithm_associations,
        "input_channel": input_channel,
        "name": name,
        "retention_in_days": retention_in_days,
    }
    if description is not None:
        input_["description"] = description
    if kms_key_arn is not None:
        input_["kms_key_arn"] = kms_key_arn
    if tags is not None:
        input_["tags"] = tags
    if payer_configuration is not None:
        input_["payer_configuration"] = payer_configuration

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output