Introducción
En este tutorial, aprenderemos a utilizar la API de cPanel para automatizar diversas tareas relacionadas con la gestión de cuentas, incluida la edición de registros de zona.
Automatizar estas tareas ahorra tiempo y facilita la administración de su cuenta de Hosting.
Requisitos
Una cuenta de cPanel con acceso a la API.
Conocimiento básico de la línea de comandos.
Paso 1: Obtener el Token de la API
Accede a tu cuenta de cPanel.
Ve a la seccion "Seguridad - Administrar tokens de API"
En el apartado Nombre del token de API, escribe el nombre para identificar el token
Luego elige el tipo de preferencia de configuración, si desea que sea un acceso permanente o un acceso temporal.
Haga clic al boton de Crear
Una vez que se haya creado el Token, copia el token generado y guardalo en un lugar seguro, ya que no podrás volver a visualizarlo desde cPanel.
Ya teniendo el token creado, ya puedes comenzar a gestionar el cPanel a traves del API.
Paso 2:
Explorar la Funcionalidad de la API
Consulta la documentación de la API de cPanel para familiarizarte con las funciones disponibles: Documentación de la API.
Identifica las funciones que deseas utilizar, como la gestión de cuentas, la edición de registros DNS, etc.
Paso 3:
Realizar Operaciones con Curl para modificar un registro de Zona
Antes de ejecutar el siguiente código es importante que modifiques los valores de Authorization de acuerdo a la información de su cuenta.
-H "Authorization: cpanel UsuariocPanel:TOKEN"
También es necesario antes de editar el registro, obtener la línea que se quiere editar dentro del Zone Editor en cPanel.
Para obtener la línea a editar, se debe utilizar:
curl -X POST \
-H "Authorization: cpanel usuariocpanel:token" \
-H "Content-Type: application/json" \
--data '{
"cpanel_jsonapi_module": "ZoneEdit",
"cpanel_jsonapi_func": "fetchzone_records",
"domain": "dominio.com"
}' \
https://tu-dominio.com:2083/json-api/cpanel
Esto devolverá un json con la información de todos los registros de zona existentes en la cuenta.
{
"class": "IN",
"ttl": 86400,
"Line": 5,
"type": "NS",
"record": null,
"name": "dominio.com.",
"nsdname": "ns2.dominio.com",
"line": 5
}
A continuación ya estas en condiciones de accionar la edición del registro.
Ejemplo CURL:
Edición de un Registro CNAME
curl -X POST \
-H "Authorization: cpanel usuariocpanel:token" \
-H "Content-Type: application/json" \
--data '{
"cpanel_jsonapi_module": "ZoneEdit",
"cpanel_jsonapi_func": "edit_zone_record",
"domain": "midominio.com",
"line": 1,// Reemplaza por la Linea del registro a modificar.
"type": "CNAME",
"name": "www.n8n",
"data": "n8ntest.com"
}' \
https://tu-dominio.com:2083/json-api/cpanel
Ejemplo CURL:
Crear una Cuenta de Correo Electrónico
curl -X POST \
-H "Authorization: cpanel usuariocpanel:token" \
-H "Content-Type: application/json" \
--data '{
"cpanel_jsonapi_module": "Email",
"cpanel_jsonapi_func": "addpop",
"domain": "midominio.com",
"email": "administracion",
"password": "contraseña",
"quota": 100 // Expresado en MB
}' \
https://tu-dominio.com:2083/json-api/cpanel
¿Como revocar el API ?
Ve a la seccion "Seguridad - Administrar tokens de API" alli veras el API creada con el nombre, simplemente selecciónala y luego haga clic en revocar.
Conclusión
Ahora has aprendido a gestionar tareas en cPanel utilizando su API.