Python API vs. Gym wrapper

My question is pretty straight-forward - what are the use-cases for both the low-level API and the gym wrapper? Is there something one or the other can’t do or is it up to my preference?

Python API gives you more control, as it is for example possible to have multiple agents and multiple behaviors and control them. Also they both work a little bit differently. Gym wrapper is mainly for use cases if there is an exisiting algorithm you want to test. Correct me if I’m wrong.