update_presentation |
Updates a presentation with set of batchUpdate requests. Corresponds to presentations.batchUpdate in the REST API. The list of possible updates is:
createSlide: Creates a new slide. Schema:
objectId (string, optional): A user-supplied object ID. Must be unique if specified (5-50 characters, matching [a-zA-Z0-9_-:]). If omitted, an ID is generated.
insertionIndex (integer, optional): Zero-based index indicating where to insert the slide. If omitted, inserted at the end.
slideLayoutReference (object, optional): Layout reference of the slide to insert (exactly one required if specified):
predefinedLayout (string): Predefined layout name (e.g. "BLANK", "TITLE_AND_BODY", "TITLE", "SECTION_HEADER", "SECTION_TITLE_AND_DESCRIPTION", "ONE_COLUMN_TEXT", "MAIN_POINT", "BIG_NUMBER", "TITLE_AND_TWO_COLUMNS").
layoutId (string): Layout ID from the current master.
placeholderIdMappings (array of objects, optional): Mappings for placeholders from layout to slide. Each item:
layoutPlaceholder (object): {"type": string, "index": integer}.
objectId (string, required): User-supplied object ID for the placeholder element.
createShape: Creates a new shape. Schema:
objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
elementProperties (object, required): Element location and sizing:
pageObjectId (string, required): Object ID of the page where the shape is located.
size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}} (unit: "PT" or "EMU").
transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
shapeType (string, required): Type of shape (e.g. "RECTANGLE", "ROUND_RECTANGLE", "ELLIPSE", "TEXT_BOX", "LINE", etc.).
createTable: Creates a new table. Schema:
objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
elementProperties (object, required): Element location and sizing:
pageObjectId (string, required): Object ID of the page where the table is located.
size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
rows (integer, required): Number of rows in the table.
columns (integer, required): Number of columns in the table.
insertText: Inserts text into a shape or table cell. Schema:
objectId (string, required): Object ID of the shape or table.
cellLocation (object, optional): Table cell if inserting into table: {"rowIndex": integer, "columnIndex": integer}.
text (string, required): Text to insert.
insertionIndex (integer, optional): Zero-based character index where text will be inserted. Defaults to 0.
insertTableRows: Inserts rows into a table. Schema:
tableObjectId (string, required): Object ID of the table.
cellLocation (object, required): Reference cell location: {"rowIndex": integer, "columnIndex": integer}.
insertBelow (boolean, required): Whether to insert new rows below the reference cell.
number (integer, required): Number of rows to insert (maximum 20).
insertTableColumns: Inserts columns into a table. Schema:
tableObjectId (string, required): Object ID of the table.
cellLocation (object, required): Reference cell location: {"rowIndex": integer, "columnIndex": integer}.
insertRight (boolean, required): Whether to insert new columns to the right of the reference cell.
number (integer, required): Number of columns to insert (maximum 20).
deleteTableRow: Deletes a row from a table. Schema:
tableObjectId (string, required): Object ID of the table.
cellLocation (object, required): Reference cell location: {"rowIndex": integer, "columnIndex": integer}. Deletes the row containing this cell.
deleteTableColumn: Deletes a column from a table. Schema:
tableObjectId (string, required): Object ID of the table.
cellLocation (object, required): Reference cell location: {"rowIndex": integer, "columnIndex": integer}. Deletes the column containing this cell.
replaceAllText: Replaces all instances of specified text. Schema:
replaceText (string, required): Replacement text.
containsText (object, required): Criteria for matching text:
text (string, required): Text to search for.
matchCase (boolean, optional): Whether search is case-sensitive.
pageObjectIds (array of strings, optional): If specified, limits replacement to elements on these pages.
deleteObject: Deletes a page or page element from the presentation. Schema:
objectId (string, required): Object ID of the page or page element to delete.
updatePageElementTransform: Updates the transform of a page element. Schema:
objectId (string, required): Object ID of the page element to update.
transform (object, required): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
applyMode (string, required): Transform apply mode: "RELATIVE" or "ABSOLUTE".
updateSlidesPosition: Updates the position of a set of slides in the presentation. Schema:
slideObjectIds (array of strings, required): Object IDs of the slides to move.
insertionIndex (integer, required): Zero-based index where slides will be inserted.
deleteText: Deletes text from a shape or a table cell. Schema:
objectId (string, required): Object ID of the shape or table.
cellLocation (object, optional): Table cell if deleting from table: {"rowIndex": integer, "columnIndex": integer}.
textRange (object, optional): {"startIndex": integer, "endIndex": integer, "type": string}. If omitted, all text is deleted.
createImage: Creates an image. Schema:
objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
url (string, required): URL of the image to fetch and store. Must be publicly accessible.
elementProperties (object, required): Element location and sizing:
pageObjectId (string, required): Object ID of the page where the image will be placed.
size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
createVideo: Creates a video. Schema:
objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
source (string, required): Video source: "YOUTUBE" or "DRIVE".
id (string, required): Video ID (e.g. YouTube video ID).
elementProperties (object, required): Element location and sizing:
pageObjectId (string, required): Object ID of the page where the video will be placed.
size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
createSheetsChart: Creates an embedded Google Sheets chart. Schema:
objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
spreadsheetId (string, required): ID of the Google Sheets spreadsheet containing the chart.
chartId (integer, required): ID of the specific chart in the spreadsheet.
linkingMode (string, required): Linking mode: "LINKED" or "NOT_LINKED_IMAGE".
elementProperties (object, required): Element location and sizing:
pageObjectId (string, required): Object ID of the page where the chart will be placed.
size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
createLine: Creates a line. Schema:
objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
elementProperties (object, required): Element location and sizing:
pageObjectId (string, required): Object ID of the page where the line will be placed.
size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
category (string, required): Line category: "STRAIGHT", "BENT", or "CURVED".
refreshSheetsChart: Refreshes a Google Sheets chart. Schema:
objectId (string, required): Object ID of the chart to refresh.
updateShapeProperties: Updates the properties of a Shape. Schema:
objectId (string, required): Object ID of the shape to update.
shapeProperties (object, required): Shape properties to update:
shapeBackgroundFill (object, optional): {"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}.
outline (object, optional): {"outlineFill": {"solidFill": ...}, "weight": {"magnitude": number, "unit": string}, "dashStyle": string}.
shadow (object, optional): Shadow properties.
link (object, optional): Hyperlink destination: {"url": string}.
fields (string, required): Comma-separated list of fields to update (e.g. "shapeBackgroundFill" or "*").
updateImageProperties: Updates the properties of an Image. Schema:
objectId (string, required): Object ID of the image to update.
imageProperties (object, required): Image properties to update:
cropProperties (object, optional): Crop offsets: {"leftOffset": number, "rightOffset": number, "topOffset": number, "bottomOffset": number, "angle": number}.
transparency (number, optional): Transparency level (0.0 to 1.0).
brightness (number, optional): Brightness adjustment (-1.0 to 1.0).
contrast (number, optional): Contrast adjustment (-1.0 to 1.0).
recolor (object, optional): Recolor effect.
shadow (object, optional): Shadow properties.
outline (object, optional): Outline properties.
link (object, optional): Hyperlink destination: {"url": string}.
fields (string, required): Comma-separated list of fields to update (e.g. "transparency,brightness" or "*").
updateVideoProperties: Updates the properties of a Video. Schema:
objectId (string, required): Object ID of the video to update.
videoProperties (object, required): Video properties to update:
outline (object, optional): Outline properties.
autoPlay (boolean, optional): Whether to play video automatically when presenting.
start (integer, optional): Start time in seconds.
end (integer, optional): End time in seconds.
mute (boolean, optional): Whether audio is muted.
fields (string, required): Comma-separated list of fields to update (e.g. "autoPlay,mute" or "*").
updatePageProperties: Updates the properties of a Page. Schema:
objectId (string, required): Object ID of the page to update.
pageProperties (object, required): Page properties to update:
pageBackgroundFill (object, optional): {"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}} or {"stretchedPictureFill": {"contentUrl": string}}.
colorScheme (object, optional): Theme color scheme.
fields (string, required): Comma-separated list of fields to update (e.g. "pageBackgroundFill" or "*").
updateTableCellProperties: Updates the properties of a TableCell. Schema:
objectId (string, required): Object ID of the table.
tableRange (object, optional): Subset of table cells to update: {"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}. If omitted, applies to all cells.
tableCellProperties (object, required): Cell properties to update:
tableCellBackgroundFill (object, optional): {"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}.
contentAlignment (string, optional): Vertical alignment: "TOP", "MIDDLE", "BOTTOM".
fields (string, required): Comma-separated list of fields to update (e.g. "tableCellBackgroundFill" or "*").
updateLineProperties: Updates the properties of a Line. Schema:
objectId (string, required): Object ID of the line to update.
lineProperties (object, required): Line properties to update:
lineFill (object, optional): {"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}.
weight (object, optional): Line thickness: {"magnitude": number, "unit": string}.
dashStyle (string, optional): Dash style: "SOLID", "DOT", "DASH", "DASH_DOT", "LONG_DASH", "LONG_DASH_DOT".
startArrow (string, optional): Start arrow style: "NONE", "STEALTH_ARROW", "FILL_ARROW", "FILL_CIRCLE", "FILL_SQUARE", "FILL_DIAMOND", "OPEN_ARROW", "OPEN_CIRCLE", "OPEN_SQUARE", "OPEN_DIAMOND".
endArrow (string, optional): End arrow style (same options as startArrow).
link (object, optional): Hyperlink destination: {"url": string}.
fields (string, required): Comma-separated list of fields to update (e.g. "lineFill,weight" or "*").
createParagraphBullets: Creates bullets for paragraphs. Schema:
objectId (string, required): Object ID of the shape or table.
cellLocation (object, optional): Table cell if text is in a table: {"rowIndex": integer, "columnIndex": integer}.
textRange (object, optional): Range of text to bullet: {"startIndex": integer, "endIndex": integer, "type": string}.
bulletPreset (string, optional): Bullet style preset (e.g. "BULLET_DISC_CIRCLE_SQUARE", "BULLET_DIAMONDX_ARROW3D_SQUARE", "NUMBERED_DIGIT_ALPHA_ROMAN", "NUMBERED_DIGIT_NESTED"). Defaults to "BULLET_DISC_CIRCLE_SQUARE".
replaceAllShapesWithImage: Replaces all shapes matching some criteria with an image. Schema:
imageUrl (string, required): Image URL to fetch and insert.
imageReplaceMethod (string, optional): Replacement method: "CENTER_INSIDE" (default) or "CENTER_CROP".
containsText (object, required): Criteria shapes must match:
text (string, required): Text to search for in shapes.
matchCase (boolean, optional): Whether search is case-sensitive.
pageObjectIds (array of strings, optional): If specified, limits replacement to elements on these pages.
duplicateObject: Duplicates a slide or page element. Schema:
objectId (string, required): Object ID of the slide or element to duplicate.
objectIds (object, optional): ID mapping for duplicated elements: {"originalObjectId": "newObjectId"}. If omitted, random IDs are assigned.
updateTextStyle: Updates the styling of text within a Shape or Table. Schema:
objectId (string, required): Object ID of the shape or table.
cellLocation (object, optional): Table cell if text is in a table: {"rowIndex": integer, "columnIndex": integer}.
style (object, required): Text styling properties:
bold (boolean, optional): Whether text is bold.
italic (boolean, optional): Whether text is italic.
fontFamily (string, optional): Font family (e.g. "Arial", "Roboto").
fontSize (object, optional): Font size: {"magnitude": number, "unit": string}.
foregroundColor (object, optional): Font color: {"opaqueColor": {"rgbColor": {"red": number, "green": number, "blue": number}}}.
backgroundColor (object, optional): Text background color: {"opaqueColor": ...}.
underline (boolean, optional): Whether text is underlined.
strikethrough (boolean, optional): Whether text has a strikethrough.
smallCaps (boolean, optional): Whether text is rendered in small capital letters.
baselineOffset (string, optional): "NONE", "SUPERSCRIPT", or "SUBSCRIPT".
link (object, optional): Hyperlink destination: {"url": string}.
textRange (object, optional): Range of text to style: {"startIndex": integer, "endIndex": integer, "type": string}. If omitted, applies to all text.
fields (string, required): Comma-separated list of fields to update (e.g. "bold,foregroundColor" or "*").
replaceAllShapesWithSheetsChart: Replaces all shapes matching some criteria with a Google Sheets chart. Schema:
spreadsheetId (string, required): ID of the Google Sheets spreadsheet containing the chart.
chartId (integer, required): ID of the specific chart in the spreadsheet.
linkingMode (string, required): Linking mode: "LINKED" or "NOT_LINKED_IMAGE".
containsText (object, required): Criteria shapes must match:
text (string, required): Text to search for in shapes.
matchCase (boolean, optional): Whether search is case-sensitive.
pageObjectIds (array of strings, optional): If specified, limits replacement to elements on these pages.
deleteParagraphBullets: Deletes bullets from paragraphs. Schema:
objectId (string, required): Object ID of the shape or table containing text.
cellLocation (object, optional): Table cell if text is in a table: {"rowIndex": integer, "columnIndex": integer}.
textRange (object, optional): Range of text to delete bullets from: {"startIndex": integer, "endIndex": integer, "type": string}.
updateParagraphStyle: Updates the styling of paragraphs within a Shape or Table. Schema:
objectId (string, required): Object ID of the shape or table.
cellLocation (object, optional): Table cell if text is in a table: {"rowIndex": integer, "columnIndex": integer}.
style (object, required): Paragraph style properties:
alignment (string, optional): Text alignment: "START", "CENTER", "END", "JUSTIFIED".
lineSpacing (number, optional): Line spacing percentage (e.g. 100 for 100%).
spaceAbove (object, optional): Space above paragraph: {"magnitude": number, "unit": string}.
spaceBelow (object, optional): Space below paragraph: {"magnitude": number, "unit": string}.
indentFirstLine (object, optional): First line indent: {"magnitude": number, "unit": string}.
indentStart (object, optional): Indent at start: {"magnitude": number, "unit": string}.
indentEnd (object, optional): Indent at end: {"magnitude": number, "unit": string}.
direction (string, optional): Text direction: "LEFT_TO_RIGHT" or "RIGHT_TO_LEFT".
spacingMode (string, optional): Spacing mode: "NEVER_COLLAPSE" or "COLLAPSE_LISTS".
textRange (object, optional): Range of text to style: {"startIndex": integer, "endIndex": integer, "type": string}. If omitted, applies to all text.
fields (string, required): Comma-separated list of fields to update (e.g. "alignment,lineSpacing" or "*").
updateTableBorderProperties: Updates the properties of the table borders in a Table. Schema:
objectId (string, required): Object ID of the table.
tableRange (object, optional): Subset of table borders to update: {"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}. If omitted, applies to entire table.
borderPosition (string, required): Border position: "ALL", "BOTTOM", "INNER", "INNER_HORIZONTAL", "INNER_VERTICAL", "LEFT", "OUTER", "RIGHT", "TOP".
tableBorderProperties (object, required): Border properties to update:
tableBorderFill (object, optional): {"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}.
weight (object, optional): Border thickness: {"magnitude": number, "unit": string}.
dashStyle (string, optional): Dash style: "SOLID", "DOT", "DASH".
fields (string, required): Comma-separated list of fields to update (e.g. "tableBorderFill,weight" or "*").
updateTableColumnProperties: Updates the properties of a Table column. Schema:
objectId (string, required): Object ID of the table.
columnIndices (array of integers, required): Zero-based indices of columns to update.
tableColumnProperties (object, required): Column properties:
columnWidth (object, optional): Width of column: {"magnitude": number, "unit": string}.
fields (string, required): Comma-separated list of fields to update (e.g. "columnWidth" or "*").
updateTableRowProperties: Updates the properties of a Table row. Schema:
objectId (string, required): Object ID of the table.
rowIndices (array of integers, required): Zero-based indices of rows to update.
tableRowProperties (object, required): Row properties:
minRowHeight (object, optional): Minimum row height: {"magnitude": number, "unit": string}.
fields (string, required): Comma-separated list of fields to update (e.g. "minRowHeight" or "*").
mergeTableCells: Merges cells in a Table. Schema:
objectId (string, required): Object ID of the table.
tableRange (object, required): Range of cells to merge: {"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}.
unmergeTableCells: Unmerges cells in a Table. Schema:
objectId (string, required): Object ID of the table.
tableRange (object, required): Range of cells to unmerge: {"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}.
groupObjects: Groups objects, such as page elements. Schema:
groupObjectId (string, optional): A user-supplied object ID for the group. If omitted, an ID is generated.
childrenObjectIds (array of strings, required): Object IDs of the elements to group (at least 2 required, on same page, not already grouped).
ungroupObjects: Ungroups objects, such as groups. Schema:
objectIds (array of strings, required): Object IDs of the groups to ungroup.
updatePageElementAltText: Updates the alt text title and/or description of a page element. Schema:
objectId (string, required): Object ID of the page element.
title (string, optional): Updated alt text title.
description (string, optional): Updated alt text description.
replaceImage: Replaces an existing image with a new image. Schema:
imageObjectId (string, required): Object ID of the existing image to replace.
url (string, required): URL of the new image.
imageReplaceMethod (string, optional): Replacement method: "CENTER_INSIDE" (default) or "CENTER_CROP".
updateSlideProperties: Updates the properties of a Slide. Schema:
objectId (string, required): Object ID of the slide to update.
slideProperties (object, required): Slide properties:
isSkipped (boolean, optional): Whether the slide is skipped in presentation mode.
fields (string, required): Comma-separated list of fields to update (e.g. "isSkipped" or "*").
updatePageElementsZOrder: Updates the Z-order of page elements. Schema:
pageElementObjectIds (array of strings, required): Object IDs of page elements to update (must be on same page, not grouped).
operation (string, required): Z-order operation: "BRING_TO_FRONT", "BRING_FORWARD", "SEND_BACKWARD", "SEND_TO_BACK".
importSlides: Imports one or more specified slide pages from a source presentation to this (destination) presentation. Schema:
sourcePresentationId (string, required): ID of the source presentation.
importIndex (integer, optional): Zero-based index where to import slides. If omitted, imported at the end.
sourceSlides (array of objects, optional): Slide ID mappings: [{"sourceSlideObjectId": string, "destinationObjectIds": {"sourceObjectId": "destinationObjectId"}}]. If omitted, all slides are imported.
preserveTheme (string, optional): Theme preservation policy: "USE_SOURCE_THEME" or "USE_DESTINATION_THEME".
updateLineCategory: Updates the category of a line. Schema:
objectId (string, required): Object ID of the connector line to update.
lineCategory (string, required): Line category: "STRAIGHT", "BENT", or "CURVED".
rerouteLine: Reroutes a line such that it's connected at the two closest connection sites on the connected page elements. Schema:
objectId (string, required): Object ID of the connector line to reroute.
createAudio: Creates audio in this presentation. Schema:
objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
source (string, required): Audio source: "DRIVE".
sourceAudioId (string, required): ID of the audio file in Google Drive.
elementProperties (object, required): Element location and sizing:
pageObjectId (string, required): Object ID of the page where the audio will be placed.
size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
updateAudioProperties: Updates the properties of an Audio. Schema:
objectId (string, required): Object ID of the audio to update.
audioProperties (object, required): Audio properties:
playbackVolume (integer, optional): Playback volume from 0 to 100.
repeat (boolean, optional): Whether to repeat playback indefinitely while presenting.
showWhenPresenting (boolean, optional): Whether the audio clip should be visibly shown while presenting.
playAcrossSlides (boolean, optional): Whether audio continues to play across slides.
fields (string, required): Comma-separated list of fields to update (e.g. "playbackVolume,repeat" or "*").
insertComment: Inserts a comment into the presentation. Schema:
content (string, required): Plain text comment content.
- Anchor (exactly one required):
shapeTextAnchor (object): To anchor to text inside a shape:
shapeId (string, required): The object ID of the shape.
textRange (object, optional): {"startIndex": int, "endIndex": int}.
objectId (string): To anchor to a page or element.
addCommentReply: Adds a reply to an existing comment. Schema:
commentId (string, required): ID of the comment thread.
post (object, required): {"content": "reply text"}.
updateCommentPost: Updates the content of a comment post in a comment thread. Schema:
commentId (string, required): ID of the comment thread.
postId (string, required): ID of the comment post to update.
content (string, required): The updated content of the comment post.
deleteComment: Deletes a comment thread. Schema:
commentId (string, required): ID of the comment thread to delete.
deleteCommentReply: Deletes a reply post. Schema:
commentId (string, required): ID of the comment thread.
postId (string, required): ID of the reply post to delete.
|