Create a Security Group
1 min
code examples curl request post \\ \ url 'https //api ionos com/cloudapi/v6/datacenters/{datacenterid}/securitygroups?pretty=true\&depth=integer%3cint32%3e' \\ \ header 'accept application/json' \\ \ header 'content type application/json' \\ \ data '{ "properties" { "name" "my security group" }, "entities" { "rules" { "type" {}, "items" \[ { "type" {}, "properties" { "protocol" "tcp" } } ] } } }'var myheaders = new headers(); myheaders append("accept", "application/json"); myheaders append("content type", "application/json"); var raw = json stringify({ "properties" { "name" "my security group" }, "entities" { "rules" { "type" {}, "items" \[ { "type" {}, "properties" { "protocol" "tcp" } } ] } } }); var requestoptions = { method 'post', headers myheaders, body raw, redirect 'follow' }; fetch("https //api ionos com/cloudapi/v6/datacenters/{datacenterid}/securitygroups?pretty=true\&depth=integer\<int32>", requestoptions) then(response => response text()) then(result => console log(result)) catch(error => console log('error', error));require "uri" require "json" require "net/http" url = uri("https //api ionos com/cloudapi/v6/datacenters/{datacenterid}/securitygroups?pretty=true\&depth=integer\<int32>") https = net http new(url host, url port) https use ssl = true request = net http post new(url) request\["accept"] = "application/json" request\["content type"] = "application/json" request body = json dump({ "properties" { "name" "my security group" }, "entities" { "rules" { "type" {}, "items" \[ { "type" {}, "properties" { "protocol" "tcp" } } ] } } }) response = https request(request) puts response read body import requests import json url = "https //api ionos com/cloudapi/v6/datacenters/{datacenterid}/securitygroups?pretty=true\&depth=integer\<int32>" payload = json dumps({ "properties" { "name" "my security group" }, "entities" { "rules" { "type" {}, "items" \[ { "type" {}, "properties" { "protocol" "tcp" } } ] } } }) headers = { 'accept' 'application/json', 'content type' 'application/json' } response = requests request("post", url, headers=headers, data=payload) print(response text) responses // accepted the request has been accepted for processing { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "metadata" { "etag" "45480eb3fbfc31f1d916c1eaa4abdcc3", "createddate" "2015 12 04t14 34 09 809z", "createdby" "user\@example com", "createdbyuserid" "user\@example com", "lastmodifieddate" "2015 12 04t14 34 09 809z", "lastmodifiedby" "user\@example com", "lastmodifiedbyuserid" "63cef532 26fe 4a64 a4e0 de7c8a506c90", "state" "available" }, "properties" { "name" "my security group", "description" "my security group description" }, "entities" { "rules" { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "items" \[ { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "metadata" { "etag" "45480eb3fbfc31f1d916c1eaa4abdcc3", "createddate" "2015 12 04t14 34 09 809z", "createdby" "user\@example com", "createdbyuserid" "user\@example com", "lastmodifieddate" "2015 12 04t14 34 09 809z", "lastmodifiedby" "user\@example com", "lastmodifiedbyuserid" "63cef532 26fe 4a64 a4e0 de7c8a506c90", "state" "available" }, "properties" { "name" "my resource", "protocol" "tcp", "sourcemac" "00 0a 95 9d 68 16", "ipversion" "ipv4", "sourceip" "22 231 113 64", "targetip" "22 231 113 64", "icmpcode" "", "icmptype" 8, "portrangestart" 8, "portrangeend" 8, "type" "ingress" } } ], "offset" 0, "limit" 1000, " links" { "prev" "\<previous page uri>", "self" "\<this page uri>", "next" "\<next page uri>" } }, "nics" { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "items" \[ { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "metadata" { "etag" "45480eb3fbfc31f1d916c1eaa4abdcc3", "createddate" "2015 12 04t14 34 09 809z", "createdby" "user\@example com", "createdbyuserid" "user\@example com", "lastmodifieddate" "2015 12 04t14 34 09 809z", "lastmodifiedby" "user\@example com", "lastmodifiedbyuserid" "63cef532 26fe 4a64 a4e0 de7c8a506c90", "state" "available" }, "properties" { "name" "my resource", "mac" "00 0a 95 9d 68 16", "ips" \[ "" ], "dhcp" true, "ipv6ips" \[ "" ], "ipv6cidrblock" "2001\ db8\ b06d 8f5a 0609 /80", "dhcpv6" true, "lan" 2, "firewallactive" false, "firewalltype" "ingress", "devicenumber" 3, "pcislot" 7, "vnet" "" }, "entities" { "flowlogs" { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "items" \[ { "" "" } ], "offset" 0, "limit" 1000, " links" { "" "" } }, "firewallrules" { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "items" \[ { "" "" } ], "offset" 0, "limit" 1000, " links" { "" "" } }, "securitygroups" { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "items" \[ { "" "" } ], "offset" 0, "limit" 1000, " links" { "" "" } } } } ], "offset" 0, "limit" 1000, " links" { "prev" "\<previous page uri>", "self" "\<this page uri>", "next" "\<next page uri>" } }, "servers" { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "items" \[ { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "metadata" { "etag" "45480eb3fbfc31f1d916c1eaa4abdcc3", "createddate" "2015 12 04t14 34 09 809z", "createdby" "user\@example com", "createdbyuserid" "user\@example com", "lastmodifieddate" "2015 12 04t14 34 09 809z", "lastmodifiedby" "user\@example com", "lastmodifiedbyuserid" "63cef532 26fe 4a64 a4e0 de7c8a506c90", "state" "available" }, "properties" { "templateuuid" "15f67991 0f51 4efc a8ad ef1fb31a480c", "name" "my resource", "hostname" "myhostname", "cores" 4, "ram" 4096, "availabilityzone" "auto", "vmstate" "running", "bootcdrom" {}, "bootvolume" {}, "cpufamily" "intel icelake", "type" "cube", "enabledfeatures" \[ "" ], "placementgroupid" "", "nicmultiqueue" true, "maxnetworkbandwidth" 6 }, "entities" { "cdroms" { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "items" \[ { "" "" } ], "offset" 0, "limit" 1000, " links" { "" "" } }, "volumes" { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "items" \[ { "" "" } ], "offset" 0, "limit" 1000, " links" { "" "" } }, "nics" { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "items" \[ { "" "" } ], "offset" 0, "limit" 1000, " links" { "" "" } }, "securitygroups" { "id" "15f67991 0f51 4efc a8ad ef1fb31a480c", "type" {}, "href" "\<resource uri>", "items" \[ { "" "" } ], "offset" 0, "limit" 1000, " links" { "" "" } }, "gpus" { "id" "25f67991 0f51 4efc a8ad ef1fb31a400c", "type" {}, "href" "\<resource uri>", "items" \[ { "" "" } ], "offset" 0, "limit" 1000, " links" { "" "" } } } } ], "offset" 0, "limit" 1000, " links" { "prev" "\<previous page uri>", "self" "\<this page uri>", "next" "\<next page uri>" } } } }// any erroneous status code 400 (parse error), 401 (auth error), 402 (trial access), 403 (insufficient privileges), 404 (not found), 405 (unsupported http method), 415 (unsupported content type), 422 (validation error), 429 (request rate limit exceeded), 500 (server error), or 503 (maintenance) { "httpstatus" 400, "messages" \[ { "errorcode" "123", "message" "error message example " } ] }