Anti-DDoS

Use this API to create, list, update or delete Anti-DDoS orders for the Console Security application.

Returns a list of termination sites.

Securityapi-key
Responses
200

Array of termination sites, with only basic fields.

get/console_secure/antiddos/v1/cad/terminationsites
Response samples
application/json
[
  • {
    }
]

Get DNS UIDs and synonyms for the current user

Securityapi-key
Responses
200

Successful response

get/console_secure/antiddos/v1/cad/dnsAccUid
Response samples
application/json
[
  • {
    }
]

Returns sales records

Securityapi-key
Request
query Parameters
cust_id
required
string

insight customer id

Example: cust_id=IS0168
product_id
string

array of product id, separate by comma

Example: product_id=I4E,I4P,I3E,I3W,I3P
sale_status_id
string

array of sale status id, separate by comma

Example: sale_status_id=OP
limit
integer [ 0 .. 20 ]

maximum number of records

Example: limit=4
offset
required
integer >= 0
Example: offset=1
Responses
200

Get sales records from Insight API

500

There was an internal server error. This might be caused by an Insight API connection failure.

get/console_secure/antiddos/v1/cad/salesRecords
Response samples
application/json
{
  • "sr": [
    ],
  • "offset": 0,
  • "limit": 0,
  • "count": 0,
  • "total_count": 0
}

Create a new order, and create a Sales Record in Insight.

Securityapi-key
Request
Request Body schema: application/json
name
required
string

Provided by user

insight_customer_id
required
string

Provided by JWT from Console Connect, e.g. AIN001, TAN006, IS0569, TOL, TATA. Must already be an existing customer on the Insight platform.

package
required
string (Package)
Enum: "alwayson" "ondemand"
number_of_protected_ips
required
Array of arrays (NumberOfProtectedIps) = 2 items

Number of IPv4 address prefixes to be protected. Array of minimum and maximum range.

Items Enum: [1,8] [9,16] [17,32] [33,64]
total_inbound_traffic
required
Array of arrays (TotalInboundTraffic) = 2 items

Corresponding Legitimate Traffic. Array of minimum and maximum range, in Mbps.

Items Enum: [0,50] [51,100] [101,200] [201,500] [501,1000] [1001,2000]
total_mitigated_traffic
required
integer (TotalMitigatedTraffic)

DDoS attack traffic to be mitigated, in Mbps.

Enum: 20 50 100
service_period
required
integer (ServicePeriod)
Enum: 12 24
resources_behind
required
boolean

Whether the cleaned traffic shall be delivered to your existing GIA circuit.

Responses
201

The order was successfully created. The order ID and Sales Record ID are returned.

400

The request was invalid because of missing and/or invalid fields.

500

There was an internal server error. This might be caused by an Insight API connection failure. This would mean the order was not created.

post/console_secure/antiddos/v1/cad/order
Request samples
application/json
{
  • "name": "Anti-DDoS October Order",
  • "insight_customer_id": "AIN001",
  • "package": "alwayson",
  • "number_of_protected_ips": [
    ],
  • "total_inbound_traffic": [
    ],
  • "total_mitigated_traffic": 50,
  • "service_period": 12,
  • "resources_behind": true
}
Response samples
application/json
{
  • "id": 1,
  • "insight_sr_id": 10211
}

Returns a single order.

Securityapi-key
Request
path Parameters
id
required
integer

ID of order to be fetched

Example: 1
Responses
200

A JSON object containing the order, plus all protected IP addresses and provisioning configurations.

404

The order was not found.

get/console_secure/antiddos/v1/cad/order/{id}
Response samples
application/json
{
  • "id": 1,
  • "name": "Anti-DDoS October Order",
  • "insight_customer_id": "AIN001",
  • "package": "alwayson",
  • "number_of_protected_ips": [
    ],
  • "total_inbound_traffic": [
    ],
  • "total_mitigated_traffic": 50,
  • "service_period": 12,
  • "resources_behind": true,
  • "status": "active",
  • "time_created": "2020-11-18T14:34:53.246Z",
  • "time_readyforprovision": "2020-11-18T14:34:53.246Z",
  • "insight_sr_id": 10211,
  • "insight_so_id": 29283,
  • "circuit_id": "ASH(IPD) CAD901787",
  • "scrubbing_centre": "ashburn_us",
  • "protected_ip_addresses": [
    ],
  • "provisioning_config_active": {
    },
  • "provisioning_config_standby": {
    },
  • "termination_site_id": 44
}

Adds the network configuration information to an existing order. This progresses its status from 'new' to 'ready for provisioning'.

Securityapi-key
Request
path Parameters
id
required
integer

ID of order to be fetched

Example: 1
Request Body schema: application/json
scrubbing_centre
string (ScrubbingCentre)

Associated Scrubbing Centre

Enum: "ashburn_us" "frankfurt_de" "hongkong_cn" "singapore_sg" "taiwan_tw"
Array of objects (ProtectedIpAddresses)

IP address prefixes that will be protected by the Anti-DDoS service.

object
object
object (BasicTerminationSite)
termination_site_id
integer

To use an existing Termination Site, specify its ID

Responses
200

The order was successfully configured. The circuit ID is returned.

400

The request was invalid because of missing and/or invalid fields.

404

The order was not found.

put/console_secure/antiddos/v1/cad/order/{id}
Request samples
application/json
{
  • "scrubbing_centre": "ashburn_us",
  • "protected_ip_addresses": [
    ],
  • "provisioning_config_active": {
    },
  • "provisioning_config_standby": {
    },
  • "termination_site": {
    },
  • "termination_site_id": 45
}
Response samples
application/json
{
  • "circuit_id": "ASH(IPD) CAD900000"
}

Place a new DNS order

Securityapi-key
Request
Request Body schema: application/json
required
resourceType
string

Type of assets to be protected:

  • mixture - IP Network
  • pureweb - Website domain
Enum: "mixture" "pureweb"
insightId
string

insight customer id

uid
string
plan
integer

plan:

  • 0: insurance
  • 1: unlimited
  • 2: mca
Enum: 0 1 2
cleanBandwidth
integer

clean bandwidth, in Mbps.

Enum: 10 20 30 40 50 60 70 80 90 100 150 200 250 300
functionVersion
integer

function:

  • 0: standard
  • 1: enhanced
Enum: 0 1
domainCount
integer multiple of 10 [ 10 .. 2000 ]
cleanQps
integer multiple of 100 [ 500 .. 100000 ]
portCount
integer multiple of 5 [ 5 .. 1000 ]
subscription
integer

service period

Enum: 1 2 3 4 5 6 12 24
autoRenewal
boolean
vendor_account
string

account UID

contactName
string

Technical Contact Name

contactEmail
string

Technical Contact Email

contactPhone
string

Technical Contact Phone

Responses
201

DNS order placed success, order ids returned

400

invalid request

500

internal server error.

post/console_secure/antiddos/v1/cad/order/dns
Request samples
application/json
{
  • "resourceType": "mixture",
  • "insightId": "string",
  • "uid": "string",
  • "plan": 0,
  • "cleanBandwidth": 10,
  • "functionVersion": 0,
  • "domainCount": 10,
  • "cleanQps": 500,
  • "portCount": 5,
  • "subscription": 1,
  • "autoRenewal": true,
  • "vendor_account": "string",
  • "contactName": "string",
  • "contactEmail": "string",
  • "contactPhone": "string"
}
Response samples
application/json
{
  • "id": 0,
  • "insight_sr_id": 10211,
  • "vendor_account": "string",
  • "vendor_reference": "string"
}

Renew a DNS order

Securityapi-key
Request
path Parameters
id
required
integer

Anti-DDoS order ID

Example: 1
Request Body schema: application/json
required
renewPeriod
integer

service period

Enum: 1 2 3 4 5 6 12 24
Responses
200

DNS order renewed success, order ids returned

400

invalid request

500

internal server error.

post/console_secure/antiddos/v1/cad/order/dns/renew/{id}
Request samples
application/json
{
  • "renewPeriod": 1
}
Response samples
application/json
{
  • "id": 0,
  • "insight_sr_id": 10211
}

Config renewal status of a DNS order

Securityapi-key
Request
path Parameters
id
required
integer

Anti-DDoS order ID

Example: 1
Request Body schema: application/json
required
autoRenewal
boolean

renewal status

Responses
200

DNS order config success

400

invalid request

500

internal server error.

post/console_secure/antiddos/v1/cad/order/dns/setRenewal/{id}
Request samples
application/json
{
  • "autoRenewal": true
}

Returns a single order from insight (billing).

Securityapi-key
Request
path Parameters
sr_id
required
integer

ID of order to be fetched

Example: 1
Responses
200

Get a sales record from Insight API.

403

Forbidden

500

Exception throw.

get/console_secure/antiddos/v1/cad/order/salesRecord/{sr_id}/billing
Response samples
application/json
{
  • "sr_id": 260149,
  • "billing_date": "2022-05-05T00:00:00Z",
  • "contract_renew_date": "2022-05-05T00:00:00Z",
  • "onetime_revenue": "1500.00",
  • "monthly_revenue": "1500.00"
}

Returns a single order from insight (service).

Securityapi-key
Request
path Parameters
sr_id
required
integer

ID of order to be fetched

Example: 1
Responses
200

Get a sales record from Insight API.

403

Forbidden

500

Exception throw.

get/console_secure/antiddos/v1/cad/order/salesRecord/{sr_id}/service
Response samples
application/json
{
  • "sr_id": 260149,
  • "prev_sr_id": null,
  • "next_sr_id": null
}

Validate fields in order form

Securityapi-key
Request
Request Body schema: application/json
name
required
string

Provided by user

insight_customer_id
required
string

Provided by JWT from Console Connect, e.g. AIN001, TAN006, IS0569, TOL, TATA. Must already be an existing customer on the Insight platform.

package
required
string (Package)
Enum: "alwayson" "ondemand"
number_of_protected_ips
required
Array of arrays (NumberOfProtectedIps) = 2 items

Number of IPv4 address prefixes to be protected. Array of minimum and maximum range.

Items Enum: [1,8] [9,16] [17,32] [33,64]
total_inbound_traffic
required
Array of arrays (TotalInboundTraffic) = 2 items

Corresponding Legitimate Traffic. Array of minimum and maximum range, in Mbps.

Items Enum: [0,50] [51,100] [101,200] [201,500] [501,1000] [1001,2000]
total_mitigated_traffic
required
integer (TotalMitigatedTraffic)

DDoS attack traffic to be mitigated, in Mbps.

Enum: 20 50 100
service_period
required
integer (ServicePeriod)
Enum: 12 24
resources_behind
required
boolean

Whether the cleaned traffic shall be delivered to your existing GIA circuit.

Responses
200

All fields submitted are valid

400

The request was invalid because of missing and/or invalid fields.

500

There was an internal server error.

post/console_secure/antiddos/v1/cad/order/validate
Request samples
application/json
{
  • "name": "Anti-DDoS October Order",
  • "insight_customer_id": "AIN001",
  • "package": "alwayson",
  • "number_of_protected_ips": [
    ],
  • "total_inbound_traffic": [
    ],
  • "total_mitigated_traffic": 50,
  • "service_period": 12,
  • "resources_behind": true
}
Response samples
application/json
{
  • "invalidFields": [
    ]
}

Returns a list of orders.

Securityapi-key
Responses
200

Array of CAD orders, with only basic fields (no IP addresses or configuration etc).

get/console_secure/antiddos/v1/cad/orders
Response samples
application/json
[
  • {
    }
]

Create a web rule

Securityapi-key
Request
path Parameters
uid
required
string

The UID of the DNS.

Example: 292733187643212169
Request Body schema: application/json
required

Request body for creating a web rule

cnameReused
required
boolean
resourceGroupId
string
domain
required
string
rsType
integer
defenseId
string
ocsp
required
integer
Enum: 0 1
required
object
required
Array of objects (Rule) non-empty
instanceIds
required
Array of strings non-empty
Responses
200

OK

500

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/{uid}/createWebRule
Request samples
application/json
{
  • "cnameReused": true,
  • "resourceGroupId": "",
  • "domain": "example.com",
  • "rsType": 0,
  • "defenseId": "",
  • "ocsp": 1,
  • "httpsExt": {
    },
  • "rules": [
    ],
  • "instanceIds": [
    ]
}
Response samples
application/json
"Unable to process request, reference id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

Modify a web rule

Securityapi-key
Request
path Parameters
uid
required
string

The UID of the DNS.

Example: 292733187643212169
Request Body schema: application/json
required
resourceGroupId
required
string
domain
required
string <uri>
required
Array of objects (ProxyType)
rsType
integer
required
object (HttpsExt)

Configuration options for HTTPS extensions.

realServers
required
Array of strings <ipv4> non-empty
ocsp
integer
Enum: 0 1
instanceIds
required
Array of strings non-empty
cnameReused
required
boolean
Responses
200

OK

500

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/{uid}/modifyWebRule
Request samples
application/json
{
  • "resourceGroupId": "",
  • "domain": "example.com",
  • "proxyTypes": [
    ],
  • "rsType": 0,
  • "httpsExt": {
    },
  • "realServers": [
    ],
  • "ocsp": 1,
  • "instanceIds": [
    ],
  • "cnameReused": true
}
Response samples
application/json
"Unable to process request, reference id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

Delete web rules by domain

Securityapi-key
Request
path Parameters
uid
required
string

The UID of the order owner.

Example: 292733187643212169
Request Body schema: application/json
required
domain
required
string

The domain name

resourceGroupId
string

The resource group ID

Responses
200

OK

500

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/{uid}/deleteWebRule
Request samples
application/json
{
  • "domain": "example.com",
  • "resourceGroupId": ""
}
Response samples
application/json
"Unable to process request, reference id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

Add a SSL certificate to a domain

Securityapi-key
Request
path Parameters
uid
required
string

DNS account uid

Example: 292733187643212169
Request Body schema: application/json
required
domain
required
string

The domain name

certName
required
string

The name of the SSL certificate. This name must be unique.

cert
required
string

The SSL certificate

key
required
string

The private key of the SSL certificate

Responses
200

OK

500

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/{uid}/associateWebCert
Request samples
application/json
{
  • "domain": "example.com",
  • "certName": "ssl_cert-20240101.crt",
  • "cert": "-----BEGIN CERTIFICATE-----MIIDhjCCAm6gAwIBAgIEImTpEzANBgkqhkiG9w0BAQsFADBbMScwJQYDVQQDDB5SZWdlcnkgU2VsZi1TaWduZWQgQ2VydGlmaWNhdGUxIzAhBgNVBAoMGlJlZ2VyeSwgaHR0cHM6Ly9yZWdlcnkuY29tMQswCQYDVQQGEwJVQTAgFw0yNDA4MTkwMDAwMDBaGA8yMTI0MDgxOTA5MzgzMVowSDEUMBIGA1UEAwwLZXhhbXBsZS5jb20xIzAhBgNVBAoMGlJlZ2VyeSwgaHR0cHM6Ly9yZWdlcnkuY29tMQswCQYDVQQGEwJVQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAI/75U1FWK4EjeYe44Y8Ay43tCPK+uSHV2Vw9Akvh0q09qOGIVcWl5AJuRaGdwFkn5GZRCLe0MRBkm4kn5jN+6QyMIZieWP0OQR//sICbTYsiofp5Na8VPTQuqTRaK5ssPOS4d54X6MYRzbsJY/arKcEEyA2q1eQkk6en+CxnQLYOK7PqHsHeOPWUGCZDO3au0dnlDAVJgJHqT6t1VsjhVAnZEsYCyGyM0IpXpHeAsVxBTWW8+ri5WxvBc27GvJHx9Gg9NJP1MLkB2gMYaxg2U04E49KZ+Ah1WMA3glv1IwnTf6C5pb3fDa0iGpcdqRZguvwm2YbqdNXszngK2HOvJUCAwEAAaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFJuzUcPaUHq5ZdTgXtVjkeFmeIXzMB8GA1UdIwQYMBaAFJuzUcPaUHq5ZdTgXtVjkeFmeIXzMA0GCSqGSIb3DQEBCwUAA4IBAQCL6rYsKb9DWutmLPNMzEeyEFiX1ab5wWHW7CU4HjZuYpqmXLjhMiKy+kSUVbbuDkkXhyegwHFROjUdcpD27Ve8humOPTORr5WZDNKNpM/RAjiBI58RV/00sKhFuwXp6fJZPy5BpLqjqs4AA9mfRu8aRow9x/ZcM8daJlxEHfsfbC6YcNod++5ORd5XwW2adXYa2Z+p/hETRPFvXnRS0rEv3mAcVsHyLkSnkOx3PfKEiUyZ5Hw6uxBvi5en9eBAbcl+9SQ9LmRmxbyL72f7oOwKtfyzlg55eNdheI1/jMcVa+3KOffyczsJHqqaOG5yz319QpPxbVOeTTpZ2rNAtE6/-----END CERTIFICATE-----",
  • "key": "-----BEGIN RSA PRIVATE KEY-----MIIEowIBAAKCAQEAj/vlTUVYrgSN5h7jhjwDLje0I8r65IdXZXD0CS+HSrT2o4YhVxaXkAm5FoZ3AWSfkZlEIt7QxEGSbiSfmM37pDIwhmJ5Y/Q5BH/+wgJtNiyKh+nk1rxU9NC6pNFormyw85Lh3nhfoxhHNuwlj9qspwQTIDarV5CSTp6f4LGdAtg4rs+oewd449ZQYJkM7dq7R2eUMBUmAkepPq3VWyOFUCdkSxgLIbIzQilekd4CxXEFNZbz6uLlbG8Fzbsa8kfH0aD00k/UwuQHaAxhrGDZTTgTj0pn4CHVYwDeCW/UjCdN/oLmlvd8NrSIalx2pFmC6/CbZhup01ezOeArYc68lQIDAQABAoIBADASyR0zFahIcf5O+uWTPPad96HpwDo0LAx9GaXFfjUF1cGEY7ZZnzIi5O7t52cKKzLoSvUfkvGr+RGYXccdozLP5R7BW0lxveXQPIWXXNJ1La2yfMrrp6vz0xV7q6ltNemldY+bfkcMsJ5YWzQ8LWA4PpCHYE8EwKzKTpQtiUBs4RAQWcXfEkVNOBKne3BPk5YWngCwuQMQYURODEMMZhHkqXD03Ag0LAf+U+bILSrJ9EmRyj8ctak+adftQqg9yUhhdSSO147x7g2pKPhCH6ogI5ogXka4zW1r0TSUlOp9wZFTh0xC6wn/EbNGIAtQyLqUIXRvu1ZPg4T75p/yJMMCgYEA7BI0imbN5laOPQFIrG+nk7Uc3Eu/8PjegsSGI+uajfxav/03j/j5u+mt7iMektHJqBQ2l6/hxdqVqadLKC7tOKoiXPyojfVTLDw1OfnUC3Af6DWBTXipW/ME5rZGTwsKlPNPR9l45fVEiM5i2HttoE5ttk7OQnmjqPDNPZXPwo8CgYEAnCOSLNvLdMvGHtPW0zsxAkoZNJqNzPGrCY9bQ2DkMM8PtGC1mN5wVjYHduatX8KeyAn+ib4CO0e+i0Dz5hY4m3jF7Ig1pR07oEyFKg5Lo7a2BsN+46ZoEHHP9Rjp2QCBNsaqYQjHCCZsH6lcd89aXKiyk0hGFqFJpeMh36L1EJsCgYEAmT6MKtfni0He3c0qjv2ALAti68Kkm9oCH6NRbJnx33/UrVLEMcqu2wQrqy3TF/3lSR2t/rPm/NgTVWlLCY/E4IbY/cHp7RU2471F1BfQRYiIveWVxWOxlQXhxZ7Hb2I8gUqcyYhryeN4lNJdKiidlnWzFKh9jnuF+RIwOW05zBMCgYB+kMb43eH6dwPOEWHeL+j2NiJgZbf0HSHLygzsfSn79pyAVrRdilH9UCaU10BKk3QqKw/Nj9w3OVzXfHs4U2Lng+rMZU023o9qzRxUjun5dy3uJaJB3q4URm2P+/XzFVmokTmjFn5fuOWEdMCjzc0ttwGqKbfGuE7+zTK0GWAVaQKBgFY4nwDvjICXbCKYF8sXwo733KnXuK6hjaW83QHOkAGvYepEHtGw/JRRDT037etcwEyDnJQt8+9GIhrkCzI6yL423y7/koVQoOKd4pE9ASa+Za8ZOKExVXOUw0i86314CnCfc0VjutnlPGZnWPTMGj4zpqjXij/KitX8+xTB/ZJL-----END RSA PRIVATE KEY-----"
}
Response samples
application/json
"Unable to process request, reference id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

Update TLS for a domain

Securityapi-key
Request
path Parameters
uid
required
string

DNS account uid

Example: 292733187643212169
Request Body schema: application/json
resourceGroupId
required
string
domain
required
string <url>
required
object
Responses
200

OK

500

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/{uid}/modifyTlsConfig
Request samples
application/json
{
  • "resourceGroupId": "",
  • "domain": "example.com",
  • "config": {
    }
}
Response samples
application/json
"Unable to process request, reference id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

Configure L7 Rs Policy

Securityapi-key
Request
path Parameters
uid
required
string

DNS account uid

Example: 292733187643212169
Request Body schema: application/json

Load Balancer Configuration Request

resourceGroupId
string
domain
string
object
Responses
200

Successful response

500

Error message with a camunda process instance id

post/console_secure/antiddos/v1/cad/config/dns/{uid}/configL7RsPolicy
Request samples
application/json
{
  • "resourceGroupId": "",
  • "domain": "example.com",
  • "policy": {
    }
}

Get current L7 Rs Policy settings (A.K.A back to origin settings)

Securityapi-key
Request
path Parameters
uid
required
string

DNS account uid

Example: 292733187643212169
Request Body schema: application/json
required

Load Balancer Configuration Request

domain
string
Array of strings or Array of strings
resourceGroupId
string
Responses
200

Successful response

500

Error message with a camunda process instance id

post/console_secure/antiddos/v1/cad/config/dns/{uid}/describeL7RsPolicy
Request samples
application/json
{
  • "domain": "example.io",
  • "realServers": [
    ],
  • "resourceGroupId": ""
}

Retrieve DNS instances

Get a list of DNS instances with pagination

Securityapi-key
Request
query Parameters
uid
string

Unique ID for filtering instances

Example: uid=292733187643212169
Responses
200

Successful response with a list of DNS instances

400

Bad Request - Invalid input parameters

500

Internal Server Error

get/console_secure/antiddos/v1/cad/config/dns/instance
Response samples
application/json
[
  • {
    }
]

Retrieve details of a single DNS instance

Securityapi-key
Request
path Parameters
instanceId
required
string

The instanceId of DNS instance

Example: ddos-a2dc76e8-bb13-4dab-91f9-28fafd4fc07f
Responses
200

Successful response with a list of DNS instances

400

Bad Request - Invalid input parameters

500

Internal Server Error

get/console_secure/antiddos/v1/cad/config/dns/instance/detail/{instanceId}
Response samples
application/json
{
  • "id": 3522,
  • "circuit_id": "HKG(ABB) MPR948521",
  • "function": "standard",
  • "insight_customer_id": "ETT001",
  • "insight_sr_id": "123141",
  • "link": {
    },
  • "name": "Some DNS Instance",
  • "package": "alwayson",
  • "provider": "dns",
  • "resource_type": "pureweb",
  • "status": "active",
  • "synonym": "real-reseller",
  • "vendor_account": "292733187643212169",
  • "vendor_reference": "ddos-7e072ab2-de5a-46a9-a597-e8c322bcc53f"
}

Search for port config rules

Securityapi-key
Request
query Parameters
uid
required
string
Example: uid=292733187643212160
instanceId
string
Example: instanceId=ddos-5a46f0ed-77b8-45a4-a376-0fba87eec6cc
page
integer
Example: page=1
size
integer
Example: size=10
Responses
200

List of port config rules

400

Invalid request

get/console_secure/antiddos/v1/cad/config/dns/network/rules
Response samples
application/json
{
  • "data": [
    ],
  • "total": 1,
  • "page": 1,
  • "size": 10
}

Create a new port config rule

Securityapi-key
Request
path Parameters
uid
required
string

DNS account UID

Example: 292733187643212169
Request Body schema: application/json
required
protocol
required
string
Enum: "tcp" "udp"
frontendPort
required
integer [ 0 .. 65535 ]
backendPort
required
integer [ 0 .. 65535 ]
realServers
required
Array of strings <ipv4>
uid
required
string
instanceId
required
string
Responses
200

Created successfully

400

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/network/rules/{uid}/createNetworkRules
Request samples
application/json
{
  • "protocol": "tcp",
  • "frontendPort": 8210,
  • "backendPort": 8210,
  • "realServers": [
    ],
  • "uid": "292733187643212169",
  • "instanceId": "ddos-7de04971-3fc4-422f-8e3a-eb8fd44e812a"
}

Edit a port config rule

Securityapi-key
Request
path Parameters
uid
required
string

DNS account UID

Example: 292733187643212169
Request Body schema: application/json
required
protocol
required
string
Enum: "tcp" "udp"
frontendPort
required
integer [ 0 .. 65535 ]
backendPort
required
integer [ 0 .. 65535 ]
realServers
required
Array of strings <ipv4>
uid
required
string
instanceId
required
string
Responses
200

Edited successfully

400

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/network/rules/{uid}/configNetworkRules
Request samples
application/json
{
  • "protocol": "tcp",
  • "frontendPort": 8210,
  • "backendPort": 8210,
  • "realServers": [
    ],
  • "uid": "292733187643212169",
  • "instanceId": "ddos-7de04971-3fc4-422f-8e3a-eb8fd44e812a"
}

Delete a port config rule

Securityapi-key
Request
path Parameters
uid
required
string

DNS account UID

Example: 292733187643212169
Request Body schema: application/json
required
protocol
required
string
Enum: "tcp" "udp"
frontendPort
required
integer [ 0 .. 65535 ]
backendPort
required
integer [ 0 .. 65535 ]
realServers
required
Array of strings <ipv4>
uid
required
string
instanceId
required
string
Responses
200

Deleted successfully

400

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/network/rules/{uid}/deleteNetworkRule
Request samples
application/json
{
  • "protocol": "tcp",
  • "frontendPort": 8210,
  • "backendPort": 8210,
  • "realServers": [
    ],
  • "uid": "292733187643212169",
  • "instanceId": "ddos-7de04971-3fc4-422f-8e3a-eb8fd44e812a"
}

Configure Health Check

Securityapi-key
Request
path Parameters
uid
required
string

DNS account UID

Example: 292733187643212169
Request Body schema: application/json
required
forwardProtocol
required
string
Enum: "tcp" "udp"
frontendPort
required
integer [ 0 .. 65535 ]
object
instanceId
required
string
uid
required
string
Responses
200

Configured successfully

400

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/network/rules/{uid}/modifyHealthCheckConfig
Request samples
application/json
{
  • "forwardProtocol": "tcp",
  • "frontendPort": 8080,
  • "healthCheck": {
    },
  • "instanceId": "ddos-25d832be-05c0-4d31-be38-e880f6d64e12",
  • "uid": 292733187643212160
}

Configure Session Persistence

Securityapi-key
Request
path Parameters
uid
required
string

DNS account UID

Example: 292733187643212169
Request Body schema: application/json
required
instanceId
required
string
forwardProtocol
required
string
Enum: "tcp" "udp"
frontendPort
required
integer [ 0 .. 65535 ]
object
uid
required
string
Responses
200

Configurated successfully

400

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/network/protect/{uid}/modifyNetworkRuleAttribute
Request samples
application/json
{
  • "instanceId": "ddos-6856bb46-90f4-436f-9533-3aef8a8f33db",
  • "forwardProtocol": "tcp",
  • "frontendPort": 8080,
  • "config": {
    },
  • "uid": "292733187643212169"
}

View Session Persistence

Securityapi-key
Request
path Parameters
uid
required
string

DNS account UID

Example: 292733187643212169
Request Body schema: application/json
required
instanceId
required
string
protocol
required
string
Enum: "tcp" "udp"
frontendPort
required
integer [ 0 .. 65535 ]
uid
string
Responses
200

Session Persistence Detail

400

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/network/protect/{uid}/describeNetworkRuleAttributes
Request samples
application/json
{
  • "instanceId": "ddos-6856bb46-90f4-436f-9578-3a338a8f33db",
  • "protocol": "tcp",
  • "frontendPort": 8080,
  • "uid": "292733187643212169"
}
Response samples
application/json
{
  • "code": 200,
  • "data": {
    }
}

View Back to Origin

Securityapi-key
Request
path Parameters
uid
required
string

DNS account UID

Example: 292733187643212169
Request Body schema: application/json
required
instanceId
required
string
protocol
required
string
Enum: "tcp" "udp"
frontendPort
required
integer [ 0 .. 65535 ]
uid
required
string
Responses
200

Back to Origin Detail

400

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/network/protect/{uid}/describeLayer4RulePolicy
Request samples
application/json
{
  • "instanceId": "ddos-6856bb46-90f4-436f-9578-3aef8a8f3312",
  • "protocol": "tcp",
  • "frontendPort": 8080,
  • "uid": "292733187643212169"
}
Response samples
application/json
{
  • "code": 200,
  • "data": {
    }
}

View Health Check

Securityapi-key
Request
path Parameters
uid
required
string

DNS account UID

Example: 292733187643212169
Request Body schema: application/json
required
instanceId
required
string
protocol
required
string
Enum: "tcp" "udp"
frontendPort
required
integer [ 0 .. 65535 ]
uid
required
string
Responses
200

Health Check Detail

400

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/network/protect/{uid}/describeHealthCheckList
Request samples
application/json
{
  • "instanceId": "ddos-6856bb46-90f4-436f-9578-3aef8a8f3312",
  • "protocol": "tcp",
  • "frontendPort": 8080,
  • "uid": "292733187643212169"
}
Response samples
application/json
{
  • "code": 0,
  • "data": {
    }
}

Config Back-to-origin Settings

Securityapi-key
Request
path Parameters
uid
required
string

DNS account uid

Example: 292733187643212169
Request Body schema: application/json
required
uid
required
string
instanceId
required
string
bakMode
required
integer
Enum: 0 1
protocol
required
string
Enum: "tcp" "udp"
frontendPort
required
integer [ 0 .. 65535 ]
backendPort
integer [ 0 .. 65535 ]
currentRsIndex
integer
Enum: 1 2
priRealServer
string
secRealServer
string
Responses
200

Configured successfully

400

Invalid request

post/console_secure/antiddos/v1/cad/config/dns/network/protect/{uid}/configLayer4RuleBakModePolicy
Request samples
application/json
{
  • "uid": 292733187643212160,
  • "instanceId": "ddos-25d832be-05c0-4d31-be38-e880f6d64e12",
  • "bakMode": 1,
  • "protocol": "tcp",
  • "frontendPort": 80,
  • "backendPort": 80,
  • "currentRsIndex": 1,
  • "priRealServer": "121.70.168.58",
  • "secRealServer": "121.70.168.58"
}

Retrieve Network Diagram

Securityapi-key
Request
path Parameters
uid
required
string

The DNS UID.

Example: 292733182391123140
query Parameters
instanceId
required
string

The instance ID

Example: instanceId=ddos-dummy
domain
string

The domain, e.g., www.example.com.

Example: domain=example.com
Responses
200

Successful response, HTML string content.

500

Internal Server Error

get/console_secure/antiddos/v1/cad/config/dns/{uid}/network-diagram.yaml
Response samples
application/json
"<html>...</html>"

Describe Domain Overview

Retrieve a domain overview data for Anti-DDoS service.

Securityapi-key
Request
Request Body schema: application/json
required
companyIds
required
Array of strings
domains
required
Array of strings

List of domains to query

startTime
required
string <date-time>

Start time for the report

endTime
required
string <date-time>

End time for the report

interval
required
integer

Time interval in seconds

region
required
string

Region to filter the data

queryType
required
string
uid
required
string
pageSize
required
integer
pageNumber
required
integer
Responses
200

Successful response

400

Bad Request - Invalid input parameters

404

Not Found - Domain not found

post/v1/cad/report/dns/describeDomainOverview:
Request samples
application/json
{
  • "companyIds": [
    ],
  • "domains": [
    ],
  • "startTime": "2023-08-06T02:00:00.000Z",
  • "endTime": "2023-09-06T02:00:00.000Z",
  • "interval": 21600,
  • "region": "eu-west-1",
  • "queryType": "",
  • "uid": "123456789",
  • "pageSize": 10,
  • "pageNumber": 0
}
Response samples
application/json
{
  • "code": 200,
  • "data": {
    }
}

Describe Domain Status Code List

Retrieve a list of domain status code data for Anti-DDoS service.

Securityapi-key
Request
Request Body schema: application/json
required

Request body for describing domain status codes

companyIds
required
Array of strings
domains
required
Array of strings

List of domains to query

startTime
required
string <date-time>

Start time for the report

endTime
required
string <date-time>

End time for the report

interval
required
integer

Time interval in seconds

region
required
string

Region to filter the data

queryType
required
string
uid
required
string
pageSize
required
integer
pageNumber
required
integer
Responses
200

Successful response

400

Bad Request - Invalid input parameters

404

Not Found - Domain not found

post/v1/cad/report/dns/describeDomainStatusCodeList
Request samples
application/json
{
  • "companyIds": [
    ],
  • "domains": [
    ],
  • "startTime": "2023-08-06T02:00:00.000Z",
  • "endTime": "2023-09-06T02:00:00.000Z",
  • "interval": 21600,
  • "region": "eu-west-1",
  • "queryType": "",
  • "uid": "123456789",
  • "pageSize": 10,
  • "pageNumber": 0
}
Response samples
application/json
{
  • "code": 200,
  • "data": {
    }
}

Describe domain QPS List

Retrieve DNS Domain QPS Report

Securityapi-key
Request
Request Body schema: application/json
required
companyIds
required
Array of strings
domains
required
Array of strings

List of domains to query

startTime
required
string <date-time>

Start time for the report

endTime
required
string <date-time>

End time for the report

interval
required
integer

Time interval in seconds

region
required
string

Region to filter the data

queryType
required
string
uid
required
string
Responses
200

Successful response

400

Bad Request

401

Unauthorized

404

Not Found

post/v1/cad/report/dns/describeDomainQPSList
Request samples
application/json
{
  • "companyIds": [
    ],
  • "domains": [
    ],
  • "startTime": "2023-08-06T02:00:00.000Z",
  • "endTime": "2023-09-06T02:00:00.000Z",
  • "interval": 21600,
  • "region": "eu-west-1",
  • "queryType": "",
  • "uid": "123456789"
}
Response samples
application/json
{
  • "code": 200,
  • "data": {
    }
}

Describe Domain Attack Events

Securityapi-key
Request
Request Body schema: application/json
required

Request body for Describe Domain Attack Events

companyIds
required
Array of strings
domains
required
Array of strings

List of domains to query

startTime
required
string <date-time>

Start time for the report

endTime
required
string <date-time>

End time for the report

interval
required
integer

Time interval in seconds

region
required
string

Region to filter the data

queryType
required
string
uid
required
string
pageSize
required
integer
pageNumber
required
integer
Responses
200

Successful response

400

Bad Request - Invalid input parameters

404

Not Found - Domain not found

post/v1/cad/report/describeDomainAttackEvents
Request samples
application/json
{
  • "companyIds": [
    ],
  • "domains": [
    ],
  • "startTime": "2023-08-06T02:00:00.000Z",
  • "endTime": "2023-09-06T02:00:00.000Z",
  • "interval": 21600,
  • "region": "eu-west-1",
  • "queryType": "",
  • "uid": "123456789",
  • "pageSize": 10,
  • "pageNumber": 0
}
Response samples
application/json
{
  • "code": 200,
  • "data": {
    }
}

Retrieve signed company information based on the user's Insight reference ID

This endpoint retrieves signed company information for a specific Insight ID provided by the identity API.

Securityapi-key
Responses
200

A successful response containing the signed company information.

404

The requested company information could not be found.

500

An internal server error occurred.

get/v1/cad/identity/signedCompany
Response samples
application/json
{
  • "id": "123e4567-e89b-12d3-a456-426614174000",
  • "country": "US",
  • "insightId": 987654,
  • "companyName": "Tech Innovators Inc.",
  • "address": "1234 Silicon Valley Blvd, San Francisco, CA 94107",
  • "deleted_at": "2024-08-30T16:45:30Z",
  • "created_at": "2023-03-30T16:45:30Z",
  • "updated_at": "2024-07-30T16:45:30Z"
}