Update Asset Group Tag Selector
curl --request PATCH \
--url https://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"id": 123,
"asset_group_tag_id": 123,
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"updated_by": "<string>",
"disabled_at": "2023-11-07T05:31:56Z",
"disabled_by": "<string>",
"name": "<string>",
"description": "<string>",
"is_default": true,
"allow_disable": true,
"seeds": [
{
"value": "<string>"
}
],
"disabled": true
}
'import requests
url = "https://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}"
payload = {
"id": 123,
"asset_group_tag_id": 123,
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"updated_by": "<string>",
"disabled_at": "2023-11-07T05:31:56Z",
"disabled_by": "<string>",
"name": "<string>",
"description": "<string>",
"is_default": True,
"allow_disable": True,
"seeds": [{ "value": "<string>" }],
"disabled": True
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
id: 123,
asset_group_tag_id: 123,
created_at: '2023-11-07T05:31:56Z',
created_by: '<string>',
updated_at: '2023-11-07T05:31:56Z',
updated_by: '<string>',
disabled_at: '2023-11-07T05:31:56Z',
disabled_by: '<string>',
name: '<string>',
description: '<string>',
is_default: true,
allow_disable: true,
seeds: [{value: '<string>'}],
disabled: true
})
};
fetch('https://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}', 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://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'id' => 123,
'asset_group_tag_id' => 123,
'created_at' => '2023-11-07T05:31:56Z',
'created_by' => '<string>',
'updated_at' => '2023-11-07T05:31:56Z',
'updated_by' => '<string>',
'disabled_at' => '2023-11-07T05:31:56Z',
'disabled_by' => '<string>',
'name' => '<string>',
'description' => '<string>',
'is_default' => true,
'allow_disable' => true,
'seeds' => [
[
'value' => '<string>'
]
],
'disabled' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}"
payload := strings.NewReader("{\n \"id\": 123,\n \"asset_group_tag_id\": 123,\n \"created_at\": \"2023-11-07T05:31:56Z\",\n \"created_by\": \"<string>\",\n \"updated_at\": \"2023-11-07T05:31:56Z\",\n \"updated_by\": \"<string>\",\n \"disabled_at\": \"2023-11-07T05:31:56Z\",\n \"disabled_by\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_default\": true,\n \"allow_disable\": true,\n \"seeds\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"disabled\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"id\": 123,\n \"asset_group_tag_id\": 123,\n \"created_at\": \"2023-11-07T05:31:56Z\",\n \"created_by\": \"<string>\",\n \"updated_at\": \"2023-11-07T05:31:56Z\",\n \"updated_by\": \"<string>\",\n \"disabled_at\": \"2023-11-07T05:31:56Z\",\n \"disabled_by\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_default\": true,\n \"allow_disable\": true,\n \"seeds\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"disabled\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"id\": 123,\n \"asset_group_tag_id\": 123,\n \"created_at\": \"2023-11-07T05:31:56Z\",\n \"created_by\": \"<string>\",\n \"updated_at\": \"2023-11-07T05:31:56Z\",\n \"updated_by\": \"<string>\",\n \"disabled_at\": \"2023-11-07T05:31:56Z\",\n \"disabled_by\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_default\": true,\n \"allow_disable\": true,\n \"seeds\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"disabled\": true\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": 123,
"asset_group_tag_id": 123,
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"updated_by": "<string>",
"disabled_at": "2023-11-07T05:31:56Z",
"disabled_by": "<string>",
"name": "<string>",
"description": "<string>",
"is_default": true,
"allow_disable": true,
"seeds": [
{
"value": "<string>"
}
]
}
}{
"http_status": 400,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "clients",
"message": "The JSON payload could not be unmarshalled."
}
]
}{
"http_status": 401,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "login",
"message": "Unauthorized"
}
]
}{
"http_status": 403,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "clients",
"message": "You do not have permission to access this resource"
}
]
}{
"http_status": 404,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "clients",
"message": "The requested client could not be found."
}
]
}{
"http_status": 429,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "middleware",
"message": "Too many requests. Please try again later."
}
]
}{
"http_status": 500,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "clients",
"message": "The request could not be handled due to an unexpected database error."
}
]
}Asset Isolation
Update Asset Group Tag Selector
Update an asset group tag selector’s properties
PATCH
/
api
/
v2
/
asset-group-tags
/
{asset_group_tag_id}
/
selectors
/
{asset_group_tag_selector_id}
Update Asset Group Tag Selector
curl --request PATCH \
--url https://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"id": 123,
"asset_group_tag_id": 123,
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"updated_by": "<string>",
"disabled_at": "2023-11-07T05:31:56Z",
"disabled_by": "<string>",
"name": "<string>",
"description": "<string>",
"is_default": true,
"allow_disable": true,
"seeds": [
{
"value": "<string>"
}
],
"disabled": true
}
'import requests
url = "https://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}"
payload = {
"id": 123,
"asset_group_tag_id": 123,
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"updated_by": "<string>",
"disabled_at": "2023-11-07T05:31:56Z",
"disabled_by": "<string>",
"name": "<string>",
"description": "<string>",
"is_default": True,
"allow_disable": True,
"seeds": [{ "value": "<string>" }],
"disabled": True
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
id: 123,
asset_group_tag_id: 123,
created_at: '2023-11-07T05:31:56Z',
created_by: '<string>',
updated_at: '2023-11-07T05:31:56Z',
updated_by: '<string>',
disabled_at: '2023-11-07T05:31:56Z',
disabled_by: '<string>',
name: '<string>',
description: '<string>',
is_default: true,
allow_disable: true,
seeds: [{value: '<string>'}],
disabled: true
})
};
fetch('https://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}', 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://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'id' => 123,
'asset_group_tag_id' => 123,
'created_at' => '2023-11-07T05:31:56Z',
'created_by' => '<string>',
'updated_at' => '2023-11-07T05:31:56Z',
'updated_by' => '<string>',
'disabled_at' => '2023-11-07T05:31:56Z',
'disabled_by' => '<string>',
'name' => '<string>',
'description' => '<string>',
'is_default' => true,
'allow_disable' => true,
'seeds' => [
[
'value' => '<string>'
]
],
'disabled' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}"
payload := strings.NewReader("{\n \"id\": 123,\n \"asset_group_tag_id\": 123,\n \"created_at\": \"2023-11-07T05:31:56Z\",\n \"created_by\": \"<string>\",\n \"updated_at\": \"2023-11-07T05:31:56Z\",\n \"updated_by\": \"<string>\",\n \"disabled_at\": \"2023-11-07T05:31:56Z\",\n \"disabled_by\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_default\": true,\n \"allow_disable\": true,\n \"seeds\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"disabled\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"id\": 123,\n \"asset_group_tag_id\": 123,\n \"created_at\": \"2023-11-07T05:31:56Z\",\n \"created_by\": \"<string>\",\n \"updated_at\": \"2023-11-07T05:31:56Z\",\n \"updated_by\": \"<string>\",\n \"disabled_at\": \"2023-11-07T05:31:56Z\",\n \"disabled_by\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_default\": true,\n \"allow_disable\": true,\n \"seeds\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"disabled\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://your-tenant.bloodhoundenterprise.io/api/v2/asset-group-tags/{asset_group_tag_id}/selectors/{asset_group_tag_selector_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"id\": 123,\n \"asset_group_tag_id\": 123,\n \"created_at\": \"2023-11-07T05:31:56Z\",\n \"created_by\": \"<string>\",\n \"updated_at\": \"2023-11-07T05:31:56Z\",\n \"updated_by\": \"<string>\",\n \"disabled_at\": \"2023-11-07T05:31:56Z\",\n \"disabled_by\": \"<string>\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_default\": true,\n \"allow_disable\": true,\n \"seeds\": [\n {\n \"value\": \"<string>\"\n }\n ],\n \"disabled\": true\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": 123,
"asset_group_tag_id": 123,
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"updated_by": "<string>",
"disabled_at": "2023-11-07T05:31:56Z",
"disabled_by": "<string>",
"name": "<string>",
"description": "<string>",
"is_default": true,
"allow_disable": true,
"seeds": [
{
"value": "<string>"
}
]
}
}{
"http_status": 400,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "clients",
"message": "The JSON payload could not be unmarshalled."
}
]
}{
"http_status": 401,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "login",
"message": "Unauthorized"
}
]
}{
"http_status": 403,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "clients",
"message": "You do not have permission to access this resource"
}
]
}{
"http_status": 404,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "clients",
"message": "The requested client could not be found."
}
]
}{
"http_status": 429,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "middleware",
"message": "Too many requests. Please try again later."
}
]
}{
"http_status": 500,
"timestamp": "2024-02-19T19:27:43.866Z",
"request_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"errors": [
{
"context": "clients",
"message": "The request could not be handled due to an unexpected database error."
}
]
}Authorizations
JWTBearerTokenSignedRequest & RequestDate & HMACSignature
Authorization: Bearer $JWT_TOKEN
Headers
Prefer header, used to specify a custom timeout in seconds using the wait parameter as per RFC7240. Passing in wait=-1 bypasses all timeout limits when the feature is enabled.
Pattern:
^wait=(-1|[0-9]+)$Path Parameters
ID of the asset_group_tag to update a selector on
Selector ID
Body
application/json
The request body for updating an asset group tag selector. At least one field must be provided in the request body. Any combination of fields from the original schema can be included, and only the fields that are provided will be updated.
An RFC-3339 formatted string
auto_certify must be an input value of 0 (Disabled), 1 (AllMembers), or 2 (SeedsOnly)
Available options:
0, 1, 2 Show child attributes
Show child attributes
Response
Updated
Show child attributes
Show child attributes
⌘I