Una API (del inglés Application Programming Interface, y en castellano, Interfaz de Programación de Aplicaciones), es un programa que permite a diferentes aplicaciones comunicarse entre si para compartir información y funcionalidades.
En este sentido, nuestra API permite poder gestionar todo lo que puedes hacer en el panel de Clouding. Desde crear servidores desde diferentes orígenes, hasta archivar/desarchivar, crear snapshot, activar backups, añadir reglas de firewall, etc.
Para este tutorial utilizaremos el comando CURL pero también podemos usar un cliente para APIs llamado HTTPie en su versión CLI y versión gráfica. Y, además, puedes utilizar cualquier otro cliente para APIs (PostMan (Linux, Windows, Mac), RapidAPI (Mac), etc.
Consulta la documentación oficial de la API de Clouding
Recomendamos que para seguir este artículo y para obtener más información consultes la documentación oficial de la API de Clouding para más detalles.
Aquí te dejamos la sección donde podrás leer sobre cómo archivar o desarchivar un servidor cloud.
Tendrás un endpoint para cada acción donde deberás de indicar el ID del servidor.
Para obtener el listado de servidores donde obtendrás el ID del servidor puedes ejecutar lo siguiente:
curl -X GET -H "Content-Type: application/json" -H "X-API-KEY: $CLOUDING_APIKEY" https://api.clouding.io/v1/servers
Esto te mostrará en formato JSON todos los servidores que tienes:
...
{
"id": "58XEgdA0JVQ26mA0",
"name": "TutorialAPI",
"hostname": "test",
"vCores": 0.5,
"ramGb": 1,
"flavor": "0.5x1",
"volumeSizeGb": 5,
"image": {
"id": "BJebl0d7zA2WGwQ1",
"name": "Debian 11 (64 Bit)"
},
...
Para cada acción, tendrás que usar un endpoint diferente. Por ejemplo, para archivar:
curl -X POST -H "Content-Type: application/json" -H "X-API-KEY: $CLOUDING_APIKEY" https://api.clouding.io/v1/servers/$ID/archive
Recuerda cambiar $CLOUDING_APIKEY y $ID por los valores correctos.
Al lanzar este comando se archivará el servidor, como podrás ver en tu panel de cliente:
Y ésta es la salida del comando en formato JSON:
{
"id": "LQbN5nvQovrK9Jae",
"status": "inProgress",
"type": "archive",
"startedAt": "2023-02-17T10:20:52.6601832Z",
"completedAt": null,
"resourceId": "58XEgdA0JVQ26mA0",
"resourceType": "server"
}
Por otro lado, podrás desarchivar el servidor con el siguiente comando:
curl -X POST -H "Content-Type: application/json" -H "X-API-KEY: $CLOUDING_APIKEY" https://api.clouding.io/v1/servers/$ID/unarchive
Y podrás ver en tu panel de cliente el desarchivado de tu servidor: