← oblique.markets · all endpoints

POST /api/v1/paid/ghost-bid-audit — $0.01 per call

Use when an agent needs ghost bid audit. Returns Audit a selected agent offer against rejected affordable alternatives with counterfactual savings, regret, and a tamper-evident receipt. $0.01.

Price$0.01 per call (10000 atomic USDC, scheme exact)
Categorydata-services
Railsx402 · USDC on Base (eip155:8453) and Solana · MPP pathUSD on Tempo
Canonical URLhttps://api.oblique.markets/api/v1/paid/ghost-bid-audit

Try it

curl -i https://api.oblique.markets/api/v1/paid/ghost-bid-audit
# → HTTP 402 with the exact payment requirements; pay, then retry with PAYMENT-SIGNATURE (x402) or Authorization: Payment (MPP)

Input schema

{
 "type": "object",
 "required": [
  "selected_offer",
  "alternatives"
 ],
 "properties": {
  "selected_offer": {
   "type": "object"
  },
  "selected_offer_declared": {
   "type": "boolean"
  },
  "signed_selected_offer": {
   "type": "object"
  },
  "alternatives": {
   "type": "array",
   "maxItems": 32
  },
  "max_price_atomic": {
   "type": "integer",
   "minimum": 0
  },
  "signature_secret": {
   "type": "string"
  }
 }
}

Example output

{
 "audit_version": "ghost-bid-audit.v1",
 "selected_offer": {
  "id": "offer-selected",
  "price_atomic": 12000,
  "provider": "seller-a"
 },
 "selected_offer_verification": "explicit",
 "alternatives_considered": 2,
 "best_rejected_affordable_option": {
  "id": "offer-rejected",
  "price_atomic": 9000,
  "provider": "seller-b"
 },
 "price_delta_atomic": 3000,
 "savings_atomic": 3000,
 "regret_score": 0.25,
 "audit_receipt": "sha256:0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef",
 "budget_atomic": 12000,
 "generated_at": "2026-08-24T12:00:00.000Z"
}

Clients

Worked TypeScript/Python clients and MCP configs: oblique-markets/oblique-examples · Agent Skills: oblique-markets/skills

Pay per call with x402 (USDC on Base or Solana) or MPP (pathUSD on Tempo). No accounts. Machine doors: /.well-known/x402.json · /openapi.json · /llms-full.txt · MCP · humans: remote.observer