Movie pans and zooms using 5 virtual cams all via code

(Hi, a terrible title but I didn’t know what to put.)
I need to create 100’s of short videos - storytelling to teach English.

In order to make the movies interesting I need to pan, zoom etc… like a real movie.
I thought of creating 5 virtual cams and call them via code every time the audio of a character is called.
Pseudo code
vcam1.play() + audioCharacter1_1.play()
// (when auido stops)
vcam2.play() + audioCharacter2_1.play()
// (when audio stops)
vcam3.play() + audioCharacter1_2.play()
etc…
each cam will have a different pan, zoom, character to concentrate on.
vcam1 = close up of character1
vcam2 = close up of character2
vcam3 = full scene + zooms in slowly
etc…
This would be a start then we can add other functionality like transitions etc…

Is this all possible, I’m asking before I go and look up all the code.

Yes, it is possible.
The timeline is the best way to set up cameras and shots for a short film.
Here is a video showing how to use Cinemachine with the timeline:

Excellent. Thank you so much.
So is the timeline similar to that of adobe animate and other animation tools? Is it even possible to use it like so, with long animations of multiple objects on different layers?

yes