Documentazione API completa per gestire la protezione Anti-DDoS. Configura filtri, monitora attacchi e gestisci regole di protezione.
Tutte le richieste alle API devono includere le seguenti intestazioni per l'autenticazione:
La tua API key viene fornita quando diventi un reseller. Includila in ogni richiesta:
X-API-KEY: your_key_hereTesta gli endpoint API con le tue credenziali. Inserisci la tua API key e prova le richieste.
Recupera l'elenco delle applicazioni disponibili (protocolli e servizi come Minecraft, TCP, UDP).
https://api.xeniahosting.com/reseller-api/antiddos/applications/reseller-api/antiddos/applicationsRecupera l'elenco delle applicazioni disponibili (protocolli e servizi come Minecraft, TCP, UDP).
curl -X GET "https://api.xeniahosting.com/reseller-api/antiddos/applications" \
-H "Authorization: Bearer "{
"status": "success",
"data": [
{
"app_id": 1,
"name": "Minecraft",
"note": "Java Protocol",
"protocol": "TCP"
},
{
"app_id": 2,
"name": "HTTP",
"note": "Web Server",
"protocol": "TCP"
}
]
}{
"status": "error",
"message": "Error description"
}/reseller-api/antiddos/attacksRecupera l'elenco degli attacchi mitigati sul servizio. Supporta paginazione e ricerca per parola chiave (indirizzo IP o timestamp).
| Name | Type | Required | Description |
|---|---|---|---|
page | integer | Optional | Numero di pagina (predefinito: 1, minimo: 1) |
max_view | integer | Optional | Elementi per pagina (predefinito: 10, max: 100, imposta a 0 per tutti) |
keyword | string | Optional | Parola chiave per la ricerca, può essere un indirizzo IP o un timestamp |
curl -X GET "https://api.xeniahosting.com/reseller-api/antiddos/attacks?page=1&max_view=10&keyword=192.168.1.1" \
-H "Authorization: Bearer "{
"status": "success",
"data": [
{
"attack_id": 1,
"ip": "192.168.1.1",
"started_at": "2025-09-06 10:23:00",
"ended_at": "2025-09-06 10:25:00",
"maximum_peak": "1.5 Gbps",
"raw_maximum_peak": 187500000,
"flags": {
"flags": [
"SYN_FLOOD",
"UDP_FLOOD",
"ICMP_FLOOD",
"HANDSHAKE"
]
}
}
],
"total_rows": 25
}{
"status": "error",
"message": "Error description"
}/reseller-api/antiddos/attacks/{attack_id}Recupera informazioni dettagliate su un attacco specifico incluso il breakdown delle porte.
| Name | Type | Required | Description |
|---|---|---|---|
attack_id | integer | Required | ID attacco (minimo: 1) |
curl -X GET "https://api.xeniahosting.com/reseller-api/antiddos/attacks/1" \
-H "Authorization: Bearer "{
"status": "success",
"attack_details": {
"attack_id": 1,
"ip": "192.168.1.1",
"started_at": "2025-09-06 10:23:00",
"ended_at": "2025-09-06 10:25:00",
"maximum_peak": "1.5 Gbps",
"flags": "SYN,ACK"
},
"attack_ports": [
{
"port": 80,
"protocol_name": "TCP",
"packets_peak": 1000000
},
{
"port": 443,
"protocol_name": "TCP",
"packets_peak": 500000
}
]
}{
"status": "error",
"message": "Error description"
}/reseller-api/antiddos/overviewOttiene l'overview degli attacchi. L'IP in query_ip deve appartenere al reseller e non può essere .0, .1, o .255.
| Name | Type | Required | Description |
|---|---|---|---|
overview_period | string | Optional | Periodo di panoramica (10m, 1h, 1d, 1w) - predefinito: 10m |
query_ip | string | Optional | Filtra per IP o CIDR (opzionale, formato IPv4) |
curl -X GET "https://api.xeniahosting.com/reseller-api/antiddos/overview?overview_period=1h&query_ip=192.168.1.1" \
-H "Authorization: Bearer "{
"status": "success",
"bandwidth_data": [
{
"time": "2025-09-06T10:23:00Z",
"total_pass_traffic": "1.22",
"total_drop_traffic": "0.38"
}
],
"pass_unit": "Kb",
"drop_unit": "Kb"
}{
"status": "error",
"message": "Error description"
}/reseller-api/antiddos/prefixesOttiene i prefissi assegnati al reseller. Restituisce esattamente quello che c'è nel database: subnet (es. 2.58.84.0/24), range (es. 38.211.244.239-254), o IP singoli (es. 31.57.112.2).
curl -X GET "https://api.xeniahosting.com/reseller-api/antiddos/prefixes" \
-H "Authorization: Bearer "{
"status": "success",
"message": "Service prefixes retrieved successfully",
"data": [
"192.168.1.0/24",
"10.0.0.0/8"
]
}{
"status": "error",
"message": "Error description"
}/reseller-api/antiddos/rulesRecupera l'elenco delle regole. Se keyword è un IP valido, verrà verificato che appartenga al reseller.
| Name | Type | Required | Description |
|---|---|---|---|
page | integer | Optional | Numero di pagina (predefinito: 1, minimo: 1) |
max_view | integer | Optional | Elementi per pagina (predefinito: 10, max: 100, imposta a 0 per tutti) |
keyword | string | Optional | Parola chiave per la ricerca, può essere un indirizzo IP, protocollo o nome applicazione |
curl -X GET "https://api.xeniahosting.com/reseller-api/antiddos/rules?page=1&max_view=10&keyword=Minecraft" \
-H "Authorization: Bearer "{
"status": "success",
"data": [
{
"rule_id": 1,
"ip": "192.168.1.1",
"port": 80,
"protocol": "TCP",
"name": "Minecraft",
"internal_state": "working"
}
],
"total_rows": 150
}{
"status": "error",
"message": "Error description"
}/reseller-api/antiddos/rulesCrea una nuova regola. L'IP deve appartenere al reseller e non può essere .0, .1, o .255. La porta deve essere tra 1 e 65535. Il protocollo deve essere TCP o UDP.
| Name | Type | Required | Description |
|---|---|---|---|
application_id | integer | Required | ID applicazione (minimo: 1) |
ip | string | Required | Indirizzo IP (formato IPv4) |
port | integer | Required | Numero di porta (1-65535) |
protocol | string | Required | Protocollo (TCP o UDP) |
curl -X POST "https://api.xeniahosting.com/reseller-api/antiddos/rules" \
-H "Authorization: Bearer " \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "application_id=1&ip=192.168.1.1&port=25565&protocol=TCP"{
"status": "success",
"message": "Rule created successfully"
}{
"status": "error",
"message": "Error description"
}/reseller-api/antiddos/rules/{rule_id}Aggiorna una regola esistente. Se viene modificato l'IP, deve appartenere al reseller e non può essere .0, .1, o .255.
| Name | Type | Required | Description |
|---|---|---|---|
rule_id | integer | Required | ID regola (minimo: 1) |
application_id | integer | Optional | ID applicazione (opzionale, minimo: 1) |
ip | string | Optional | Indirizzo IP (opzionale, formato IPv4) |
port | integer | Optional | Numero di porta (opzionale, 1-65535) |
protocol | string | Optional | Protocollo (opzionale, TCP o UDP) |
curl -X PUT "https://api.xeniahosting.com/reseller-api/antiddos/rules/1" \
-H "Authorization: Bearer " \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "port=25566&protocol=UDP"{
"status": "success",
"message": "Rule updated successfully"
}{
"status": "error",
"message": "Error description"
}/reseller-api/antiddos/rulesElimina regole. Se viene specificato solo l'IP, elimina tutte le regole per quell'IP. Se vengono specificati IP, porta e protocollo, elimina la regola specifica.
| Name | Type | Required | Description |
|---|---|---|---|
ip | string | Optional | Indirizzo IP per cui eliminare le regole |
port | integer | Optional | Numero di porta (richiesto se sono specificati IP e protocollo) |
protocol | string | Optional | Protocollo: TCP o UDP (richiesto se sono specificati IP e porta) |
curl -X DELETE "https://api.xeniahosting.com/reseller-api/antiddos/rules?ip=38.211.244.239" \
-H "Authorization: Bearer "{
"status": "success",
"message": "Rules deleted successfully"
}{
"status": "error",
"message": "Error description"
}/reseller-api/antiddos/rules/{rule_id}Elimina una regola per ID. Verifica che l'IP della regola appartenga al reseller prima di eliminare.
| Name | Type | Required | Description |
|---|---|---|---|
rule_id | integer | Required | ID regola (minimo: 1) |
curl -X DELETE "https://api.xeniahosting.com/reseller-api/antiddos/rules/1" \
-H "Authorization: Bearer "{
"status": "success",
"message": "Rule deleted successfully"
}{
"status": "error",
"message": "Error description"
}Esempi di codice per integrare le API Anti-DDoS in diversi linguaggi di programmazione:
curl -X GET "https://api.xeniahosting.com/reseller-api/antiddos/applications" \
-H "X-API-KEY: your_key_here"Le API hanno limiti di rate per garantire stabilità e prestazioni. Il limite predefinito è di 100 richieste al minuto per API key.
Tutte le risposte di errore seguono questo formato:
{
"status": "error",
"message": "Error description"
}Hai bisogno di aiuto? Contattaci tramite uno di questi canali:
XeniaHosting è un Provider di Hosting, con location in Italia e Paesi Bassi.
Offriamo Hardware e Reti di ultima generazione, con protezioni Anti-DDoS di alto livello.
P.IVA: IT01849280191 - REA: CR-337979 - Capitale Sociale €10.000
Società sotto direzione e coordinamento di XeniaGroup SRL