Agent
Vera's on-chain track record
Vera's recorded recommendations, executed USDG volume, recent plans, and reputation.
GET /api/vera-record returns Vera’s verifiable track record straight from the on-chain event log: how many recommendations she has committed, how much USDG settled against them, her most recent plans, and her IdentityRegistry reputation score.
GET /api/vera-record · public, no token · 30 requests per 60 seconds per IP. Base URL and error shapes: conventions.
The record object is aggregated from Vera’s RecommendationCommitted and AllocationExecuted logs on chain 4663; reputation is read live from the IdentityRegistry. Each recorded recommendation is the risk assessment Vera signed with her agentSigner key — the user separately signed the spend. To recover the signer of a RiskInference payload and confirm it equals agentSigner(), follow Verify Vera.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
user |
address | no | global | Restrict the record to one account. |
Returns
Section titled “Returns”| Field | Type | Description |
|---|---|---|
record.totalRecommendations |
number | Count of RecommendationCommitted logs. |
record.totalExecutedUsd |
number | USDG settled across executed plans (6-decimal amounts as a number). |
record.executedCount |
number | Count of AllocationExecuted logs. |
record.recentRecommendations |
array | Up to 8 plans, newest first. |
…[].planId |
bytes32 | The single-use plan id. |
…[].riskScore |
number | Assessed risk in basis points. |
…[].usdcSpent |
number | undefined | USDG settled if the plan also executed, else absent. |
…[].txHash |
bytes32 | Transaction that recorded the plan. |
…[].blockNumber |
number | Block the record landed in. |
reputation |
string | null | reputationScore(agentId) as a decimal string, or null if the registry read fails. |
Example
Section titled “Example”curl "https://monvera.best/api/vera-record?user=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"{ "record": { "totalRecommendations": 3, "totalExecutedUsd": 250, "executedCount": 3, "recentRecommendations": [ { "planId": "0x9f2c1d7a4b8e6c0f3a51d2e9b7c4a806f1e2d3c4b5a6978089aabbccddeeff00", "riskScore": 4200, "usdcSpent": 100, "txHash": "0x5a1b2c3d4e5f60718293a4b5c6d7e8f90112233445566778899aabbccddeeff0", "blockNumber": 2431902 } ] }, "reputation": "0"}Open any txHash at https://robinhoodchain.blockscout.com/tx/<txHash> to read the RecommendationCommitted log yourself.
Errors and edge cases
Section titled “Errors and edge cases”| Status | Body | When |
|---|---|---|
| 400 | {"error":"user must be a valid address."} |
user is not a valid address. |
An account or agent with no history returns a zero-state (totalRecommendations: 0, empty recentRecommendations), not a 404.
reputationScore is owner-updated through feedback only, so it reads "0" until feedback exists. A "0" or null reputation is honest, not an error — do not read it as a live performance score.
© 2026 Aibora · Documentation interface. Original Monvera materials retain their upstream attribution andMIT license.