{"openapi":"3.1.0","info":{"title":"EnterSense API","version":"0.1.0"},"paths":{"/api/health":{"get":{"tags":[],"operationId":"health","responses":{"200":{"description":"D1 available"},"503":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}}}}},"/api/inquiries":{"post":{"tags":[],"operationId":"contact","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InquiryRequest"}}},"required":true},"responses":{"202":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Accepted"}}}},"400":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}},"403":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}},"413":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}},"415":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}},"429":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}},"503":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}}}}},"/api/newsletter":{"post":{"tags":[],"operationId":"newsletter","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SignupRequest"}}},"required":true},"responses":{"202":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Accepted"}}}},"400":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}},"403":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}},"413":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}},"415":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}},"429":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}},"503":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactApiError"}}}}}}},"/api/openapi.json":{"get":{"tags":[],"operationId":"openapi","responses":{"200":{"description":"OpenAPI derived from the registered handlers"}}}},"/api/v1/actions":{"get":{"tags":[],"operationId":"get_actions","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Actions"}}}}}}},"/api/v1/capabilities":{"get":{"tags":[],"operationId":"get_capabilities","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Capabilities"}}}}}}},"/api/v1/resolve":{"post":{"tags":[],"operationId":"post_resolve","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolveRequest"}}},"required":true},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolveResponse"}}}},"400":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"413":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"415":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"422":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"503":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}},"/api/v1/templates":{"get":{"tags":[],"operationId":"get_templates","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Templates"}}}}}}},"/api/v1/validate":{"post":{"tags":[],"operationId":"post_validate","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolveRequest"}}},"required":true},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationResponse"}}}},"400":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"413":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"415":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"422":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"503":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}},"components":{"schemas":{"Accepted":{"type":"object","required":["status"],"properties":{"status":{"type":"string"}}},"Action":{"oneOf":[{"type":"object","required":["target","type"],"properties":{"target":{"type":"string"},"type":{"type":"string","enum":["navigation.open"]}},"additionalProperties":false},{"type":"object","required":["text","type"],"properties":{"text":{"type":"string"},"type":{"type":"string","enum":["text.insert"]}},"additionalProperties":false},{"type":"object","required":["target","type"],"properties":{"target":{"type":"string"},"type":{"type":"string","enum":["media.play"]}},"additionalProperties":false},{"type":"object","required":["target","type"],"properties":{"target":{"type":"string"},"type":{"type":"string","enum":["media.pause"]}},"additionalProperties":false},{"type":"object","required":["target","type"],"properties":{"target":{"type":"string"},"type":{"type":"string","enum":["scene.focus"]}},"additionalProperties":false},{"type":"object","required":["target","type"],"properties":{"parameters":{"type":"object","additionalProperties":{"type":"string"},"propertyNames":{"type":"string"}},"target":{"type":"string"},"type":{"type":"string","enum":["workflow.trigger"]}},"additionalProperties":false}]},"ActionDefinition":{"type":"object","required":["type","payload","execution"],"properties":{"execution":{"type":"string"},"payload":{"type":"string"},"type":{"type":"string"}}},"Actions":{"type":"object","required":["version","actions"],"properties":{"actions":{"type":"array","items":{"$ref":"#/components/schemas/ActionDefinition"}},"version":{"type":"string"}}},"ApiError":{"type":"object","required":["error"],"properties":{"error":{"$ref":"#/components/schemas/ErrorDetail"}}},"Capabilities":{"type":"object","required":["version","capabilities"],"properties":{"capabilities":{"type":"array","items":{"$ref":"#/components/schemas/Capability"}},"version":{"type":"string"}}},"Capability":{"type":"object","required":["sense","productStage","apiAvailable","acquisition","note"],"properties":{"acquisition":{"type":"string"},"apiAvailable":{"type":"boolean"},"note":{"type":"string"},"productStage":{"type":"string"},"sense":{"type":"string"}}},"ContactApiError":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}}},"ErrorDetail":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string"},"message":{"type":"string"}}},"Input":{"oneOf":[{"type":"object","required":["transcript","sense"],"properties":{"confidence":{"type":["number","null"],"format":"double","maximum":1,"minimum":0},"sense":{"type":"string","enum":["voice"]},"transcript":{"type":"string"}},"additionalProperties":false},{"type":"object","required":["gesture","sense"],"properties":{"confidence":{"type":["number","null"],"format":"double","maximum":1,"minimum":0},"gesture":{"type":"string"},"sense":{"type":"string","enum":["motion"]}},"additionalProperties":false},{"type":"object","required":["sense"],"properties":{"sense":{"type":"string","enum":["smell"]}},"additionalProperties":false},{"type":"object","required":["sense"],"properties":{"sense":{"type":"string","enum":["taste"]}},"additionalProperties":false},{"type":"object","required":["sense"],"properties":{"sense":{"type":"string","enum":["view"]}},"additionalProperties":false},{"type":"object","required":["sense"],"properties":{"sense":{"type":"string","enum":["touch"]}},"additionalProperties":false}]},"InquiryRequest":{"type":"object","required":["name","email","kind","language","consent"],"properties":{"capitalRange":{"type":["string","null"]},"consent":{"type":"boolean"},"email":{"type":"string"},"kind":{"type":"string"},"language":{"type":"string"},"message":{"type":"string"},"name":{"type":"string"},"organization":{"type":"string"}},"additionalProperties":false},"Intent":{"type":"object","required":["ruleId","action"],"properties":{"action":{"$ref":"#/components/schemas/Action"},"ruleId":{"type":"string"}}},"ResolveRequest":{"type":"object","required":["input","rules"],"properties":{"input":{"$ref":"#/components/schemas/Input"},"rules":{"type":"array","items":{"$ref":"#/components/schemas/Rule"},"maxItems":32}},"additionalProperties":false},"ResolveResponse":{"type":"object","required":["status","intents","execution"],"properties":{"execution":{"type":"string"},"intents":{"type":"array","items":{"$ref":"#/components/schemas/Intent"}},"status":{"type":"string"}}},"Rule":{"type":"object","required":["id","match","action"],"properties":{"action":{"$ref":"#/components/schemas/Action"},"enabled":{"type":"boolean"},"id":{"type":"string"},"match":{"type":"string"},"minConfidence":{"type":["number","null"],"format":"double","maximum":1,"minimum":0}},"additionalProperties":false},"SignupRequest":{"type":"object","required":["email","language","consent"],"properties":{"consent":{"type":"boolean"},"email":{"type":"string"},"language":{"type":"string"}},"additionalProperties":false},"Template":{"type":"object","required":["id","name","request"],"properties":{"id":{"type":"string"},"name":{"type":"string"},"request":{"$ref":"#/components/schemas/ResolveRequest"}}},"Templates":{"type":"object","required":["version","templates"],"properties":{"templates":{"type":"array","items":{"$ref":"#/components/schemas/Template"}},"version":{"type":"string"}}},"ValidationResponse":{"type":"object","required":["valid"],"properties":{"valid":{"type":"boolean"}}}}}}