openapi: 3.2.0 info: title: invinoveritas Analytics API description: The **verification layer for autonomous agents** — a neutral verdict before an irreversible action (`/review`), a signed proof after (`/prove`), and a public, on-chain-verifiable track record (`/ledger`) you can audit without trusting us. contact: name: invinoveritas url: https://api.babyblueviper.com/ email: contact@agents.babyblueviper.com license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html version: 1.13.0 x-guidance: 'invinoveritas — the VERIFICATION LAYER for autonomous agents: a neutral verdict before an irreversible action, a signed proof after, and a public, on-chain-verifiable track record of those verdicts you can audit without trusting us — the oversight + judgment the agent can''t self-issue. Pay-per-call services settled in USDC via x402 on Base (also Lightning/L402 or a funded Bearer balance). Paid resources carry x-payment-info and answer an unauthenticated probe with a 402 challenge; send the JSON body in the operation schema, then retry with the X-PAYMENT header. Good entry points: POST /review (capital-scale-aware verdict before an agent ships an irreversible action), POST /prove (signed, independently-verifiable attestation of a prior execution), GET /ledger (the public signed verdict track record). Routes marked security:[] are free or Bearer/identity-gated and are not x402 resources.' tags: - name: Analytics description: Spend, ROI, and memory analytics (v1.13.0) paths: /agent-economy-brief/preview: get: tags: - Analytics summary: Agent Economy Brief Preview description: 'FREE teaser — source breadth + churn count (the shop-window). No payment. Lives at /preview (not /agent-economy-brief) because the paid path is intercepted by the x402 probe middleware regardless of method — mirrors /signals (free) vs /signals/full (paid).' operationId: agent_economy_brief_preview_agent_economy_brief_preview_get responses: '200': description: Successful Response content: application/json: schema: {} security: [] /audit/agent-readiness/preview: get: tags: - Analytics summary: Audit Agent Readiness Preview description: FREE teaser — what the audit checks + max weights. No payment, no fetch. operationId: audit_agent_readiness_preview_audit_agent_readiness_preview_get responses: '200': description: Successful Response content: application/json: schema: {} security: [] /x402/seller-intel/preview: get: tags: - Analytics summary: X402 Seller Intel Preview description: FREE teaser — the two modes + the catalog-ranking framework (the specific analysis is paid). operationId: x402_seller_intel_preview_x402_seller_intel_preview_get responses: '200': description: Successful Response content: application/json: schema: {} security: [] /regime: get: tags: - Analytics summary: Get Regime description: Paid macro risk-regime data feed (x402 USDC on Base or Bearer credits). operationId: get_regime_regime_get responses: '200': description: Successful Response content: application/json: schema: {} '402': description: Payment Required — pay in USDC via x402 (or Lightning/L402) and retry with the X-PAYMENT header. x-payment-info: price: mode: fixed currency: USD amount: '0.024381' protocols: - x402: {} /signals: get: tags: - Analytics summary: Get Signals Teaser description: FREE teaser — the BTC vol-expansion regime read (the shop-window). No payment. operationId: get_signals_teaser_signals_get responses: '200': description: Successful Response content: application/json: schema: {} security: [] /signals/full: get: tags: - Analytics summary: Get Signals Full description: PAID full multi-coin signal set (x402 USDC on Base or Bearer credits). operationId: get_signals_full_signals_full_get responses: '200': description: Successful Response content: application/json: schema: {} '402': description: Payment Required — pay in USDC via x402 (or Lightning/L402) and retry with the X-PAYMENT header. x-payment-info: price: mode: fixed currency: USD amount: '0.032508' protocols: - x402: {} /markets/act: post: tags: - Analytics summary: Markets Act description: 'Markets Bundle: regime + live signals + brief + optional governance review, one call.' operationId: markets_act_markets_act_post parameters: - name: authorization in: header required: false schema: anyOf: - type: string - type: 'null' title: Authorization requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MarketsActRequest' responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '402': description: Payment Required — pay in USDC via x402 (or Lightning/L402) and retry with the X-PAYMENT header. x-payment-info: price: mode: fixed currency: USD amount: '0.085334' protocols: - x402: {} /analytics/spend: get: tags: - Analytics summary: Analytics Spend description: 'Spending history for this Bearer account over the last N days. Shows total sats spent per tool and per day.' operationId: analytics_spend_analytics_spend_get parameters: - name: days in: query required: false schema: type: integer default: 30 title: Days - name: authorization in: header required: false schema: anyOf: - type: string - type: 'null' title: Authorization responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: [] /analytics/roi: get: tags: - Analytics summary: Analytics Roi description: 'ROI summary for this account. Returns lifetime spend, calls made, and marketplace earnings (if seller).' operationId: analytics_roi_analytics_roi_get parameters: - name: authorization in: header required: false schema: anyOf: - type: string - type: 'null' title: Authorization responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: [] /analytics/memory: get: tags: - Analytics summary: Analytics Memory description: Memory usage stats — total KB stored, per-agent breakdown, estimated monthly cost. operationId: analytics_memory_analytics_memory_get parameters: - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' title: Agent Id - name: authorization in: header required: false schema: anyOf: - type: string - type: 'null' title: Authorization responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: [] /stats: get: tags: - Analytics summary: Public Stats description: Public proof-of-flow stats for the agent economy. No private keys or buyer identities. operationId: public_stats_stats_get responses: '200': description: Successful Response content: application/json: schema: {} security: [] /stats/acquisition_funnel: get: tags: - Analytics summary: Acquisition Funnel description: 'Per-source acquisition funnel (register → topup_invoice → topup_settled → funded_sats) over the last `window_hours` (default 168h = 7d, clamped 1-720). No auth — read-only, no private buyer identities. Sourced from acquisition_events tags written at /register and /topup-invoice + settled via /credit. Built Session 96 against the fleet_goal_audit external-fees=0 signal; instrumentation-before-MVP per [[project-platform-moat-audit]].' operationId: acquisition_funnel_stats_acquisition_funnel_get parameters: - name: window_hours in: query required: false schema: type: integer default: 168 title: Window Hours responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: [] /leaderboard: get: tags: - Analytics summary: Leaderboard Page description: Public leaderboard — top earners, top listings, platform proof. Auto-refreshes every 60s. operationId: leaderboard_page_leaderboard_get responses: '200': description: Successful Response content: text/html: schema: type: string security: [] /dashboard: get: tags: - Analytics summary: Public Dashboard description: Public live dashboard for marketplace, board, and Lightning flow proof. operationId: public_dashboard_dashboard_get responses: '200': description: Successful Response content: text/html: schema: type: string security: [] components: schemas: MarketsActRequest: properties: coins: anyOf: - items: type: string type: array - type: 'null' title: Coins description: Coins for the signals set (default BTC/ETH/SOL/XRP). artifact: anyOf: - type: string - type: 'null' title: Artifact description: Optional proposed trade/plan to pass through the governance review gate. artifact_type: type: string title: Artifact Type description: code_diff|patch|shell_command|plan|config_change|analysis|agent_output|trade|onchain_action|sanctions_screening|general default: general context: anyOf: - type: string - type: 'null' title: Context description: Optional context for the review. max_spend_sats: anyOf: - type: integer - type: 'null' title: Max Spend Sats description: Hard deterministic cap; the bundle is rejected before any work if its price exceeds this. type: object title: MarketsActRequest HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError