AYE / MAINTAINED SERVICES
Evidence API documentation
This API is maintained for existing integrations. It is not the new roofing/solar decision product. That prototype is private; calibration and buyer-value validation remain pending.
Route and contract
POST https://api.aye.today/v1/verify/media-consistency checks asserted facts against public records and physics. It never authenticates media. The maintained public quote is $10 USDC on Base; verify the live payment requirements for every call.
{
"subject": {
"lat": 28.54,
"lon": -81.38,
"claimed_time_utc": "<actual capture time in UTC, ISO 8601>"
},
"media_sha256": "<64 hexadecimal characters>",
"asserted": ["daylight"]
}
Replace the placeholders with the actual media digest and capture time. The capture time must be in the past and within the last 7 days; do not invent a recent time to fit the window. Obtain a current live unpaid HTTP 402 quote for your request and verify its payment requirements before authorizing payment.
Supported assertions: daylight, darkness, no_rain, rain, no_earthquake, tide_high, tide_low. Unknown fields, raw media and media URLs are refused. Consult the live route catalog and signed policy.
Payment and retries
An unpaid request receives HTTP 402 requirements. Use an x402-compatible client to verify the origin, asset, network, payee, amount and resource before authorizing payment. Do not construct an authorization from copied amounts or replay an already-settled payment.
Settlement is attempted only after a successful handler result. Source or input failures are not submitted for settlement. An uncertain settlement is not permission to pay again: preserve the response and payment reference, inspect the settlement status, and contact ops@aye.today before retrying with new funds. See payment and refund terms.
Evidence visibility and limits
Bundle URLs are public bearer access. They expose submitted location, time, digest, assertions, checks and source attestations. R2 has no application-level automatic expiry; older KV fallback records use their configured TTL. Do not submit anything you are unwilling to make publicly retrievable.
GET /v1/bundle/{bundle_id} retrieves a stored record. Signature presence, signature verification, source consistency and verified timestamp anchoring are distinct claims. Inspect the actual bundle and verification result; endpoint availability alone proves none of them.
Public-agency evidence is attributed to its source. An unavailable upstream fails closed. No verdict guarantees safety, authenticity, or an operational outcome.
Compatibility and MCP
The five original check routes remain callable for existing integrations, outside public paid discovery. The legacy POST /mcp bridge lists free callable tools for unauthenticated clients; paid bridges require operator authorization. Public paid buyers use HTTPS x402. The provider-neutral Pulse/Scout MCP package is a separate product.
Pulse / Scout MCP: wallet-free first run
Use Node.js 22 or newer and an MCP client that supports local stdio servers. Configure the pinned launch command npx --yes x402-gateway-mcp@0.3.0. Client configuration formats vary; this process definition keeps the version and spend caps explicit:
{
"mcpServers": {
"x402-gateway": {
"command": "npx",
"args": ["--yes", "x402-gateway-mcp@0.3.0"],
"env": {
"MAX_PER_CALL_USD": "0.25",
"MAX_SESSION_USD": "2.00"
}
}
}
}
Leave WALLET_PRIVATE_KEY unset in the server environment for the first run. Reconnect the client and call x402_market_pulse for the free observation feed; this tool needs no wallet and makes no payment. The package does not choose or call a model. Do not substitute an unpinned package if the exact version is unavailable.
Paid Scout tools require a separately configured, dedicated small-balance wallet. Never use a primary wallet or paste keys into chats, browser storage, or source control. The example limits spending to $0.25 per call and $2.00 per server process; restarting the process resets that local total. After an ambiguous paid call, reconcile the wallet before retrying. These maintained discovery tools do not validate the private roofing/solar decision prototype.