I'm looking into using the ISPConfig API to manage clients, sites, and databases, but the documentation in the zip file that I downloaded is really sparse, and there's nothing at all about the API in the user manual. Is there documentation as to which parameters are required vs optional for a given API function, for example client_add which has over fifty listed parameters? Also, is there a roadmap for more detailed documentation for the API?
The user manual is a user manual and not the API documentation, so you will not find there any api docs there. The available api docs are in the remote_client folder of the ispconfig tar.gz file. Further documentation is not available. The parameter in the $params array of a function call are the columns of the corresponding database table (minus the sys_* tables). All parameters should be passed to the function, leaving parameters out may cause malfunctions.