.wraith name, one or more on-chain addresses, and a stealth meta-address for receiving payments. Use these endpoints to create, inspect, and manage agents. All endpoints require a Bearer token in the Authorization header.
POST /agent/create
Create a new agent with a.wraith name. The signature proves that the caller owns the wallet that will control this agent. On EVM chains, sign with EIP-191; on Stellar, sign with ed25519.
Request
The
.wraith name for the agent (e.g., "alice" becomes alice.wraith). Must be 3–32 characters, lowercase alphanumeric and hyphens only.The chain to deploy the agent on. One of:
"horizen", "stellar", "ethereum", "polygon", "base", "solana".The owner wallet address. This wallet controls the agent and is required for sensitive operations like key export.
A signature from
wallet proving ownership. Use EIP-191 personal sign on EVM chains or ed25519 on Stellar.The plaintext message that was signed. Required if the server needs to reconstruct the signed payload for verification.
Response
UUID that uniquely identifies this agent.
The registered
.wraith name (without the .wraith suffix).The chain this agent is deployed on.
The agent’s on-chain address.
The agent’s stealth meta-address. Share this with senders so they can generate stealth addresses for payments to this agent.
Example
- curl
- TypeScript
GET /agents
Return all agents associated with the authenticated API key.Response
Returns an array ofAgentInfo objects.
Agent UUID.
The
.wraith name.All chains this agent is active on.
Map of chain name to on-chain address.
Map of chain name to stealth meta-address.
Example
- curl
- TypeScript
GET /agent/:id
Fetch a single agent by its UUID.Path parameters
The agent UUID returned from
POST /agent/create.Response
Returns anAgentInfo object. See GET /agents for the field reference.
Example
- curl
- TypeScript
GET /agent/info/:name
Look up an agent by its.wraith name instead of UUID.
Path parameters
The
.wraith name (without the .wraith suffix). For example, alice to look up alice.wraith.Response
Returns anAgentInfo object.
Example
- curl
- TypeScript
GET /agent/wallet/:address
Look up an agent by the owner wallet address.Path parameters
The owner wallet address that was supplied in
POST /agent/create.Response
Returns anAgentInfo object.
Example
- curl
- TypeScript
GET /agent/:id/status
Return the agent’s current balance, pending invoice count, and on-chain details.Path parameters
The agent UUID.
Response
Native asset balance as a decimal string (e.g.,
"0.5").Map of token contract address to balance string.
Number of invoices with
status: "pending".The agent’s on-chain address.
The agent’s stealth meta-address.
The chain this agent is deployed on.
Example
- curl
- TypeScript
POST /agent/:id/export
Export the agent’s private key from the TEE. Use this to migrate an agent to self-custody or to sign transactions outside the SDK. Requires a fresh wallet signature to prevent replay attacks.Path parameters
The agent UUID.
Request
A fresh signature from the owner wallet. Do not reuse a signature from a previous request.
The plaintext message that was signed.
Response
The agent’s private key as a
0x-prefixed hex string on EVM chains, or a base64-encoded seed on Stellar.Example
- curl
- TypeScript
