{ "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "DynamicToolCallOutputContentItem": { "oneOf": [ { "properties": { "text": { "type": "string" }, "type": { "enum": [ "inputText" ], "title": "InputTextDynamicToolCallOutputContentItemType", "type": "string" } }, "required": [ "text", "type" ], "title": "InputTextDynamicToolCallOutputContentItem", "type": "object" }, { "properties": { "imageUrl": { "type": "string" }, "type": { "enum": [ "inputImage" ], "title": "InputImageDynamicToolCallOutputContentItemType", "type": "string" } }, "required": [ "imageUrl", "type" ], "title": "InputImageDynamicToolCallOutputContentItem", "type": "object" } ] }, "DynamicToolCallResult": { "oneOf": [ { "description": "Preferred structured tool output (for example text + images) that is forwarded directly to the model as content items.", "properties": { "contentItems": { "items": { "$ref": "#/definitions/DynamicToolCallOutputContentItem" }, "type": "array" }, "type": { "enum": [ "contentItems" ], "title": "ContentItemsDynamicToolCallResultType", "type": "string" } }, "required": [ "contentItems", "type" ], "title": "ContentItemsDynamicToolCallResult", "type": "object" }, { "description": "Plain-text tool output.", "properties": { "output": { "type": "string" }, "type": { "enum": [ "output" ], "title": "OutputDynamicToolCallResultType", "type": "string" } }, "required": [ "output", "type" ], "title": "OutputDynamicToolCallResult", "type": "object" } ] } }, "properties": { "result": { "$ref": "#/definitions/DynamicToolCallResult" }, "success": { "type": "boolean" } }, "required": [ "result", "success" ], "title": "DynamicToolCallResponse", "type": "object" }