curl --request POST \
--url https://api.gcore.com/security/iaas/v2/profiles \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"profile_template": 1,
"fields": [
{
"base_field": 1,
"field_value": [
12,
54,
43
]
}
],
"site": "GNC",
"ip_address": "123.43.2.10"
}
'import requests
url = "https://api.gcore.com/security/iaas/v2/profiles"
payload = {
"profile_template": 1,
"fields": [
{
"base_field": 1,
"field_value": [12, 54, 43]
}
],
"site": "GNC",
"ip_address": "123.43.2.10"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
profile_template: 1,
fields: [{base_field: 1, field_value: [12, 54, 43]}],
site: 'GNC',
ip_address: '123.43.2.10'
})
};
fetch('https://api.gcore.com/security/iaas/v2/profiles', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gcore.com/security/iaas/v2/profiles",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'profile_template' => 1,
'fields' => [
[
'base_field' => 1,
'field_value' => [
12,
54,
43
]
]
],
'site' => 'GNC',
'ip_address' => '123.43.2.10'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.gcore.com/security/iaas/v2/profiles"
payload := strings.NewReader("{\n \"profile_template\": 1,\n \"fields\": [\n {\n \"base_field\": 1,\n \"field_value\": [\n 12,\n 54,\n 43\n ]\n }\n ],\n \"site\": \"GNC\",\n \"ip_address\": \"123.43.2.10\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.gcore.com/security/iaas/v2/profiles")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"profile_template\": 1,\n \"fields\": [\n {\n \"base_field\": 1,\n \"field_value\": [\n 12,\n 54,\n 43\n ]\n }\n ],\n \"site\": \"GNC\",\n \"ip_address\": \"123.43.2.10\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/security/iaas/v2/profiles")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"profile_template\": 1,\n \"fields\": [\n {\n \"base_field\": 1,\n \"field_value\": [\n 12,\n 54,\n 43\n ]\n }\n ],\n \"site\": \"GNC\",\n \"ip_address\": \"123.43.2.10\"\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"profile_template": {
"id": 123,
"name": "<string>",
"fields": [
{
"id": 123,
"name": "<string>",
"description": "<string>",
"required": true,
"default": "<string>",
"validation_schema": {}
}
],
"version": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created": "2023-11-07T05:31:56Z",
"description": "<string>",
"base_template": 123,
"template_sifter": "<string>"
},
"fields": [
{
"id": 123,
"name": "<string>",
"description": "<string>",
"field_type": "<string>",
"required": true,
"default": "<string>",
"base_field": 1,
"validation_schema": {},
"field_value": [
12,
54,
43
]
}
],
"site": "ED",
"options": {
"bgp": true,
"active": true,
"price": "<string>"
},
"protocols": [
{}
],
"status": {},
"plan": "<string>",
"ip_address": "10.32.5.12"
}Create profile
Create protection profile. Protection is enabled at the same time as profile is created
curl --request POST \
--url https://api.gcore.com/security/iaas/v2/profiles \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"profile_template": 1,
"fields": [
{
"base_field": 1,
"field_value": [
12,
54,
43
]
}
],
"site": "GNC",
"ip_address": "123.43.2.10"
}
'import requests
url = "https://api.gcore.com/security/iaas/v2/profiles"
payload = {
"profile_template": 1,
"fields": [
{
"base_field": 1,
"field_value": [12, 54, 43]
}
],
"site": "GNC",
"ip_address": "123.43.2.10"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
profile_template: 1,
fields: [{base_field: 1, field_value: [12, 54, 43]}],
site: 'GNC',
ip_address: '123.43.2.10'
})
};
fetch('https://api.gcore.com/security/iaas/v2/profiles', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gcore.com/security/iaas/v2/profiles",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'profile_template' => 1,
'fields' => [
[
'base_field' => 1,
'field_value' => [
12,
54,
43
]
]
],
'site' => 'GNC',
'ip_address' => '123.43.2.10'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.gcore.com/security/iaas/v2/profiles"
payload := strings.NewReader("{\n \"profile_template\": 1,\n \"fields\": [\n {\n \"base_field\": 1,\n \"field_value\": [\n 12,\n 54,\n 43\n ]\n }\n ],\n \"site\": \"GNC\",\n \"ip_address\": \"123.43.2.10\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.gcore.com/security/iaas/v2/profiles")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"profile_template\": 1,\n \"fields\": [\n {\n \"base_field\": 1,\n \"field_value\": [\n 12,\n 54,\n 43\n ]\n }\n ],\n \"site\": \"GNC\",\n \"ip_address\": \"123.43.2.10\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/security/iaas/v2/profiles")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"profile_template\": 1,\n \"fields\": [\n {\n \"base_field\": 1,\n \"field_value\": [\n 12,\n 54,\n 43\n ]\n }\n ],\n \"site\": \"GNC\",\n \"ip_address\": \"123.43.2.10\"\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"profile_template": {
"id": 123,
"name": "<string>",
"fields": [
{
"id": 123,
"name": "<string>",
"description": "<string>",
"required": true,
"default": "<string>",
"validation_schema": {}
}
],
"version": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created": "2023-11-07T05:31:56Z",
"description": "<string>",
"base_template": 123,
"template_sifter": "<string>"
},
"fields": [
{
"id": 123,
"name": "<string>",
"description": "<string>",
"field_type": "<string>",
"required": true,
"default": "<string>",
"base_field": 1,
"validation_schema": {},
"field_value": [
12,
54,
43
]
}
],
"site": "ED",
"options": {
"bgp": true,
"active": true,
"price": "<string>"
},
"protocols": [
{}
],
"status": {},
"plan": "<string>",
"ip_address": "10.32.5.12"
}Authorizations
API key for authentication. Make sure to include the word apikey, followed by a single space and then your token.
Example: apikey 1234$abcdef
Body
1
2
Show child attributes
Show child attributes
Region where the protection profiles will be deployed
"GNC"
"CC1"
"CH1"
"DRC"
"ED"
"HK2"
"DRA5"
"THN2"
"AM3"
"FR5"
"DARZ"
"LD3"
"DRF"
"DRA4"
"DC11"
"ANX"
"DC3"
"NKF"
"SY4"
"JB1"
"ASP3"
"NHN"
"DX1"
"KAL"
"NY2"
"KX"
"MI2"
"SGC"
"SG1"
"SG2"
"DA6"
"MI1"
"PA5"
"SP3"
"FRN"
"SV5"
"SCL2"
"SV4"
"TII"
"WA2"
Required for Universal template only. Optional for all others.
50"123.43.2.10"
"123.65.9.5"
Response
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Region where the protection profiles will be deployed
"ED"
"DC3"
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
50"10.32.5.12"
"195.23.43.64"
Was this page helpful?