{"openapi":"3.1.0","info":{"title":"Machine Works Capability Broker","version":"0.1.0"},"paths":{"/recommendations":{"post":{"summary":"Optional deterministic next step; pass capability_id, budget_usd and has_snapshot. No invocation or payment.","responses":{"200":{"description":"At most one live recommendation and optional attribution header"}}}},"/preflight":{"post":{"summary":"Free read-only input and price preflight. No target fetch, payment or demand capture.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["task"],"properties":{"task":{"type":"string","minLength":1,"maxLength":500},"capability_id":{"type":"string","maxLength":100},"inputs":{"type":"object"},"freshness":{"type":"object","additionalProperties":false,"properties":{"max_age_seconds":{"type":"number","minimum":0}}},"output":{"type":"object","additionalProperties":false,"properties":{"format":{"type":"string","maxLength":40},"schema":{"type":"object"}}},"economics":{"type":"object","additionalProperties":false,"properties":{"max_price_usd":{"type":"number","minimum":0},"quantity":{"type":"integer","minimum":1,"maximum":10000},"expected_frequency":{"type":"string","maxLength":100},"deadline_at":{"type":"string","format":"date-time"},"recurring":{"type":"boolean"},"committed_max_budget_usd":{"type":"number","minimum":0},"reservation_intent":{"type":"boolean"},"bounty_intent":{"type":"boolean"}}},"urgency":{"type":"string","maxLength":100},"return_path":{"type":"object","additionalProperties":false,"properties":{"webhook_url":{"type":"string","maxLength":2000},"a2a_callback":{"type":"string","maxLength":2000}}},"client":{"type":"object","additionalProperties":false,"properties":{"requester_id":{"type":"string","maxLength":100},"wallet":{"type":"string","maxLength":100},"agent_id":{"type":"string","maxLength":100}}}}}}}},"responses":{"200":{"description":"Matching capabilities, reasons and safe quotes"}}}},"/requests":{"post":{"summary":"Find, quote or capture a machine outcome. No payment or spend authorization.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["task"],"properties":{"task":{"type":"string","minLength":1,"maxLength":500},"capability_id":{"type":"string","maxLength":100},"inputs":{"type":"object"},"freshness":{"type":"object","additionalProperties":false,"properties":{"max_age_seconds":{"type":"number","minimum":0}}},"output":{"type":"object","additionalProperties":false,"properties":{"format":{"type":"string","maxLength":40},"schema":{"type":"object"}}},"economics":{"type":"object","additionalProperties":false,"properties":{"max_price_usd":{"type":"number","minimum":0},"quantity":{"type":"integer","minimum":1,"maximum":10000},"expected_frequency":{"type":"string","maxLength":100},"deadline_at":{"type":"string","format":"date-time"},"recurring":{"type":"boolean"},"committed_max_budget_usd":{"type":"number","minimum":0},"reservation_intent":{"type":"boolean"},"bounty_intent":{"type":"boolean"}}},"urgency":{"type":"string","maxLength":100},"return_path":{"type":"object","additionalProperties":false,"properties":{"webhook_url":{"type":"string","maxLength":2000},"a2a_callback":{"type":"string","maxLength":2000}}},"client":{"type":"object","additionalProperties":false,"properties":{"requester_id":{"type":"string","maxLength":100},"wallet":{"type":"string","maxLength":100},"agent_id":{"type":"string","maxLength":100}}}}}}}},"responses":{"202":{"description":"Durable demand request with status URL and optional route/quote"},"429":{"description":"Admission cap"}}}},"/requests/{request_id}":{"get":{"summary":"Read opaque status URL","parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Status and safe quote, no original inputs/callback/identity"}}}},"/capabilities":{"get":{"responses":{"200":{"description":"Capability Registry"}}}}}}