{"openapi":"3.1.0","info":{"title":"Vidabyte API","version":"2.0.0"},"x-human-only":["final proposal delivery","contract registration","price changes","access to customer data"],"components":{"securitySchemes":{"agentKey":{"type":"http","scheme":"bearer"}}},"paths":{"/api/public":{"get":{"summary":"Published content","responses":{"200":{"description":"Services, industries, knowledge and public settings"}}}},"/api/knowledge/search":{"get":{"summary":"Search verified knowledge","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":2,"maxLength":200}}],"responses":{"200":{"description":"Ranked excerpts with URLs"}}}},"/api/leads":{"post":{"summary":"Submit a lead with consent","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","goal","consent"],"anyOf":[{"required":["email"]},{"required":["phone"]}],"properties":{"name":{"type":"string","minLength":2,"maxLength":100},"email":{"type":"string","format":"email"},"goal":{"type":"string","minLength":5,"maxLength":1200},"consent":{"const":true,"description":"The person explicitly agreed."},"phone":{"type":"string","description":"Email or phone is required."},"pagePath":{"type":"string","description":"The page the request came from."},"company":{"type":"string"},"budget":{"type":"string"},"timeline":{"type":"string"},"serviceIds":{"type":"array","items":{"type":"string"},"maxItems":10}}}}}},"responses":{"201":{"description":"Tracking ID"},"400":{"description":"Invalid request"}}}},"/api/agent/leads":{"post":{"summary":"Submit a lead as an authorized agent","security":[{"agentKey":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","goal","consent","consentStatement"],"anyOf":[{"required":["email"]},{"required":["phone"]}],"properties":{"name":{"type":"string","minLength":2,"maxLength":100},"email":{"type":"string","format":"email"},"goal":{"type":"string","minLength":5,"maxLength":1200},"consent":{"const":true,"description":"The person explicitly agreed."},"phone":{"type":"string","description":"Email or phone is required."},"pagePath":{"type":"string","description":"The page the request came from."},"company":{"type":"string"},"budget":{"type":"string"},"timeline":{"type":"string"},"serviceIds":{"type":"array","items":{"type":"string"},"maxItems":10},"consentStatement":{"type":"string","minLength":10,"description":"What the person agreed to, in their own terms."}}}}}},"responses":{"201":{"description":"Tracking ID"},"401":{"description":"Missing or invalid key"},"403":{"description":"The key lacks this scope"}}}},"/api/agent/leads/{id}":{"get":{"summary":"Status of a request submitted by this key","security":[{"agentKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Status only, without personal data"},"404":{"description":"Not found for this key"}}}}}}