工具:update_presentation
使用一组 batchUpdate 请求更新演示。
对应于 REST API 中的 presentations.batchUpdate。
可能的更新列表如下:
createSlide:创建新幻灯片。架构:objectId(字符串,可选):用户提供的对象 ID。如果指定,则必须具有唯一性(5-50 个字符,匹配 [a-zA-Z0-9_-:])。如果省略,系统会生成一个 ID。insertionIndex(整数,可选):从零开始的索引,用于指明要插入幻灯片的位置。如果省略,则插入到末尾。slideLayoutReference(对象,可选):要插入的幻灯片的布局引用(如果指定,则必须指定一个):predefinedLayout(字符串):预定义的布局名称(例如“BLANK”“TITLE_AND_BODY”“TITLE”“SECTION_HEADER”“SECTION_TITLE_AND_DESCRIPTION”“ONE_COLUMN_TEXT”“MAIN_POINT”“BIG_NUMBER”“TITLE_AND_TWO_COLUMNS”)。layoutId(字符串):当前母版的布局 ID。placeholderIdMappings(对象数组,可选):从布局到幻灯片的占位符的映射。每项:layoutPlaceholder(对象):{"type": string, "index": integer}。objectId(字符串,必需):用户为占位元素提供的对象 ID。
createShape:创建新形状。架构:objectId(字符串,可选):用户提供的对象 ID。如果省略,系统会生成一个 ID。elementProperties(对象,必需):元素位置和大小:pageObjectId(字符串,必需):形状所在页面的对象 ID。size(对象,可选):{"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}(单位:“PT”或“EMU”)。transform(对象,可选):AffineTransform{"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}。shapeType(字符串,必需):形状类型(例如“RECTANGLE”“ROUND_RECTANGLE”“ELLIPSE”“TEXT_BOX”“LINE”等)。
createTable:创建新表。架构:objectId(字符串,可选):用户提供的对象 ID。如果省略,系统会生成一个 ID。elementProperties(对象,必需):元素位置和大小:pageObjectId(字符串,必需):表格所在页面的对象 ID。size(对象,可选):{"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}。transform(对象,可选):AffineTransform{"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}。rows(整数,必需):表中的行数。columns(整数,必需):表中的列数。
insertText:将文本插入到形状或表格单元格中。架构:objectId(字符串,必需):形状或表格的对象 ID。cellLocation(对象,可选):如果插入到表格中,则为表格单元格:{"rowIndex": integer, "columnIndex": integer}。text(字符串,必需):要插入的文本。insertionIndex(整数,可选):将插入文本的字符索引(从零开始)。默认值为 0。
insertTableRows:将行插入表中。架构:tableObjectId(字符串,必需):表的对象 ID。cellLocation(对象,必需):参考单元格位置:{"rowIndex": integer, "columnIndex": integer}。insertBelow(布尔值,必需):是否在参考单元格下方插入新行。number(整数,必需):要插入的行数(最多 20 行)。
insertTableColumns:将列插入表中。架构:tableObjectId(字符串,必需):表的对象 ID。cellLocation(对象,必需):参考单元格位置:{"rowIndex": integer, "columnIndex": integer}。insertRight(布尔值,必需):是否在参考单元格的右侧插入新列。number(整数,必需):要插入的列数(最多 20 列)。
deleteTableRow:从表中删除一行。架构:tableObjectId(字符串,必需):表的对象 ID。cellLocation(对象,必需):参考单元格位置:{"rowIndex": integer, "columnIndex": integer}。删除包含相应单元格的行。
deleteTableColumn:从表中删除列。架构:tableObjectId(字符串,必需):表的对象 ID。cellLocation(对象,必需):参考单元格位置:{"rowIndex": integer, "columnIndex": integer}。删除包含相应单元格的列。
replaceAllText:替换指定文本的所有实例。架构:replaceText(字符串,必需):替换文本。containsText(对象,必需):用于匹配文本的标准:text(字符串,必需):要搜索的文本。matchCase(布尔值,可选):搜索是否区分大小写。pageObjectIds(字符串数组,可选):如果指定,则将替换限制为仅替换这些页面上的元素。
deleteObject:从演示中删除页面或页面元素。架构:objectId(字符串,必需):要删除的网页或页面元素的 ID。
updatePageElementTransform:更新页面元素的变换。架构:objectId(字符串,必需):要更新的页面元素的 ID。transform(对象,必需):AffineTransform{"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}。applyMode(字符串,必需):转换应用模式:“RELATIVE”或“ABSOLUTE”。
updateSlidesPosition:更新演示文稿中一组幻灯片的位置。架构:slideObjectIds(字符串数组,必需):要移动的幻灯片的 ID。insertionIndex(整数,必需):将插入幻灯片的索引(从零开始)。
deleteText:从形状或表格单元格中删除文本。架构:objectId(字符串,必需):形状或表格的对象 ID。cellLocation(对象,可选):如果从表格中删除,则为表格单元格:{"rowIndex": integer, "columnIndex": integer}。textRange(对象,可选):{"startIndex": integer, "endIndex": integer, "type": string}。如果省略,则删除所有文本。
createImage:创建映像。架构:objectId(字符串,可选):用户提供的对象 ID。如果省略,系统会生成一个 ID。url(字符串,必需):要提取和存储的图片的网址。必须可公开访问。elementProperties(对象,必需):元素位置和大小:pageObjectId(字符串,必需):放置图片的网页的对象 ID。size(对象,可选):{"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}。transform(对象,可选):AffineTransform{"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}。
createVideo:创建视频。架构:objectId(字符串,可选):用户提供的对象 ID。如果省略,系统会生成一个 ID。source(字符串,必需):视频来源:“YOUTUBE”或“DRIVE”。id(字符串,必需):视频 ID(例如 YouTube 视频 ID)。elementProperties(对象,必需):元素位置和大小:pageObjectId(字符串,必需):放置视频的网页的对象 ID。size(对象,可选):{"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}。transform(对象,可选):AffineTransform{"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}。
createSheetsChart:创建嵌入式 Google 表格图表。架构:objectId(字符串,可选):用户提供的对象 ID。如果省略,系统会生成一个 ID。spreadsheetId(字符串,必需):包含图表的 Google 表格的 ID。chartId(整数,必需):电子表格中特定图表的 ID。linkingMode(字符串,必需):关联模式:“LINKED”或“NOT_LINKED_IMAGE”。elementProperties(对象,必需):元素位置和大小:pageObjectId(字符串,必需):放置图表的网页的对象 ID。size(对象,可选):{"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}。transform(对象,可选):AffineTransform{"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}。
createLine:创建一条线。架构:objectId(字符串,可选):用户提供的对象 ID。如果省略,系统会生成一个 ID。elementProperties(对象,必需):元素位置和大小:pageObjectId(字符串,必需):放置线条的页面的对象 ID。size(对象,可选):{"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}。transform(对象,可选):AffineTransform{"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}。category(字符串,必需):线条类别:“STRAIGHT”“BENT”或“CURVED”。
refreshSheetsChart:刷新 Google 表格图表。架构:objectId(字符串,必需):要刷新的图表的对象 ID。
updateShapeProperties:更新形状的属性。架构:objectId(字符串,必需):要更新的形状的对象 ID。shapeProperties(对象,必需):要更新的形状属性:shapeBackgroundFill(对象,可选):{"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}。outline(对象,可选):{"outlineFill": {"solidFill": ...}, "weight": {"magnitude": number, "unit": string}, "dashStyle": string}。shadow(对象,可选):阴影属性。link(对象,可选):超链接目标:{"url": string}。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"shapeBackgroundFill"或"*")。
updateImageProperties:更新映像的属性。架构:objectId(字符串,必需):要更新的图片的 ID。imageProperties(对象,必需):要更新的图片属性:cropProperties(对象,可选):剪裁偏移量:{"leftOffset": number, "rightOffset": number, "topOffset": number, "bottomOffset": number, "angle": number}。transparency(数字,可选):透明度级别(0.0 到 1.0)。brightness(数字,可选):亮度调整(-1.0 到 1.0)。contrast(数字,可选):对比度调整(-1.0 到 1.0)。recolor(对象,可选):重新着色效果。shadow(对象,可选):阴影属性。outline(对象,可选):轮廓属性。link(对象,可选):超链接目标:{"url": string}。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"transparency,brightness"或"*")。
updateVideoProperties:更新视频的属性。架构:objectId(字符串,必需):要更新的视频的对象 ID。videoProperties(对象,必需):要更新的视频属性:outline(对象,可选):轮廓属性。autoPlay(布尔值,可选):是否在演示时自动播放视频。start(整数,可选):开始时间(以秒为单位)。end(整数,可选):结束时间(以秒为单位)。mute(布尔值,可选):音频是否静音。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"autoPlay,mute"或"*")。
updatePageProperties:更新网页的属性。架构:objectId(字符串,必需):要更新的网页的对象 ID。pageProperties(对象,必需):要更新的网页属性:pageBackgroundFill(对象,可选):{"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}或{"stretchedPictureFill": {"contentUrl": string}}。colorScheme(对象,可选):主题配色方案。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"pageBackgroundFill"或"*")。
updateTableCellProperties:更新 TableCell 的属性。架构:objectId(字符串,必需):表的对象 ID。tableRange(对象,可选):要更新的表格单元格的子集:{"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}。如果省略,则适用于所有单元格。tableCellProperties(对象,必需):要更新的单元格属性:tableCellBackgroundFill(对象,可选):{"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}。contentAlignment(字符串,可选):垂直对齐方式:“TOP”“MIDDLE”“BOTTOM”。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"tableCellBackgroundFill"或"*")。
updateLineProperties:更新 Line 的属性。架构:objectId(字符串,必需):要更新的行的对象 ID。lineProperties(对象,必需):要更新的线条属性:lineFill(对象,可选):{"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}。weight(对象,可选):线条粗细:{"magnitude": number, "unit": string}。dashStyle(字符串,可选):虚线样式:“SOLID”“DOT”“DASH”“DASH_DOT”“LONG_DASH”“LONG_DASH_DOT”。startArrow(字符串,可选):起始箭头样式:“NONE”“STEALTH_ARROW”“FILL_ARROW”“FILL_CIRCLE”“FILL_SQUARE”“FILL_DIAMOND”“OPEN_ARROW”“OPEN_CIRCLE”“OPEN_SQUARE”“OPEN_DIAMOND”。endArrow(字符串,可选):结束箭头样式(与startArrow相同的选项)。link(对象,可选):超链接目标:{"url": string}。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"lineFill,weight"或"*")。
createParagraphBullets:为段落创建项目符号。架构:objectId(字符串,必需):形状或表格的对象 ID。cellLocation(对象,可选):如果文本位于表格中,则为表格单元格:{"rowIndex": integer, "columnIndex": integer}。textRange(对象,可选):要添加项目符号的文本范围:{"startIndex": integer, "endIndex": integer, "type": string}。bulletPreset(字符串,可选):项目符号样式预设(例如“BULLET_DISC_CIRCLE_SQUARE”“BULLET_DIAMONDX_ARROW3D_SQUARE”“NUMBERED_DIGIT_ALPHA_ROMAN”“NUMBERED_DIGIT_NESTED”)。默认为“BULLET_DISC_CIRCLE_SQUARE”。
replaceAllShapesWithImage:将符合某些条件的所有形状替换为图片。架构:imageUrl(字符串,必需):要提取和插入的图片网址。imageReplaceMethod(字符串,可选):替换方法:“CENTER_INSIDE”(默认)或“CENTER_CROP”。containsText(对象,必需):条件形状必须匹配:text(字符串,必需):要在形状中搜索的文本。matchCase(布尔值,可选):搜索是否区分大小写。pageObjectIds(字符串数组,可选):如果指定,则将替换限制为仅替换这些页面上的元素。
duplicateObject:复制幻灯片或页面元素。架构:objectId(字符串,必需):要复制的幻灯片或元素的 ID。objectIds(对象,可选):重复元素的 ID 映射:{"originalObjectId": "newObjectId"}。如果省略,则分配随机 ID。
updateTextStyle:更新形状或表格内文本的样式。架构:objectId(字符串,必需):形状或表格的对象 ID。cellLocation(对象,可选):如果文本位于表格中,则为表格单元格:{"rowIndex": integer, "columnIndex": integer}。style(对象,必需):文字样式属性:bold(布尔值,可选):文本是否为粗体。italic(布尔值,可选):文本是否为斜体。fontFamily(字符串,可选):字体系列(例如“Arial”“Roboto”)。fontSize(对象,可选):字号:{"magnitude": number, "unit": string}。foregroundColor(对象,可选):字体颜色:{"opaqueColor": {"rgbColor": {"red": number, "green": number, "blue": number}}}。backgroundColor(对象,可选):文本背景颜色:{"opaqueColor": ...}。underline(布尔值,可选):文本是否带有下划线。strikethrough(布尔值,可选):文本是否带有删除线。smallCaps(布尔值,可选):文本是否以小型大写字母呈现。baselineOffset(字符串,可选):“NONE”“SUPERSCRIPT”或“SUBSCRIPT”。link(对象,可选):超链接目标:{"url": string}。textRange(对象,可选):要设置样式的文本范围:{"startIndex": integer, "endIndex": integer, "type": string}。如果省略,则适用于所有文本。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"bold,foregroundColor"或"*")。
replaceAllShapesWithSheetsChart:将符合某些条件的所有形状替换为 Google 表格图表。架构:spreadsheetId(字符串,必需):包含图表的 Google 表格的 ID。chartId(整数,必需):电子表格中特定图表的 ID。linkingMode(字符串,必需):关联模式:“LINKED”或“NOT_LINKED_IMAGE”。containsText(对象,必需):条件形状必须匹配:text(字符串,必需):要在形状中搜索的文本。matchCase(布尔值,可选):搜索是否区分大小写。pageObjectIds(字符串数组,可选):如果指定,则将替换限制为仅替换这些页面上的元素。
deleteParagraphBullets:从段落中删除项目符号。架构:objectId(字符串,必需):包含文本的形状或表的 ID。cellLocation(对象,可选):如果文本位于表格中,则为表格单元格:{"rowIndex": integer, "columnIndex": integer}。textRange(对象,可选):要删除项目符号的文本范围:{"startIndex": integer, "endIndex": integer, "type": string}。
updateParagraphStyle:更新形状或表格中段落的样式。架构:objectId(字符串,必需):形状或表格的对象 ID。cellLocation(对象,可选):如果文本位于表格中,则为表格单元格:{"rowIndex": integer, "columnIndex": integer}。style(对象,必需):段落样式属性:alignment(字符串,可选):文本对齐方式:“START”“CENTER”“END”“JUSTIFIED”。lineSpacing(数字,可选):行间距百分比(例如,100 表示 100%)。spaceAbove(对象,可选):段落上方的空间:{"magnitude": number, "unit": string}。spaceBelow(对象,可选):段落下方的空间:{"magnitude": number, "unit": string}。indentFirstLine(对象,可选):首行缩进:{"magnitude": number, "unit": string}。indentStart(对象,可选):开头缩进:{"magnitude": number, "unit": string}。indentEnd(对象,可选):末尾缩进:{"magnitude": number, "unit": string}。direction(字符串,可选):文字方向:“LEFT_TO_RIGHT”或“RIGHT_TO_LEFT”。spacingMode(字符串,可选):间距模式:“NEVER_COLLAPSE”或“COLLAPSE_LISTS”。textRange(对象,可选):要设置样式的文本范围:{"startIndex": integer, "endIndex": integer, "type": string}。如果省略,则适用于所有文本。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"alignment,lineSpacing"或"*")。
updateTableBorderProperties:更新表格中表格边框的属性。架构:objectId(字符串,必需):表的对象 ID。tableRange(对象,可选):要更新的表格边框的子集:{"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}。如果省略,则应用于整个表格。borderPosition(字符串,必需):边框位置:“ALL”“BOTTOM”“INNER”“INNER_HORIZONTAL”“INNER_VERTICAL”“LEFT”“OUTER”“RIGHT”“TOP”。tableBorderProperties(对象,必需):要更新的边框属性:tableBorderFill(对象,可选):{"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}。weight(对象,可选):边框粗细:{"magnitude": number, "unit": string}。dashStyle(字符串,可选):虚线样式:“SOLID”“DOT”“DASH”。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"tableBorderFill,weight"或"*")。
updateTableColumnProperties:更新表格列的属性。架构:objectId(字符串,必需):表的对象 ID。columnIndices(整数数组,必需):要更新的列的从零开始的索引。tableColumnProperties(对象,必需):列属性:columnWidth(对象,可选):列的宽度:{"magnitude": number, "unit": string}。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"columnWidth"或"*")。
updateTableRowProperties:更新 Table 行的属性。架构:objectId(字符串,必需):表的对象 ID。rowIndices(整数数组,必需):要更新的行的从零开始的索引。tableRowProperties(对象,必需):行属性:minRowHeight(对象,可选):最小行高:{"magnitude": number, "unit": string}。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"minRowHeight"或"*")。
mergeTableCells:合并表格中的单元格。架构:objectId(字符串,必需):表的对象 ID。tableRange(对象,必需):要合并的单元格范围:{"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}。
unmergeTableCells:取消合并表格中的单元格。架构:objectId(字符串,必需):表的对象 ID。tableRange(对象,必需):要取消合并的单元格范围:{"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}。
groupObjects:对对象(例如页面元素)进行分组。架构:groupObjectId(字符串,可选):用户提供的群组对象 ID。如果省略,系统会生成一个 ID。childrenObjectIds(字符串数组,必需):要分组的元素的 ID(至少需要 2 个,位于同一页面上,尚未分组)。
ungroupObjects:取消对象(例如群组)的分组。架构:objectIds(字符串数组,必需):要取消分组的群组的对象 ID。
updatePageElementAltText:更新页面元素的替代文本标题和/或说明。架构:objectId(字符串,必需):页面元素的 ID。title(字符串,可选):更新后的替代文本标题。description(字符串,可选):更新后的替代文本说明。
replaceImage:使用新图片替换现有图片。架构:imageObjectId(字符串,必需):要替换的现有图片的 ID。url(字符串,必需):新图片的网址。imageReplaceMethod(字符串,可选):替换方法:“CENTER_INSIDE”(默认)或“CENTER_CROP”。
updateSlideProperties:更新幻灯片的属性。架构:objectId(字符串,必需):要更新的幻灯片的 ID。slideProperties(对象,必需):幻灯片属性:isSkipped(布尔值,可选):在演示模式下是否跳过相应幻灯片。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"isSkipped"或"*")。
updatePageElementsZOrder:更新页面元素的 Z 顺序。架构:pageElementObjectIds(字符串数组,必需):要更新的页面元素的 ID(必须位于同一页面上,且未分组)。operation(字符串,必需):Z 顺序操作:“BRING_TO_FRONT”“BRING_FORWARD”“SEND_BACKWARD”“SEND_TO_BACK”。
importSlides:将源演示文稿中的一个或多个指定幻灯片页面导入到此(目标)演示文稿中。架构:sourcePresentationId(字符串,必需):来源展示的 ID。importIndex(整数,可选):导入幻灯片的索引(从零开始)。如果省略,则导入到末尾。sourceSlides(对象数组,可选):幻灯片 ID 映射:[{"sourceSlideObjectId": string, "destinationObjectIds": {"sourceObjectId": "destinationObjectId"}}]。如果省略,则导入所有幻灯片。preserveTheme(字符串,可选):主题保留政策:“USE_SOURCE_THEME”或“USE_DESTINATION_THEME”。
updateLineCategory:更新某行的类别。架构:objectId(字符串,必需):要更新的连接器线的对象 ID。lineCategory(字符串,必需):线条类别:“STRAIGHT”“BENT”或“CURVED”。
rerouteLine:重新规划线条,使其连接到所连接页面元素上最近的两个连接点。架构:objectId(字符串,必需):要重新路由的连接器线的对象 ID。
createAudio:在此演示中创建音频。架构:objectId(字符串,可选):用户提供的对象 ID。如果省略,系统会生成一个 ID。source(字符串,必需):音频来源:“DRIVE”。sourceAudioId(字符串,必需):Google 云端硬盘中音频文件的 ID。elementProperties(对象,必需):元素位置和大小:pageObjectId(字符串,必需):放置音频的网页的对象 ID。size(对象,可选):{"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}。transform(对象,可选):AffineTransform{"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}。
updateAudioProperties:更新音频的属性。架构:objectId(字符串,必需):要更新的音频的对象 ID。audioProperties(对象,必需):音频属性:playbackVolume(整数,可选):播放音量,范围为 0 到 100。repeat(布尔值,可选):在演示时是否无限期重复播放。showWhenPresenting(布尔值,可选):在演示时是否应显示音频片段。playAcrossSlides(布尔值,可选):音频是否在幻灯片之间持续播放。fields(字符串,必需):要更新的字段的英文逗号分隔列表(例如"playbackVolume,repeat"或"*")。
insertComment:在演示文稿中插入注释。架构:content(字符串,必需):纯文本评论内容。- 锚定广告(必须提供且只能提供 1 项):
shapeTextAnchor(对象):锚定到形状内的文本:shapeId(字符串,必需):形状的对象 ID。textRange(对象,可选):{"startIndex": int, "endIndex": int}。
objectId(字符串):用于锚定到网页或元素。
addCommentReply:向现有评论添加回复。架构:commentId(字符串,必需):评论串的 ID。post(对象,必需):{"content": "reply text"}。
updateCommentPost:更新评论串中评论帖子的内容。架构:commentId(字符串,必需):评论串的 ID。postId(字符串,必需):要更新的评论帖子的 ID。content(字符串,必需):评论帖子的更新后内容。
deleteComment:删除评论串。架构:commentId(字符串,必需):要删除的评论串的 ID。
deleteCommentReply:删除回复帖子。架构:commentId(字符串,必需):评论串的 ID。postId(字符串,必需):要删除的回复帖子的 ID。
以下代码示例展示了如何使用 curl 调用 update_presentation MCP 工具。
| Curl 请求 |
|---|
curl --location 'https://slidesmcp.googleapis.com/mcp/v1' \ --header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "update_presentation", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
输入架构
更新演示文稿的请求。
UpdatePresentationRequest
| JSON 表示法 |
|---|
{
"presentationId": string,
"requests": [
{
object
}
],
"writeControl": {
object ( |
| 字段 | |
|---|---|
presentationId |
必需。要更新的演示的 ID。 |
requests[] |
必需。一批 batchUpdate 请求的列表,使用 https://developers.google.com/workspace/slides/api/reference/rest/v1/presentations/request 中记录的架构和语义 |
writeControl |
可选。提供对写入请求执行方式的控制。 |
结构体
| JSON 表示法 |
|---|
{ "fields": { string: value, ... } } |
| 字段 | |
|---|---|
fields |
无序的动态类型值映射。 包含一系列 |
FieldsEntry
| JSON 表示法 |
|---|
{ "key": string, "value": value } |
| 字段 | |
|---|---|
key |
|
value |
|
值
| JSON 表示法 |
|---|
{ "nullValue": null, "numberValue": number, "stringValue": string, "boolValue": boolean, "structValue": { object }, "listValue": array } |
| 字段 | |
|---|---|
联合字段 kind。值的类型。kind 只能是下列其中一项: |
|
nullValue |
表示 JSON |
numberValue |
表示 JSON 数字。不得为 |
stringValue |
表示 JSON 字符串。 |
boolValue |
表示 JSON 布尔值(JSON 中的 |
structValue |
表示 JSON 对象。 |
listValue |
表示 JSON 数组。 |
ListValue
| JSON 表示法 |
|---|
{ "values": [ value ] } |
| 字段 | |
|---|---|
values[] |
动态类型值的重复字段。 |
WriteControl
| JSON 表示法 |
|---|
{ "requiredRevisionId": string } |
| 字段 | |
|---|---|
requiredRevisionId |
写入请求所需的演示的修订版本 ID。如果指定了此参数,但所需的修订版本 ID 与演示文稿的当前修订版本 ID 不匹配,则系统不会处理相应请求,并会返回 400 错误请求错误。 |
NullValue
表示 JSON null。
NullValue 是一个标记,使用只有一个值的枚举来表示 Value 类型联合的 null 值。
如果类型为 NullValue 的字段的值不是 0,则视为无效。大多数 ProtoJSON 序列化程序都会发出一个 Value,并将 null_value 设置为 JSON null,无论整数值是多少,因此会往返于 0 值。
| 枚举 | |
|---|---|
NULL_VALUE |
Null 值。 |
输出架构
UpdatePresentation 响应。
UpdatePresentationResponse
| JSON 表示法 |
|---|
{ "replies": [ { object } ] } |
| 字段 | |
|---|---|
replies[] |
一组 batchUpdate 响应,使用 https://developers.google.com/workspace/slides/api/reference/rest/v1/presentations/response 中记录的架构和语义 |
结构体
| JSON 表示法 |
|---|
{ "fields": { string: value, ... } } |
| 字段 | |
|---|---|
fields |
无序的动态类型值映射。 包含一系列 |
FieldsEntry
| JSON 表示法 |
|---|
{ "key": string, "value": value } |
| 字段 | |
|---|---|
key |
|
value |
|
值
| JSON 表示法 |
|---|
{ "nullValue": null, "numberValue": number, "stringValue": string, "boolValue": boolean, "structValue": { object }, "listValue": array } |
| 字段 | |
|---|---|
联合字段 kind。值的类型。kind 只能是下列其中一项: |
|
nullValue |
表示 JSON |
numberValue |
表示 JSON 数字。不得为 |
stringValue |
表示 JSON 字符串。 |
boolValue |
表示 JSON 布尔值(JSON 中的 |
structValue |
表示 JSON 对象。 |
listValue |
表示 JSON 数组。 |
ListValue
| JSON 表示法 |
|---|
{ "values": [ value ] } |
| 字段 | |
|---|---|
values[] |
动态类型值的重复字段。 |
NullValue
表示 JSON null。
NullValue 是一个标记,使用只有一个值的枚举来表示 Value 类型联合的 null 值。
如果类型为 NullValue 的字段的值不是 0,则视为无效。大多数 ProtoJSON 序列化程序都会发出一个 Value,并将 null_value 设置为 JSON null,无论整数值是多少,因此会往返于 0 值。
| 枚举 | |
|---|---|
NULL_VALUE |
Null 值。 |
工具注释
工具注释会发送给 MCP 客户端,用于描述指定工具的基本风险。大多数客户端会将这些提示视为不受信任的,但它们可用于确定何时向用户发送确认提示。
除了标题字符串之外,还定义了以下布尔值提示:
readOnlyHint:如果为 true,则工具不会修改其环境。默认值:false。destructiveHint:如果为 true,则工具可以执行破坏性操作。如果为 false,则该工具只能执行添加操作。默认值:true。idempotentHint:如果为 true,则使用相同实参重复调用该工具不会对其环境产生任何额外影响。默认值:false。openWorldHint:如果为 true,则工具可以与外部实体的“开放世界”进行交互。如果为 false,则该工具只能与内部实体互动。例如,网络搜索工具是开放世界,而内存工具不是开放世界。
破坏性提示:✅ | 幂等性提示:❌ | 只读提示:❌ | 开放世界提示:✅
授权范围
需要以下 OAuth 范围之一:
https://www.googleapis.com/auth/drivehttps://www.googleapis.com/auth/drive.filehttps://www.googleapis.com/auth/presentations