Skip to content

create_custom_domain_association async

create_custom_domain_association(
    workgroup_name: WorkgroupName,
    custom_domain_name: CustomDomainName,
    custom_domain_certificate_arn: CustomDomainCertificateArnString,
    *,
    config_overrides: Optional[AsyncRedshiftServerlessClientConfig] = None,
) -> CreateCustomDomainAssociationResponse

Creates a custom domain association for Amazon Redshift Serverless.

Parameters:

  • workgroup_name (WorkgroupName) –

    The name of the workgroup associated with the database.

  • custom_domain_name (CustomDomainName) –

    The custom domain name to associate with the workgroup.

  • custom_domain_certificate_arn (CustomDomainCertificateArnString) –

    The custom domain name’s certificate Amazon resource name (ARN).

Raises:

Source code in docs_src/capo_redshift_serverless/_services/async_redshift_serverless.py
async def create_custom_domain_association(
    self,
    workgroup_name: "capo_redshift_serverless.types.workgroup_name.WorkgroupName",
    custom_domain_name: "capo_redshift_serverless.types.custom_domain_name.CustomDomainName",
    custom_domain_certificate_arn: "capo_redshift_serverless.types.custom_domain_certificate_arn_string.CustomDomainCertificateArnString",
    *,
    config_overrides: Optional[AsyncRedshiftServerlessClientConfig] = None,
) -> "capo_redshift_serverless.types.create_custom_domain_association_response.CreateCustomDomainAssociationResponse":
    """<p>Creates a custom domain association for Amazon Redshift Serverless.</p>

    Args:
        workgroup_name: <p>The name of the workgroup associated with the database.</p>
        custom_domain_name: <p>The custom domain name to associate with the workgroup.</p>
        custom_domain_certificate_arn: <p>The custom domain name’s certificate Amazon resource name (ARN).</p>

    Raises:
        capo_redshift_serverless.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
        capo_redshift_serverless.errors.conflict_exception.ConflictException: <p>The submitted action has conflicts.</p>
        capo_redshift_serverless.errors.internal_server_exception.InternalServerException: <p>The request processing has failed because of an unknown error, exception or failure.</p>
        capo_redshift_serverless.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource could not be found.</p>
        capo_redshift_serverless.errors.throttling_exception.ThrottlingException: <p>The request was denied due to request throttling.</p>
        capo_redshift_serverless.errors.validation_exception.ValidationException: <p>The input failed to satisfy the constraints specified by an Amazon Web Services service.</p>
        capo_redshift_serverless.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_redshift_serverless.types.create_custom_domain_association_request.CreateCustomDomainAssociationRequest]",
    ) -> AsyncOperationResponse[
        "capo_redshift_serverless.types.create_custom_domain_association_response.CreateCustomDomainAssociationResponse"
    ]:
        import capo_redshift_serverless._operations.redshift_serverless.create_custom_domain_association

        (
            output,
            http_response,
        ) = await capo_redshift_serverless._operations.redshift_serverless.create_custom_domain_association.async_create_custom_domain_association(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateCustomDomainAssociation")
    )
    input_: capo_redshift_serverless.types.create_custom_domain_association_request.CreateCustomDomainAssociationRequest = {
        "workgroup_name": workgroup_name,
        "custom_domain_name": custom_domain_name,
        "custom_domain_certificate_arn": custom_domain_certificate_arn,
    }

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