Bom, quando trabalhei num sistema distribuído, precisávamos criar subdomínios, databases e várias outras coisas em real-time para cada cliente especificamente, então criei um shell script para automatizar as tarefas.
// create subdomain | |
curl -H'Authorization: cpanel {cpanel_user}:{cpanel_token}' 'https://{cpanel_url}:2083/json-api/cpanel?cpanel_jsonapi_func=addsubdomain&cpanel_jsonapi_module=SubDomain&cpanel_jsonapi_version=2&domain={sub_domain}&rootdomain={domain}&dir={directory}' | |
// delete subdomain | |
curl -H'Authorization: cpanel cpanel {cpanel_user}:{cpanel_token}' 'https://{cpanel_url}:2083/json-api/cpanel?cpanel_jsonapi_func=delsubdomain&cpanel_jsonapi_module=SubDomain&cpanel_jsonapi_version=2&domain={$url}' | |
// create database | |
curl -H'Authorization: cpanel cpanel {cpanel_user}:{cpanel_token}' 'https://{cpanel_url}:2083/json-api/cpanel?cpanel_jsonapi_user=user&cpanel_jsonapi_apiversion=2&cpanel_jsonapi_module=MysqlFE&cpanel_jsonapi_func=createdb&db={database}' | |
// delete database | |
curl -H'Authorization: cpanel cpanel {cpanel_user}:{cpanel_token}' 'https://{cpanel_url}:2083/json-api/cpanel?cpanel_jsonapi_user=user&cpanel_jsonapi_apiversion=2&cpanel_jsonapi_module=MysqlFE&cpanel_jsonapi_func=deletedb&db={database}' | |
// add privilegies in database | |
curl -H'Authorization: cpanel cpanel {cpanel_user}:{cpanel_token}' 'https://{cpanel_url}:2083/json-api/cpanel?cpanel_jsonapi_user=user&cpanel_jsonapi_apiversion=2&cpanel_jsonapi_module=MysqlFE&cpanel_jsonapi_func=setdbuserprivileges&db={database}&dbuser={database_user}&privileges=ALL PRIVILEGES' |
Deixo acima alguns endpoints da versão v2 da api do cpanel que me ajudou bastante na automatização.
Top comments (2)
Olá Danilo tudo bem?
Estou tentando utilizar a api e retorna esse erro: curl: (7) Failed connect to meusite.com:2083; Connection refused
Aconteceu isso com você? Qual foi a solução?
@tadeu_martins_6fcf50ae479 aconteceu sim, se você não tiver acesso, precisa entrar em contato com o provedor do seu host pra liberar tráfego na porta 2083.