def METHOD_NAME(account_name: Optional[str] = None,
                                                mongo_user_definition_id: Optional[str] = None,
                                                resource_group_name: Optional[str] = None,
                                                opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetMongoDBResourceMongoUserDefinitionResult:
    """
    Retrieves the properties of an existing Azure Cosmos DB Mongo User Definition with the given Id.
    :param str account_name: Cosmos DB database account name.
    :param str mongo_user_definition_id: The ID for the User Definition {dbName.userName}.
    :param str resource_group_name: The name of the resource group. The name is case insensitive.
    """
    __args__ = dict()
    __args__['accountName'] = account_name
    __args__['mongoUserDefinitionId'] = mongo_user_definition_id
    __args__['resourceGroupName'] = resource_group_name
    opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
    __ret__ = pulumi.runtime.invoke('azure-native:documentdb/v20230415:getMongoDBResourceMongoUserDefinition', __args__, opts=opts, typ=GetMongoDBResourceMongoUserDefinitionResult).value
    return AwaitableGetMongoDBResourceMongoUserDefinitionResult(
        custom_data=pulumi.get(__ret__, 'custom_data'),
        database_name=pulumi.get(__ret__, 'database_name'),
        id=pulumi.get(__ret__, 'id'),
        mechanisms=pulumi.get(__ret__, 'mechanisms'),
        name=pulumi.get(__ret__, 'name'),
        password=pulumi.get(__ret__, 'password'),
        roles=pulumi.get(__ret__, 'roles'),
        type=pulumi.get(__ret__, 'type'),
        user_name=pulumi.get(__ret__, 'user_name'))