{"schemaVersion":"1.2","writeMode":"read-only","generatedAt":"2026-09-29T00:08:52.296Z","serviceIntake":{"status":"open","availabilityBasis":"default-open","message":"Service-request intake is currently open. Request-specific validation, coverage, and delivery checks still apply."},"actions":[{"id":"agent-service-plan","label":"Read-only agent service plan","mode":"read","status":"enabled","availabilityBasis":"interface-published","confirmationRequired":false,"interfaces":{"rest":"POST /api/v1/service-plans","mcp":"plan_water_heater_service"},"dataConsequence":"Processes equipment identifiers and an optional exact ZIP in one read-only call; it rejects contact fields and creates no handoff, service request, or provider contact.","limitation":"The deterministic next-step rule is not diagnosis, a safety determination, provider endorsement, or proof of coverage. Preserve every returned source, recall, and provider state."},{"id":"equipment-lookup","label":"Equipment lookup","mode":"read","status":"enabled","availabilityBasis":"interface-published","confirmationRequired":false,"interfaces":{"rest":"POST /api/v1/lookup","mcp":"lookup_water_heater"},"dataConsequence":"Processes the submitted equipment identifiers; raw lookup values are excluded from first-party aggregate usage metrics.","limitation":"Official sources can be unavailable. Preserve the source states, evidence, uncertainty, and limitations returned by the actual lookup."},{"id":"provider-discovery","label":"Current provider discovery","mode":"read","status":"enabled","availabilityBasis":"interface-published","confirmationRequired":false,"interfaces":{"rest":"GET /api/v1/providers?postal_code={ZIP}","mcp":"find_service_providers"},"dataConsequence":"Processes an exact five-digit ZIP and optional capability constraints; returned provider records are public and freshness-qualified.","limitation":"An enabled interface does not mean a ZIP has provider coverage. Search the exact ZIP and treat an empty result as no current eligible match."},{"id":"service-handoff","label":"Privacy-first service handoff","mode":"write","status":"disabled","availabilityBasis":"deployment-read-only","confirmationRequired":true,"interfaces":{"rest":"POST /api/v1/service-handoffs","mcp":"prepare_service_request_handoff"},"dataConsequence":"Creates an opaque one-time handoff record. Before the person submits, contact details and service context are not stored by Water Heater Lookup.","limitation":"The private link must be given only to the person requesting service; they review the context and enter their own contact details and consent.","retryContract":"REST requires Idempotency-Key; MCP requires idempotencyKey. Reuse the same key only for an unchanged retry. A replay returns the original private link."},{"id":"direct-service-request","label":"Direct service request","mode":"write","status":"disabled","availabilityBasis":"deployment-read-only","confirmationRequired":true,"interfaces":{"rest":"POST /api/v1/quote-requests","mcp":"request_service_quotes"},"dataConsequence":"Stores supplied contact and service details and may share them with up to three current eligible providers for that request. After every qualification, geography, capability, freshness, access, and capacity gate passes, a request-specific deterministic rotation selects at most three providers. Plan, payment, business name, and public directory position do not affect this selection.","limitation":"Explicit user confirmation is required. An accepted request does not prove provider coverage, response, price, availability, or completed service.","preferredAlternative":"Use the privacy-first service handoff when the person should enter their own contact details and consent on Water Heater Lookup.","retryContract":"REST requires Idempotency-Key; MCP requires idempotencyKey. Reuse the same key only for an unchanged retry. A replay returns the original request and private status link."},{"id":"provider-application","label":"Provider network application","mode":"write","status":"disabled","availabilityBasis":"deployment-read-only","confirmationRequired":true,"interfaces":{"rest":"POST /api/v1/provider-applications"},"dataConsequence":"Stores business contact, license, coverage, capability, insurance-attestation, and terms-acceptance data for private operator review.","limitation":"Submit only with the provider's explicit authorization. Receipt is not approval, public listing, billing, qualification, or endorsement.","retryContract":"REST requires Idempotency-Key. Reuse the same key only for an unchanged retry; changed input requires a new key."},{"id":"provider-record-correction","label":"Provider record correction","mode":"write","status":"disabled","availabilityBasis":"deployment-read-only","confirmationRequired":true,"interfaces":{"rest":"POST /api/v1/providers/{id}/corrections"},"dataConsequence":"Stores a private correction request for operator review; it does not automatically change the public provider record.","limitation":"Use only for a current public provider record and submit accurate contact and correction details with the required consent.","retryContract":"REST requires Idempotency-Key. Reuse the same key only for an unchanged retry; changed input requires a new key."}],"privacy":"This report exposes only low-cardinality action states. It never returns secret values, database addresses, private provider records, contact details, or visitor input.","limitations":["Enabled means the interface is published and, for writes, durable storage, the managed-schema declaration, traffic controls, and retry safety have the expected configuration shape. It does not test database connectivity, table structure, grants, backups, recovery, or end-to-end delivery.","This report does not establish legal approval, provider coverage, operator response, email delivery, billing readiness, analytics, domain readiness, or production launch readiness.","Validation, rate limits, expired access, source failures, retry-key conflicts, and other request-specific conditions can still cause an enabled action to fail.","Service-request intake can be paused independently while read-only service planning, lookup, provider discovery, provider applications, corrections, and existing private request access remain available."]}