Get an installed Agent's public A2A v1 Agent Card
curl --request GET \
--url https://api.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.jsonimport requests
url = "https://api.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json', 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.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json"
req, _ := http.NewRequest("GET", url, nil)
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.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"name": "<string>",
"description": "<string>",
"supportedInterfaces": [],
"version": "<string>",
"capabilities": {
"streaming": true,
"pushNotifications": true,
"extensions": [
{
"uri": "<string>",
"description": "<string>",
"required": true,
"params": {}
}
],
"extendedAgentCard": true
},
"defaultInputModes": [
"<string>"
],
"defaultOutputModes": [
"<string>"
],
"skills": [],
"provider": {
"url": "<string>",
"organization": "<string>"
},
"documentationUrl": "<string>",
"securitySchemes": {},
"securityRequirements": [
{
"schemes": {}
}
],
"signatures": [
{
"protected": "<string>",
"signature": "<string>",
"header": {}
}
],
"iconUrl": "<string>"
}{
"error": {
"type": "validation.not_found",
"message": "<string>",
"more": "https://docs.checkfu.com/reference/errors#validation-not-found"
}
}{
"error": {
"type": "runtime.internal",
"message": "<string>",
"more": "https://docs.checkfu.com/reference/errors#runtime-internal"
}
}Get an installed Agent's public A2A v1 Agent Card
Projects the active AgentInstallation, SurfaceScope, exact published AgentRelease, and active Skills into an A2A v1 Agent Card. The card is public and cacheable; invoking or observing tasks still requires an audience-bound Principal credential and live PermissionAssignments.
Checkfu support posture: preview; hosted. Required evidence journey: a2a-serve. Deployment-specific readiness and the latest proven release are available from GET /v1/support/capabilities.
GET
/
a2a
/
v1
/
workspaces
/
{workspace}
/
agent-installations
/
{installation}
/
surface-scopes
/
{surface}
/
agent-card.json
Get an installed Agent's public A2A v1 Agent Card
curl --request GET \
--url https://api.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.jsonimport requests
url = "https://api.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json', 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.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json"
req, _ := http.NewRequest("GET", url, nil)
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.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.checkfu.com/a2a/v1/workspaces/{workspace}/agent-installations/{installation}/surface-scopes/{surface}/agent-card.json")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"name": "<string>",
"description": "<string>",
"supportedInterfaces": [],
"version": "<string>",
"capabilities": {
"streaming": true,
"pushNotifications": true,
"extensions": [
{
"uri": "<string>",
"description": "<string>",
"required": true,
"params": {}
}
],
"extendedAgentCard": true
},
"defaultInputModes": [
"<string>"
],
"defaultOutputModes": [
"<string>"
],
"skills": [],
"provider": {
"url": "<string>",
"organization": "<string>"
},
"documentationUrl": "<string>",
"securitySchemes": {},
"securityRequirements": [
{
"schemes": {}
}
],
"signatures": [
{
"protected": "<string>",
"signature": "<string>",
"header": {}
}
],
"iconUrl": "<string>"
}{
"error": {
"type": "validation.not_found",
"message": "<string>",
"more": "https://docs.checkfu.com/reference/errors#validation-not-found"
}
}{
"error": {
"type": "runtime.internal",
"message": "<string>",
"more": "https://docs.checkfu.com/reference/errors#runtime-internal"
}
}Path Parameters
Pattern:
^wrkspc_[0-9a-f]{32}$Pattern:
^aini_[0-9a-f]{32}$Pattern:
^surf_[0-9a-f]{32}$Response
A2A v1 Agent Card
Required string length:
1 - 1024Required string length:
1 - 16384Required string length:
1 - 1024Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Maximum string length:
2048Show child attributes
Show child attributes
Maximum array length:
32Show child attributes
Show child attributes
Maximum array length:
16Show child attributes
Show child attributes
Maximum string length:
2048