REST API di OMC Cloud

Gestisci la tua infrastruttura cloud in modo programmatico con la REST API di OMC Cloud. Crea server, gestisci gli snapshot, configura la rete e automatizza tutto ciò che puoi fare dalla dashboard.

Guida rapida

L’API di OMC Cloud è RESTful e funziona con qualsiasi client HTTP, in qualsiasi linguaggio. Autenticati con il tuo client ID e secret, poi chiama qualsiasi endpoint.

URL di base
https://console.omc.cloud/service
Formato
JSON
Autenticazione
Client ID + Secret
HTTPS
Obbligatorio

Autenticazione

Genera le tue credenziali API nella dashboard di OMC Cloud in Settings → API Keys. Riceverai un clientId e un secret.

Puoi autenticare le richieste in due modi:

Opzione 1 – Credenziali dirette negli header

curl https://console.omc.cloud/service/servers 
  -H "Content-Type: application/json" 
  -H "clientId: YOUR_CLIENT_ID" 
  -H "secret: YOUR_SECRET"

Opzione 2 – Basata su token (consigliata per chiamate ripetute)

Per prima cosa, scambia le credenziali con un token valido 1 ora:

curl -X POST https://console.omc.cloud/service/authenticate 
  -H "Content-Type: application/json" 
  -d '{"clientId":"YOUR_CLIENT_ID","secret":"YOUR_SECRET"}'

Risposta:

{
  "authentication": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  "expires": 1745393200
}

Poi usa il token nelle richieste successive:

curl https://console.omc.cloud/service/servers 
  -H "Content-Type: application/json" 
  -H "authorization: YOUR_TOKEN"

Gestione dei server

GETElenca tutti i server+
/servers

Restituisce un array di tutti i server del tuo account con ID, data center, nome e stato di alimentazione.

cURL
curl https://console.omc.cloud/service/servers 
  -H "clientId: YOUR_CLIENT_ID" 
  -H "secret: YOUR_SECRET"
Python
import requests

url = "https://console.omc.cloud/service/servers"
headers = {
    'Content-Type': 'application/json',
    'clientId': 'YOUR_CLIENT_ID',
    'secret': 'YOUR_SECRET',
}
response = requests.get(url, headers=headers)
print(response.json())
GETOttieni le opzioni disponibili per la creazione di un server+
/server

Restituisce l’elenco completo di data center, tipi di CPU, dimensioni di RAM, opzioni disco, template di sistema operativo, pacchetti di traffico, reti e tipi di fatturazione disponibili per creare un nuovo server.

cURL
curl https://console.omc.cloud/service/server 
  -H "clientId: YOUR_CLIENT_ID" 
  -H "secret: YOUR_SECRET"
POSTCrea un nuovo server+
/server

Attiva un nuovo server virtuale con la configurazione specificata. Restituisce un task ID che puoi interrogare per verificarne il completamento.

Campi obbligatori

  • disk_src_0 – ID dell’immagine del sistema operativo
  • datacenter – Codice della località
  • name – Nome del server (4-40 caratteri, alfanumerici + ./-/_)
  • cpu – Tipo e numero di CPU (es. 1B, 2D)
  • ram – Memoria in MB
  • password – 9-32 caratteri, maiuscole e minuscole + numeri
  • billing – monthly o hourly
  • traffic – ID del pacchetto di traffico (es. t5000)
  • disk_size_0 – Dimensione del disco in GB
  • network_name_0 – Nome della rete (usa wan per l’IP automatico)

Campi facoltativi

  • managed – Attiva i servizi gestiti
  • backup – Attiva i backup giornalieri
  • power – Avvio automatico al completamento
  • selectedSSHKeyValue – Chiave SSH pubblica
  • network_ip_0 – IP specifico (facoltativo con WAN)
cURL
curl -X POST https://console.omc.cloud/service/server 
  -H "Content-Type: application/json" 
  -H "clientId: YOUR_CLIENT_ID" 
  -H "secret: YOUR_SECRET" 
  -d '{
    "disk_src_0": "IL:XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    "datacenter": "IL-TLV",
    "name": "my-production-server",
    "cpu": "2B",
    "ram": "4096",
    "password": "YourSecurePass123",
    "network_name_0": "wan",
    "billing": "monthly",
    "traffic": "t5000",
    "disk_size_0": "40"
  }'
POSTClona un server esistente+
/server/clone

Duplica un server esistente con sistema operativo, software, configurazione e dati. Restituisce un task ID.

Obbligatori: source (UUID), name, password, billing

cURL
curl -X POST https://console.omc.cloud/service/server/clone 
  -H "Content-Type: application/json" 
  -H "clientId: YOUR_CLIENT_ID" 
  -H "secret: YOUR_SECRET" 
  -d '{
    "source": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "name": "server-clone",
    "password": "YourSecurePass123",
    "billing": "monthly"
  }'
GETOttieni i dettagli del server+
/server/{serverid}

Restituisce tutte le informazioni su un server specifico: ID, data center, CPU, RAM, stato di alimentazione, dischi, reti (con IP), tipo di fatturazione, pacchetto di traffico, stato dei servizi gestiti, stato del backup.

cURL
curl https://console.omc.cloud/service/server/SERVER_UUID 
  -H "clientId: YOUR_CLIENT_ID" 
  -H "secret: YOUR_SECRET"
DELETEElimina un server+
/server/{serverid}/terminate

Rimuove definitivamente un server. Questa azione è irreversibile. Body obbligatorio: confirm=1. Se il server è acceso, passa anche force=1.

cURL
curl -X DELETE https://console.omc.cloud/service/server/SERVER_UUID/terminate 
  -H "Content-Type: application/x-www-form-urlencoded" 
  -H "clientId: YOUR_CLIENT_ID" 
  -H "secret: YOUR_SECRET" 
  -d 'confirm=1&force=1'

Gestione dell’alimentazione

PUTControlla lo stato di alimentazione del server+
/server/{serverid}/power

Accendi, spegni o riavvia un server. Invia power=on, power=off o power=restart come form data. Restituisce un task ID.

cURL
curl -X PUT https://console.omc.cloud/service/server/SERVER_UUID/power 
  -H "Content-Type: application/x-www-form-urlencoded" 
  -H "clientId: YOUR_CLIENT_ID" 
  -H "secret: YOUR_SECRET" 
  -d 'power=on'

Gestione delle risorse (CPU, RAM, disco)

GETElenca le opzioni CPU disponibili+
/server/{serverid}/cpu

Restituisce le configurazioni CPU a cui il server può essere ridimensionato (tipi A, B, T, D con un numero di vCPU fino a 104).

PUTModifica la configurazione CPU+
/server/{serverid}/cpu

Ridimensiona la CPU del server. Invia cpu=2B come form data.

GETElenca le dimensioni di RAM disponibili+
/server/{serverid}/ram

Restituisce le dimensioni di RAM in MB disponibili per ogni tipo di CPU.

PUTModifica l’allocazione della RAM+
/server/{serverid}/ram

Ridimensiona la RAM del server. Invia ram=4096 come form data (dimensione in MB).

GETElenca le dimensioni disco disponibili+
/server/{serverid}/disk

Restituisce l’array delle dimensioni disco in GB a cui puoi ridimensionare.

PUTRidimensiona un disco esistente+
/server/{serverid}/disk

Ridimensiona un disco rigido esistente. Invia JSON: {"size":"40","index":"0","provision":"1"}

cURL
curl -X PUT https://console.omc.cloud/service/server/SERVER_UUID/disk 
  -H "Content-Type: application/json" 
  -H "clientId: YOUR_CLIENT_ID" 
  -H "secret: YOUR_SECRET" 
  -d '{"size":"40","index":"0","provision":"1"}'
POSTAggiungi un nuovo disco+
/server/{serverid}/disk

Aggiungi un disco rigido aggiuntivo al server. Invia size=20&provision=1 come form data.

DELETEElimina un disco+
/server/{serverid}/disk/remove

Elimina definitivamente un disco. Invia index=1&confirm=1 come form data. La perdita dei dati è definitiva.

Snapshot

GETElenca tutti gli snapshot+
/server/{serverid}/snapshots

Restituisce un array di tutti gli snapshot del server con ID, nome, data, stato attivo e profondità.

POSTCrea uno snapshot+
/server/{serverid}/snapshot

Crea uno snapshot del server in un preciso momento. Invia name=my-snapshot.

PUTRipristina uno snapshot+
/server/{serverid}/snapshot

Riporta il server a uno snapshot precedente. Invia snapshotId=1745411375.

DELETEElimina uno snapshot+
/server/{serverid}/snapshot

Rimuovi uno snapshot. Invia snapshotId=1745411375.

Configurazione e fatturazione

PUTRinomina un server+
/server/{serverid}/rename

Modifica il nome del server. Invia name=new-server-name. Vincoli: 4-40 caratteri, lettere/numeri/punti/trattini/underscore.

PUTModifica la password di root+
/server/{serverid}/password

Aggiorna la password di root del server. Invia password=NewSecurePass123. Vincoli: 9-32 caratteri, maiuscole e minuscole + numeri.

GETOttieni la modalità di fatturazione+
/server/{serverid}/billing

Restituisce la modalità di fatturazione attiva e futura del server.

PUTModifica la modalità di fatturazione+
/server/{serverid}/billing

Passa dalla fatturazione mensile a quella oraria e viceversa. Invia type=monthly&traffic=t5000.

Libreria dei dischi rigidi

GETElenca la libreria dei dischi rigidi+
/server/{serverid}/hdlib

Restituisce un array di oggetti disco con UUID e dimensione in GB, disponibili per la clonazione.

POSTClona un disco dalla libreria+
/server/{serverid}/hdlib

Crea un nuovo disco da una sorgente della libreria. Invia disk_name_0=cloned-disk&disk_src_0=DISK_UUID.

SDK e strumenti

L’API di OMC Cloud è basata su REST e funziona con qualsiasi client HTTP. Per comodità puoi anche usare:

cURL
HTTP standard da qualsiasi shell
Python
Usa la libreria requests
Node.js
Usa fetch, axios o node-fetch
PHP
Usa cURL o Guzzle

Gestione degli errori

L’API usa i codici di stato HTTP standard:

  • 200 OK – Richiesta riuscita
  • 400 Bad Request – Parametri non validi o richiesta malformata
  • 401 Unauthorized – Credenziali mancanti o non valide
  • 403 Forbidden – Autenticazione riuscita ma permesso negato
  • 404 Not Found – La risorsa non esiste
  • 500 Internal Server Error – Problema lato server (contatta il supporto)

La maggior parte delle operazioni riuscite restituisce un task ID che puoi usare per seguire l’avanzamento asincrono. Tutte le richieste devono essere inviate tramite HTTPS.

Pronto a iniziare a sviluppare?

Genera le tue credenziali API nella dashboard di OMC Cloud e inizia ad automatizzare in pochi minuti.

Ottieni le credenziali API →