It's worth adding more docs here, especially since we need to make it clear where `connectionID` comes from (i.e. the order of calling these apis matters).