Yes, we do have a java API client, and its very stable :)
I actually use the python one more, but both a code generated and should just work.
If you hit any problems with them then just raise an issue. A lot of people automate ZAP, so making sure that the API is stable and powerful is very important to us.
Cheers,
Simon