Skip to content

create_alias async

create_alias(
    directory_id: DirectoryId,
    alias: AliasName,
    *,
    config_overrides: Optional[AsyncDirectoryServiceClientConfig] = None,
) -> CreateAliasResult

Creates an alias for a directory and assigns the alias to the directory. The alias is used to construct the access URL for the directory, such as http://.awsapps.com.

After an alias has been created, it cannot be deleted or reused, so this operation should only be used when absolutely necessary.

Parameters:

  • directory_id (DirectoryId) –

    The identifier of the directory for which to create the alias.

  • alias (AliasName) –

    The requested alias.

    The alias must be unique amongst all aliases in Amazon Web Services. This operation throws an EntityAlreadyExistsException error if the alias already exists.

Raises:

Examples:

To create an alias for a directory The following example creates an alias for a directory.

>>> await client.create_alias(directory_id='d-92654abfed', alias='salesorg')
Source code in docs_src/capo_directory_service/_services/async_directory_service.py
async def create_alias(
    self,
    directory_id: "capo_directory_service.types.directory_id.DirectoryId",
    alias: "capo_directory_service.types.alias_name.AliasName",
    *,
    config_overrides: Optional[AsyncDirectoryServiceClientConfig] = None,
) -> "capo_directory_service.types.create_alias_result.CreateAliasResult":
    """<p>Creates an alias for a directory and assigns the alias to the directory. The alias is used to construct the access URL for the directory, such as <code>http://<alias>.awsapps.com</code>.</p> <important> <p>After an alias has been created, it cannot be deleted or reused, so this operation should only be used when absolutely necessary.</p> </important>

    Args:
        directory_id: <p>The identifier of the directory for which to create the alias.</p>
        alias: <p>The requested alias.</p> <p>The alias must be unique amongst all aliases in Amazon Web Services. This operation throws an <code>EntityAlreadyExistsException</code> error if the alias already exists.</p>

    Raises:
        capo_directory_service.errors.client_exception.ClientException: <p>A client exception has occurred.</p>
        capo_directory_service.errors.entity_already_exists_exception.EntityAlreadyExistsException: <p>The specified entity already exists.</p>
        capo_directory_service.errors.entity_does_not_exist_exception.EntityDoesNotExistException: <p>The specified entity could not be found.</p>
        capo_directory_service.errors.invalid_parameter_exception.InvalidParameterException: <p>One or more parameters are not valid.</p>
        capo_directory_service.errors.service_exception.ServiceException: <p>An exception has occurred in Directory Service.</p>
        capo_directory_service.errors.UnknownServiceError: The service returned an error code this client does not model.

    Examples:
        To create an alias for a directory
        The following example creates an alias for a directory.

        >>> await client.create_alias(directory_id='d-92654abfed', alias='salesorg')
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_directory_service.types.create_alias_request.CreateAliasRequest]",
    ) -> AsyncOperationResponse[
        "capo_directory_service.types.create_alias_result.CreateAliasResult"
    ]:
        import capo_directory_service._operations.directory_service_20150416.create_alias

        (
            output,
            http_response,
        ) = await capo_directory_service._operations.directory_service_20150416.create_alias.async_create_alias(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateAlias")
    )
    input_: capo_directory_service.types.create_alias_request.CreateAliasRequest = {
        "directory_id": directory_id,
        "alias": alias,
    }

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