curl --request POST \
--url https://api.example.com/api/registry/versions/{version_id}/discover \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/registry/versions/{version_id}/discover"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/registry/versions/{version_id}/discover', 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.example.com/api/registry/versions/{version_id}/discover",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.example.com/api/registry/versions/{version_id}/discover"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/registry/versions/{version_id}/discover")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/registry/versions/{version_id}/discover")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"kind": "agent",
"scope": "personal",
"name": "<string>",
"display_name": "<string>",
"description": "<string>",
"owner_id": "<string>",
"is_system": true,
"updated_at": "2023-11-07T05:31:56Z",
"versions": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"artifact_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": "<string>",
"status": "draft",
"spec": {},
"changelog": "<string>",
"created_by": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"submitted_by": "<string>",
"submitted_at": "2023-11-07T05:31:56Z",
"reviewed_by": "<string>",
"reviewed_at": "2023-11-07T05:31:56Z",
"review_reason": "<string>",
"deprecated_at": "2023-11-07T05:31:56Z",
"withdrawn_at": "2023-11-07T05:31:56Z",
"withdrawn_reason": "<string>",
"promoted_from_version_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"used_in_templates": 0
}
],
"parent_artifact_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"promoted_from_artifact_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"latest_version": "<string>",
"latest_status": "draft",
"latest_approved_version": "<string>",
"has_draft": false,
"used_in_templates": 0,
"used_in_agents": 123,
"write": true,
"needs_sign_off": true,
"sensitivity": "<string>",
"health": "ok",
"can_use": true
}{
"error": "<string>",
"code": 500
}{
"error": "<string>",
"code": 500
}{
"error": "<string>",
"code": 500
}{
"error": "<string>",
"code": 500
}Refresh tool discovery
Discover a server’s tools again. A draft is refreshed in place; for any other version a new draft version is created.
curl --request POST \
--url https://api.example.com/api/registry/versions/{version_id}/discover \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/registry/versions/{version_id}/discover"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/registry/versions/{version_id}/discover', 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.example.com/api/registry/versions/{version_id}/discover",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.example.com/api/registry/versions/{version_id}/discover"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/registry/versions/{version_id}/discover")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/registry/versions/{version_id}/discover")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"kind": "agent",
"scope": "personal",
"name": "<string>",
"display_name": "<string>",
"description": "<string>",
"owner_id": "<string>",
"is_system": true,
"updated_at": "2023-11-07T05:31:56Z",
"versions": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"artifact_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": "<string>",
"status": "draft",
"spec": {},
"changelog": "<string>",
"created_by": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"submitted_by": "<string>",
"submitted_at": "2023-11-07T05:31:56Z",
"reviewed_by": "<string>",
"reviewed_at": "2023-11-07T05:31:56Z",
"review_reason": "<string>",
"deprecated_at": "2023-11-07T05:31:56Z",
"withdrawn_at": "2023-11-07T05:31:56Z",
"withdrawn_reason": "<string>",
"promoted_from_version_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"used_in_templates": 0
}
],
"parent_artifact_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"promoted_from_artifact_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"latest_version": "<string>",
"latest_status": "draft",
"latest_approved_version": "<string>",
"has_draft": false,
"used_in_templates": 0,
"used_in_agents": 123,
"write": true,
"needs_sign_off": true,
"sensitivity": "<string>",
"health": "ok",
"can_use": true
}{
"error": "<string>",
"code": 500
}{
"error": "<string>",
"code": 500
}{
"error": "<string>",
"code": 500
}{
"error": "<string>",
"code": 500
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Path Parameters
The version's ID.
Response
Successful Response
An artifact with all its versions.
What an artifact is.
agent, skill, mcp_server, tool, context_pack, ontology, prompt, workflow, brand, code_repo Who an artifact is for. tenant is shown as "Global".
personal, tenant Show child attributes
Show child attributes
Newest version of any status.
Lifecycle of one version.
draft, submitted, approved, rejected, deprecated, withdrawn Context packs only: visible agents whose newest version loads it.
Tools only: effective write flag.
Tools only: a write tool not yet signed off.
Context packs only: the newest approved version's effective sensitivity.
Context packs only: whether its items resolve.
ok, stale, broken False: you are limited and it is given to you to view only.
Was this page helpful?

