I had to create the log folder for zoneminder manually after the plugin was installed and then the api worked for me .It would also be great if we had a version/setup where the API works.
I have turned many a hair grey looking into making it work with no joy so far. I have resorted to running it in docker with an NFS mount for storage.
Running the latest version in the docker container, I see that it is not brilliantly stable. It's a terrible pity that shinobi and motioneye are so poor with the motion detection setup or I would just switch to one of them instead.
iocage console zoneminder mkdir /var/log/zm