Seeded demoSimulated costs and business valueCustomer sign-in simulation

Agent-to-agent FinOps interchange

FinIO

Two agents, one cost-and-value conversation. FinIO lets the Ratio agent exchange FinOps data with another company's agent over plain HTTP — using the FinOps Foundation's FOCUS specification as the wire schema.

It is not a new protocol. It is FOCUS-shaped JSON moved through a small handshake. Any organization already exporting FOCUS-formatted billing can speak it without custom integration work.

See the exchange

Why it exists

FOCUS standardizes cost. Cost alone is just spend.

The FOCUS specification did the hard work of making billing data portable across clouds and vendors. What it does not model is value — what the money bought. Two agents negotiating on cost columns alone can only ever argue about who spends less.

FinIO carries both. Standard FOCUS columns carry the cost. A thin band of x_Ratio* extension columns carries the value ratio: business outcome per inference dollar. Vendor-prefixed extension columns are explicitly permitted by the FOCUS spec, so this stays conformant while expressing the thing FOCUS leaves out.

The exchange

Two steps, synchronous, over HTTP

Step 1 · Handshake

POST /api/v1/a2a/handshake

The initiating agent presents its identity, the operations it wants, and the FOCUS version it speaks. The responder authenticates the peer, agrees a version, and returns a short-lived session.

Step 2 · Export

GET /api/v1/finio/export

The session buys one FOCUS-shaped dataset, shaped to the version the two sides agreed on. Cost columns and value columns arrive together.

Version negotiation is real, not decorative. The agreed version is signed into the session, so the export cannot quietly return a shape the peer never agreed to. Anything outside the supported v1.0–v1.4 range is refused with the supported range.

The payload

One row, both halves of the ratio

FOCUS standard — the cost

  • BilledCost
  • EffectiveCost
  • BillingCurrency
  • BillingPeriodStart
  • BillingPeriodEnd
  • ChargePeriodStart
  • ChargePeriodEnd
  • BillingAccountId
  • SubAccountId
  • ServiceName
  • ServiceCategory
  • ProviderName
  • ChargeCategory
  • ChargeDescription
  • ResourceId
  • PricingQuantity
  • PricingUnit
  • UsageQuantity
  • UsageUnit

Ratio extension — the value

  • x_RatioValueRatioreturn per dollar
  • x_RatioTotalValuerevenue protected + cost avoided
  • x_RatioWorkloadIdwhich workload earned it
  • x_RatioDemandShapehow it is being run
  • x_RatioGovernanceGatesgates passed, 0–4

Interoperable with any FinOps tool that reads FOCUS. Meaningful to any agent that cares why the money was worth spending.

Security

A peer is not a stranger

A shared token gates the handshake. A successful handshake returns a session that carries its own signed expiry — there is no server-side session table, so it holds up across instances. Peer credentials and session credentials travel in separate headers from the tenant API key, so two differently-scoped secrets never collide on one header and authenticate the wrong principal.

Scope

What v1 is, and is not

v1 is a working demonstration of the interchange, not a partner integration. One initiator, one responder, synchronous request and response. Deliberately out of scope: OAuth and mTLS, persistence, multi-party fan-out, webhook push, and full FOCUS column coverage.

We would rather show you a small thing that actually runs than a large thing that does not.