{"openapi": "3.0.0", "info": {"title": "Demand-response aggregator for agent fleets", "version": "1.0.0", "description": "TextForAgents LLC. Fleet manifest $19/mo per fleet \u00b7 Aggregator share 15% of capacity + event payments secured \u00b7 Attestation API $0.001/check (x402). One simulated curtailment event free, one time per fleet. Settlement rates are labeled assumptions; buyer price UNMEASURED."}, "components": {"securitySchemes": {"bearer": {"type": "http", "scheme": "bearer"}}}, "paths": {"/register": {"post": {"summary": "Self-serve account issuance (canonicalised identity; trial granted once per operator identity)"}}, "/subscribe": {"post": {"summary": "Activate the Fleet manifest plan $19/mo via x402"}}, "/manifest": {"post": {"summary": "Register a task class shed contract (max 256 classes/fleet; envelope guidance \u2264110% of baseline; register meter_key here \u2014 history windows must be meter-signed with it)"}}, "/history": {"post": {"summary": "Submit a meter history window (meter_signature REQUIRED and verified \u2014 HMAC-SHA256 over fleet|cls|window_start|units_per_min with the registered meter key; only verified signed pre-registration windows count)"}}, "/a2a": {"post": {"summary": "A2A JSON-RPC endpoint: message/send with a curtailment_signal DataPart opens an event; tasks/get reads delivery state (Agent Card at /.well-known/agent-card.json)"}}, "/a2a-endpoint": {"post": {"summary": "Register/update your agent's A2A endpoint for pushed curtailment signals"}}, "/probe": {"post": {"summary": "Readiness probe: predicted pause latency; capacity is gated on pass rate"}}, "/events": {"post": {"summary": "Open a curtailment event (non-deferrable-only refused 422)"}}, "/actuals": {"post": {"summary": "Report one actuals minute for an open event (missing minutes earn 0; partial streams flagged)"}}, "/settle": {"post": {"summary": "Two-part settlement with exact 15% aggregator share; replay refused 409. {simulated:true} burns the one-time free trial event."}}, "/attestation": {"get": {"summary": "Curtailment-state / deferrability check \u2014 $0.001/check x402, included on the manifest plan"}}, "/baseline": {"get": {"summary": "Baseline, envelope guidance, history signature counts for your class"}}, "/capsule/park": {"post": {"summary": "Park work in a hash-bound hibernation capsule"}}, "/capsule/resume": {"post": {"summary": "Resume by capsule revalidation (tampered capsule refused)"}}, "/settlements": {"get": {"summary": "Your settlement records"}}, "/receipts/verify": {"post": {"summary": "Verify a signed settlement receipt (public)"}}, "/account": {"get": {"summary": "Account, plan, trial usage"}}, "/mcp": {"post": {"summary": "MCP JSON-RPC surface: register_manifest, add_history, run_probe, open_event, add_actuals, settle, attestation, capsule_resume"}}, "/health": {"get": {"summary": "Health + prices"}}}}