Get firewall tags
curl --request GET \
--url https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags \
--header 'X-API-Key: <api-key>' \
--header 'X-Project-ID: <x-project-id>'import requests
url = "https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags"
headers = {
"X-Project-ID": "<x-project-id>",
"X-API-Key": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'X-Project-ID': '<x-project-id>', 'X-API-Key': '<api-key>'}
};
fetch('https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags', 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.rafftechnologies.com/api/v1/security-groups/{id}/tags",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>",
"X-Project-ID: <x-project-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Project-ID", "<x-project-id>")
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags")
.header("X-Project-ID", "<x-project-id>")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Project-ID"] = '<x-project-id>'
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"links": [
{
"tag_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tag_name": "web",
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"security_group_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"security_group_name": "web-server"
}
],
"job_counts": {
"pending": 123,
"running": 123,
"done": 123,
"failed": 123,
"conflict": 123,
"skipped": 123
}
}
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Firewall
Get firewall tags
The tags this firewall is linked to in its own project, and how far Raff is with putting the firewall on their servers (jobs of the last day, by status).
GET
/
api
/
v1
/
security-groups
/
{id}
/
tags
Get firewall tags
curl --request GET \
--url https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags \
--header 'X-API-Key: <api-key>' \
--header 'X-Project-ID: <x-project-id>'import requests
url = "https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags"
headers = {
"X-Project-ID": "<x-project-id>",
"X-API-Key": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'X-Project-ID': '<x-project-id>', 'X-API-Key': '<api-key>'}
};
fetch('https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags', 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.rafftechnologies.com/api/v1/security-groups/{id}/tags",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>",
"X-Project-ID: <x-project-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Project-ID", "<x-project-id>")
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags")
.header("X-Project-ID", "<x-project-id>")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.rafftechnologies.com/api/v1/security-groups/{id}/tags")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Project-ID"] = '<x-project-id>'
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"links": [
{
"tag_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tag_name": "web",
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"security_group_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"security_group_name": "web-server"
}
],
"job_counts": {
"pending": 123,
"running": 123,
"done": 123,
"failed": 123,
"conflict": 123,
"skipped": 123
}
}
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Updated November 10, 2026
Authorizations
API key for authentication. Each key is bound to a specific account.
Headers
Project ID. Required for all mutating operations (create, delete, power actions, resize).
Path Parameters
Security group ID (UUID).
Last modified on November 10, 2026