openclaw-ispconfig
OpenClaw plugin to manage ISPConfig via the Remote JSON API. 31 tools for sites, DNS, mail, databases, cron, and one-command provisioning.
Install
ClawHub
clawhub install openclaw-ispconfig
npm
npm install @elvatis_com/openclaw-ispconfig
ISPConfig setup
- In ISPConfig, create a Remote User.
- Grant required API permissions.
- Copy endpoint URL and credentials.
- Configure plugin in OpenClaw.
Configuration
openclaw.plugin.json config keys:
apiUrl(required): ISPConfig JSON API URLusername(required): remote userpassword(required, secret): remote passwordserverId(default1): default server iddefaultServerIp(optional): fallback IP for provisioning DNS A recordreadOnly(defaultfalse): block write toolsallowedOperations(default[]): whitelist of tool namesverifySsl(defaulttrue): TLS certificate verification
Tools
Read tools
isp_methods_listparams: noneisp_system_infoparams: noneisp_client_listparams: optional filter fieldsisp_client_getparams:client_idisp_sites_listparams: optional filters accepted bysites_web_domain_getisp_site_getparams:primary_id(orsite_id,domain_id)isp_domains_listparams: noneisp_dns_zone_listparams: user-related filter paramsisp_dns_record_listparams:zone_idisp_mail_domain_listparams: optional filtersisp_mail_user_listparams: optional filtersisp_db_listparams: user-related filtersisp_ssl_statusparams: noneisp_quota_checkparams:client_idisp_backup_listparams: none (returns skipped if API method unavailable)isp_cron_listparams: optional filters
Write tools
isp_client_addparams: ISPConfigclient_addpayloadisp_site_addparams: ISPConfigsites_web_domain_addpayloadisp_domain_addparams: alias forisp_site_addisp_dns_zone_addparams: ISPConfigdns_zone_addpayloadisp_dns_record_addparams: includetype(A,AAAA,MX,TXT,CNAME) and matching payloadisp_dns_record_deleteparams: includetypeand matching delete payloadisp_mail_domain_addparams: ISPConfigmail_domain_addpayloadisp_mail_user_addparams: ISPConfigmail_user_addpayloadisp_mail_user_deleteparams: ISPConfigmail_user_deletepayloadisp_db_addparams: ISPConfigsites_database_addpayloadisp_db_user_addparams: ISPConfigsites_database_user_addpayloadisp_shell_user_addparams: ISPConfigsites_shell_user_addpayloadisp_ftp_user_addparams: ISPConfigsites_ftp_user_addpayloadisp_cron_addparams: ISPConfigsites_cron_addpayload
Provisioning tool
isp_provision_site- Required params:
domainclientNameclientEmail
- Optional params:
serverIpcreateMail(defaulttrue)createDb(defaulttrue)serverId(default from config)
Workflow:
- Create client
- Create site with SSL and Let's Encrypt enabled
- Create DNS zone
- Add DNS records (
A,CNAME, SPF TXT, DMARC TXT) - Optionally create mail domain and
info@+admin@mailboxes - Optionally create DB user and database
- Ensure SSL flags are enabled on the site
Safety
readOnly=trueblocks all write and provisioning toolsallowedOperations=[...]allows only named tools
Development
npm run build
npm test
For live tests, provide environment variables:
ISPCONFIG_API_URLISPCONFIG_USERISPCONFIG_PASS
License
MIT