curl --request DELETE \
--url https://api.arize.com/v2/datasets/{dataset_id}/tags \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tag_ids": [
"VGFnOjEyMzQ1",
"VGFnOjEyMzQ2"
]
}
'import requests
url = "https://api.arize.com/v2/datasets/{dataset_id}/tags"
payload = { "tag_ids": ["VGFnOjEyMzQ1", "VGFnOjEyMzQ2"] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.delete(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({tag_ids: ['VGFnOjEyMzQ1', 'VGFnOjEyMzQ2']})
};
fetch('https://api.arize.com/v2/datasets/{dataset_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.arize.com/v2/datasets/{dataset_id}/tags",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => json_encode([
'tag_ids' => [
'VGFnOjEyMzQ1',
'VGFnOjEyMzQ2'
]
]),
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://api.arize.com/v2/datasets/{dataset_id}/tags"
payload := strings.NewReader("{\n \"tag_ids\": [\n \"VGFnOjEyMzQ1\",\n \"VGFnOjEyMzQ2\"\n ]\n}")
req, _ := http.NewRequest("DELETE", 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.delete("https://api.arize.com/v2/datasets/{dataset_id}/tags")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"tag_ids\": [\n \"VGFnOjEyMzQ1\",\n \"VGFnOjEyMzQ2\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.arize.com/v2/datasets/{dataset_id}/tags")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"tag_ids\": [\n \"VGFnOjEyMzQ1\",\n \"VGFnOjEyMzQ2\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"completed": false,
"deleted": [
"VGFnOjEyMzQ1"
],
"not_deleted": [
"VGFnOjEyMzQ2"
]
}{
"status": 400,
"title": "Invalid request parameters",
"detail": "The 'name' field is required and must be a non-empty string.",
"instance": "/resource",
"type": "https://arize.com/docs/ax/rest-reference/errors#invalid-request"
}{
"status": 401,
"title": "Authentication required",
"detail": "You must be authenticated to access this resource.",
"instance": "/resource",
"type": "https://arize.com/docs/ax/rest-reference/errors#authentication-required"
}{
"status": 403,
"title": "Access forbidden",
"detail": "You do not have permission to access this resource.",
"instance": "/resource/12345",
"type": "https://arize.com/docs/ax/rest-reference/errors#access-forbidden"
}{
"status": 404,
"title": "Resource not found",
"detail": "The requested resource with ID '12345' was not found.",
"instance": "/resource/12345",
"type": "https://arize.com/docs/ax/rest-reference/errors#resource-not-found"
}{
"status": 422,
"title": "Unprocessable Entity",
"detail": "One or more fields failed validation.",
"instance": "/resource/12345",
"type": "https://arize.com/docs/ax/rest-reference/errors#unprocessable-entity"
}{
"status": 429,
"title": "Rate limit exceeded",
"detail": "You have exceeded the allowed number of requests. Please try again later.",
"instance": "/resource",
"type": "https://arize.com/docs/ax/rest-reference/errors#rate-limit-exceeded"
}Detach tags from a dataset
Detach one or more tags from a dataset.
Payload Requirements
tag_idsis required and must contain between 1 and 100 tag IDs.- A tag ID that is not currently attached is reported in
not_deletedrather than causing the whole request to fail. - Unrecognized fields are rejected with
400.
Returns a 200 with completed, deleted, and not_deleted for the
requested tag IDs.
Valid example
{
"tag_ids": ["VGFnOjEyMzQ1", "VGFnOjEyMzQ2"]
}
Invalid example (empty list)
{
"tag_ids": []
}
{
"type": "https://arize.com/docs/ax/rest-reference/errors#validation-error",
"title": "Unprocessable Entity",
"status": 422,
"detail": "tag_ids must contain at least 1 tag ID",
"request_id": "req_01HZY6X8E7"
}
curl --request DELETE \
--url https://api.arize.com/v2/datasets/{dataset_id}/tags \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tag_ids": [
"VGFnOjEyMzQ1",
"VGFnOjEyMzQ2"
]
}
'import requests
url = "https://api.arize.com/v2/datasets/{dataset_id}/tags"
payload = { "tag_ids": ["VGFnOjEyMzQ1", "VGFnOjEyMzQ2"] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.delete(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({tag_ids: ['VGFnOjEyMzQ1', 'VGFnOjEyMzQ2']})
};
fetch('https://api.arize.com/v2/datasets/{dataset_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.arize.com/v2/datasets/{dataset_id}/tags",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => json_encode([
'tag_ids' => [
'VGFnOjEyMzQ1',
'VGFnOjEyMzQ2'
]
]),
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://api.arize.com/v2/datasets/{dataset_id}/tags"
payload := strings.NewReader("{\n \"tag_ids\": [\n \"VGFnOjEyMzQ1\",\n \"VGFnOjEyMzQ2\"\n ]\n}")
req, _ := http.NewRequest("DELETE", 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.delete("https://api.arize.com/v2/datasets/{dataset_id}/tags")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"tag_ids\": [\n \"VGFnOjEyMzQ1\",\n \"VGFnOjEyMzQ2\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.arize.com/v2/datasets/{dataset_id}/tags")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"tag_ids\": [\n \"VGFnOjEyMzQ1\",\n \"VGFnOjEyMzQ2\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"completed": false,
"deleted": [
"VGFnOjEyMzQ1"
],
"not_deleted": [
"VGFnOjEyMzQ2"
]
}{
"status": 400,
"title": "Invalid request parameters",
"detail": "The 'name' field is required and must be a non-empty string.",
"instance": "/resource",
"type": "https://arize.com/docs/ax/rest-reference/errors#invalid-request"
}{
"status": 401,
"title": "Authentication required",
"detail": "You must be authenticated to access this resource.",
"instance": "/resource",
"type": "https://arize.com/docs/ax/rest-reference/errors#authentication-required"
}{
"status": 403,
"title": "Access forbidden",
"detail": "You do not have permission to access this resource.",
"instance": "/resource/12345",
"type": "https://arize.com/docs/ax/rest-reference/errors#access-forbidden"
}{
"status": 404,
"title": "Resource not found",
"detail": "The requested resource with ID '12345' was not found.",
"instance": "/resource/12345",
"type": "https://arize.com/docs/ax/rest-reference/errors#resource-not-found"
}{
"status": 422,
"title": "Unprocessable Entity",
"detail": "One or more fields failed validation.",
"instance": "/resource/12345",
"type": "https://arize.com/docs/ax/rest-reference/errors#unprocessable-entity"
}{
"status": 429,
"title": "Rate limit exceeded",
"detail": "You have exceeded the allowed number of requests. Please try again later.",
"instance": "/resource",
"type": "https://arize.com/docs/ax/rest-reference/errors#rate-limit-exceeded"
}Authorizations
Most Arize AI endpoints require authentication. For those endpoints that require authentication, include your API key in the request header using the format
Path Parameters
The unique dataset identifier (base64) A universally unique identifier (base64-encoded opaque string).
"RW50aXR5OjEyMzQ1"
Body
Body containing the IDs of the tags to detach from the resource
IDs of the tags to detach. Up to 100 per request. An ID that is not
currently attached is reported in not_deleted rather than causing
the whole request to fail, so the same request can be retried
safely.
1 - 100 elementsA universally unique identifier (base64-encoded opaque string).
Response
Reports which tags were detached and which were not attached
True when every requested tag ID was attached and has been detached.
False when one or more requested IDs appear in not_deleted.
IDs of the tags that were attached and have been detached.
A universally unique identifier (base64-encoded opaque string).
IDs from the request that were not attached to the resource. Not an error — detaching an already-detached tag is a no-op.
A universally unique identifier (base64-encoded opaque string).
Was this page helpful?