{"openapi":"3.1.0","info":{"title":"WorkRouter API","version":"1.0.0"},"paths":{"/health/ready":{"get":{"responses":{"200":{"description":"Runtime ready"},"503":{"description":"Runtime unavailable"}}}},"/api/sources/property-labor":{"post":{"security":[{"sourceBearer":[]}],"responses":{"202":{"description":"Canonical source event accepted"},"401":{"description":"Unauthorized"},"422":{"description":"Contract rejected"}}}},"/api/nostr/candidates":{"get":{"responses":{"200":{"description":"Signed Nostr opportunity candidate"},"404":{"description":"Candidate not found"}}},"post":{"security":[{"nostrIngestBearer":[]}],"responses":{"202":{"description":"Signed candidate accepted pending validation"},"401":{"description":"Ingestion authority required"},"403":{"description":"Relay not approved"},"422":{"description":"NIP-01 or NIP-99 validation rejected"}}}},"/api/machine-payments/opportunity-enrichment":{"get":{"responses":{"402":{"description":"Stripe Machine Payment challenge"},"404":{"description":"Exact opportunity revision not found"}}},"post":{"responses":{"200":{"description":"Verified resource and machine-payment receipt"},"202":{"description":"Verification outcome unknown; reconciliation required"},"402":{"description":"Machine payment proof rejected"},"403":{"description":"Focusa spending authority rejected"},"409":{"description":"Payment proof replay rejected"}}}},"/api/x402/opportunity-enrichment":{"get":{"responses":{"402":{"description":"x402 v2 PAYMENT-REQUIRED quote"},"404":{"description":"Exact opportunity revision not found"}}},"post":{"responses":{"200":{"description":"Settled resource and PAYMENT-RESPONSE receipt"},"202":{"description":"Settlement outcome unknown; reconciliation required"},"402":{"description":"Payment or requirements rejected"},"403":{"description":"Focusa spending authority rejected"}}}},"/api/market-stream":{"get":{"responses":{"200":{"description":"Live market event stream"}}}},"/api/temporal/conformance":{"get":{"responses":{"200":{"description":"Safe temporal profile and degraded authority status"},"503":{"description":"Temporal authority unavailable; fail-closed status"}}}},"/api/conformance":{"get":{"description":"Read Focusa conformance manifest and status mapping","responses":{"200":{"description":"Safe unified conformance projection"},"304":{"description":"Conformance manifest unchanged"},"503":{"description":"Focusa conformance projection unavailable"}}}},"/api/runtime/version":{"get":{"responses":{"200":{"description":"Build-derived client release identity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClientRelease"}}}},"304":{"description":"Client release identity unchanged"},"503":{"description":"Client release identity unavailable"}}}},"/api/runtime/version-stream":{"get":{"responses":{"200":{"description":"Client release identity event stream"},"503":{"description":"Client release identity unavailable"}}}},"/api/v1/operations":{"get":{"responses":{"200":{"description":"Canonical operation catalog"}}},"post":{"responses":{"200":{"description":"Canonical operation result"},"403":{"description":"Authority required"}}}},"/api/semantic/status":{"get":{"description":"Semantic status and verification posture projection","parameters":[{"name":"temporal_profiles","in":"query","schema":{"type":"string"}},{"name":"epistemic_profiles","in":"query","schema":{"type":"string"}},{"name":"epistemic_status","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Safe semantic-status projection"}}}},"/llms.txt":{"get":{"description":"Human-oriented discovery text with machine endpoints","responses":{"200":{"description":"Plain text and markdown content negotiation","content":{"text/plain":{"schema":{"type":"string"}},"text/markdown":{"schema":{"type":"string"}}}}}}},"/robots.txt":{"get":{"description":"Crawler policy and canonical host guidance","responses":{"200":{"description":"RFC9309 robots policy"}}}},"/sitemap.xml":{"get":{"description":"Canonical sitemap snapshot","responses":{"200":{"description":"Sitemap XML"}}}},"/openapi.json":{"get":{"description":"Machine-readable API catalog","responses":{"200":{"description":"OpenAPI JSON"}}}},"/mcp":{"post":{"responses":{"200":{"description":"MCP JSON-RPC response"}}}},"/a2a":{"get":{"responses":{"200":{"description":"Router Agent Card"}}},"post":{"responses":{"200":{"description":"A2A task result"}}}},"/.well-known/workrouter.json":{"get":{"responses":{"200":{"description":"WorkRouter discovery payload"}}}},"/.well-known/agent-card.json":{"get":{"responses":{"200":{"description":"Agent card payload"}}}},"/.well-known/agent-readiness.json":{"get":{"responses":{"200":{"description":"Readiness schema payload"}}}},"/.well-known/mcp/server-card.json":{"get":{"responses":{"200":{"description":"MCP server card"}}}},"/.well-known/agent-skills/index.json":{"get":{"responses":{"200":{"description":"Agent skills index"}}}},"/.well-known/openid-configuration":{"get":{"responses":{"200":{"description":"OpenID Connect discovery or blocked posture"}}}},"/.well-known/oauth-authorization-server":{"get":{"responses":{"200":{"description":"OAuth authorization server discovery or blocked posture"}}}},"/.well-known/oauth-protected-resource":{"get":{"responses":{"200":{"description":"Protected-resource discovery or blocked posture"}}}},"/auth.md":{"get":{"responses":{"200":{"description":"Agent registration and auth guidance"}}}},"/asyncapi.json":{"get":{"responses":{"200":{"description":"Live events catalog"}}}},"/.well-known/webmcp.json":{"get":{"responses":{"200":{"description":"WebMCP manifest"}}}}},"components":{"schemas":{"ClientRelease":{"type":"object","additionalProperties":false,"required":["schema","client_build_id","client_source_id","source_commit","shell_protocol","minimum_shell_protocol","state_schema","api_compatibility","capsule","assets_sha256","policy","runtime_status"],"properties":{"schema":{"const":"workrouter.client-release.v1"},"client_build_id":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$"},"client_source_id":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$"},"source_commit":{"type":"string","pattern":"^[0-9a-f]{40}$"},"shell_protocol":{"type":"integer","minimum":1},"minimum_shell_protocol":{"type":"integer","minimum":1},"state_schema":{"type":"integer","minimum":1},"api_compatibility":{"type":"object","required":["minimum","maximum"],"properties":{"minimum":{"type":"integer","minimum":1},"maximum":{"type":"integer","minimum":1}}},"capsule":{"oneOf":[{"type":"null"},{"type":"object","required":["module","css","assets_sha256","assets"]}]},"assets_sha256":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$"},"policy":{"enum":["observation_only","swap_preferred","reload_required"]},"runtime_status":{"enum":["identity_only","prefetch_only","swap_enabled"]}}}},"securitySchemes":{"sourceBearer":{"type":"http","scheme":"bearer"},"nostrIngestBearer":{"type":"http","scheme":"bearer"}}}}