List Archived Nodes
curl --request GET \
--url https://api.bland.ai/v2/agents/library/archived-nodes \
--header 'authorization: <authorization>'import requests
url = "https://api.bland.ai/v2/agents/library/archived-nodes"
headers = {"authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {authorization: '<authorization>'}};
fetch('https://api.bland.ai/v2/agents/library/archived-nodes', 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.bland.ai/v2/agents/library/archived-nodes",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"authorization: <authorization>"
],
]);
$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.bland.ai/v2/agents/library/archived-nodes"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("authorization", "<authorization>")
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.bland.ai/v2/agents/library/archived-nodes")
.header("authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v2/agents/library/archived-nodes")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "ff6c62c6-33c0-49f1-ae2c-fb24e3b3a6fa",
"agent_id": "20d4a218-7083-4f3d-8ba3-4f6869345c70",
"agent_name": "Front desk",
"name": "Holiday hours",
"kind": "scenario",
"description": "Tell the caller the office is closed for the holiday and offer to take a message.",
"node": {
"id": "9a929a49-f89f-42a0-b9fb-e5c08cd6654a",
"type": "scenario",
"position": { "x": 380, "y": 260 },
"data": {
"name": "Holiday hours",
"rule": "Tell the caller the office is closed for the holiday and offer to take a message.",
"target": { "kind": "dialogue", "label": "Holiday hours" },
"loopWhile": "",
"variables": [],
"entry": {
"mode": "llm",
"label": "Asks about hours",
"description": "",
"alwaysPick": false,
"conditions": []
}
}
},
"created_at": "2026-09-09T17:02:44.318Z"
},
{
"id": "b9f03e9e-6e50-4910-aad5-d257603a289c",
"agent_id": null,
"agent_name": "Old survey bot",
"name": "Satisfaction question",
"kind": "scenario",
"description": "Ask the caller to rate their experience from 1 to 5.",
"node": {
"id": "c06bd9d6-3d58-471b-a19e-d082b2a62307",
"type": "scenario",
"position": { "x": 0, "y": 260 },
"data": {
"name": "Satisfaction question",
"rule": "Ask the caller to rate their experience from 1 to 5.",
"target": { "kind": "dialogue", "label": "Rating" },
"loopWhile": "",
"variables": [],
"entry": {
"mode": "llm",
"label": "Survey",
"description": "",
"alwaysPick": false,
"conditions": []
}
}
},
"created_at": "2026-08-30T11:45:09.006Z"
}
],
"errors": null
}
Library
List Archived Nodes
List nodes archived from your organization’s agents.
GET
/
v2
/
agents
/
library
/
archived-nodes
List Archived Nodes
curl --request GET \
--url https://api.bland.ai/v2/agents/library/archived-nodes \
--header 'authorization: <authorization>'import requests
url = "https://api.bland.ai/v2/agents/library/archived-nodes"
headers = {"authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {authorization: '<authorization>'}};
fetch('https://api.bland.ai/v2/agents/library/archived-nodes', 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.bland.ai/v2/agents/library/archived-nodes",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"authorization: <authorization>"
],
]);
$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.bland.ai/v2/agents/library/archived-nodes"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("authorization", "<authorization>")
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.bland.ai/v2/agents/library/archived-nodes")
.header("authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v2/agents/library/archived-nodes")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "ff6c62c6-33c0-49f1-ae2c-fb24e3b3a6fa",
"agent_id": "20d4a218-7083-4f3d-8ba3-4f6869345c70",
"agent_name": "Front desk",
"name": "Holiday hours",
"kind": "scenario",
"description": "Tell the caller the office is closed for the holiday and offer to take a message.",
"node": {
"id": "9a929a49-f89f-42a0-b9fb-e5c08cd6654a",
"type": "scenario",
"position": { "x": 380, "y": 260 },
"data": {
"name": "Holiday hours",
"rule": "Tell the caller the office is closed for the holiday and offer to take a message.",
"target": { "kind": "dialogue", "label": "Holiday hours" },
"loopWhile": "",
"variables": [],
"entry": {
"mode": "llm",
"label": "Asks about hours",
"description": "",
"alwaysPick": false,
"conditions": []
}
}
},
"created_at": "2026-09-09T17:02:44.318Z"
},
{
"id": "b9f03e9e-6e50-4910-aad5-d257603a289c",
"agent_id": null,
"agent_name": "Old survey bot",
"name": "Satisfaction question",
"kind": "scenario",
"description": "Ask the caller to rate their experience from 1 to 5.",
"node": {
"id": "c06bd9d6-3d58-471b-a19e-d082b2a62307",
"type": "scenario",
"position": { "x": 0, "y": 260 },
"data": {
"name": "Satisfaction question",
"rule": "Ask the caller to rate their experience from 1 to 5.",
"target": { "kind": "dialogue", "label": "Rating" },
"loopWhile": "",
"variables": [],
"entry": {
"mode": "llm",
"label": "Survey",
"description": "",
"alwaysPick": false,
"conditions": []
}
}
},
"created_at": "2026-08-30T11:45:09.006Z"
}
],
"errors": null
}
Overview
Returns the organization’s archived nodes, newest first, up to 200 entries. Each entry is a self-contained copy of a node lifted off an agent canvas with Archive Agent Node; a container node keeps its nested flow insidenode.data.flow. Remove an entry with Delete Archived Node.
Headers
string
required
Your API key for authentication.
Response
array
Array of archived node objects, most recently archived first.
Show archived node object
Show archived node object
string
Unique identifier for the archive entry.
string | null
The agent the node was archived from. May reference an agent that has since been deleted.
string | null
The source agent’s name as it was at archive time. Kept even if the agent is later renamed or deleted.
string
The node’s name at archive time, or
Untitled node when it had none.string
The archived node’s type, for example
scenario, complex-scenario, or auth-zone.string | null
The first 160 characters of the node’s rule or prompt at archive time.
null when the node had neither.object
The complete node payload (
id, type, position, data, and for containers data.flow). Re-insertable into any agent’s graph.string
ISO 8601 timestamp of when the node was archived.
null | array
null on success, or a list of error objects if the request failed.{
"data": [
{
"id": "ff6c62c6-33c0-49f1-ae2c-fb24e3b3a6fa",
"agent_id": "20d4a218-7083-4f3d-8ba3-4f6869345c70",
"agent_name": "Front desk",
"name": "Holiday hours",
"kind": "scenario",
"description": "Tell the caller the office is closed for the holiday and offer to take a message.",
"node": {
"id": "9a929a49-f89f-42a0-b9fb-e5c08cd6654a",
"type": "scenario",
"position": { "x": 380, "y": 260 },
"data": {
"name": "Holiday hours",
"rule": "Tell the caller the office is closed for the holiday and offer to take a message.",
"target": { "kind": "dialogue", "label": "Holiday hours" },
"loopWhile": "",
"variables": [],
"entry": {
"mode": "llm",
"label": "Asks about hours",
"description": "",
"alwaysPick": false,
"conditions": []
}
}
},
"created_at": "2026-09-09T17:02:44.318Z"
},
{
"id": "b9f03e9e-6e50-4910-aad5-d257603a289c",
"agent_id": null,
"agent_name": "Old survey bot",
"name": "Satisfaction question",
"kind": "scenario",
"description": "Ask the caller to rate their experience from 1 to 5.",
"node": {
"id": "c06bd9d6-3d58-471b-a19e-d082b2a62307",
"type": "scenario",
"position": { "x": 0, "y": 260 },
"data": {
"name": "Satisfaction question",
"rule": "Ask the caller to rate their experience from 1 to 5.",
"target": { "kind": "dialogue", "label": "Rating" },
"loopWhile": "",
"variables": [],
"entry": {
"mode": "llm",
"label": "Survey",
"description": "",
"alwaysPick": false,
"conditions": []
}
}
},
"created_at": "2026-08-30T11:45:09.006Z"
}
],
"errors": null
}
Docs for agents: llms.txt
Was this page helpful?