def item(self, drive=None, id_=None, path=None):
    """Gets an item given the specified (optional) drive,
    (optional) id_, and (optional) path

    Args:
        drive (str): The drive that you want to use
        id_ (str): The id_ of the item to request
        path (str): The path of the item to request

    Returns:
        :class:`ItemRequestBuilder<msgraph.requests.item_request_builder.ItemRequestBuilder>`:
            A request builder for an item given a path or id_
    """
    if id_ is None and path is None:
        raise ValueError("Either 'path' or 'id_' must be specified")
    elif id_ is not None and path is not None:
        raise ValueError("Only one of either 'path' or 'id_' can be specified")

    drive_builder = self.drives[drive] if drive else self.drive

    if path:
        return drive_builder.item_by_path(path)
    elif id_:
        return drive_builder.items[id_]