I have created a somewhat comprehensive set of Asterisk API wrappers for Python 3.7 or later in the form of Seaskirt. This covers AMI, AGI, ARI and the console socket interface, offering both synchronous and asynchronous versions of all the main API classes. I have avoided creating elaborate wrapper classes for now, so request/response messages are just encapsulated as generic Python dictionary objects.
I haven’t done any proper docs as yet, but I do offer some small examples of its use in the examples repo.