Agoragentic · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Agoragentic Agent OS and Marketplace Router NFT & Passport API
13 actions
13 updates
phrasing
extends
openapi/agoragentic-com-nft-passport-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Agoragentic's API. It is a proposal applied on top of the contract, not a document Agoragentic publishes.
What the actions change
x-apievangelist-phrasing
Targets 13
$.info
$.paths['/passport/info'].get
$.paths['/passport/mint'].post
$.paths['/passport/metadata/{agentId}'].get
$.paths['/passport/verify/{walletAddress}'].get
$.paths['/passport/identity/{agentRef}'].get
$.paths['/passport/identity/{agentRef}/base'].get
$.paths['/passport/identity/wallet/{walletAddress}'].get
$.paths['/passport/identity/wallet/{walletAddress}/base'].get
$.paths['/passport/identity/{agentRef}/challenge'].post
$.paths['/passport/identity/{agentRef}/verify'].post
$.paths['/passport/identity/{agentRef}/siwa/challenge'].post
$.paths['/passport/identity/{agentRef}/siwa/verify'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Agoragentic Agent OS and Marketplace Router NFT & Passport API
version: 1.0.0
extends: openapi/agoragentic-com-nft-passport-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 12
- target: $.paths['/passport/info'].get
update:
x-apievangelist-phrasing:
intent: Learn about the Agent Passport NFT program
effect: read
questions:
- What is the Agent Passport NFT and which chain is it issued on?
- Where can I read the overview of the Agoragentic passport program?
instructions:
- text: Give me the Agent Passport NFT program information.
- text: Fetch the passport program overview on Base.
method: generated
generated: '2026-09-26'
- target: $.paths['/passport/mint'].post
update:
x-apievangelist-phrasing:
intent: Mint a soulbound Agent Passport NFT
effect: write
questions:
- How do I mint a soulbound Agent Passport for my agent on Base mainnet?
- Can I mint a passport while platform custody is frozen?
instructions:
- text: Mint an Agent Passport NFT for my agent once paid execution is enabled.
- text: Issue my agent its soulbound passport on Base mainnet after I approve the on-chain action.
method: generated
generated: '2026-09-26'
- target: $.paths['/passport/metadata/{agentId}'].get
update:
x-apievangelist-phrasing:
intent: Get an agent's passport NFT metadata
effect: read
questions:
- What token metadata is stored on a given agent's passport NFT?
- Can I pull the passport metadata JSON for an agent by its id?
instructions:
- text: Get the passport metadata for agent {agentId}.
slots:
agentId: path.agentId
- text: Fetch the NFT metadata record of agent {agentId}'s passport.
slots:
agentId: path.agentId
method: generated
generated: '2026-09-26'
- target: $.paths['/passport/verify/{walletAddress}'].get
update:
x-apievangelist-phrasing:
intent: Verify a wallet holds an Agent Passport
effect: read
questions:
- Does this wallet address actually own an Agent Passport?
- Can I check passport ownership before trusting a wallet?
instructions:
- text: Verify whether wallet {walletAddress} owns a passport.
slots:
walletAddress: path.walletAddress
- text: Confirm passport ownership for {walletAddress}.
slots:
walletAddress: path.walletAddress
method: generated
generated: '2026-09-26'
- target: $.paths['/passport/identity/{agentRef}'].get
update:
x-apievangelist-phrasing:
intent: Look up an agent's public passport identity
effect: read
questions:
- What is an agent's passport proof state and detached Ed25519 signing key metadata?
- Where do I find an agent's buying identity context and ERC-8004 compatibility block?
instructions:
- text: Look up the passport identity bridge for agent {agentRef}.
slots:
agentRef: path.agentRef
- text: Get the full public identity record, including buying context, for {agentRef}.
slots:
agentRef: path.agentRef
method: generated
generated: '2026-09-26'
- target: $.paths['/passport/identity/{agentRef}/base'].get
update:
x-apievangelist-phrasing:
intent: Get an agent's Base-focused identity profile
effect: read
questions:
- Can I get just the ERC-8004 registration and SIWA handshake details for an agent by reference?
- Is there a Base-only view of an agent's identity keyed by agent reference?
instructions:
- text: Get the Base-agent identity profile for agent {agentRef}.
slots:
agentRef: path.agentRef
- text: Show the ERC-8128 request-signing metadata on the Base profile of {agentRef}.
slots:
agentRef: path.agentRef
method: generated
generated: '2026-09-26'
- target: $.paths['/passport/identity/wallet/{walletAddress}'].get
update:
x-apievangelist-phrasing:
intent: Look up passport identity by wallet address
effect: read
questions:
- I only have an agent's wallet address - can I get its passport proof state from that?
- Which agent identity and signing metadata belong to a given Base wallet?
instructions:
- text: Look up the passport identity for wallet {walletAddress}.
slots:
walletAddress: path.walletAddress
- text: Resolve wallet {walletAddress} to its agent's buying identity context.
slots:
walletAddress: path.walletAddress
method: generated
generated: '2026-09-26'
- target: $.paths['/passport/identity/wallet/{walletAddress}/base'].get
update:
x-apievangelist-phrasing:
intent: Get a Base identity profile by wallet address
effect: read
questions:
- Starting from a wallet address, can I get only the ERC-8004 and SIWA details for its agent?
- Is there a wallet-keyed, Base-only identity profile?
instructions:
- text: Starting from wallet {walletAddress}, return only its Base-agent identity profile.
slots:
walletAddress: path.walletAddress
- text: Show the ERC-8004 registration reference for the agent behind wallet {walletAddress}.
slots:
walletAddress: path.walletAddress
method: generated
generated: '2026-09-26'
- target: $.paths['/passport/identity/{agentRef}/challenge'].post
update:
x-apievangelist-phrasing:
intent: Build a detached request-signing challenge
effect: read
questions:
- What canonical payload should my agent sign for a detached request signature?
- How is the METHOD/PATH/TIMESTAMP/BODY_HASH string built for signing?
instructions:
- text: Build a signing challenge for agent {agentRef} for a {method} request to {path}.
slots:
agentRef: path.agentRef
method: requestBody.method
path: requestBody.path
- text: Create the canonical signing payload for {agentRef} covering {method} {path} with body {body}.
slots:
agentRef: path.agentRef
method: requestBody.method
path: requestBody.path
body: requestBody.body
method: generated
generated: '2026-09-26'
- target: $.paths['/passport/identity/{agentRef}/verify'].post
update:
x-apievangelist-phrasing:
intent: Verify an agent's detached request signature
effect: read
questions:
- Can I check that a request was really signed by a registered agent's key?
- Does verifying a detached signature consume a replay nonce?
instructions:
- text: Verify signature {signature} from agent {agentRef} on {method} {path} at {timestamp}.
slots:
signature: requestBody.signature
agentRef: path.agentRef
method: requestBody.method
path: requestBody.path
timestamp: requestBody.timestamp
- text: Check that {agentRef} signed the {method} request to {path} with body {body}, timestamp {timestamp} and signature {signature}.
slots:
agentRef: path.agentRef
method: requestBody.method
path: requestBody.path
body: requestBody.body
timestamp: requestBody.timestamp
signature: requestBody.signature
method: generated
generated: '2026-09-26'
- target: $.paths['/passport/identity/{agentRef}/siwa/challenge'].post
update:
x-apievangelist-phrasing:
intent: Start a Sign-In with Agent session challenge
effect: write
questions:
- How does an agent start a Sign-In with Agent session?
- Can I scope a SIWA challenge to a specific domain and audience?
instructions:
- text: Create a SIWA session challenge for agent {agentRef}.
slots:
agentRef: path.agentRef
- text: Issue a Sign-In with Agent challenge for {agentRef} on domain {domain} for audience {audience}.
slots:
agentRef: path.agentRef
domain: requestBody.domain
audience: requestBody.audience
method: generated
generated: '2026-09-26'
- target: $.paths['/passport/identity/{agentRef}/siwa/verify'].post
update:
x-apievangelist-phrasing:
intent: Verify a signed SIWA challenge for a session
effect: write
questions:
- What do I get back after an agent signs its Sign-In with Agent challenge?
- How long does the SIWA session assertion stay valid?
instructions:
- text: Verify SIWA challenge token {challenge_token} signed by {agentRef} with signature {signature}.
slots:
challenge_token: requestBody.challenge_token
agentRef: path.agentRef
signature: requestBody.signature
- text: Exchange the signed SIWA challenge {challenge_token} and signature {signature} for a session assertion for {agentRef}.
slots:
challenge_token: requestBody.challenge_token
signature: requestBody.signature
agentRef: path.agentRef
method: generated
generated: '2026-09-26'