Create cluster actions
Create one or more cluster isolation actions (terminate pod, disable outbound traffic, label pod).
Actions are queued with status Pending and applied in the cluster by the rad-sync plugin.
A single disable_outbound request creates two actions: a label_pod action applying the
quarantine labels, and a disable_outbound action creating the deny-all-egress NetworkPolicy.
curl -X POST "https://api.rad.security/accounts/example_string/clusters/example_string/actions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN"
import requests
import json
url = "https://api.rad.security/accounts/example_string/clusters/example_string/actions"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
response = requests.post(url, headers=headers)
print(response.json())
const response = await fetch("https://api.rad.security/accounts/example_string/clusters/example_string/actions", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
)
func main() {
req, err := http.NewRequest("POST", "https://api.rad.security/accounts/example_string/clusters/example_string/actions", nil)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api.rad.security/accounts/example_string/clusters/example_string/actions')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'Bearer YOUR_API_TOKEN'
response = http.request(request)
puts response.body
[
{
"id": "example_string",
"cluster_id": "example_string",
"account_id": "example_string",
"action_type": "terminate_pod",
"status": "Pending",
"target_pod_name": "John Doe",
"target_namespace": "John Doe",
"parameters": {},
"result": "example_string",
"created_by": "example_string",
"created_at": "example_string",
"updated_at": "example_string",
"deleted_at": "example_string"
}
]
{
"code": "example_string",
"request_id": "example_string",
"status": 42,
"validation_details": [
{
"code": "example_string",
"field": "example_string",
"message": "example_string",
"param": "example_string"
}
]
}
/accounts/{account_id}/clusters/{cluster_id}/actionsTarget server for requests. Edit to use your own host.
Bearer token - just enter the token, "Bearer" prefix will be added automatically
Account ID
Cluster ID
The media type of the request body
Request Preview
Response
Response will appear here after sending the request
Authentication
Bearer token. Authentication token required.
Path Parameters
Account ID
Cluster ID
Body
Raw application/json data