如何在Copilot Studio中定义可为空的字符串类型记录属性?
在Copilot Studio中定义可空字符串属性的正确方式
- 不需要使用
Any类型,完全可以明确将middleName定义为字符串或null,关键是要遵循Copilot Studio支持的JSON Schema语法,而非TypeScript的联合类型写法。
正确的Schema写法
在变量类型的Schema编辑器中,针对middleName属性,使用JSON Schema的多类型数组语法,示例如下:
{ "type": "object", "properties": { "middleName": { "type": ["string", "null"] } } }
为什么之前的写法报错
你尝试的String | Blank、[String, Blank]属于TypeScript或非标准写法,Copilot Studio的Schema编辑器基于JSON Schema规范,不识别这类语法,因此会抛出Unknown $kind: "undefined"错误。而JSON Schema中,通过"type": ["类型1", "类型2"]的格式来声明属性允许的多种类型,这里null是JSON Schema支持的原生类型之一。
效果验证
使用上述Schema定义后,当HTTP响应中的middleName为字符串值或null时,都能正常解析,不会触发ValueParsingError,同时保持了类型的明确性,避免使用宽泛的Any类型。
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

