GET /v1/agent-cards/grants
List the organization's card-disclosure grants, live and dead alike.
GET
/v1/agent-cards/grants
List the organization's card-disclosure grants, live and dead alike.
Query Parameters
limit
integer
optional
query
Number of items (default 20, max 100)
offset
integer
optional
query
Offset for pagination (default 0)
Responses
200
OK
application/jsoncode
integer
data
object
hasMore
boolean
items
object[]
Array of:
approvedAt
string
cardId
string
connectorId
string
createdAt
string
expiresAt
string
grantedBy
string
id
string
maxUses
integer
note
string
organizationId
string
purpose
string
requestedBy
string
retiredAt
string
RetiredAt exists for the unique index, not for the domain. idx_agent_card_grants_live
keeps one live grant per card, but a partial index predicate cannot reference now(),
so expiry is stamped here instead and the index excludes it. Only ever set on a row
that is already past ExpiresAt, and never by a human — a human withdrawing permission
sets RevokedAt, which redeem and the UI both read and this column deliberately is not.
revokedAt
string
updatedAt
string
uses
integer
limit
integer
offset
integer
message
string
requestId
string
400
Bad Request
curl -X GET 'https://api.example.com/v1/agent-cards/grants' \ -H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://api.example.com/v1/agent-cards/grants', { method: 'GET', headers: { "Authorization": "Bearer YOUR_API_TOKEN" }});const data = await response.json();console.log(data);
import requestsheaders = { 'Authorization': 'Bearer YOUR_API_TOKEN'}response = requests.get('https://api.example.com/v1/agent-cards/grants', headers=headers)print(response.json())
package mainimport ( "fmt" "io" "net/http")func main() { req, _ := http.NewRequest("GET", "https://api.example.com/v1/agent-cards/grants", nil) req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN") resp, _ := http.DefaultClient.Do(req) defer resp.Body.Close() result, _ := io.ReadAll(resp.Body) fmt.Println(string(result))}
200
Response
{ "code": 200, "data": { "hasMore": true, "items": [ { "approvedAt": "<string>", "cardId": "<string>", "connectorId": "<string>", "createdAt": "<string>", "expiresAt": "<string>", "grantedBy": "<string>", "id": "<string>", "maxUses": 123, "note": "<string>", "organizationId": "<string>", "purpose": "<string>", "requestedBy": "<string>", "retiredAt": "<string>", "revokedAt": "<string>", "updatedAt": "<string>", "uses": 123 } ], "limit": 123, "offset": 123 }, "message": "success", "requestId": "abc-123"}
API Playground
Try this endpoint
GET
/v1/agent-cards/grants
