{
  "batchPath": "batch",
  "baseUrl": "https://slides.googleapis.com/",
  "discoveryVersion": "v1",
  "name": "slides",
  "parameters": {
    "fields": {
      "type": "string",
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query"
    },
    "upload_protocol": {
      "location": "query",
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "type": "string"
    },
    "oauth_token": {
      "location": "query",
      "type": "string",
      "description": "OAuth 2.0 token for the current user."
    },
    "$.xgafv": {
      "description": "V1 error format.",
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "enum": [
        "1",
        "2"
      ],
      "type": "string"
    },
    "alt": {
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "default": "json",
      "description": "Data format for response.",
      "type": "string",
      "location": "query",
      "enum": [
        "json",
        "media",
        "proto"
      ]
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "type": "string",
      "location": "query"
    },
    "callback": {
      "type": "string",
      "location": "query",
      "description": "JSONP"
    },
    "prettyPrint": {
      "default": "true",
      "location": "query",
      "type": "boolean",
      "description": "Returns response with indentations and line breaks."
    },
    "uploadType": {
      "location": "query",
      "type": "string",
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")."
    },
    "access_token": {
      "type": "string",
      "location": "query",
      "description": "OAuth access token."
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    }
  },
  "ownerDomain": "google.com",
  "title": "Google Slides API",
  "icons": {
    "x32": "http://www.google.com/images/icons/product/search-32.gif",
    "x16": "http://www.google.com/images/icons/product/search-16.gif"
  },
  "schemas": {
    "ThemeColorPair": {
      "properties": {
        "type": {
          "type": "string",
          "description": "The type of the theme color.",
          "enum": [
            "THEME_COLOR_TYPE_UNSPECIFIED",
            "DARK1",
            "LIGHT1",
            "DARK2",
            "LIGHT2",
            "ACCENT1",
            "ACCENT2",
            "ACCENT3",
            "ACCENT4",
            "ACCENT5",
            "ACCENT6",
            "HYPERLINK",
            "FOLLOWED_HYPERLINK",
            "TEXT1",
            "BACKGROUND1",
            "TEXT2",
            "BACKGROUND2"
          ],
          "enumDescriptions": [
            "Unspecified theme color. This value should not be used.",
            "Represents the first dark color.",
            "Represents the first light color.",
            "Represents the second dark color.",
            "Represents the second light color.",
            "Represents the first accent color.",
            "Represents the second accent color.",
            "Represents the third accent color.",
            "Represents the fourth accent color.",
            "Represents the fifth accent color.",
            "Represents the sixth accent color.",
            "Represents the color to use for hyperlinks.",
            "Represents the color to use for visited hyperlinks.",
            "Represents the first text color.",
            "Represents the first background color.",
            "Represents the second text color.",
            "Represents the second background color."
          ]
        },
        "color": {
          "description": "The concrete color corresponding to the theme color type above.",
          "$ref": "RgbColor"
        }
      },
      "id": "ThemeColorPair",
      "type": "object",
      "description": "A pair mapping a theme color type to the concrete color it represents."
    },
    "LineConnection": {
      "description": "The properties for one end of a Line connection.",
      "properties": {
        "connectedObjectId": {
          "type": "string",
          "description": "The object ID of the connected page element. Some page elements, such as groups, tables, and lines do not have connection sites and therefore cannot be connected to a connector line."
        },
        "connectionSiteIndex": {
          "description": "The index of the connection site on the connected page element. In most cases, it corresponds to the predefined connection site index from the ECMA-376 standard. More information on those connection sites can be found in the description of the \"cnx\" attribute in section 20.1.9.9 and Annex H. \"Predefined DrawingML Shape and Text Geometries\" of \"Office Open XML File Formats-Fundamentals and Markup Language Reference\", part 1 of [ECMA-376 5th edition] (http://www.ecma-international.org/publications/standards/Ecma-376.htm). The position of each connection site can also be viewed from Slides editor.",
          "type": "integer",
          "format": "int32"
        }
      },
      "type": "object",
      "id": "LineConnection"
    },
    "TableCellProperties": {
      "description": "The properties of the TableCell.",
      "properties": {
        "tableCellBackgroundFill": {
          "description": "The background fill of the table cell. The default fill matches the fill for newly created table cells in the Slides editor.",
          "$ref": "TableCellBackgroundFill"
        },
        "contentAlignment": {
          "enum": [
            "CONTENT_ALIGNMENT_UNSPECIFIED",
            "CONTENT_ALIGNMENT_UNSUPPORTED",
            "TOP",
            "MIDDLE",
            "BOTTOM"
          ],
          "type": "string",
          "enumDescriptions": [
            "An unspecified content alignment. The content alignment is inherited from the parent if it exists.",
            "An unsupported content alignment.",
            "An alignment that aligns the content to the top of the content holder. Corresponds to ECMA-376 ST_TextAnchoringType 't'.",
            "An alignment that aligns the content to the middle of the content holder. Corresponds to ECMA-376 ST_TextAnchoringType 'ctr'.",
            "An alignment that aligns the content to the bottom of the content holder. Corresponds to ECMA-376 ST_TextAnchoringType 'b'."
          ],
          "description": "The alignment of the content in the table cell. The default alignment matches the alignment for newly created table cells in the Slides editor."
        }
      },
      "type": "object",
      "id": "TableCellProperties"
    },
    "AutoText": {
      "properties": {
        "content": {
          "description": "The rendered content of this auto text, if available.",
          "type": "string"
        },
        "style": {
          "$ref": "TextStyle",
          "description": "The styling applied to this auto text."
        },
        "type": {
          "enum": [
            "TYPE_UNSPECIFIED",
            "SLIDE_NUMBER"
          ],
          "description": "The type of this auto text.",
          "type": "string",
          "enumDescriptions": [
            "An unspecified autotext type.",
            "Type for autotext that represents the current slide number."
          ]
        }
      },
      "id": "AutoText",
      "description": "A TextElement kind that represents auto text.",
      "type": "object"
    },
    "ReplaceAllTextResponse": {
      "properties": {
        "occurrencesChanged": {
          "description": "The number of occurrences changed by replacing all text.",
          "type": "integer",
          "format": "int32"
        }
      },
      "type": "object",
      "id": "ReplaceAllTextResponse",
      "description": "The result of replacing text."
    },
    "OptionalColor": {
      "id": "OptionalColor",
      "type": "object",
      "description": "A color that can either be fully opaque or fully transparent.",
      "properties": {
        "opaqueColor": {
          "description": "If set, this will be used as an opaque color. If unset, this represents a transparent color.",
          "$ref": "OpaqueColor"
        }
      }
    },
    "ParagraphStyle": {
      "description": "Styles that apply to a whole paragraph. If this text is contained in a shape with a parent placeholder, then these paragraph styles may be inherited from the parent. Which paragraph styles are inherited depend on the nesting level of lists: * A paragraph not in a list will inherit its paragraph style from the paragraph at the 0 nesting level of the list inside the parent placeholder. * A paragraph in a list will inherit its paragraph style from the paragraph at its corresponding nesting level of the list inside the parent placeholder. Inherited paragraph styles are represented as unset fields in this message.",
      "id": "ParagraphStyle",
      "properties": {
        "spaceAbove": {
          "description": "The amount of extra space above the paragraph. If unset, the value is inherited from the parent.",
          "$ref": "Dimension"
        },
        "indentEnd": {
          "description": "The amount indentation for the paragraph on the side that corresponds to the end of the text, based on the current text direction. If unset, the value is inherited from the parent.",
          "$ref": "Dimension"
        },
        "indentFirstLine": {
          "$ref": "Dimension",
          "description": "The amount of indentation for the start of the first line of the paragraph. If unset, the value is inherited from the parent."
        },
        "lineSpacing": {
          "type": "number",
          "description": "The amount of space between lines, as a percentage of normal, where normal is represented as 100.0. If unset, the value is inherited from the parent.",
          "format": "float"
        },
        "spaceBelow": {
          "$ref": "Dimension",
          "description": "The amount of extra space below the paragraph. If unset, the value is inherited from the parent."
        },
        "direction": {
          "enumDescriptions": [
            "The text direction is inherited from the parent.",
            "The text goes from left to right.",
            "The text goes from right to left."
          ],
          "description": "The text direction of this paragraph. If unset, the value defaults to LEFT_TO_RIGHT since text direction is not inherited.",
          "enum": [
            "TEXT_DIRECTION_UNSPECIFIED",
            "LEFT_TO_RIGHT",
            "RIGHT_TO_LEFT"
          ],
          "type": "string"
        },
        "indentStart": {
          "$ref": "Dimension",
          "description": "The amount indentation for the paragraph on the side that corresponds to the start of the text, based on the current text direction. If unset, the value is inherited from the parent."
        },
        "spacingMode": {
          "enumDescriptions": [
            "The spacing mode is inherited from the parent.",
            "Paragraph spacing is always rendered.",
            "Paragraph spacing is skipped between list elements."
          ],
          "enum": [
            "SPACING_MODE_UNSPECIFIED",
            "NEVER_COLLAPSE",
            "COLLAPSE_LISTS"
          ],
          "description": "The spacing mode for the paragraph.",
          "type": "string"
        },
        "alignment": {
          "enum": [
            "ALIGNMENT_UNSPECIFIED",
            "START",
            "CENTER",
            "END",
            "JUSTIFIED"
          ],
          "type": "string",
          "enumDescriptions": [
            "The paragraph alignment is inherited from the parent.",
            "The paragraph is aligned to the start of the line. Left-aligned for LTR text, right-aligned otherwise.",
            "The paragraph is centered.",
            "The paragraph is aligned to the end of the line. Right-aligned for LTR text, left-aligned otherwise.",
            "The paragraph is justified."
          ],
          "description": "The text alignment for this paragraph."
        }
      },
      "type": "object"
    },
    "GroupObjectsRequest": {
      "properties": {
        "groupObjectId": {
          "description": "A user-supplied object ID for the group to be created. If you specify an ID, it must be unique among all pages and page elements in the presentation. The ID must start with an alphanumeric character or an underscore (matches regex `[a-zA-Z0-9_]`); remaining characters may include those as well as a hyphen or colon (matches regex `[a-zA-Z0-9_-:]`). The length of the ID must not be less than 5 or greater than 50. If you don't specify an ID, a unique one is generated.",
          "type": "string"
        },
        "childrenObjectIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The object IDs of the objects to group. Only page elements can be grouped. There should be at least two page elements on the same page that are not already in another group. Some page elements, such as videos, tables and placeholder shapes cannot be grouped."
        }
      },
      "description": "Groups objects to create an object group. For example, groups PageElements to create a Group on the same page as all the children.",
      "type": "object",
      "id": "GroupObjectsRequest"
    },
    "CreateSlideRequest": {
      "type": "object",
      "id": "CreateSlideRequest",
      "description": "Creates a new slide.",
      "properties": {
        "slideLayoutReference": {
          "$ref": "LayoutReference",
          "description": "Layout reference of the slide to be inserted, based on the *current master*, which is one of the following: - The master of the previous slide index. - The master of the first slide, if the insertion_index is zero. - The first master in the presentation, if there are no slides. If the LayoutReference is not found in the current master, a 400 bad request error is returned. If you don't specify a layout reference, then the new slide will use the predefined layout `BLANK`."
        },
        "insertionIndex": {
          "type": "integer",
          "description": "The optional zero-based index indicating where to insert the slides. If you don't specify an index, the new slide is created at the end.",
          "format": "int32"
        },
        "objectId": {
          "description": "A user-supplied object ID. If you specify an ID, it must be unique among all pages and page elements in the presentation. The ID must start with an alphanumeric character or an underscore (matches regex `[a-zA-Z0-9_]`); remaining characters may include those as well as a hyphen or colon (matches regex `[a-zA-Z0-9_-:]`). The length of the ID must not be less than 5 or greater than 50. If you don't specify an ID, a unique one is generated.",
          "type": "string"
        },
        "placeholderIdMappings": {
          "items": {
            "$ref": "LayoutPlaceholderIdMapping"
          },
          "description": "An optional list of object ID mappings from the placeholder(s) on the layout to the placeholder(s) that will be created on the new slide from that specified layout. Can only be used when `slide_layout_reference` is specified.",
          "type": "array"
        }
      }
    },
    "RgbColor": {
      "properties": {
        "blue": {
          "description": "The blue component of the color, from 0.0 to 1.0.",
          "format": "float",
          "type": "number"
        },
        "red": {
          "type": "number",
          "format": "float",
          "description": "The red component of the color, from 0.0 to 1.0."
        },
        "green": {
          "description": "The green component of the color, from 0.0 to 1.0.",
          "format": "float",
          "type": "number"
        }
      },
      "description": "An RGB color.",
      "type": "object",
      "id": "RgbColor"
    },
    "Video": {
      "properties": {
        "source": {
          "type": "string",
          "enum": [
            "SOURCE_UNSPECIFIED",
            "YOUTUBE",
            "DRIVE"
          ],
          "enumDescriptions": [
            "The video source is unspecified.",
            "The video source is YouTube.",
            "The video source is Google Drive."
          ],
          "description": "The video source."
        },
        "videoProperties": {
          "$ref": "VideoProperties",
          "description": "The properties of the video."
        },
        "id": {
          "type": "string",
          "description": "The video source's unique identifier for this video."
        },
        "url": {
          "type": "string",
          "description": "An URL to a video. The URL is valid as long as the source video exists and sharing settings do not change."
        }
      },
      "type": "object",
      "description": "A PageElement kind representing a video.",
      "id": "Video"
    },
    "CreateVideoResponse": {
      "properties": {
        "objectId": {
          "description": "The object ID of the created video.",
          "type": "string"
        }
      },
      "description": "The result of creating a video.",
      "type": "object",
      "id": "CreateVideoResponse"
    },
    "OpaqueColor": {
      "type": "object",
      "id": "OpaqueColor",
      "properties": {
        "themeColor": {
          "enumDescriptions": [
            "Unspecified theme color. This value should not be used.",
            "Represents the first dark color.",
            "Represents the first light color.",
            "Represents the second dark color.",
            "Represents the second light color.",
            "Represents the first accent color.",
            "Represents the second accent color.",
            "Represents the third accent color.",
            "Represents the fourth accent color.",
            "Represents the fifth accent color.",
            "Represents the sixth accent color.",
            "Represents the color to use for hyperlinks.",
            "Represents the color to use for visited hyperlinks.",
            "Represents the first text color.",
            "Represents the first background color.",
            "Represents the second text color.",
            "Represents the second background color."
          ],
          "enum": [
            "THEME_COLOR_TYPE_UNSPECIFIED",
            "DARK1",
            "LIGHT1",
            "DARK2",
            "LIGHT2",
            "ACCENT1",
            "ACCENT2",
            "ACCENT3",
            "ACCENT4",
            "ACCENT5",
            "ACCENT6",
            "HYPERLINK",
            "FOLLOWED_HYPERLINK",
            "TEXT1",
            "BACKGROUND1",
            "TEXT2",
            "BACKGROUND2"
          ],
          "type": "string",
          "description": "An opaque theme color."
        },
        "rgbColor": {
          "$ref": "RgbColor",
          "description": "An opaque RGB color."
        }
      },
      "description": "A themeable solid color value."
    },
    "ImageProperties": {
      "id": "ImageProperties",
      "description": "The properties of the Image.",
      "type": "object",
      "properties": {
        "recolor": {
          "description": "The recolor effect of the image. If not set, the image is not recolored. This property is read-only.",
          "$ref": "Recolor"
        },
        "transparency": {
          "format": "float",
          "description": "The transparency effect of the image. The value should be in the interval [0.0, 1.0], where 0 means no effect and 1 means completely transparent. This property is read-only.",
          "type": "number"
        },
        "brightness": {
          "type": "number",
          "description": "The brightness effect of the image. The value should be in the interval [-1.0, 1.0], where 0 means no effect. This property is read-only.",
          "format": "float"
        },
        "shadow": {
          "description": "The shadow of the image. If not set, the image has no shadow. This property is read-only.",
          "$ref": "Shadow"
        },
        "link": {
          "$ref": "Link",
          "description": "The hyperlink destination of the image. If unset, there is no link."
        },
        "outline": {
          "description": "The outline of the image. If not set, the image has no outline.",
          "$ref": "Outline"
        },
        "cropProperties": {
          "$ref": "CropProperties",
          "description": "The crop properties of the image. If not set, the image is not cropped. This property is read-only."
        },
        "contrast": {
          "type": "number",
          "format": "float",
          "description": "The contrast effect of the image. The value should be in the interval [-1.0, 1.0], where 0 means no effect. This property is read-only."
        }
      }
    },
    "SolidFill": {
      "type": "object",
      "id": "SolidFill",
      "properties": {
        "color": {
          "description": "The color value of the solid fill.",
          "$ref": "OpaqueColor"
        },
        "alpha": {
          "type": "number",
          "description": "The fraction of this `color` that should be applied to the pixel. That is, the final pixel color is defined by the equation: pixel color = alpha * (color) + (1.0 - alpha) * (background color) This means that a value of 1.0 corresponds to a solid color, whereas a value of 0.0 corresponds to a completely transparent color.",
          "format": "float"
        }
      },
      "description": "A solid color fill. The page or page element is filled entirely with the specified color value. If any field is unset, its value may be inherited from a parent placeholder if it exists."
    },
    "TableRowProperties": {
      "description": "Properties of each row in a table.",
      "properties": {
        "minRowHeight": {
          "description": "Minimum height of the row. The row will be rendered in the Slides editor at a height equal to or greater than this value in order to show all the text in the row's cell(s).",
          "$ref": "Dimension"
        }
      },
      "id": "TableRowProperties",
      "type": "object"
    },
    "LayoutProperties": {
      "id": "LayoutProperties",
      "properties": {
        "displayName": {
          "description": "The human-readable name of the layout.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "The name of the layout."
        },
        "masterObjectId": {
          "description": "The object ID of the master that this layout is based on.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "The properties of Page are only relevant for pages with page_type LAYOUT."
    },
    "Shape": {
      "description": "A PageElement kind representing a generic shape that does not have a more specific classification.",
      "type": "object",
      "id": "Shape",
      "properties": {
        "shapeProperties": {
          "$ref": "ShapeProperties",
          "description": "The properties of the shape."
        },
        "shapeType": {
          "enumDescriptions": [
            "The shape type that is not predefined.",
            "Text box shape.",
            "Rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'rect'.",
            "Round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'roundRect'",
            "Ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'ellipse'",
            "Curved arc shape. Corresponds to ECMA-376 ST_ShapeType 'arc'",
            "Bent arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentArrow'",
            "Bent up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentUpArrow'",
            "Bevel shape. Corresponds to ECMA-376 ST_ShapeType 'bevel'",
            "Block arc shape. Corresponds to ECMA-376 ST_ShapeType 'blockArc'",
            "Brace pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracePair'",
            "Bracket pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracketPair'",
            "Can shape. Corresponds to ECMA-376 ST_ShapeType 'can'",
            "Chevron shape. Corresponds to ECMA-376 ST_ShapeType 'chevron'",
            "Chord shape. Corresponds to ECMA-376 ST_ShapeType 'chord'",
            "Cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloud'",
            "Corner shape. Corresponds to ECMA-376 ST_ShapeType 'corner'",
            "Cube shape. Corresponds to ECMA-376 ST_ShapeType 'cube'",
            "Curved down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'curvedDownArrow'",
            "Curved left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'curvedLeftArrow'",
            "Curved right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'curvedRightArrow'",
            "Curved up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'curvedUpArrow'",
            "Decagon shape. Corresponds to ECMA-376 ST_ShapeType 'decagon'",
            "Diagonal stripe shape. Corresponds to ECMA-376 ST_ShapeType 'diagStripe'",
            "Diamond shape. Corresponds to ECMA-376 ST_ShapeType 'diamond'",
            "Dodecagon shape. Corresponds to ECMA-376 ST_ShapeType 'dodecagon'",
            "Donut shape. Corresponds to ECMA-376 ST_ShapeType 'donut'",
            "Double wave shape. Corresponds to ECMA-376 ST_ShapeType 'doubleWave'",
            "Down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrow'",
            "Callout down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrowCallout'",
            "Folded corner shape. Corresponds to ECMA-376 ST_ShapeType 'foldedCorner'",
            "Frame shape. Corresponds to ECMA-376 ST_ShapeType 'frame'",
            "Half frame shape. Corresponds to ECMA-376 ST_ShapeType 'halfFrame'",
            "Heart shape. Corresponds to ECMA-376 ST_ShapeType 'heart'",
            "Heptagon shape. Corresponds to ECMA-376 ST_ShapeType 'heptagon'",
            "Hexagon shape. Corresponds to ECMA-376 ST_ShapeType 'hexagon'",
            "Home plate shape. Corresponds to ECMA-376 ST_ShapeType 'homePlate'",
            "Horizontal scroll shape. Corresponds to ECMA-376 ST_ShapeType 'horizontalScroll'",
            "Irregular seal 1 shape. Corresponds to ECMA-376 ST_ShapeType 'irregularSeal1'",
            "Irregular seal 2 shape. Corresponds to ECMA-376 ST_ShapeType 'irregularSeal2'",
            "Left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrow'",
            "Callout left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrowCallout'",
            "Left brace shape. Corresponds to ECMA-376 ST_ShapeType 'leftBrace'",
            "Left bracket shape. Corresponds to ECMA-376 ST_ShapeType 'leftBracket'",
            "Left right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftRightArrow'",
            "Callout left right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftRightArrowCallout'",
            "Left right up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftRightUpArrow'",
            "Left up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftUpArrow'",
            "Lightning bolt shape. Corresponds to ECMA-376 ST_ShapeType 'lightningBolt'",
            "Divide math shape. Corresponds to ECMA-376 ST_ShapeType 'mathDivide'",
            "Equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathEqual'",
            "Minus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMinus'",
            "Multiply math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMultiply'",
            "Not equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathNotEqual'",
            "Plus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathPlus'",
            "Moon shape. Corresponds to ECMA-376 ST_ShapeType 'moon'",
            "No smoking shape. Corresponds to ECMA-376 ST_ShapeType 'noSmoking'",
            "Notched right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'notchedRightArrow'",
            "Octagon shape. Corresponds to ECMA-376 ST_ShapeType 'octagon'",
            "Parallelogram shape. Corresponds to ECMA-376 ST_ShapeType 'parallelogram'",
            "Pentagon shape. Corresponds to ECMA-376 ST_ShapeType 'pentagon'",
            "Pie shape. Corresponds to ECMA-376 ST_ShapeType 'pie'",
            "Plaque shape. Corresponds to ECMA-376 ST_ShapeType 'plaque'",
            "Plus shape. Corresponds to ECMA-376 ST_ShapeType 'plus'",
            "Quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrow'",
            "Callout quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrowCallout'",
            "Ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon'",
            "Ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon2'",
            "Right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrow'",
            "Callout right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrowCallout'",
            "Right brace shape. Corresponds to ECMA-376 ST_ShapeType 'rightBrace'",
            "Right bracket shape. Corresponds to ECMA-376 ST_ShapeType 'rightBracket'",
            "One round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'round1Rect'",
            "Two diagonal round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'round2DiagRect'",
            "Two same-side round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'round2SameRect'",
            "Right triangle shape. Corresponds to ECMA-376 ST_ShapeType 'rtTriangle'",
            "Smiley face shape. Corresponds to ECMA-376 ST_ShapeType 'smileyFace'",
            "One snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'snip1Rect'",
            "Two diagonal snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'snip2DiagRect'",
            "Two same-side snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'snip2SameRect'",
            "One snip one round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'snipRoundRect'",
            "Ten pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star10'",
            "Twelve pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star12'",
            "Sixteen pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star16'",
            "Twenty four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star24'",
            "Thirty two pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star32'",
            "Four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star4'",
            "Five pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star5'",
            "Six pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star6'",
            "Seven pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star7'",
            "Eight pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star8'",
            "Striped right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'stripedRightArrow'",
            "Sun shape. Corresponds to ECMA-376 ST_ShapeType 'sun'",
            "Trapezoid shape. Corresponds to ECMA-376 ST_ShapeType 'trapezoid'",
            "Triangle shape. Corresponds to ECMA-376 ST_ShapeType 'triangle'",
            "Up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrow'",
            "Callout up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrowCallout'",
            "Up down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upDownArrow'",
            "U-turn arrow shape. Corresponds to ECMA-376 ST_ShapeType 'uturnArrow'",
            "Vertical scroll shape. Corresponds to ECMA-376 ST_ShapeType 'verticalScroll'",
            "Wave shape. Corresponds to ECMA-376 ST_ShapeType 'wave'",
            "Callout wedge ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'wedgeEllipseCallout'",
            "Callout wedge rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'wedgeRectCallout'",
            "Callout wedge round rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'wedgeRoundRectCallout'",
            "Alternate process flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartAlternateProcess'",
            "Collate flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartCollate'",
            "Connector flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartConnector'",
            "Decision flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDecision'",
            "Delay flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDelay'",
            "Display flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDisplay'",
            "Document flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDocument'",
            "Extract flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartExtract'",
            "Input output flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartInputOutput'",
            "Internal storage flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartInternalStorage'",
            "Magnetic disk flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMagneticDisk'",
            "Magnetic drum flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMagneticDrum'",
            "Magnetic tape flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMagneticTape'",
            "Manual input flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartManualInput'",
            "Manual operation flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartManualOperation'",
            "Merge flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMerge'",
            "Multi-document flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMultidocument'",
            "Offline storage flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOfflineStorage'",
            "Off-page connector flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOffpageConnector'",
            "Online storage flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOnlineStorage'",
            "Or flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOr'",
            "Predefined process flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartPredefinedProcess'",
            "Preparation flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartPreparation'",
            "Process flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartProcess'",
            "Punched card flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartPunchedCard'",
            "Punched tape flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartPunchedTape'",
            "Sort flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSort'",
            "Summing junction flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSummingJunction'",
            "Terminator flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartTerminator'",
            "East arrow shape.",
            "Northeast arrow shape.",
            "North arrow shape.",
            "Speech shape.",
            "Star burst shape.",
            "Teardrop shape. Corresponds to ECMA-376 ST_ShapeType 'teardrop'",
            "Ellipse ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ellipseRibbon'",
            "Ellipse ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ellipseRibbon2'",
            "Callout cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloudCallout'",
            "Custom shape."
          ],
          "enum": [
            "TYPE_UNSPECIFIED",
            "TEXT_BOX",
            "RECTANGLE",
            "ROUND_RECTANGLE",
            "ELLIPSE",
            "ARC",
            "BENT_ARROW",
            "BENT_UP_ARROW",
            "BEVEL",
            "BLOCK_ARC",
            "BRACE_PAIR",
            "BRACKET_PAIR",
            "CAN",
            "CHEVRON",
            "CHORD",
            "CLOUD",
            "CORNER",
            "CUBE",
            "CURVED_DOWN_ARROW",
            "CURVED_LEFT_ARROW",
            "CURVED_RIGHT_ARROW",
            "CURVED_UP_ARROW",
            "DECAGON",
            "DIAGONAL_STRIPE",
            "DIAMOND",
            "DODECAGON",
            "DONUT",
            "DOUBLE_WAVE",
            "DOWN_ARROW",
            "DOWN_ARROW_CALLOUT",
            "FOLDED_CORNER",
            "FRAME",
            "HALF_FRAME",
            "HEART",
            "HEPTAGON",
            "HEXAGON",
            "HOME_PLATE",
            "HORIZONTAL_SCROLL",
            "IRREGULAR_SEAL_1",
            "IRREGULAR_SEAL_2",
            "LEFT_ARROW",
            "LEFT_ARROW_CALLOUT",
            "LEFT_BRACE",
            "LEFT_BRACKET",
            "LEFT_RIGHT_ARROW",
            "LEFT_RIGHT_ARROW_CALLOUT",
            "LEFT_RIGHT_UP_ARROW",
            "LEFT_UP_ARROW",
            "LIGHTNING_BOLT",
            "MATH_DIVIDE",
            "MATH_EQUAL",
            "MATH_MINUS",
            "MATH_MULTIPLY",
            "MATH_NOT_EQUAL",
            "MATH_PLUS",
            "MOON",
            "NO_SMOKING",
            "NOTCHED_RIGHT_ARROW",
            "OCTAGON",
            "PARALLELOGRAM",
            "PENTAGON",
            "PIE",
            "PLAQUE",
            "PLUS",
            "QUAD_ARROW",
            "QUAD_ARROW_CALLOUT",
            "RIBBON",
            "RIBBON_2",
            "RIGHT_ARROW",
            "RIGHT_ARROW_CALLOUT",
            "RIGHT_BRACE",
            "RIGHT_BRACKET",
            "ROUND_1_RECTANGLE",
            "ROUND_2_DIAGONAL_RECTANGLE",
            "ROUND_2_SAME_RECTANGLE",
            "RIGHT_TRIANGLE",
            "SMILEY_FACE",
            "SNIP_1_RECTANGLE",
            "SNIP_2_DIAGONAL_RECTANGLE",
            "SNIP_2_SAME_RECTANGLE",
            "SNIP_ROUND_RECTANGLE",
            "STAR_10",
            "STAR_12",
            "STAR_16",
            "STAR_24",
            "STAR_32",
            "STAR_4",
            "STAR_5",
            "STAR_6",
            "STAR_7",
            "STAR_8",
            "STRIPED_RIGHT_ARROW",
            "SUN",
            "TRAPEZOID",
            "TRIANGLE",
            "UP_ARROW",
            "UP_ARROW_CALLOUT",
            "UP_DOWN_ARROW",
            "UTURN_ARROW",
            "VERTICAL_SCROLL",
            "WAVE",
            "WEDGE_ELLIPSE_CALLOUT",
            "WEDGE_RECTANGLE_CALLOUT",
            "WEDGE_ROUND_RECTANGLE_CALLOUT",
            "FLOW_CHART_ALTERNATE_PROCESS",
            "FLOW_CHART_COLLATE",
            "FLOW_CHART_CONNECTOR",
            "FLOW_CHART_DECISION",
            "FLOW_CHART_DELAY",
            "FLOW_CHART_DISPLAY",
            "FLOW_CHART_DOCUMENT",
            "FLOW_CHART_EXTRACT",
            "FLOW_CHART_INPUT_OUTPUT",
            "FLOW_CHART_INTERNAL_STORAGE",
            "FLOW_CHART_MAGNETIC_DISK",
            "FLOW_CHART_MAGNETIC_DRUM",
            "FLOW_CHART_MAGNETIC_TAPE",
            "FLOW_CHART_MANUAL_INPUT",
            "FLOW_CHART_MANUAL_OPERATION",
            "FLOW_CHART_MERGE",
            "FLOW_CHART_MULTIDOCUMENT",
            "FLOW_CHART_OFFLINE_STORAGE",
            "FLOW_CHART_OFFPAGE_CONNECTOR",
            "FLOW_CHART_ONLINE_STORAGE",
            "FLOW_CHART_OR",
            "FLOW_CHART_PREDEFINED_PROCESS",
            "FLOW_CHART_PREPARATION",
            "FLOW_CHART_PROCESS",
            "FLOW_CHART_PUNCHED_CARD",
            "FLOW_CHART_PUNCHED_TAPE",
            "FLOW_CHART_SORT",
            "FLOW_CHART_SUMMING_JUNCTION",
            "FLOW_CHART_TERMINATOR",
            "ARROW_EAST",
            "ARROW_NORTH_EAST",
            "ARROW_NORTH",
            "SPEECH",
            "STARBURST",
            "TEARDROP",
            "ELLIPSE_RIBBON",
            "ELLIPSE_RIBBON_2",
            "CLOUD_CALLOUT",
            "CUSTOM"
          ],
          "description": "The type of the shape.",
          "type": "string"
        },
        "text": {
          "$ref": "TextContent",
          "description": "The text content of the shape."
        },
        "placeholder": {
          "$ref": "Placeholder",
          "description": "Placeholders are shapes that are inherit from corresponding placeholders on layouts and masters. If set, the shape is a placeholder shape and any inherited properties can be resolved by looking at the parent placeholder identified by the Placeholder.parent_object_id field."
        }
      }
    },
    "CreateSheetsChartRequest": {
      "id": "CreateSheetsChartRequest",
      "type": "object",
      "properties": {
        "objectId": {
          "description": "A user-supplied object ID. If specified, the ID must be unique among all pages and page elements in the presentation. The ID should start with a word character [a-zA-Z0-9_] and then followed by any number of the following characters [a-zA-Z0-9_-:]. The length of the ID should not be less than 5 or greater than 50. If empty, a unique identifier will be generated.",
          "type": "string"
        },
        "linkingMode": {
          "type": "string",
          "enum": [
            "NOT_LINKED_IMAGE",
            "LINKED"
          ],
          "description": "The mode with which the chart is linked to the source spreadsheet. When not specified, the chart will be an image that is not linked.",
          "enumDescriptions": [
            "The chart is not associated with the source spreadsheet and cannot be updated. A chart that is not linked will be inserted as an image.",
            "Linking the chart allows it to be updated, and other collaborators will see a link to the spreadsheet."
          ]
        },
        "elementProperties": {
          "description": "The element properties for the chart. When the aspect ratio of the provided size does not match the chart aspect ratio, the chart is scaled and centered with respect to the size in order to maintain aspect ratio. The provided transform is applied after this operation.",
          "$ref": "PageElementProperties"
        },
        "spreadsheetId": {
          "type": "string",
          "description": "The ID of the Google Sheets spreadsheet that contains the chart."
        },
        "chartId": {
          "description": "The ID of the specific chart in the Google Sheets spreadsheet.",
          "format": "int32",
          "type": "integer"
        }
      },
      "description": "Creates an embedded Google Sheets chart. NOTE: Chart creation requires at least one of the spreadsheets.readonly, spreadsheets, drive.readonly, drive.file, or drive OAuth scopes."
    },
    "TableCellBackgroundFill": {
      "type": "object",
      "id": "TableCellBackgroundFill",
      "description": "The table cell background fill.",
      "properties": {
        "propertyState": {
          "type": "string",
          "enumDescriptions": [
            "If a property's state is RENDERED, then the element has the corresponding property when rendered on a page. If the element is a placeholder shape as determined by the placeholder field, and it inherits from a placeholder shape, the corresponding field may be unset, meaning that the property value is inherited from a parent placeholder. If the element does not inherit, then the field will contain the rendered value. This is the default value.",
            "If a property's state is NOT_RENDERED, then the element does not have the corresponding property when rendered on a page. However, the field may still be set so it can be inherited by child shapes. To remove a property from a rendered element, set its property_state to NOT_RENDERED.",
            "If a property's state is INHERIT, then the property state uses the value of corresponding `property_state` field on the parent shape. Elements that do not inherit will never have an INHERIT property state."
          ],
          "enum": [
            "RENDERED",
            "NOT_RENDERED",
            "INHERIT"
          ],
          "description": "The background fill property state. Updating the fill on a table cell will implicitly update this field to `RENDERED`, unless another value is specified in the same request. To have no fill on a table cell, set this field to `NOT_RENDERED`. In this case, any other fill fields set in the same request will be ignored."
        },
        "solidFill": {
          "description": "Solid color fill.",
          "$ref": "SolidFill"
        }
      }
    },
    "Link": {
      "description": "A hypertext link.",
      "type": "object",
      "properties": {
        "slideIndex": {
          "format": "int32",
          "type": "integer",
          "description": "If set, indicates this is a link to the slide at this zero-based index in the presentation. There may not be a slide at this index."
        },
        "relativeLink": {
          "enumDescriptions": [
            "An unspecified relative slide link.",
            "A link to the next slide.",
            "A link to the previous slide.",
            "A link to the first slide in the presentation.",
            "A link to the last slide in the presentation."
          ],
          "type": "string",
          "enum": [
            "RELATIVE_SLIDE_LINK_UNSPECIFIED",
            "NEXT_SLIDE",
            "PREVIOUS_SLIDE",
            "FIRST_SLIDE",
            "LAST_SLIDE"
          ],
          "description": "If set, indicates this is a link to a slide in this presentation, addressed by its position."
        },
        "pageObjectId": {
          "type": "string",
          "description": "If set, indicates this is a link to the specific page in this presentation with this ID. A page with this ID may not exist."
        },
        "url": {
          "description": "If set, indicates this is a link to the external web page at this URL.",
          "type": "string"
        }
      },
      "id": "Link"
    },
    "ReplaceAllTextRequest": {
      "description": "Replaces all instances of text matching a criteria with replace text.",
      "type": "object",
      "id": "ReplaceAllTextRequest",
      "properties": {
        "containsText": {
          "$ref": "SubstringMatchCriteria",
          "description": "Finds text in a shape matching this substring."
        },
        "replaceText": {
          "description": "The text that will replace the matched text.",
          "type": "string"
        },
        "pageObjectIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "If non-empty, limits the matches to page elements only on the given pages. Returns a 400 bad request error if given the page object ID of a notes master, or if a page with that object ID doesn't exist in the presentation."
        }
      }
    },
    "CreateVideoRequest": {
      "type": "object",
      "id": "CreateVideoRequest",
      "description": "Creates a video. NOTE: Creating a video from Google Drive requires that the requesting app have at least one of the drive, drive.readonly, or drive.file OAuth scopes.",
      "properties": {
        "source": {
          "type": "string",
          "enum": [
            "SOURCE_UNSPECIFIED",
            "YOUTUBE",
            "DRIVE"
          ],
          "description": "The video source.",
          "enumDescriptions": [
            "The video source is unspecified.",
            "The video source is YouTube.",
            "The video source is Google Drive."
          ]
        },
        "objectId": {
          "description": "A user-supplied object ID. If you specify an ID, it must be unique among all pages and page elements in the presentation. The ID must start with an alphanumeric character or an underscore (matches regex `[a-zA-Z0-9_]`); remaining characters may include those as well as a hyphen or colon (matches regex `[a-zA-Z0-9_-:]`). The length of the ID must not be less than 5 or greater than 50. If you don't specify an ID, a unique one is generated.",
          "type": "string"
        },
        "elementProperties": {
          "$ref": "PageElementProperties",
          "description": "The element properties for the video. The PageElementProperties.size property is optional. If you don't specify a size, a default size is chosen by the server. The PageElementProperties.transform property is optional. The transform must not have shear components. If you don't specify a transform, the video will be placed at the top left corner of the page."
        },
        "id": {
          "description": "The video source's unique identifier for this video. e.g. For YouTube video https://www.youtube.com/watch?v=7U3axjORYZ0, the ID is 7U3axjORYZ0. For a Google Drive video https://drive.google.com/file/d/1xCgQLFTJi5_Xl8DgW_lcUYq5e-q6Hi5Q the ID is 1xCgQLFTJi5_Xl8DgW_lcUYq5e-q6Hi5Q.",
          "type": "string"
        }
      }
    },
    "UpdateTableBorderPropertiesRequest": {
      "id": "UpdateTableBorderPropertiesRequest",
      "description": "Updates the properties of the table borders in a Table.",
      "type": "object",
      "properties": {
        "fields": {
          "description": "The fields that should be updated. At least one field must be specified. The root `tableBorderProperties` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example to update the table border solid fill color, set `fields` to `\"tableBorderFill.solidFill.color\"`. To reset a property to its default value, include its field name in the field mask but leave the field itself unset.",
          "format": "google-fieldmask",
          "type": "string"
        },
        "borderPosition": {
          "enum": [
            "ALL",
            "BOTTOM",
            "INNER",
            "INNER_HORIZONTAL",
            "INNER_VERTICAL",
            "LEFT",
            "OUTER",
            "RIGHT",
            "TOP"
          ],
          "type": "string",
          "description": "The border position in the table range the updates should apply to. If a border position is not specified, the updates will apply to all borders in the table range.",
          "enumDescriptions": [
            "All borders in the range.",
            "Borders at the bottom of the range.",
            "Borders on the inside of the range.",
            "Horizontal borders on the inside of the range.",
            "Vertical borders on the inside of the range.",
            "Borders at the left of the range.",
            "Borders along the outside of the range.",
            "Borders at the right of the range.",
            "Borders at the top of the range."
          ]
        },
        "tableBorderProperties": {
          "$ref": "TableBorderProperties",
          "description": "The table border properties to update."
        },
        "tableRange": {
          "description": "The table range representing the subset of the table to which the updates are applied. If a table range is not specified, the updates will apply to the entire table.",
          "$ref": "TableRange"
        },
        "objectId": {
          "type": "string",
          "description": "The object ID of the table."
        }
      }
    },
    "Bullet": {
      "type": "object",
      "properties": {
        "nestingLevel": {
          "description": "The nesting level of this paragraph in the list.",
          "format": "int32",
          "type": "integer"
        },
        "glyph": {
          "type": "string",
          "description": "The rendered bullet glyph for this paragraph."
        },
        "bulletStyle": {
          "$ref": "TextStyle",
          "description": "The paragraph specific text style applied to this bullet."
        },
        "listId": {
          "type": "string",
          "description": "The ID of the list this paragraph belongs to."
        }
      },
      "id": "Bullet",
      "description": "Describes the bullet of a paragraph."
    },
    "CreateLineRequest": {
      "type": "object",
      "id": "CreateLineRequest",
      "properties": {
        "category": {
          "description": "The category of the line to be created. The exact line type created is determined based on the category and how it's routed to connect to other page elements. If you specify both a `category` and a `line_category`, the `category` takes precedence. If you do not specify a value for `category`, but specify a value for `line_category`, then the specified `line_category` value is used. If you do not specify either, then STRAIGHT is used.",
          "enumDescriptions": [
            "Unspecified line category.",
            "Straight connectors, including straight connector 1.",
            "Bent connectors, including bent connector 2 to 5.",
            "Curved connectors, including curved connector 2 to 5."
          ],
          "enum": [
            "LINE_CATEGORY_UNSPECIFIED",
            "STRAIGHT",
            "BENT",
            "CURVED"
          ],
          "type": "string"
        },
        "elementProperties": {
          "description": "The element properties for the line.",
          "$ref": "PageElementProperties"
        },
        "lineCategory": {
          "enumDescriptions": [
            "Straight connectors, including straight connector 1. The is the default category when one is not specified.",
            "Bent connectors, including bent connector 2 to 5.",
            "Curved connectors, including curved connector 2 to 5."
          ],
          "type": "string",
          "enum": [
            "STRAIGHT",
            "BENT",
            "CURVED"
          ],
          "description": "The category of the line to be created. *Deprecated*: use `category` instead. The exact line type created is determined based on the category and how it's routed to connect to other page elements. If you specify both a `category` and a `line_category`, the `category` takes precedence."
        },
        "objectId": {
          "description": "A user-supplied object ID. If you specify an ID, it must be unique among all pages and page elements in the presentation. The ID must start with an alphanumeric character or an underscore (matches regex `[a-zA-Z0-9_]`); remaining characters may include those as well as a hyphen or colon (matches regex `[a-zA-Z0-9_-:]`). The length of the ID must not be less than 5 or greater than 50. If you don't specify an ID, a unique one is generated.",
          "type": "string"
        }
      },
      "description": "Creates a line."
    },
    "UpdateParagraphStyleRequest": {
      "description": "Updates the styling for all of the paragraphs within a Shape or Table that overlap with the given text index range.",
      "type": "object",
      "properties": {
        "textRange": {
          "$ref": "Range",
          "description": "The range of text containing the paragraph(s) to style."
        },
        "objectId": {
          "description": "The object ID of the shape or table with the text to be styled.",
          "type": "string"
        },
        "fields": {
          "type": "string",
          "format": "google-fieldmask",
          "description": "The fields that should be updated. At least one field must be specified. The root `style` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example, to update the paragraph alignment, set `fields` to `\"alignment\"`. To reset a property to its default value, include its field name in the field mask but leave the field itself unset."
        },
        "style": {
          "description": "The paragraph's style.",
          "$ref": "ParagraphStyle"
        },
        "cellLocation": {
          "description": "The location of the cell in the table containing the paragraph(s) to style. If `object_id` refers to a table, `cell_location` must have a value. Otherwise, it must not.",
          "$ref": "TableCellLocation"
        }
      },
      "id": "UpdateParagraphStyleRequest"
    },
    "ShapeProperties": {
      "type": "object",
      "description": "The properties of a Shape. If the shape is a placeholder shape as determined by the placeholder field, then these properties may be inherited from a parent placeholder shape. Determining the rendered value of the property depends on the corresponding property_state field value.",
      "id": "ShapeProperties",
      "properties": {
        "shadow": {
          "$ref": "Shadow",
          "description": "The shadow properties of the shape. If unset, the shadow is inherited from a parent placeholder if it exists. If the shape has no parent, then the default shadow matches the defaults for new shapes created in the Slides editor. This property is read-only."
        },
        "contentAlignment": {
          "enumDescriptions": [
            "An unspecified content alignment. The content alignment is inherited from the parent if it exists.",
            "An unsupported content alignment.",
            "An alignment that aligns the content to the top of the content holder. Corresponds to ECMA-376 ST_TextAnchoringType 't'.",
            "An alignment that aligns the content to the middle of the content holder. Corresponds to ECMA-376 ST_TextAnchoringType 'ctr'.",
            "An alignment that aligns the content to the bottom of the content holder. Corresponds to ECMA-376 ST_TextAnchoringType 'b'."
          ],
          "enum": [
            "CONTENT_ALIGNMENT_UNSPECIFIED",
            "CONTENT_ALIGNMENT_UNSUPPORTED",
            "TOP",
            "MIDDLE",
            "BOTTOM"
          ],
          "type": "string",
          "description": "The alignment of the content in the shape. If unspecified, the alignment is inherited from a parent placeholder if it exists. If the shape has no parent, the default alignment matches the alignment for new shapes created in the Slides editor."
        },
        "link": {
          "description": "The hyperlink destination of the shape. If unset, there is no link. Links are not inherited from parent placeholders.",
          "$ref": "Link"
        },
        "outline": {
          "$ref": "Outline",
          "description": "The outline of the shape. If unset, the outline is inherited from a parent placeholder if it exists. If the shape has no parent, then the default outline depends on the shape type, matching the defaults for new shapes created in the Slides editor."
        },
        "shapeBackgroundFill": {
          "$ref": "ShapeBackgroundFill",
          "description": "The background fill of the shape. If unset, the background fill is inherited from a parent placeholder if it exists. If the shape has no parent, then the default background fill depends on the shape type, matching the defaults for new shapes created in the Slides editor."
        }
      }
    },
    "CreateImageResponse": {
      "id": "CreateImageResponse",
      "description": "The result of creating an image.",
      "type": "object",
      "properties": {
        "objectId": {
          "description": "The object ID of the created image.",
          "type": "string"
        }
      }
    },
    "DuplicateObjectRequest": {
      "description": "Duplicates a slide or page element. When duplicating a slide, the duplicate slide will be created immediately following the specified slide. When duplicating a page element, the duplicate will be placed on the same page at the same position as the original.",
      "properties": {
        "objectIds": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The object being duplicated may contain other objects, for example when duplicating a slide or a group page element. This map defines how the IDs of duplicated objects are generated: the keys are the IDs of the original objects and its values are the IDs that will be assigned to the corresponding duplicate object. The ID of the source object's duplicate may be specified in this map as well, using the same value of the `object_id` field as a key and the newly desired ID as the value. All keys must correspond to existing IDs in the presentation. All values must be unique in the presentation and must start with an alphanumeric character or an underscore (matches regex `[a-zA-Z0-9_]`); remaining characters may include those as well as a hyphen or colon (matches regex `[a-zA-Z0-9_-:]`). The length of the new ID must not be less than 5 or greater than 50. If any IDs of source objects are omitted from the map, a new random ID will be assigned. If the map is empty or unset, all duplicate objects will receive a new random ID."
        },
        "objectId": {
          "description": "The ID of the object to duplicate.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "DuplicateObjectRequest"
    },
    "Dimension": {
      "id": "Dimension",
      "type": "object",
      "description": "A magnitude in a single direction in the specified units.",
      "properties": {
        "unit": {
          "enum": [
            "UNIT_UNSPECIFIED",
            "EMU",
            "PT"
          ],
          "description": "The units for magnitude.",
          "type": "string",
          "enumDescriptions": [
            "The units are unknown.",
            "An English Metric Unit (EMU) is defined as 1/360,000 of a centimeter and thus there are 914,400 EMUs per inch, and 12,700 EMUs per point.",
            "A point, 1/72 of an inch."
          ]
        },
        "magnitude": {
          "description": "The magnitude.",
          "format": "double",
          "type": "number"
        }
      }
    },
    "DeleteParagraphBulletsRequest": {
      "properties": {
        "textRange": {
          "$ref": "Range",
          "description": "The range of text to delete bullets from, based on TextElement indexes."
        },
        "cellLocation": {
          "description": "The optional table cell location if the text to be modified is in a table cell. If present, the object_id must refer to a table.",
          "$ref": "TableCellLocation"
        },
        "objectId": {
          "type": "string",
          "description": "The object ID of the shape or table containing the text to delete bullets from."
        }
      },
      "description": "Deletes bullets from all of the paragraphs that overlap with the given text index range. The nesting level of each paragraph will be visually preserved by adding indent to the start of the corresponding paragraph.",
      "type": "object",
      "id": "DeleteParagraphBulletsRequest"
    },
    "ColorScheme": {
      "id": "ColorScheme",
      "properties": {
        "colors": {
          "type": "array",
          "items": {
            "$ref": "ThemeColorPair"
          },
          "description": "The ThemeColorType and corresponding concrete color pairs."
        }
      },
      "description": "The palette of predefined colors for a page.",
      "type": "object"
    },
    "UpdateShapePropertiesRequest": {
      "properties": {
        "objectId": {
          "type": "string",
          "description": "The object ID of the shape the updates are applied to."
        },
        "fields": {
          "description": "The fields that should be updated. At least one field must be specified. The root `shapeProperties` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example to update the shape background solid fill color, set `fields` to `\"shapeBackgroundFill.solidFill.color\"`. To reset a property to its default value, include its field name in the field mask but leave the field itself unset.",
          "format": "google-fieldmask",
          "type": "string"
        },
        "shapeProperties": {
          "$ref": "ShapeProperties",
          "description": "The shape properties to update."
        }
      },
      "description": "Update the properties of a Shape.",
      "id": "UpdateShapePropertiesRequest",
      "type": "object"
    },
    "TextElement": {
      "description": "A TextElement describes the content of a range of indices in the text content of a Shape or TableCell.",
      "properties": {
        "startIndex": {
          "type": "integer",
          "description": "The zero-based start index of this text element, in Unicode code units.",
          "format": "int32"
        },
        "autoText": {
          "description": "A TextElement representing a spot in the text that is dynamically replaced with content that can change over time.",
          "$ref": "AutoText"
        },
        "textRun": {
          "description": "A TextElement representing a run of text where all of the characters in the run have the same TextStyle. The `start_index` and `end_index` of TextRuns will always be fully contained in the index range of a single `paragraph_marker` TextElement. In other words, a TextRun will never span multiple paragraphs.",
          "$ref": "TextRun"
        },
        "paragraphMarker": {
          "$ref": "ParagraphMarker",
          "description": "A marker representing the beginning of a new paragraph. The `start_index` and `end_index` of this TextElement represent the range of the paragraph. Other TextElements with an index range contained inside this paragraph's range are considered to be part of this paragraph. The range of indices of two separate paragraphs will never overlap."
        },
        "endIndex": {
          "description": "The zero-based end index of this text element, exclusive, in Unicode code units.",
          "type": "integer",
          "format": "int32"
        }
      },
      "id": "TextElement",
      "type": "object"
    },
    "ReplaceImageRequest": {
      "id": "ReplaceImageRequest",
      "properties": {
        "imageObjectId": {
          "description": "The ID of the existing image that will be replaced.",
          "type": "string"
        },
        "url": {
          "description": "The image URL. The image is fetched once at insertion time and a copy is stored for display inside the presentation. Images must be less than 50MB in size, cannot exceed 25 megapixels, and must be in one of PNG, JPEG, or GIF format. The provided URL can be at most 2 kB in length. The URL itself is saved with the image, and exposed via the Image.source_url field.",
          "type": "string"
        },
        "imageReplaceMethod": {
          "enumDescriptions": [
            "Unspecified image replace method. This value must not be used.",
            "Scales and centers the image to fit within the bounds of the original shape and maintains the image's aspect ratio. The rendered size of the image may be smaller than the size of the shape. This is the default method when one is not specified.",
            "Scales and centers the image to fill the bounds of the original shape. The image may be cropped in order to fill the shape. The rendered size of the image will be the same as that of the original shape."
          ],
          "description": "The replacement method.",
          "enum": [
            "IMAGE_REPLACE_METHOD_UNSPECIFIED",
            "CENTER_INSIDE",
            "CENTER_CROP"
          ],
          "type": "string"
        }
      },
      "description": "Replaces an existing image with a new image. Replacing an image removes some image effects from the existing image.",
      "type": "object"
    },
    "AffineTransform": {
      "id": "AffineTransform",
      "description": "AffineTransform uses a 3x3 matrix with an implied last row of [ 0 0 1 ] to transform source coordinates (x,y) into destination coordinates (x', y') according to: x' x = shear_y scale_y translate_y 1 [ 1 ] After transformation, x' = scale_x * x + shear_x * y + translate_x; y' = scale_y * y + shear_y * x + translate_y; This message is therefore composed of these six matrix elements.",
      "type": "object",
      "properties": {
        "unit": {
          "type": "string",
          "enum": [
            "UNIT_UNSPECIFIED",
            "EMU",
            "PT"
          ],
          "enumDescriptions": [
            "The units are unknown.",
            "An English Metric Unit (EMU) is defined as 1/360,000 of a centimeter and thus there are 914,400 EMUs per inch, and 12,700 EMUs per point.",
            "A point, 1/72 of an inch."
          ],
          "description": "The units for translate elements."
        },
        "scaleY": {
          "format": "double",
          "type": "number",
          "description": "The Y coordinate scaling element."
        },
        "translateY": {
          "description": "The Y coordinate translation element.",
          "type": "number",
          "format": "double"
        },
        "scaleX": {
          "type": "number",
          "description": "The X coordinate scaling element.",
          "format": "double"
        },
        "translateX": {
          "type": "number",
          "description": "The X coordinate translation element.",
          "format": "double"
        },
        "shearY": {
          "type": "number",
          "format": "double",
          "description": "The Y coordinate shearing element."
        },
        "shearX": {
          "description": "The X coordinate shearing element.",
          "format": "double",
          "type": "number"
        }
      }
    },
    "MergeTableCellsRequest": {
      "id": "MergeTableCellsRequest",
      "type": "object",
      "properties": {
        "objectId": {
          "type": "string",
          "description": "The object ID of the table."
        },
        "tableRange": {
          "description": "The table range specifying which cells of the table to merge. Any text in the cells being merged will be concatenated and stored in the upper-left (\"head\") cell of the range. If the range is non-rectangular (which can occur in some cases where the range covers cells that are already merged), a 400 bad request error is returned.",
          "$ref": "TableRange"
        }
      },
      "description": "Merges cells in a Table."
    },
    "SubstringMatchCriteria": {
      "description": "A criteria that matches a specific string of text in a shape or table.",
      "properties": {
        "text": {
          "description": "The text to search for in the shape or table.",
          "type": "string"
        },
        "matchCase": {
          "description": "Indicates whether the search should respect case: - `True`: the search is case sensitive. - `False`: the search is case insensitive.",
          "type": "boolean"
        }
      },
      "type": "object",
      "id": "SubstringMatchCriteria"
    },
    "WeightedFontFamily": {
      "type": "object",
      "description": "Represents a font family and weight used to style a TextRun.",
      "properties": {
        "weight": {
          "format": "int32",
          "description": "The rendered weight of the text. This field can have any value that is a multiple of `100` between `100` and `900`, inclusive. This range corresponds to the numerical values described in the CSS 2.1 Specification, [section 15.6](https://www.w3.org/TR/CSS21/fonts.html#font-boldness), with non-numerical values disallowed. Weights greater than or equal to `700` are considered bold, and weights less than `700`are not bold. The default value is `400` (\"normal\").",
          "type": "integer"
        },
        "fontFamily": {
          "description": "The font family of the text. The font family can be any font from the Font menu in Slides or from [Google Fonts] (https://fonts.google.com/). If the font name is unrecognized, the text is rendered in `Arial`.",
          "type": "string"
        }
      },
      "id": "WeightedFontFamily"
    },
    "ShapeBackgroundFill": {
      "properties": {
        "solidFill": {
          "description": "Solid color fill.",
          "$ref": "SolidFill"
        },
        "propertyState": {
          "type": "string",
          "enumDescriptions": [
            "If a property's state is RENDERED, then the element has the corresponding property when rendered on a page. If the element is a placeholder shape as determined by the placeholder field, and it inherits from a placeholder shape, the corresponding field may be unset, meaning that the property value is inherited from a parent placeholder. If the element does not inherit, then the field will contain the rendered value. This is the default value.",
            "If a property's state is NOT_RENDERED, then the element does not have the corresponding property when rendered on a page. However, the field may still be set so it can be inherited by child shapes. To remove a property from a rendered element, set its property_state to NOT_RENDERED.",
            "If a property's state is INHERIT, then the property state uses the value of corresponding `property_state` field on the parent shape. Elements that do not inherit will never have an INHERIT property state."
          ],
          "enum": [
            "RENDERED",
            "NOT_RENDERED",
            "INHERIT"
          ],
          "description": "The background fill property state. Updating the fill on a shape will implicitly update this field to `RENDERED`, unless another value is specified in the same request. To have no fill on a shape, set this field to `NOT_RENDERED`. In this case, any other fill fields set in the same request will be ignored."
        }
      },
      "id": "ShapeBackgroundFill",
      "type": "object",
      "description": "The shape background fill."
    },
    "Shadow": {
      "id": "Shadow",
      "description": "The shadow properties of a page element. If these fields are unset, they may be inherited from a parent placeholder if it exists. If there is no parent, the fields will default to the value used for new page elements created in the Slides editor, which may depend on the page element kind.",
      "properties": {
        "color": {
          "description": "The shadow color value.",
          "$ref": "OpaqueColor"
        },
        "propertyState": {
          "description": "The shadow property state. Updating the shadow on a page element will implicitly update this field to `RENDERED`, unless another value is specified in the same request. To have no shadow on a page element, set this field to `NOT_RENDERED`. In this case, any other shadow fields set in the same request will be ignored.",
          "type": "string",
          "enum": [
            "RENDERED",
            "NOT_RENDERED",
            "INHERIT"
          ],
          "enumDescriptions": [
            "If a property's state is RENDERED, then the element has the corresponding property when rendered on a page. If the element is a placeholder shape as determined by the placeholder field, and it inherits from a placeholder shape, the corresponding field may be unset, meaning that the property value is inherited from a parent placeholder. If the element does not inherit, then the field will contain the rendered value. This is the default value.",
            "If a property's state is NOT_RENDERED, then the element does not have the corresponding property when rendered on a page. However, the field may still be set so it can be inherited by child shapes. To remove a property from a rendered element, set its property_state to NOT_RENDERED.",
            "If a property's state is INHERIT, then the property state uses the value of corresponding `property_state` field on the parent shape. Elements that do not inherit will never have an INHERIT property state."
          ]
        },
        "alpha": {
          "format": "float",
          "type": "number",
          "description": "The alpha of the shadow's color, from 0.0 to 1.0."
        },
        "alignment": {
          "enumDescriptions": [
            "Unspecified.",
            "Top left.",
            "Top center.",
            "Top right.",
            "Left center.",
            "Center.",
            "Right center.",
            "Bottom left.",
            "Bottom center.",
            "Bottom right."
          ],
          "enum": [
            "RECTANGLE_POSITION_UNSPECIFIED",
            "TOP_LEFT",
            "TOP_CENTER",
            "TOP_RIGHT",
            "LEFT_CENTER",
            "CENTER",
            "RIGHT_CENTER",
            "BOTTOM_LEFT",
            "BOTTOM_CENTER",
            "BOTTOM_RIGHT"
          ],
          "description": "The alignment point of the shadow, that sets the origin for translate, scale and skew of the shadow. This property is read-only.",
          "type": "string"
        },
        "rotateWithShape": {
          "description": "Whether the shadow should rotate with the shape. This property is read-only.",
          "type": "boolean"
        },
        "type": {
          "enumDescriptions": [
            "Unspecified shadow type.",
            "Outer shadow."
          ],
          "type": "string",
          "enum": [
            "SHADOW_TYPE_UNSPECIFIED",
            "OUTER"
          ],
          "description": "The type of the shadow. This property is read-only."
        },
        "transform": {
          "$ref": "AffineTransform",
          "description": "Transform that encodes the translate, scale, and skew of the shadow, relative to the alignment position."
        },
        "blurRadius": {
          "$ref": "Dimension",
          "description": "The radius of the shadow blur. The larger the radius, the more diffuse the shadow becomes."
        }
      },
      "type": "object"
    },
    "CreateImageRequest": {
      "type": "object",
      "description": "Creates an image.",
      "id": "CreateImageRequest",
      "properties": {
        "url": {
          "type": "string",
          "description": "The image URL. The image is fetched once at insertion time and a copy is stored for display inside the presentation. Images must be less than 50MB in size, cannot exceed 25 megapixels, and must be in one of PNG, JPEG, or GIF format. The provided URL can be at most 2 kB in length. The URL itself is saved with the image, and exposed via the Image.source_url field."
        },
        "elementProperties": {
          "description": "The element properties for the image. When the aspect ratio of the provided size does not match the image aspect ratio, the image is scaled and centered with respect to the size in order to maintain aspect ratio. The provided transform is applied after this operation. The PageElementProperties.size property is optional. If you don't specify the size, the default size of the image is used. The PageElementProperties.transform property is optional. If you don't specify a transform, the image will be placed at the top left corner of the page.",
          "$ref": "PageElementProperties"
        },
        "objectId": {
          "description": "A user-supplied object ID. If you specify an ID, it must be unique among all pages and page elements in the presentation. The ID must start with an alphanumeric character or an underscore (matches regex `[a-zA-Z0-9_]`); remaining characters may include those as well as a hyphen or colon (matches regex `[a-zA-Z0-9_-:]`). The length of the ID must not be less than 5 or greater than 50. If you don't specify an ID, a unique one is generated.",
          "type": "string"
        }
      }
    },
    "TextStyle": {
      "properties": {
        "underline": {
          "description": "Whether or not the text is underlined.",
          "type": "boolean"
        },
        "bold": {
          "description": "Whether or not the text is rendered as bold.",
          "type": "boolean"
        },
        "fontSize": {
          "$ref": "Dimension",
          "description": "The size of the text's font. When read, the `font_size` will specified in points."
        },
        "italic": {
          "type": "boolean",
          "description": "Whether or not the text is italicized."
        },
        "fontFamily": {
          "description": "The font family of the text. The font family can be any font from the Font menu in Slides or from [Google Fonts] (https://fonts.google.com/). If the font name is unrecognized, the text is rendered in `Arial`. Some fonts can affect the weight of the text. If an update request specifies values for both `font_family` and `bold`, the explicitly-set `bold` value is used.",
          "type": "string"
        },
        "smallCaps": {
          "description": "Whether or not the text is in small capital letters.",
          "type": "boolean"
        },
        "backgroundColor": {
          "$ref": "OptionalColor",
          "description": "The background color of the text. If set, the color is either opaque or transparent, depending on if the `opaque_color` field in it is set."
        },
        "link": {
          "description": "The hyperlink destination of the text. If unset, there is no link. Links are not inherited from parent text. Changing the link in an update request causes some other changes to the text style of the range: * When setting a link, the text foreground color will be set to ThemeColorType.HYPERLINK and the text will be underlined. If these fields are modified in the same request, those values will be used instead of the link defaults. * Setting a link on a text range that overlaps with an existing link will also update the existing link to point to the new URL. * Links are not settable on newline characters. As a result, setting a link on a text range that crosses a paragraph boundary, such as `\"ABC\\n123\"`, will separate the newline character(s) into their own text runs. The link will be applied separately to the runs before and after the newline. * Removing a link will update the text style of the range to match the style of the preceding text (or the default text styles if the preceding text is another link) unless different styles are being set in the same request.",
          "$ref": "Link"
        },
        "weightedFontFamily": {
          "description": "The font family and rendered weight of the text. This field is an extension of `font_family` meant to support explicit font weights without breaking backwards compatibility. As such, when reading the style of a range of text, the value of `weighted_font_family#font_family` will always be equal to that of `font_family`. However, when writing, if both fields are included in the field mask (either explicitly or through the wildcard `\"*\"`), their values are reconciled as follows: * If `font_family` is set and `weighted_font_family` is not, the value of `font_family` is applied with weight `400` (\"normal\"). * If both fields are set, the value of `font_family` must match that of `weighted_font_family#font_family`. If so, the font family and weight of `weighted_font_family` is applied. Otherwise, a 400 bad request error is returned. * If `weighted_font_family` is set and `font_family` is not, the font family and weight of `weighted_font_family` is applied. * If neither field is set, the font family and weight of the text inherit from the parent. Note that these properties cannot inherit separately from each other. If an update request specifies values for both `weighted_font_family` and `bold`, the `weighted_font_family` is applied first, then `bold`. If `weighted_font_family#weight` is not set, it defaults to `400`. If `weighted_font_family` is set, then `weighted_font_family#font_family` must also be set with a non-empty value. Otherwise, a 400 bad request error is returned.",
          "$ref": "WeightedFontFamily"
        },
        "foregroundColor": {
          "description": "The color of the text itself. If set, the color is either opaque or transparent, depending on if the `opaque_color` field in it is set.",
          "$ref": "OptionalColor"
        },
        "strikethrough": {
          "description": "Whether or not the text is struck through.",
          "type": "boolean"
        },
        "baselineOffset": {
          "enumDescriptions": [
            "The text's baseline offset is inherited from the parent.",
            "The text is not vertically offset.",
            "The text is vertically offset upwards (superscript).",
            "The text is vertically offset downwards (subscript)."
          ],
          "type": "string",
          "enum": [
            "BASELINE_OFFSET_UNSPECIFIED",
            "NONE",
            "SUPERSCRIPT",
            "SUBSCRIPT"
          ],
          "description": "The text's vertical offset from its normal position. Text with `SUPERSCRIPT` or `SUBSCRIPT` baseline offsets is automatically rendered in a smaller font size, computed based on the `font_size` field. The `font_size` itself is not affected by changes in this field."
        }
      },
      "type": "object",
      "id": "TextStyle",
      "description": "Represents the styling that can be applied to a TextRun. If this text is contained in a shape with a parent placeholder, then these text styles may be inherited from the parent. Which text styles are inherited depend on the nesting level of lists: * A text run in a paragraph that is not in a list will inherit its text style from the the newline character in the paragraph at the 0 nesting level of the list inside the parent placeholder. * A text run in a paragraph that is in a list will inherit its text style from the newline character in the paragraph at its corresponding nesting level of the list inside the parent placeholder. Inherited text styles are represented as unset fields in this message. If text is contained in a shape without a parent placeholder, unsetting these fields will revert the style to a value matching the defaults in the Slides editor."
    },
    "CreateParagraphBulletsRequest": {
      "properties": {
        "bulletPreset": {
          "enum": [
            "BULLET_DISC_CIRCLE_SQUARE",
            "BULLET_DIAMONDX_ARROW3D_SQUARE",
            "BULLET_CHECKBOX",
            "BULLET_ARROW_DIAMOND_DISC",
            "BULLET_STAR_CIRCLE_SQUARE",
            "BULLET_ARROW3D_CIRCLE_SQUARE",
            "BULLET_LEFTTRIANGLE_DIAMOND_DISC",
            "BULLET_DIAMONDX_HOLLOWDIAMOND_SQUARE",
            "BULLET_DIAMOND_CIRCLE_SQUARE",
            "NUMBERED_DIGIT_ALPHA_ROMAN",
            "NUMBERED_DIGIT_ALPHA_ROMAN_PARENS",
            "NUMBERED_DIGIT_NESTED",
            "NUMBERED_UPPERALPHA_ALPHA_ROMAN",
            "NUMBERED_UPPERROMAN_UPPERALPHA_DIGIT",
            "NUMBERED_ZERODIGIT_ALPHA_ROMAN"
          ],
          "description": "The kinds of bullet glyphs to be used. Defaults to the `BULLET_DISC_CIRCLE_SQUARE` preset.",
          "enumDescriptions": [
            "A bulleted list with a `DISC`, `CIRCLE` and `SQUARE` bullet glyph for the first 3 list nesting levels.",
            "A bulleted list with a `DIAMONDX`, `ARROW3D` and `SQUARE` bullet glyph for the first 3 list nesting levels.",
            "A bulleted list with `CHECKBOX` bullet glyphs for all list nesting levels.",
            "A bulleted list with a `ARROW`, `DIAMOND` and `DISC` bullet glyph for the first 3 list nesting levels.",
            "A bulleted list with a `STAR`, `CIRCLE` and `SQUARE` bullet glyph for the first 3 list nesting levels.",
            "A bulleted list with a `ARROW3D`, `CIRCLE` and `SQUARE` bullet glyph for the first 3 list nesting levels.",
            "A bulleted list with a `LEFTTRIANGLE`, `DIAMOND` and `DISC` bullet glyph for the first 3 list nesting levels.",
            "A bulleted list with a `DIAMONDX`, `HOLLOWDIAMOND` and `SQUARE` bullet glyph for the first 3 list nesting levels.",
            "A bulleted list with a `DIAMOND`, `CIRCLE` and `SQUARE` bullet glyph for the first 3 list nesting levels.",
            "A numbered list with `DIGIT`, `ALPHA` and `ROMAN` numeric glyphs for the first 3 list nesting levels, followed by periods.",
            "A numbered list with `DIGIT`, `ALPHA` and `ROMAN` numeric glyphs for the first 3 list nesting levels, followed by parenthesis.",
            "A numbered list with `DIGIT` numeric glyphs separated by periods, where each nesting level uses the previous nesting level's glyph as a prefix. For example: '1.', '1.1.', '2.', '2.2.'.",
            "A numbered list with `UPPERALPHA`, `ALPHA` and `ROMAN` numeric glyphs for the first 3 list nesting levels, followed by periods.",
            "A numbered list with `UPPERROMAN`, `UPPERALPHA` and `DIGIT` numeric glyphs for the first 3 list nesting levels, followed by periods.",
            "A numbered list with `ZERODIGIT`, `ALPHA` and `ROMAN` numeric glyphs for the first 3 list nesting levels, followed by periods."
          ],
          "type": "string"
        },
        "textRange": {
          "description": "The range of text to apply the bullet presets to, based on TextElement indexes.",
          "$ref": "Range"
        },
        "cellLocation": {
          "$ref": "TableCellLocation",
          "description": "The optional table cell location if the text to be modified is in a table cell. If present, the object_id must refer to a table."
        },
        "objectId": {
          "description": "The object ID of the shape or table containing the text to add bullets to.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "Creates bullets for all of the paragraphs that overlap with the given text index range. The nesting level of each paragraph will be determined by counting leading tabs in front of each paragraph. To avoid excess space between the bullet and the corresponding paragraph, these leading tabs are removed by this request. This may change the indices of parts of the text. If the paragraph immediately before paragraphs being updated is in a list with a matching preset, the paragraphs being updated are added to that preceding list.",
      "id": "CreateParagraphBulletsRequest"
    },
    "LineFill": {
      "description": "The fill of the line.",
      "type": "object",
      "id": "LineFill",
      "properties": {
        "solidFill": {
          "description": "Solid color fill.",
          "$ref": "SolidFill"
        }
      }
    },
    "StretchedPictureFill": {
      "id": "StretchedPictureFill",
      "description": "The stretched picture fill. The page or page element is filled entirely with the specified picture. The picture is stretched to fit its container.",
      "type": "object",
      "properties": {
        "contentUrl": {
          "type": "string",
          "description": "Reading the content_url: An URL to a picture with a default lifetime of 30 minutes. This URL is tagged with the account of the requester. Anyone with the URL effectively accesses the picture as the original requester. Access to the picture may be lost if the presentation's sharing settings change. Writing the content_url: The picture is fetched once at insertion time and a copy is stored for display inside the presentation. Pictures must be less than 50MB in size, cannot exceed 25 megapixels, and must be in one of PNG, JPEG, or GIF format. The provided URL can be at most 2 kB in length."
        },
        "size": {
          "description": "The original size of the picture fill. This field is read-only.",
          "$ref": "Size"
        }
      }
    },
    "PageBackgroundFill": {
      "properties": {
        "propertyState": {
          "type": "string",
          "enum": [
            "RENDERED",
            "NOT_RENDERED",
            "INHERIT"
          ],
          "enumDescriptions": [
            "If a property's state is RENDERED, then the element has the corresponding property when rendered on a page. If the element is a placeholder shape as determined by the placeholder field, and it inherits from a placeholder shape, the corresponding field may be unset, meaning that the property value is inherited from a parent placeholder. If the element does not inherit, then the field will contain the rendered value. This is the default value.",
            "If a property's state is NOT_RENDERED, then the element does not have the corresponding property when rendered on a page. However, the field may still be set so it can be inherited by child shapes. To remove a property from a rendered element, set its property_state to NOT_RENDERED.",
            "If a property's state is INHERIT, then the property state uses the value of corresponding `property_state` field on the parent shape. Elements that do not inherit will never have an INHERIT property state."
          ],
          "description": "The background fill property state. Updating the fill on a page will implicitly update this field to `RENDERED`, unless another value is specified in the same request. To have no fill on a page, set this field to `NOT_RENDERED`. In this case, any other fill fields set in the same request will be ignored."
        },
        "solidFill": {
          "description": "Solid color fill.",
          "$ref": "SolidFill"
        },
        "stretchedPictureFill": {
          "description": "Stretched picture fill.",
          "$ref": "StretchedPictureFill"
        }
      },
      "type": "object",
      "id": "PageBackgroundFill",
      "description": "The page background fill."
    },
    "InsertTextRequest": {
      "id": "InsertTextRequest",
      "properties": {
        "objectId": {
          "description": "The object ID of the shape or table where the text will be inserted.",
          "type": "string"
        },
        "text": {
          "description": "The text to be inserted. Inserting a newline character will implicitly create a new ParagraphMarker at that index. The paragraph style of the new paragraph will be copied from the paragraph at the current insertion index, including lists and bullets. Text styles for inserted text will be determined automatically, generally preserving the styling of neighboring text. In most cases, the text will be added to the TextRun that exists at the insertion index. Some control characters (U+0000-U+0008, U+000C-U+001F) and characters from the Unicode Basic Multilingual Plane Private Use Area (U+E000-U+F8FF) will be stripped out of the inserted text.",
          "type": "string"
        },
        "insertionIndex": {
          "format": "int32",
          "description": "The index where the text will be inserted, in Unicode code units, based on TextElement indexes. The index is zero-based and is computed from the start of the string. The index may be adjusted to prevent insertions inside Unicode grapheme clusters. In these cases, the text will be inserted immediately after the grapheme cluster.",
          "type": "integer"
        },
        "cellLocation": {
          "$ref": "TableCellLocation",
          "description": "The optional table cell location if the text is to be inserted into a table cell. If present, the object_id must refer to a table."
        }
      },
      "type": "object",
      "description": "Inserts text into a shape or a table cell."
    },
    "TableBorderFill": {
      "type": "object",
      "properties": {
        "solidFill": {
          "$ref": "SolidFill",
          "description": "Solid fill."
        }
      },
      "id": "TableBorderFill",
      "description": "The fill of the border."
    },
    "PageProperties": {
      "id": "PageProperties",
      "description": "The properties of the Page. The page will inherit properties from the parent page. Depending on the page type the hierarchy is defined in either SlideProperties or LayoutProperties.",
      "properties": {
        "colorScheme": {
          "description": "The color scheme of the page. If unset, the color scheme is inherited from a parent page. If the page has no parent, the color scheme uses a default Slides color scheme, matching the defaults in the Slides editor. Only the concrete colors of the first 12 ThemeColorTypes are editable. In addition, only the color scheme on `Master` pages can be updated. To update the field, a color scheme containing mappings from all the first 12 ThemeColorTypes to their concrete colors must be provided. Colors for the remaining ThemeColorTypes will be ignored.",
          "$ref": "ColorScheme"
        },
        "pageBackgroundFill": {
          "description": "The background fill of the page. If unset, the background fill is inherited from a parent page if it exists. If the page has no parent, then the background fill defaults to the corresponding fill in the Slides editor.",
          "$ref": "PageBackgroundFill"
        }
      },
      "type": "object"
    },
    "UpdateTableColumnPropertiesRequest": {
      "description": "Updates the properties of a Table column.",
      "id": "UpdateTableColumnPropertiesRequest",
      "type": "object",
      "properties": {
        "tableColumnProperties": {
          "description": "The table column properties to update. If the value of `table_column_properties#column_width` in the request is less than 406,400 EMU (32 points), a 400 bad request error is returned.",
          "$ref": "TableColumnProperties"
        },
        "columnIndices": {
          "items": {
            "format": "int32",
            "type": "integer"
          },
          "description": "The list of zero-based indices specifying which columns to update. If no indices are provided, all columns in the table will be updated.",
          "type": "array"
        },
        "fields": {
          "type": "string",
          "format": "google-fieldmask",
          "description": "The fields that should be updated. At least one field must be specified. The root `tableColumnProperties` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example to update the column width, set `fields` to `\"column_width\"`. If '\"column_width\"' is included in the field mask but the property is left unset, the column width will default to 406,400 EMU (32 points)."
        },
        "objectId": {
          "type": "string",
          "description": "The object ID of the table."
        }
      }
    },
    "ReplaceAllShapesWithSheetsChartResponse": {
      "type": "object",
      "id": "ReplaceAllShapesWithSheetsChartResponse",
      "properties": {
        "occurrencesChanged": {
          "description": "The number of shapes replaced with charts.",
          "type": "integer",
          "format": "int32"
        }
      },
      "description": "The result of replacing shapes with a Google Sheets chart."
    },
    "Image": {
      "properties": {
        "imageProperties": {
          "$ref": "ImageProperties",
          "description": "The properties of the image."
        },
        "contentUrl": {
          "type": "string",
          "description": "An URL to an image with a default lifetime of 30 minutes. This URL is tagged with the account of the requester. Anyone with the URL effectively accesses the image as the original requester. Access to the image may be lost if the presentation's sharing settings change."
        },
        "sourceUrl": {
          "description": "The source URL is the URL used to insert the image. The source URL can be empty.",
          "type": "string"
        }
      },
      "id": "Image",
      "type": "object",
      "description": "A PageElement kind representing an image."
    },
    "TableBorderRow": {
      "id": "TableBorderRow",
      "description": "Contents of each border row in a table.",
      "type": "object",
      "properties": {
        "tableBorderCells": {
          "description": "Properties of each border cell. When a border's adjacent table cells are merged, it is not included in the response.",
          "type": "array",
          "items": {
            "$ref": "TableBorderCell"
          }
        }
      }
    },
    "WriteControl": {
      "properties": {
        "requiredRevisionId": {
          "description": "The revision ID of the presentation required for the write request. If specified and the `required_revision_id` doesn't exactly match the presentation's current `revision_id`, the request will not be processed and will return a 400 bad request error.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "WriteControl",
      "description": "Provides control over how write requests are executed."
    },
    "UpdatePageElementsZOrderRequest": {
      "properties": {
        "pageElementObjectIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The object IDs of the page elements to update. All the page elements must be on the same page and must not be grouped."
        },
        "operation": {
          "enum": [
            "Z_ORDER_OPERATION_UNSPECIFIED",
            "BRING_TO_FRONT",
            "BRING_FORWARD",
            "SEND_BACKWARD",
            "SEND_TO_BACK"
          ],
          "enumDescriptions": [
            "Unspecified operation.",
            "Brings the page elements to the front of the page.",
            "Brings the page elements forward on the page by one element relative to the forwardmost one in the specified page elements.",
            "Sends the page elements backward on the page by one element relative to the furthest behind one in the specified page elements.",
            "Sends the page elements to the back of the page."
          ],
          "description": "The Z-order operation to apply on the page elements. When applying the operation on multiple page elements, the relative Z-orders within these page elements before the operation is maintained.",
          "type": "string"
        }
      },
      "id": "UpdatePageElementsZOrderRequest",
      "description": "Updates the Z-order of page elements. Z-order is an ordering of the elements on the page from back to front. The page element in the front may cover the elements that are behind it.",
      "type": "object"
    },
    "WordArt": {
      "id": "WordArt",
      "description": "A PageElement kind representing word art.",
      "type": "object",
      "properties": {
        "renderedText": {
          "description": "The text rendered as word art.",
          "type": "string"
        }
      }
    },
    "Thumbnail": {
      "description": "The thumbnail of a page.",
      "properties": {
        "contentUrl": {
          "type": "string",
          "description": "The content URL of the thumbnail image. The URL to the image has a default lifetime of 30 minutes. This URL is tagged with the account of the requester. Anyone with the URL effectively accesses the image as the original requester. Access to the image may be lost if the presentation's sharing settings change. The mime type of the thumbnail image is the same as specified in the `GetPageThumbnailRequest`."
        },
        "width": {
          "type": "integer",
          "format": "int32",
          "description": "The positive width in pixels of the thumbnail image."
        },
        "height": {
          "description": "The positive height in pixels of the thumbnail image.",
          "type": "integer",
          "format": "int32"
        }
      },
      "type": "object",
      "id": "Thumbnail"
    },
    "LayoutPlaceholderIdMapping": {
      "id": "LayoutPlaceholderIdMapping",
      "properties": {
        "layoutPlaceholder": {
          "$ref": "Placeholder",
          "description": "The placeholder on a layout that will be applied to a slide. Only type and index are needed. For example, a predefined `TITLE_AND_BODY` layout may usually have a TITLE placeholder with index 0 and a BODY placeholder with index 0."
        },
        "objectId": {
          "description": "A user-supplied object ID for the placeholder identified above that to be created onto a slide. If you specify an ID, it must be unique among all pages and page elements in the presentation. The ID must start with an alphanumeric character or an underscore (matches regex `[a-zA-Z0-9_]`); remaining characters may include those as well as a hyphen or colon (matches regex `[a-zA-Z0-9_-:]`). The length of the ID must not be less than 5 or greater than 50. If you don't specify an ID, a unique one is generated.",
          "type": "string"
        },
        "layoutPlaceholderObjectId": {
          "description": "The object ID of the placeholder on a layout that will be applied to a slide.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "The user-specified ID mapping for a placeholder that will be created on a slide from a specified layout."
    },
    "CropProperties": {
      "description": "The crop properties of an object enclosed in a container. For example, an Image. The crop properties is represented by the offsets of four edges which define a crop rectangle. The offsets are measured in percentage from the corresponding edges of the object's original bounding rectangle towards inside, relative to the object's original dimensions. - If the offset is in the interval (0, 1), the corresponding edge of crop rectangle is positioned inside of the object's original bounding rectangle. - If the offset is negative or greater than 1, the corresponding edge of crop rectangle is positioned outside of the object's original bounding rectangle. - If the left edge of the crop rectangle is on the right side of its right edge, the object will be flipped horizontally. - If the top edge of the crop rectangle is below its bottom edge, the object will be flipped vertically. - If all offsets and rotation angle is 0, the object is not cropped. After cropping, the content in the crop rectangle will be stretched to fit its container.",
      "id": "CropProperties",
      "properties": {
        "bottomOffset": {
          "format": "float",
          "description": "The offset specifies the bottom edge of the crop rectangle that is located above the original bounding rectangle bottom edge, relative to the object's original height.",
          "type": "number"
        },
        "leftOffset": {
          "format": "float",
          "type": "number",
          "description": "The offset specifies the left edge of the crop rectangle that is located to the right of the original bounding rectangle left edge, relative to the object's original width."
        },
        "topOffset": {
          "format": "float",
          "type": "number",
          "description": "The offset specifies the top edge of the crop rectangle that is located below the original bounding rectangle top edge, relative to the object's original height."
        },
        "rightOffset": {
          "description": "The offset specifies the right edge of the crop rectangle that is located to the left of the original bounding rectangle right edge, relative to the object's original width.",
          "format": "float",
          "type": "number"
        },
        "angle": {
          "description": "The rotation angle of the crop window around its center, in radians. Rotation angle is applied after the offset.",
          "format": "float",
          "type": "number"
        }
      },
      "type": "object"
    },
    "UngroupObjectsRequest": {
      "properties": {
        "objectIds": {
          "items": {
            "type": "string"
          },
          "description": "The object IDs of the objects to ungroup. Only groups that are not inside other groups can be ungrouped. All the groups should be on the same page. The group itself is deleted. The visual sizes and positions of all the children are preserved.",
          "type": "array"
        }
      },
      "id": "UngroupObjectsRequest",
      "description": "Ungroups objects, such as groups.",
      "type": "object"
    },
    "LineProperties": {
      "type": "object",
      "description": "The properties of the Line. When unset, these fields default to values that match the appearance of new lines created in the Slides editor.",
      "properties": {
        "startArrow": {
          "enum": [
            "ARROW_STYLE_UNSPECIFIED",
            "NONE",
            "STEALTH_ARROW",
            "FILL_ARROW",
            "FILL_CIRCLE",
            "FILL_SQUARE",
            "FILL_DIAMOND",
            "OPEN_ARROW",
            "OPEN_CIRCLE",
            "OPEN_SQUARE",
            "OPEN_DIAMOND"
          ],
          "enumDescriptions": [
            "An unspecified arrow style.",
            "No arrow.",
            "Arrow with notched back. Corresponds to ECMA-376 ST_LineEndType value 'stealth'.",
            "Filled arrow. Corresponds to ECMA-376 ST_LineEndType value 'triangle'.",
            "Filled circle. Corresponds to ECMA-376 ST_LineEndType value 'oval'.",
            "Filled square.",
            "Filled diamond. Corresponds to ECMA-376 ST_LineEndType value 'diamond'.",
            "Hollow arrow.",
            "Hollow circle.",
            "Hollow square.",
            "Hollow diamond."
          ],
          "description": "The style of the arrow at the beginning of the line.",
          "type": "string"
        },
        "startConnection": {
          "description": "The connection at the beginning of the line. If unset, there is no connection. Only lines with a Type indicating it is a \"connector\" can have a `start_connection`.",
          "$ref": "LineConnection"
        },
        "lineFill": {
          "$ref": "LineFill",
          "description": "The fill of the line. The default line fill matches the defaults for new lines created in the Slides editor."
        },
        "endArrow": {
          "enum": [
            "ARROW_STYLE_UNSPECIFIED",
            "NONE",
            "STEALTH_ARROW",
            "FILL_ARROW",
            "FILL_CIRCLE",
            "FILL_SQUARE",
            "FILL_DIAMOND",
            "OPEN_ARROW",
            "OPEN_CIRCLE",
            "OPEN_SQUARE",
            "OPEN_DIAMOND"
          ],
          "type": "string",
          "enumDescriptions": [
            "An unspecified arrow style.",
            "No arrow.",
            "Arrow with notched back. Corresponds to ECMA-376 ST_LineEndType value 'stealth'.",
            "Filled arrow. Corresponds to ECMA-376 ST_LineEndType value 'triangle'.",
            "Filled circle. Corresponds to ECMA-376 ST_LineEndType value 'oval'.",
            "Filled square.",
            "Filled diamond. Corresponds to ECMA-376 ST_LineEndType value 'diamond'.",
            "Hollow arrow.",
            "Hollow circle.",
            "Hollow square.",
            "Hollow diamond."
          ],
          "description": "The style of the arrow at the end of the line."
        },
        "dashStyle": {
          "description": "The dash style of the line.",
          "type": "string",
          "enumDescriptions": [
            "Unspecified dash style.",
            "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'. This is the default dash style.",
            "Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.",
            "Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.",
            "Alternating dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dashDot'.",
            "Line with large dashes. Corresponds to ECMA-376 ST_PresetLineDashVal value 'lgDash'.",
            "Alternating large dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal value 'lgDashDot'."
          ],
          "enum": [
            "DASH_STYLE_UNSPECIFIED",
            "SOLID",
            "DOT",
            "DASH",
            "DASH_DOT",
            "LONG_DASH",
            "LONG_DASH_DOT"
          ]
        },
        "weight": {
          "$ref": "Dimension",
          "description": "The thickness of the line."
        },
        "link": {
          "$ref": "Link",
          "description": "The hyperlink destination of the line. If unset, there is no link."
        },
        "endConnection": {
          "$ref": "LineConnection",
          "description": "The connection at the end of the line. If unset, there is no connection. Only lines with a Type indicating it is a \"connector\" can have an `end_connection`."
        }
      },
      "id": "LineProperties"
    },
    "BatchUpdatePresentationRequest": {
      "properties": {
        "requests": {
          "type": "array",
          "items": {
            "$ref": "Request"
          },
          "description": "A list of updates to apply to the presentation."
        },
        "writeControl": {
          "$ref": "WriteControl",
          "description": "Provides control over how write requests are executed."
        }
      },
      "description": "Request message for PresentationsService.BatchUpdatePresentation.",
      "id": "BatchUpdatePresentationRequest",
      "type": "object"
    },
    "Size": {
      "properties": {
        "width": {
          "description": "The width of the object.",
          "$ref": "Dimension"
        },
        "height": {
          "description": "The height of the object.",
          "$ref": "Dimension"
        }
      },
      "description": "A width and height.",
      "type": "object",
      "id": "Size"
    },
    "TableCellLocation": {
      "description": "A location of a single table cell within a table.",
      "id": "TableCellLocation",
      "type": "object",
      "properties": {
        "columnIndex": {
          "description": "The 0-based column index.",
          "format": "int32",
          "type": "integer"
        },
        "rowIndex": {
          "type": "integer",
          "description": "The 0-based row index.",
          "format": "int32"
        }
      }
    },
    "DeleteTableRowRequest": {
      "type": "object",
      "properties": {
        "tableObjectId": {
          "description": "The table to delete rows from.",
          "type": "string"
        },
        "cellLocation": {
          "$ref": "TableCellLocation",
          "description": "The reference table cell location from which a row will be deleted. The row this cell spans will be deleted. If this is a merged cell, multiple rows will be deleted. If no rows remain in the table after this deletion, the whole table is deleted."
        }
      },
      "id": "DeleteTableRowRequest",
      "description": "Deletes a row from a table."
    },
    "CreateSheetsChartResponse": {
      "properties": {
        "objectId": {
          "description": "The object ID of the created chart.",
          "type": "string"
        }
      },
      "description": "The result of creating an embedded Google Sheets chart.",
      "id": "CreateSheetsChartResponse",
      "type": "object"
    },
    "List": {
      "description": "A List describes the look and feel of bullets belonging to paragraphs associated with a list. A paragraph that is part of a list has an implicit reference to that list's ID.",
      "type": "object",
      "id": "List",
      "properties": {
        "listId": {
          "type": "string",
          "description": "The ID of the list."
        },
        "nestingLevel": {
          "additionalProperties": {
            "$ref": "NestingLevel"
          },
          "description": "A map of nesting levels to the properties of bullets at the associated level. A list has at most nine levels of nesting, so the possible values for the keys of this map are 0 through 8, inclusive.",
          "type": "object"
        }
      }
    },
    "TableRange": {
      "description": "A table range represents a reference to a subset of a table. It's important to note that the cells specified by a table range do not necessarily form a rectangle. For example, let's say we have a 3 x 3 table where all the cells of the last row are merged together. The table looks like this: [ ] A table range with location = (0, 0), row span = 3 and column span = 2 specifies the following cells: x x [ x x x ]",
      "id": "TableRange",
      "properties": {
        "location": {
          "description": "The starting location of the table range.",
          "$ref": "TableCellLocation"
        },
        "rowSpan": {
          "description": "The row span of the table range.",
          "format": "int32",
          "type": "integer"
        },
        "columnSpan": {
          "format": "int32",
          "description": "The column span of the table range.",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "UpdateTableCellPropertiesRequest": {
      "properties": {
        "tableCellProperties": {
          "description": "The table cell properties to update.",
          "$ref": "TableCellProperties"
        },
        "objectId": {
          "description": "The object ID of the table.",
          "type": "string"
        },
        "fields": {
          "type": "string",
          "description": "The fields that should be updated. At least one field must be specified. The root `tableCellProperties` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example to update the table cell background solid fill color, set `fields` to `\"tableCellBackgroundFill.solidFill.color\"`. To reset a property to its default value, include its field name in the field mask but leave the field itself unset.",
          "format": "google-fieldmask"
        },
        "tableRange": {
          "$ref": "TableRange",
          "description": "The table range representing the subset of the table to which the updates are applied. If a table range is not specified, the updates will apply to the entire table."
        }
      },
      "type": "object",
      "id": "UpdateTableCellPropertiesRequest",
      "description": "Update the properties of a TableCell."
    },
    "UpdatePagePropertiesRequest": {
      "properties": {
        "pageProperties": {
          "description": "The page properties to update.",
          "$ref": "PageProperties"
        },
        "fields": {
          "description": "The fields that should be updated. At least one field must be specified. The root `pageProperties` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example to update the page background solid fill color, set `fields` to `\"pageBackgroundFill.solidFill.color\"`. To reset a property to its default value, include its field name in the field mask but leave the field itself unset.",
          "format": "google-fieldmask",
          "type": "string"
        },
        "objectId": {
          "type": "string",
          "description": "The object ID of the page the update is applied to."
        }
      },
      "id": "UpdatePagePropertiesRequest",
      "type": "object",
      "description": "Updates the properties of a Page."
    },
    "Table": {
      "description": "A PageElement kind representing a table.",
      "id": "Table",
      "properties": {
        "tableRows": {
          "items": {
            "$ref": "TableRow"
          },
          "type": "array",
          "description": "Properties and contents of each row. Cells that span multiple rows are contained in only one of these rows and have a row_span greater than 1."
        },
        "columns": {
          "type": "integer",
          "description": "Number of columns in the table.",
          "format": "int32"
        },
        "tableColumns": {
          "description": "Properties of each column.",
          "type": "array",
          "items": {
            "$ref": "TableColumnProperties"
          }
        },
        "horizontalBorderRows": {
          "items": {
            "$ref": "TableBorderRow"
          },
          "description": "Properties of horizontal cell borders. A table's horizontal cell borders are represented as a grid. The grid has one more row than the number of rows in the table and the same number of columns as the table. For example, if the table is 3 x 3, its horizontal borders will be represented as a grid with 4 rows and 3 columns.",
          "type": "array"
        },
        "rows": {
          "type": "integer",
          "format": "int32",
          "description": "Number of rows in the table."
        },
        "verticalBorderRows": {
          "items": {
            "$ref": "TableBorderRow"
          },
          "type": "array",
          "description": "Properties of vertical cell borders. A table's vertical cell borders are represented as a grid. The grid has the same number of rows as the table and one more column than the number of columns in the table. For example, if the table is 3 x 3, its vertical borders will be represented as a grid with 3 rows and 4 columns."
        }
      },
      "type": "object"
    },
    "PageElementProperties": {
      "id": "PageElementProperties",
      "properties": {
        "pageObjectId": {
          "description": "The object ID of the page where the element is located.",
          "type": "string"
        },
        "transform": {
          "description": "The transform for the element.",
          "$ref": "AffineTransform"
        },
        "size": {
          "$ref": "Size",
          "description": "The size of the element."
        }
      },
      "description": "Common properties for a page element. Note: When you initially create a PageElement, the API may modify the values of both `size` and `transform`, but the visual size will be unchanged.",
      "type": "object"
    },
    "TableBorderProperties": {
      "properties": {
        "dashStyle": {
          "type": "string",
          "enumDescriptions": [
            "Unspecified dash style.",
            "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'. This is the default dash style.",
            "Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.",
            "Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.",
            "Alternating dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dashDot'.",
            "Line with large dashes. Corresponds to ECMA-376 ST_PresetLineDashVal value 'lgDash'.",
            "Alternating large dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal value 'lgDashDot'."
          ],
          "enum": [
            "DASH_STYLE_UNSPECIFIED",
            "SOLID",
            "DOT",
            "DASH",
            "DASH_DOT",
            "LONG_DASH",
            "LONG_DASH_DOT"
          ],
          "description": "The dash style of the border."
        },
        "weight": {
          "$ref": "Dimension",
          "description": "The thickness of the border."
        },
        "tableBorderFill": {
          "description": "The fill of the table border.",
          "$ref": "TableBorderFill"
        }
      },
      "type": "object",
      "id": "TableBorderProperties",
      "description": "The border styling properties of the TableBorderCell."
    },
    "PageElement": {
      "id": "PageElement",
      "description": "A visual element rendered on a page.",
      "type": "object",
      "properties": {
        "wordArt": {
          "$ref": "WordArt",
          "description": "A word art page element."
        },
        "table": {
          "description": "A table page element.",
          "$ref": "Table"
        },
        "transform": {
          "$ref": "AffineTransform",
          "description": "The transform of the page element. The visual appearance of the page element is determined by its absolute transform. To compute the absolute transform, preconcatenate a page element's transform with the transforms of all of its parent groups. If the page element is not in a group, its absolute transform is the same as the value in this field. The initial transform for the newly created Group is always the identity transform."
        },
        "title": {
          "description": "The title of the page element. Combined with description to display alt text. The field is not supported for Group elements.",
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "The description of the page element. Combined with title to display alt text. The field is not supported for Group elements."
        },
        "sheetsChart": {
          "description": "A linked chart embedded from Google Sheets. Unlinked charts are represented as images.",
          "$ref": "SheetsChart"
        },
        "objectId": {
          "type": "string",
          "description": "The object ID for this page element. Object IDs used by google.apps.slides.v1.Page and google.apps.slides.v1.PageElement share the same namespace."
        },
        "shape": {
          "description": "A generic shape.",
          "$ref": "Shape"
        },
        "elementGroup": {
          "description": "A collection of page elements joined as a single unit.",
          "$ref": "Group"
        },
        "video": {
          "description": "A video page element.",
          "$ref": "Video"
        },
        "line": {
          "description": "A line page element.",
          "$ref": "Line"
        },
        "image": {
          "description": "An image page element.",
          "$ref": "Image"
        },
        "size": {
          "$ref": "Size",
          "description": "The size of the page element."
        }
      }
    },
    "UnmergeTableCellsRequest": {
      "type": "object",
      "id": "UnmergeTableCellsRequest",
      "properties": {
        "tableRange": {
          "$ref": "TableRange",
          "description": "The table range specifying which cells of the table to unmerge. All merged cells in this range will be unmerged, and cells that are already unmerged will not be affected. If the range has no merged cells, the request will do nothing. If there is text in any of the merged cells, the text will remain in the upper-left (\"head\") cell of the resulting block of unmerged cells."
        },
        "objectId": {
          "description": "The object ID of the table.",
          "type": "string"
        }
      },
      "description": "Unmerges cells in a Table."
    },
    "Recolor": {
      "description": "A recolor effect applied on an image.",
      "id": "Recolor",
      "type": "object",
      "properties": {
        "name": {
          "enum": [
            "NONE",
            "LIGHT1",
            "LIGHT2",
            "LIGHT3",
            "LIGHT4",
            "LIGHT5",
            "LIGHT6",
            "LIGHT7",
            "LIGHT8",
            "LIGHT9",
            "LIGHT10",
            "DARK1",
            "DARK2",
            "DARK3",
            "DARK4",
            "DARK5",
            "DARK6",
            "DARK7",
            "DARK8",
            "DARK9",
            "DARK10",
            "GRAYSCALE",
            "NEGATIVE",
            "SEPIA",
            "CUSTOM"
          ],
          "type": "string",
          "description": "The name of the recolor effect. The name is determined from the `recolor_stops` by matching the gradient against the colors in the page's current color scheme. This property is read-only.",
          "enumDescriptions": [
            "No recolor effect. The default value.",
            "A recolor effect that lightens the image using the page's first available color from its color scheme.",
            "A recolor effect that lightens the image using the page's second available color from its color scheme.",
            "A recolor effect that lightens the image using the page's third available color from its color scheme.",
            "A recolor effect that lightens the image using the page's forth available color from its color scheme.",
            "A recolor effect that lightens the image using the page's fifth available color from its color scheme.",
            "A recolor effect that lightens the image using the page's sixth available color from its color scheme.",
            "A recolor effect that lightens the image using the page's seventh available color from its color scheme.",
            "A recolor effect that lightens the image using the page's eighth available color from its color scheme.",
            "A recolor effect that lightens the image using the page's ninth available color from its color scheme.",
            "A recolor effect that lightens the image using the page's tenth available color from its color scheme.",
            "A recolor effect that darkens the image using the page's first available color from its color scheme.",
            "A recolor effect that darkens the image using the page's second available color from its color scheme.",
            "A recolor effect that darkens the image using the page's third available color from its color scheme.",
            "A recolor effect that darkens the image using the page's fourth available color from its color scheme.",
            "A recolor effect that darkens the image using the page's fifth available color from its color scheme.",
            "A recolor effect that darkens the image using the page's sixth available color from its color scheme.",
            "A recolor effect that darkens the image using the page's seventh available color from its color scheme.",
            "A recolor effect that darkens the image using the page's eighth available color from its color scheme.",
            "A recolor effect that darkens the image using the page's ninth available color from its color scheme.",
            "A recolor effect that darkens the image using the page's tenth available color from its color scheme.",
            "A recolor effect that recolors the image to grayscale.",
            "A recolor effect that recolors the image to negative grayscale.",
            "A recolor effect that recolors the image using the sepia color.",
            "Custom recolor effect. Refer to `recolor_stops` for the concrete gradient."
          ]
        },
        "recolorStops": {
          "description": "The recolor effect is represented by a gradient, which is a list of color stops. The colors in the gradient will replace the corresponding colors at the same position in the color palette and apply to the image. This property is read-only.",
          "type": "array",
          "items": {
            "$ref": "ColorStop"
          }
        }
      }
    },
    "Outline": {
      "type": "object",
      "id": "Outline",
      "properties": {
        "outlineFill": {
          "$ref": "OutlineFill",
          "description": "The fill of the outline."
        },
        "dashStyle": {
          "type": "string",
          "enum": [
            "DASH_STYLE_UNSPECIFIED",
            "SOLID",
            "DOT",
            "DASH",
            "DASH_DOT",
            "LONG_DASH",
            "LONG_DASH_DOT"
          ],
          "enumDescriptions": [
            "Unspecified dash style.",
            "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'. This is the default dash style.",
            "Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.",
            "Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.",
            "Alternating dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dashDot'.",
            "Line with large dashes. Corresponds to ECMA-376 ST_PresetLineDashVal value 'lgDash'.",
            "Alternating large dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal value 'lgDashDot'."
          ],
          "description": "The dash style of the outline."
        },
        "weight": {
          "description": "The thickness of the outline.",
          "$ref": "Dimension"
        },
        "propertyState": {
          "enum": [
            "RENDERED",
            "NOT_RENDERED",
            "INHERIT"
          ],
          "enumDescriptions": [
            "If a property's state is RENDERED, then the element has the corresponding property when rendered on a page. If the element is a placeholder shape as determined by the placeholder field, and it inherits from a placeholder shape, the corresponding field may be unset, meaning that the property value is inherited from a parent placeholder. If the element does not inherit, then the field will contain the rendered value. This is the default value.",
            "If a property's state is NOT_RENDERED, then the element does not have the corresponding property when rendered on a page. However, the field may still be set so it can be inherited by child shapes. To remove a property from a rendered element, set its property_state to NOT_RENDERED.",
            "If a property's state is INHERIT, then the property state uses the value of corresponding `property_state` field on the parent shape. Elements that do not inherit will never have an INHERIT property state."
          ],
          "type": "string",
          "description": "The outline property state. Updating the outline on a page element will implicitly update this field to `RENDERED`, unless another value is specified in the same request. To have no outline on a page element, set this field to `NOT_RENDERED`. In this case, any other outline fields set in the same request will be ignored."
        }
      },
      "description": "The outline of a PageElement. If these fields are unset, they may be inherited from a parent placeholder if it exists. If there is no parent, the fields will default to the value used for new page elements created in the Slides editor, which may depend on the page element kind."
    },
    "CreateLineResponse": {
      "id": "CreateLineResponse",
      "properties": {
        "objectId": {
          "description": "The object ID of the created line.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "The result of creating a line."
    },
    "TextContent": {
      "properties": {
        "textElements": {
          "description": "The text contents broken down into its component parts, including styling information. This property is read-only.",
          "type": "array",
          "items": {
            "$ref": "TextElement"
          }
        },
        "lists": {
          "description": "The bulleted lists contained in this text, keyed by list ID.",
          "type": "object",
          "additionalProperties": {
            "$ref": "List"
          }
        }
      },
      "type": "object",
      "id": "TextContent",
      "description": "The general text content. The text must reside in a compatible shape (e.g. text box or rectangle) or a table cell in a page."
    },
    "OutlineFill": {
      "type": "object",
      "properties": {
        "solidFill": {
          "description": "Solid color fill.",
          "$ref": "SolidFill"
        }
      },
      "id": "OutlineFill",
      "description": "The fill of the outline."
    },
    "NotesProperties": {
      "id": "NotesProperties",
      "properties": {
        "speakerNotesObjectId": {
          "type": "string",
          "description": "The object ID of the shape on this notes page that contains the speaker notes for the corresponding slide. The actual shape may not always exist on the notes page. Inserting text using this object ID will automatically create the shape. In this case, the actual shape may have different object ID. The `GetPresentation` or `GetPage` action will always return the latest object ID."
        }
      },
      "description": "The properties of Page that are only relevant for pages with page_type NOTES.",
      "type": "object"
    },
    "TableRow": {
      "description": "Properties and contents of each row in a table.",
      "type": "object",
      "id": "TableRow",
      "properties": {
        "tableCells": {
          "description": "Properties and contents of each cell. Cells that span multiple columns are represented only once with a column_span greater than 1. As a result, the length of this collection does not always match the number of columns of the entire table.",
          "type": "array",
          "items": {
            "$ref": "TableCell"
          }
        },
        "rowHeight": {
          "$ref": "Dimension",
          "description": "Height of a row."
        },
        "tableRowProperties": {
          "$ref": "TableRowProperties",
          "description": "Properties of the row."
        }
      }
    },
    "SheetsChartProperties": {
      "id": "SheetsChartProperties",
      "properties": {
        "chartImageProperties": {
          "$ref": "ImageProperties",
          "description": "The properties of the embedded chart image."
        }
      },
      "type": "object",
      "description": "The properties of the SheetsChart."
    },
    "DeleteTableColumnRequest": {
      "type": "object",
      "properties": {
        "tableObjectId": {
          "type": "string",
          "description": "The table to delete columns from."
        },
        "cellLocation": {
          "description": "The reference table cell location from which a column will be deleted. The column this cell spans will be deleted. If this is a merged cell, multiple columns will be deleted. If no columns remain in the table after this deletion, the whole table is deleted.",
          "$ref": "TableCellLocation"
        }
      },
      "id": "DeleteTableColumnRequest",
      "description": "Deletes a column from a table."
    },
    "UpdateTextStyleRequest": {
      "description": "Update the styling of text in a Shape or Table.",
      "properties": {
        "cellLocation": {
          "$ref": "TableCellLocation",
          "description": "The location of the cell in the table containing the text to style. If `object_id` refers to a table, `cell_location` must have a value. Otherwise, it must not."
        },
        "fields": {
          "format": "google-fieldmask",
          "type": "string",
          "description": "The fields that should be updated. At least one field must be specified. The root `style` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example, to update the text style to bold, set `fields` to `\"bold\"`. To reset a property to its default value, include its field name in the field mask but leave the field itself unset."
        },
        "style": {
          "$ref": "TextStyle",
          "description": "The style(s) to set on the text. If the value for a particular style matches that of the parent, that style will be set to inherit. Certain text style changes may cause other changes meant to mirror the behavior of the Slides editor. See the documentation of TextStyle for more information."
        },
        "objectId": {
          "description": "The object ID of the shape or table with the text to be styled.",
          "type": "string"
        },
        "textRange": {
          "description": "The range of text to style. The range may be extended to include adjacent newlines. If the range fully contains a paragraph belonging to a list, the paragraph's bullet is also updated with the matching text style.",
          "$ref": "Range"
        }
      },
      "type": "object",
      "id": "UpdateTextStyleRequest"
    },
    "Placeholder": {
      "type": "object",
      "id": "Placeholder",
      "description": "The placeholder information that uniquely identifies a placeholder shape.",
      "properties": {
        "index": {
          "description": "The index of the placeholder. If the same placeholder types are present in the same page, they would have different index values.",
          "format": "int32",
          "type": "integer"
        },
        "type": {
          "type": "string",
          "enum": [
            "NONE",
            "BODY",
            "CHART",
            "CLIP_ART",
            "CENTERED_TITLE",
            "DIAGRAM",
            "DATE_AND_TIME",
            "FOOTER",
            "HEADER",
            "MEDIA",
            "OBJECT",
            "PICTURE",
            "SLIDE_NUMBER",
            "SUBTITLE",
            "TABLE",
            "TITLE",
            "SLIDE_IMAGE"
          ],
          "enumDescriptions": [
            "Default value, signifies it is not a placeholder.",
            "Body text.",
            "Chart or graph.",
            "Clip art image.",
            "Title centered.",
            "Diagram.",
            "Date and time.",
            "Footer text.",
            "Header text.",
            "Multimedia.",
            "Any content type.",
            "Picture.",
            "Number of a slide.",
            "Subtitle.",
            "Table.",
            "Slide title.",
            "Slide image."
          ],
          "description": "The type of the placeholder."
        },
        "parentObjectId": {
          "type": "string",
          "description": "The object ID of this shape's parent placeholder. If unset, the parent placeholder shape does not exist, so the shape does not inherit properties from any other shape."
        }
      }
    },
    "CreateSlideResponse": {
      "properties": {
        "objectId": {
          "type": "string",
          "description": "The object ID of the created slide."
        }
      },
      "type": "object",
      "id": "CreateSlideResponse",
      "description": "The result of creating a slide."
    },
    "SheetsChart": {
      "properties": {
        "contentUrl": {
          "description": "The URL of an image of the embedded chart, with a default lifetime of 30 minutes. This URL is tagged with the account of the requester. Anyone with the URL effectively accesses the image as the original requester. Access to the image may be lost if the presentation's sharing settings change.",
          "type": "string"
        },
        "chartId": {
          "type": "integer",
          "description": "The ID of the specific chart in the Google Sheets spreadsheet that is embedded.",
          "format": "int32"
        },
        "sheetsChartProperties": {
          "description": "The properties of the Sheets chart.",
          "$ref": "SheetsChartProperties"
        },
        "spreadsheetId": {
          "description": "The ID of the Google Sheets spreadsheet that contains the source chart.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "SheetsChart",
      "description": "A PageElement kind representing a linked chart embedded from Google Sheets."
    },
    "UpdateImagePropertiesRequest": {
      "type": "object",
      "id": "UpdateImagePropertiesRequest",
      "description": "Update the properties of an Image.",
      "properties": {
        "objectId": {
          "description": "The object ID of the image the updates are applied to.",
          "type": "string"
        },
        "imageProperties": {
          "$ref": "ImageProperties",
          "description": "The image properties to update."
        },
        "fields": {
          "format": "google-fieldmask",
          "type": "string",
          "description": "The fields that should be updated. At least one field must be specified. The root `imageProperties` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example to update the image outline color, set `fields` to `\"outline.outlineFill.solidFill.color\"`. To reset a property to its default value, include its field name in the field mask but leave the field itself unset."
        }
      }
    },
    "SlideProperties": {
      "description": "The properties of Page that are only relevant for pages with page_type SLIDE.",
      "type": "object",
      "properties": {
        "layoutObjectId": {
          "type": "string",
          "description": "The object ID of the layout that this slide is based on. This property is read-only."
        },
        "masterObjectId": {
          "type": "string",
          "description": "The object ID of the master that this slide is based on. This property is read-only."
        },
        "notesPage": {
          "$ref": "Page",
          "description": "The notes page that this slide is associated with. It defines the visual appearance of a notes page when printing or exporting slides with speaker notes. A notes page inherits properties from the notes master. The placeholder shape with type BODY on the notes page contains the speaker notes for this slide. The ID of this shape is identified by the speakerNotesObjectId field. The notes page is read-only except for the text content and styles of the speaker notes shape. This property is read-only."
        }
      },
      "id": "SlideProperties"
    },
    "Response": {
      "id": "Response",
      "type": "object",
      "description": "A single response from an update.",
      "properties": {
        "createTable": {
          "$ref": "CreateTableResponse",
          "description": "The result of creating a table."
        },
        "createLine": {
          "$ref": "CreateLineResponse",
          "description": "The result of creating a line."
        },
        "replaceAllText": {
          "description": "The result of replacing text.",
          "$ref": "ReplaceAllTextResponse"
        },
        "duplicateObject": {
          "description": "The result of duplicating an object.",
          "$ref": "DuplicateObjectResponse"
        },
        "createSlide": {
          "$ref": "CreateSlideResponse",
          "description": "The result of creating a slide."
        },
        "groupObjects": {
          "description": "The result of grouping objects.",
          "$ref": "GroupObjectsResponse"
        },
        "createSheetsChart": {
          "description": "The result of creating a Google Sheets chart.",
          "$ref": "CreateSheetsChartResponse"
        },
        "replaceAllShapesWithSheetsChart": {
          "$ref": "ReplaceAllShapesWithSheetsChartResponse",
          "description": "The result of replacing all shapes matching some criteria with a Google Sheets chart."
        },
        "createImage": {
          "$ref": "CreateImageResponse",
          "description": "The result of creating an image."
        },
        "createVideo": {
          "$ref": "CreateVideoResponse",
          "description": "The result of creating a video."
        },
        "createShape": {
          "$ref": "CreateShapeResponse",
          "description": "The result of creating a shape."
        },
        "replaceAllShapesWithImage": {
          "description": "The result of replacing all shapes matching some criteria with an image.",
          "$ref": "ReplaceAllShapesWithImageResponse"
        }
      }
    },
    "InsertTableColumnsRequest": {
      "type": "object",
      "id": "InsertTableColumnsRequest",
      "properties": {
        "insertRight": {
          "description": "Whether to insert new columns to the right of the reference cell location. - `True`: insert to the right. - `False`: insert to the left.",
          "type": "boolean"
        },
        "tableObjectId": {
          "description": "The table to insert columns into.",
          "type": "string"
        },
        "cellLocation": {
          "$ref": "TableCellLocation",
          "description": "The reference table cell location from which columns will be inserted. A new column will be inserted to the left (or right) of the column where the reference cell is. If the reference cell is a merged cell, a new column will be inserted to the left (or right) of the merged cell."
        },
        "number": {
          "description": "The number of columns to be inserted. Maximum 20 per request.",
          "format": "int32",
          "type": "integer"
        }
      },
      "description": "Inserts columns into a table. Other columns in the table will be resized to fit the new column."
    },
    "ParagraphMarker": {
      "description": "A TextElement kind that represents the beginning of a new paragraph.",
      "type": "object",
      "properties": {
        "bullet": {
          "$ref": "Bullet",
          "description": "The bullet for this paragraph. If not present, the paragraph does not belong to a list."
        },
        "style": {
          "$ref": "ParagraphStyle",
          "description": "The paragraph's style"
        }
      },
      "id": "ParagraphMarker"
    },
    "UpdateTableRowPropertiesRequest": {
      "type": "object",
      "id": "UpdateTableRowPropertiesRequest",
      "description": "Updates the properties of a Table row.",
      "properties": {
        "rowIndices": {
          "items": {
            "format": "int32",
            "type": "integer"
          },
          "description": "The list of zero-based indices specifying which rows to update. If no indices are provided, all rows in the table will be updated.",
          "type": "array"
        },
        "objectId": {
          "description": "The object ID of the table.",
          "type": "string"
        },
        "fields": {
          "description": "The fields that should be updated. At least one field must be specified. The root `tableRowProperties` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example to update the minimum row height, set `fields` to `\"min_row_height\"`. If '\"min_row_height\"' is included in the field mask but the property is left unset, the minimum row height will default to 0.",
          "type": "string",
          "format": "google-fieldmask"
        },
        "tableRowProperties": {
          "description": "The table row properties to update.",
          "$ref": "TableRowProperties"
        }
      }
    },
    "TableColumnProperties": {
      "description": "Properties of each column in a table.",
      "type": "object",
      "id": "TableColumnProperties",
      "properties": {
        "columnWidth": {
          "description": "Width of a column.",
          "$ref": "Dimension"
        }
      }
    },
    "LayoutReference": {
      "description": "Slide layout reference. This may reference either: - A predefined layout - One of the layouts in the presentation.",
      "type": "object",
      "id": "LayoutReference",
      "properties": {
        "layoutId": {
          "description": "Layout ID: the object ID of one of the layouts in the presentation.",
          "type": "string"
        },
        "predefinedLayout": {
          "enumDescriptions": [
            "Unspecified layout.",
            "Blank layout, with no placeholders.",
            "Layout with a caption at the bottom.",
            "Layout with a title and a subtitle.",
            "Layout with a title and body.",
            "Layout with a title and two columns.",
            "Layout with only a title.",
            "Layout with a section title.",
            "Layout with a title and subtitle on one side and description on the other.",
            "Layout with one title and one body, arranged in a single column.",
            "Layout with a main point.",
            "Layout with a big number heading."
          ],
          "description": "Predefined layout.",
          "enum": [
            "PREDEFINED_LAYOUT_UNSPECIFIED",
            "BLANK",
            "CAPTION_ONLY",
            "TITLE",
            "TITLE_AND_BODY",
            "TITLE_AND_TWO_COLUMNS",
            "TITLE_ONLY",
            "SECTION_HEADER",
            "SECTION_TITLE_AND_DESCRIPTION",
            "ONE_COLUMN_TEXT",
            "MAIN_POINT",
            "BIG_NUMBER"
          ],
          "type": "string"
        }
      }
    },
    "Group": {
      "type": "object",
      "description": "A PageElement kind representing a joined collection of PageElements.",
      "id": "Group",
      "properties": {
        "children": {
          "items": {
            "$ref": "PageElement"
          },
          "description": "The collection of elements in the group. The minimum size of a group is 2.",
          "type": "array"
        }
      }
    },
    "Request": {
      "description": "A single kind of update to apply to a presentation.",
      "properties": {
        "updateTextStyle": {
          "description": "Updates the styling of text within a Shape or Table.",
          "$ref": "UpdateTextStyleRequest"
        },
        "updatePageElementAltText": {
          "description": "Updates the alt text title and/or description of a page element.",
          "$ref": "UpdatePageElementAltTextRequest"
        },
        "updateImageProperties": {
          "description": "Updates the properties of an Image.",
          "$ref": "UpdateImagePropertiesRequest"
        },
        "unmergeTableCells": {
          "description": "Unmerges cells in a Table.",
          "$ref": "UnmergeTableCellsRequest"
        },
        "createShape": {
          "$ref": "CreateShapeRequest",
          "description": "Creates a new shape."
        },
        "updateTableColumnProperties": {
          "description": "Updates the properties of a Table column.",
          "$ref": "UpdateTableColumnPropertiesRequest"
        },
        "groupObjects": {
          "$ref": "GroupObjectsRequest",
          "description": "Groups objects, such as page elements."
        },
        "updateParagraphStyle": {
          "description": "Updates the styling of paragraphs within a Shape or Table.",
          "$ref": "UpdateParagraphStyleRequest"
        },
        "deleteTableRow": {
          "description": "Deletes a row from a table.",
          "$ref": "DeleteTableRowRequest"
        },
        "createSheetsChart": {
          "$ref": "CreateSheetsChartRequest",
          "description": "Creates an embedded Google Sheets chart."
        },
        "updateLineProperties": {
          "$ref": "UpdateLinePropertiesRequest",
          "description": "Updates the properties of a Line."
        },
        "ungroupObjects": {
          "$ref": "UngroupObjectsRequest",
          "description": "Ungroups objects, such as groups."
        },
        "deleteText": {
          "description": "Deletes text from a shape or a table cell.",
          "$ref": "DeleteTextRequest"
        },
        "updateTableBorderProperties": {
          "$ref": "UpdateTableBorderPropertiesRequest",
          "description": "Updates the properties of the table borders in a Table."
        },
        "updateShapeProperties": {
          "description": "Updates the properties of a Shape.",
          "$ref": "UpdateShapePropertiesRequest"
        },
        "createLine": {
          "description": "Creates a line.",
          "$ref": "CreateLineRequest"
        },
        "createVideo": {
          "description": "Creates a video.",
          "$ref": "CreateVideoRequest"
        },
        "createSlide": {
          "description": "Creates a new slide.",
          "$ref": "CreateSlideRequest"
        },
        "createTable": {
          "description": "Creates a new table.",
          "$ref": "CreateTableRequest"
        },
        "replaceAllShapesWithImage": {
          "$ref": "ReplaceAllShapesWithImageRequest",
          "description": "Replaces all shapes matching some criteria with an image."
        },
        "updatePageProperties": {
          "description": "Updates the properties of a Page.",
          "$ref": "UpdatePagePropertiesRequest"
        },
        "updateSlidesPosition": {
          "$ref": "UpdateSlidesPositionRequest",
          "description": "Updates the position of a set of slides in the presentation."
        },
        "deleteObject": {
          "$ref": "DeleteObjectRequest",
          "description": "Deletes a page or page element from the presentation."
        },
        "updateTableRowProperties": {
          "$ref": "UpdateTableRowPropertiesRequest",
          "description": "Updates the properties of a Table row."
        },
        "updateVideoProperties": {
          "$ref": "UpdateVideoPropertiesRequest",
          "description": "Updates the properties of a Video."
        },
        "updateLineCategory": {
          "$ref": "UpdateLineCategoryRequest",
          "description": "Updates the category of a line."
        },
        "insertTableColumns": {
          "$ref": "InsertTableColumnsRequest",
          "description": "Inserts columns into a table."
        },
        "createImage": {
          "$ref": "CreateImageRequest",
          "description": "Creates an image."
        },
        "updatePageElementsZOrder": {
          "description": "Updates the Z-order of page elements.",
          "$ref": "UpdatePageElementsZOrderRequest"
        },
        "duplicateObject": {
          "description": "Duplicates a slide or page element.",
          "$ref": "DuplicateObjectRequest"
        },
        "replaceAllShapesWithSheetsChart": {
          "description": "Replaces all shapes matching some criteria with a Google Sheets chart.",
          "$ref": "ReplaceAllShapesWithSheetsChartRequest"
        },
        "rerouteLine": {
          "description": "Reroutes a line such that it's connected at the two closest connection sites on the connected page elements.",
          "$ref": "RerouteLineRequest"
        },
        "replaceAllText": {
          "description": "Replaces all instances of specified text.",
          "$ref": "ReplaceAllTextRequest"
        },
        "deleteTableColumn": {
          "$ref": "DeleteTableColumnRequest",
          "description": "Deletes a column from a table."
        },
        "deleteParagraphBullets": {
          "description": "Deletes bullets from paragraphs.",
          "$ref": "DeleteParagraphBulletsRequest"
        },
        "mergeTableCells": {
          "$ref": "MergeTableCellsRequest",
          "description": "Merges cells in a Table."
        },
        "refreshSheetsChart": {
          "description": "Refreshes a Google Sheets chart.",
          "$ref": "RefreshSheetsChartRequest"
        },
        "insertText": {
          "$ref": "InsertTextRequest",
          "description": "Inserts text into a shape or table cell."
        },
        "insertTableRows": {
          "description": "Inserts rows into a table.",
          "$ref": "InsertTableRowsRequest"
        },
        "updatePageElementTransform": {
          "description": "Updates the transform of a page element.",
          "$ref": "UpdatePageElementTransformRequest"
        },
        "replaceImage": {
          "$ref": "ReplaceImageRequest",
          "description": "Replaces an existing image with a new image."
        },
        "createParagraphBullets": {
          "$ref": "CreateParagraphBulletsRequest",
          "description": "Creates bullets for paragraphs."
        },
        "updateTableCellProperties": {
          "description": "Updates the properties of a TableCell.",
          "$ref": "UpdateTableCellPropertiesRequest"
        }
      },
      "type": "object",
      "id": "Request"
    },
    "CreateShapeResponse": {
      "description": "The result of creating a shape.",
      "properties": {
        "objectId": {
          "description": "The object ID of the created shape.",
          "type": "string"
        }
      },
      "id": "CreateShapeResponse",
      "type": "object"
    },
    "UpdateVideoPropertiesRequest": {
      "id": "UpdateVideoPropertiesRequest",
      "description": "Update the properties of a Video.",
      "type": "object",
      "properties": {
        "fields": {
          "type": "string",
          "description": "The fields that should be updated. At least one field must be specified. The root `videoProperties` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example to update the video outline color, set `fields` to `\"outline.outlineFill.solidFill.color\"`. To reset a property to its default value, include its field name in the field mask but leave the field itself unset.",
          "format": "google-fieldmask"
        },
        "videoProperties": {
          "description": "The video properties to update.",
          "$ref": "VideoProperties"
        },
        "objectId": {
          "description": "The object ID of the video the updates are applied to.",
          "type": "string"
        }
      }
    },
    "Presentation": {
      "id": "Presentation",
      "type": "object",
      "properties": {
        "locale": {
          "description": "The locale of the presentation, as an IETF BCP 47 language tag.",
          "type": "string"
        },
        "layouts": {
          "items": {
            "$ref": "Page"
          },
          "description": "The layouts in the presentation. A layout is a template that determines how content is arranged and styled on the slides that inherit from that layout.",
          "type": "array"
        },
        "revisionId": {
          "type": "string",
          "description": "The revision ID of the presentation. Can be used in update requests to assert that the presentation revision hasn't changed since the last read operation. Only populated if the user has edit access to the presentation. The format of the revision ID may change over time, so it should be treated opaquely. A returned revision ID is only guaranteed to be valid for 24 hours after it has been returned and cannot be shared across users. If the revision ID is unchanged between calls, then the presentation has not changed. Conversely, a changed ID (for the same presentation and user) usually means the presentation has been updated; however, a changed ID can also be due to internal factors such as ID format changes."
        },
        "pageSize": {
          "description": "The size of pages in the presentation.",
          "$ref": "Size"
        },
        "slides": {
          "type": "array",
          "items": {
            "$ref": "Page"
          },
          "description": "The slides in the presentation. A slide inherits properties from a slide layout."
        },
        "masters": {
          "type": "array",
          "items": {
            "$ref": "Page"
          },
          "description": "The slide masters in the presentation. A slide master contains all common page elements and the common properties for a set of layouts. They serve three purposes: - Placeholder shapes on a master contain the default text styles and shape properties of all placeholder shapes on pages that use that master. - The master page properties define the common page properties inherited by its layouts. - Any other shapes on the master slide appear on all slides using that master, regardless of their layout."
        },
        "presentationId": {
          "description": "The ID of the presentation.",
          "type": "string"
        },
        "title": {
          "type": "string",
          "description": "The title of the presentation."
        },
        "notesMaster": {
          "description": "The notes master in the presentation. It serves three purposes: - Placeholder shapes on a notes master contain the default text styles and shape properties of all placeholder shapes on notes pages. Specifically, a `SLIDE_IMAGE` placeholder shape contains the slide thumbnail, and a `BODY` placeholder shape contains the speaker notes. - The notes master page properties define the common page properties inherited by all notes pages. - Any other shapes on the notes master appear on all notes pages. The notes master is read-only.",
          "$ref": "Page"
        }
      },
      "description": "A Google Slides presentation."
    },
    "TableCell": {
      "properties": {
        "columnSpan": {
          "description": "Column span of the cell.",
          "format": "int32",
          "type": "integer"
        },
        "tableCellProperties": {
          "$ref": "TableCellProperties",
          "description": "The properties of the table cell."
        },
        "rowSpan": {
          "type": "integer",
          "description": "Row span of the cell.",
          "format": "int32"
        },
        "text": {
          "$ref": "TextContent",
          "description": "The text content of the cell."
        },
        "location": {
          "description": "The location of the cell within the table.",
          "$ref": "TableCellLocation"
        }
      },
      "id": "TableCell",
      "type": "object",
      "description": "Properties and contents of each table cell."
    },
    "UpdatePageElementAltTextRequest": {
      "type": "object",
      "description": "Updates the alt text title and/or description of a page element.",
      "id": "UpdatePageElementAltTextRequest",
      "properties": {
        "description": {
          "description": "The updated alt text description of the page element. If unset the existing value will be maintained. The description is exposed to screen readers and other accessibility interfaces. Only use human readable values related to the content of the page element.",
          "type": "string"
        },
        "objectId": {
          "type": "string",
          "description": "The object ID of the page element the updates are applied to."
        },
        "title": {
          "type": "string",
          "description": "The updated alt text title of the page element. If unset the existing value will be maintained. The title is exposed to screen readers and other accessibility interfaces. Only use human readable values related to the content of the page element."
        }
      }
    },
    "TableBorderCell": {
      "type": "object",
      "id": "TableBorderCell",
      "description": "The properties of each border cell.",
      "properties": {
        "tableBorderProperties": {
          "$ref": "TableBorderProperties",
          "description": "The border properties."
        },
        "location": {
          "description": "The location of the border within the border table.",
          "$ref": "TableCellLocation"
        }
      }
    },
    "MasterProperties": {
      "properties": {
        "displayName": {
          "type": "string",
          "description": "The human-readable name of the master."
        }
      },
      "type": "object",
      "id": "MasterProperties",
      "description": "The properties of Page that are only relevant for pages with page_type MASTER."
    },
    "CreateTableResponse": {
      "id": "CreateTableResponse",
      "type": "object",
      "properties": {
        "objectId": {
          "type": "string",
          "description": "The object ID of the created table."
        }
      },
      "description": "The result of creating a table."
    },
    "VideoProperties": {
      "properties": {
        "start": {
          "description": "The time at which to start playback, measured in seconds from the beginning of the video. If set, the start time should be before the end time. If you set this to a value that exceeds the video's length in seconds, the video will be played from the last second. If not set, the video will be played from the beginning.",
          "type": "integer",
          "format": "uint32"
        },
        "end": {
          "type": "integer",
          "description": "The time at which to end playback, measured in seconds from the beginning of the video. If set, the end time should be after the start time. If not set or if you set this to a value that exceeds the video's length, the video will be played until its end.",
          "format": "uint32"
        },
        "outline": {
          "description": "The outline of the video. The default outline matches the defaults for new videos created in the Slides editor.",
          "$ref": "Outline"
        },
        "mute": {
          "description": "Whether to mute the audio during video playback. Defaults to false.",
          "type": "boolean"
        },
        "autoPlay": {
          "type": "boolean",
          "description": "Whether to enable video autoplay when the page is displayed in present mode. Defaults to false."
        }
      },
      "type": "object",
      "id": "VideoProperties",
      "description": "The properties of the Video."
    },
    "UpdateLineCategoryRequest": {
      "description": "Updates the category of a line.",
      "id": "UpdateLineCategoryRequest",
      "properties": {
        "lineCategory": {
          "description": "The line category to update to. The exact line type is determined based on the category to update to and how it's routed to connect to other page elements.",
          "type": "string",
          "enum": [
            "LINE_CATEGORY_UNSPECIFIED",
            "STRAIGHT",
            "BENT",
            "CURVED"
          ],
          "enumDescriptions": [
            "Unspecified line category.",
            "Straight connectors, including straight connector 1.",
            "Bent connectors, including bent connector 2 to 5.",
            "Curved connectors, including curved connector 2 to 5."
          ]
        },
        "objectId": {
          "description": "The object ID of the line the update is applied to. Only a line with a category indicating it is a \"connector\" can be updated. The line may be rerouted after updating its category.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "RerouteLineRequest": {
      "id": "RerouteLineRequest",
      "description": "Reroutes a line such that it's connected at the two closest connection sites on the connected page elements.",
      "type": "object",
      "properties": {
        "objectId": {
          "type": "string",
          "description": "The object ID of the line to reroute. Only a line with a category indicating it is a \"connector\" can be rerouted. The start and end connections of the line must be on different page elements."
        }
      }
    },
    "BatchUpdatePresentationResponse": {
      "properties": {
        "writeControl": {
          "$ref": "WriteControl",
          "description": "The updated write control after applying the request."
        },
        "presentationId": {
          "type": "string",
          "description": "The presentation the updates were applied to."
        },
        "replies": {
          "type": "array",
          "items": {
            "$ref": "Response"
          },
          "description": "The reply of the updates. This maps 1:1 with the updates, although replies to some requests may be empty."
        }
      },
      "description": "Response message from a batch update.",
      "id": "BatchUpdatePresentationResponse",
      "type": "object"
    },
    "CreateShapeRequest": {
      "type": "object",
      "properties": {
        "elementProperties": {
          "$ref": "PageElementProperties",
          "description": "The element properties for the shape."
        },
        "shapeType": {
          "description": "The shape type.",
          "enum": [
            "TYPE_UNSPECIFIED",
            "TEXT_BOX",
            "RECTANGLE",
            "ROUND_RECTANGLE",
            "ELLIPSE",
            "ARC",
            "BENT_ARROW",
            "BENT_UP_ARROW",
            "BEVEL",
            "BLOCK_ARC",
            "BRACE_PAIR",
            "BRACKET_PAIR",
            "CAN",
            "CHEVRON",
            "CHORD",
            "CLOUD",
            "CORNER",
            "CUBE",
            "CURVED_DOWN_ARROW",
            "CURVED_LEFT_ARROW",
            "CURVED_RIGHT_ARROW",
            "CURVED_UP_ARROW",
            "DECAGON",
            "DIAGONAL_STRIPE",
            "DIAMOND",
            "DODECAGON",
            "DONUT",
            "DOUBLE_WAVE",
            "DOWN_ARROW",
            "DOWN_ARROW_CALLOUT",
            "FOLDED_CORNER",
            "FRAME",
            "HALF_FRAME",
            "HEART",
            "HEPTAGON",
            "HEXAGON",
            "HOME_PLATE",
            "HORIZONTAL_SCROLL",
            "IRREGULAR_SEAL_1",
            "IRREGULAR_SEAL_2",
            "LEFT_ARROW",
            "LEFT_ARROW_CALLOUT",
            "LEFT_BRACE",
            "LEFT_BRACKET",
            "LEFT_RIGHT_ARROW",
            "LEFT_RIGHT_ARROW_CALLOUT",
            "LEFT_RIGHT_UP_ARROW",
            "LEFT_UP_ARROW",
            "LIGHTNING_BOLT",
            "MATH_DIVIDE",
            "MATH_EQUAL",
            "MATH_MINUS",
            "MATH_MULTIPLY",
            "MATH_NOT_EQUAL",
            "MATH_PLUS",
            "MOON",
            "NO_SMOKING",
            "NOTCHED_RIGHT_ARROW",
            "OCTAGON",
            "PARALLELOGRAM",
            "PENTAGON",
            "PIE",
            "PLAQUE",
            "PLUS",
            "QUAD_ARROW",
            "QUAD_ARROW_CALLOUT",
            "RIBBON",
            "RIBBON_2",
            "RIGHT_ARROW",
            "RIGHT_ARROW_CALLOUT",
            "RIGHT_BRACE",
            "RIGHT_BRACKET",
            "ROUND_1_RECTANGLE",
            "ROUND_2_DIAGONAL_RECTANGLE",
            "ROUND_2_SAME_RECTANGLE",
            "RIGHT_TRIANGLE",
            "SMILEY_FACE",
            "SNIP_1_RECTANGLE",
            "SNIP_2_DIAGONAL_RECTANGLE",
            "SNIP_2_SAME_RECTANGLE",
            "SNIP_ROUND_RECTANGLE",
            "STAR_10",
            "STAR_12",
            "STAR_16",
            "STAR_24",
            "STAR_32",
            "STAR_4",
            "STAR_5",
            "STAR_6",
            "STAR_7",
            "STAR_8",
            "STRIPED_RIGHT_ARROW",
            "SUN",
            "TRAPEZOID",
            "TRIANGLE",
            "UP_ARROW",
            "UP_ARROW_CALLOUT",
            "UP_DOWN_ARROW",
            "UTURN_ARROW",
            "VERTICAL_SCROLL",
            "WAVE",
            "WEDGE_ELLIPSE_CALLOUT",
            "WEDGE_RECTANGLE_CALLOUT",
            "WEDGE_ROUND_RECTANGLE_CALLOUT",
            "FLOW_CHART_ALTERNATE_PROCESS",
            "FLOW_CHART_COLLATE",
            "FLOW_CHART_CONNECTOR",
            "FLOW_CHART_DECISION",
            "FLOW_CHART_DELAY",
            "FLOW_CHART_DISPLAY",
            "FLOW_CHART_DOCUMENT",
            "FLOW_CHART_EXTRACT",
            "FLOW_CHART_INPUT_OUTPUT",
            "FLOW_CHART_INTERNAL_STORAGE",
            "FLOW_CHART_MAGNETIC_DISK",
            "FLOW_CHART_MAGNETIC_DRUM",
            "FLOW_CHART_MAGNETIC_TAPE",
            "FLOW_CHART_MANUAL_INPUT",
            "FLOW_CHART_MANUAL_OPERATION",
            "FLOW_CHART_MERGE",
            "FLOW_CHART_MULTIDOCUMENT",
            "FLOW_CHART_OFFLINE_STORAGE",
            "FLOW_CHART_OFFPAGE_CONNECTOR",
            "FLOW_CHART_ONLINE_STORAGE",
            "FLOW_CHART_OR",
            "FLOW_CHART_PREDEFINED_PROCESS",
            "FLOW_CHART_PREPARATION",
            "FLOW_CHART_PROCESS",
            "FLOW_CHART_PUNCHED_CARD",
            "FLOW_CHART_PUNCHED_TAPE",
            "FLOW_CHART_SORT",
            "FLOW_CHART_SUMMING_JUNCTION",
            "FLOW_CHART_TERMINATOR",
            "ARROW_EAST",
            "ARROW_NORTH_EAST",
            "ARROW_NORTH",
            "SPEECH",
            "STARBURST",
            "TEARDROP",
            "ELLIPSE_RIBBON",
            "ELLIPSE_RIBBON_2",
            "CLOUD_CALLOUT",
            "CUSTOM"
          ],
          "type": "string",
          "enumDescriptions": [
            "The shape type that is not predefined.",
            "Text box shape.",
            "Rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'rect'.",
            "Round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'roundRect'",
            "Ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'ellipse'",
            "Curved arc shape. Corresponds to ECMA-376 ST_ShapeType 'arc'",
            "Bent arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentArrow'",
            "Bent up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentUpArrow'",
            "Bevel shape. Corresponds to ECMA-376 ST_ShapeType 'bevel'",
            "Block arc shape. Corresponds to ECMA-376 ST_ShapeType 'blockArc'",
            "Brace pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracePair'",
            "Bracket pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracketPair'",
            "Can shape. Corresponds to ECMA-376 ST_ShapeType 'can'",
            "Chevron shape. Corresponds to ECMA-376 ST_ShapeType 'chevron'",
            "Chord shape. Corresponds to ECMA-376 ST_ShapeType 'chord'",
            "Cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloud'",
            "Corner shape. Corresponds to ECMA-376 ST_ShapeType 'corner'",
            "Cube shape. Corresponds to ECMA-376 ST_ShapeType 'cube'",
            "Curved down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'curvedDownArrow'",
            "Curved left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'curvedLeftArrow'",
            "Curved right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'curvedRightArrow'",
            "Curved up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'curvedUpArrow'",
            "Decagon shape. Corresponds to ECMA-376 ST_ShapeType 'decagon'",
            "Diagonal stripe shape. Corresponds to ECMA-376 ST_ShapeType 'diagStripe'",
            "Diamond shape. Corresponds to ECMA-376 ST_ShapeType 'diamond'",
            "Dodecagon shape. Corresponds to ECMA-376 ST_ShapeType 'dodecagon'",
            "Donut shape. Corresponds to ECMA-376 ST_ShapeType 'donut'",
            "Double wave shape. Corresponds to ECMA-376 ST_ShapeType 'doubleWave'",
            "Down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrow'",
            "Callout down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrowCallout'",
            "Folded corner shape. Corresponds to ECMA-376 ST_ShapeType 'foldedCorner'",
            "Frame shape. Corresponds to ECMA-376 ST_ShapeType 'frame'",
            "Half frame shape. Corresponds to ECMA-376 ST_ShapeType 'halfFrame'",
            "Heart shape. Corresponds to ECMA-376 ST_ShapeType 'heart'",
            "Heptagon shape. Corresponds to ECMA-376 ST_ShapeType 'heptagon'",
            "Hexagon shape. Corresponds to ECMA-376 ST_ShapeType 'hexagon'",
            "Home plate shape. Corresponds to ECMA-376 ST_ShapeType 'homePlate'",
            "Horizontal scroll shape. Corresponds to ECMA-376 ST_ShapeType 'horizontalScroll'",
            "Irregular seal 1 shape. Corresponds to ECMA-376 ST_ShapeType 'irregularSeal1'",
            "Irregular seal 2 shape. Corresponds to ECMA-376 ST_ShapeType 'irregularSeal2'",
            "Left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrow'",
            "Callout left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrowCallout'",
            "Left brace shape. Corresponds to ECMA-376 ST_ShapeType 'leftBrace'",
            "Left bracket shape. Corresponds to ECMA-376 ST_ShapeType 'leftBracket'",
            "Left right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftRightArrow'",
            "Callout left right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftRightArrowCallout'",
            "Left right up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftRightUpArrow'",
            "Left up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftUpArrow'",
            "Lightning bolt shape. Corresponds to ECMA-376 ST_ShapeType 'lightningBolt'",
            "Divide math shape. Corresponds to ECMA-376 ST_ShapeType 'mathDivide'",
            "Equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathEqual'",
            "Minus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMinus'",
            "Multiply math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMultiply'",
            "Not equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathNotEqual'",
            "Plus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathPlus'",
            "Moon shape. Corresponds to ECMA-376 ST_ShapeType 'moon'",
            "No smoking shape. Corresponds to ECMA-376 ST_ShapeType 'noSmoking'",
            "Notched right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'notchedRightArrow'",
            "Octagon shape. Corresponds to ECMA-376 ST_ShapeType 'octagon'",
            "Parallelogram shape. Corresponds to ECMA-376 ST_ShapeType 'parallelogram'",
            "Pentagon shape. Corresponds to ECMA-376 ST_ShapeType 'pentagon'",
            "Pie shape. Corresponds to ECMA-376 ST_ShapeType 'pie'",
            "Plaque shape. Corresponds to ECMA-376 ST_ShapeType 'plaque'",
            "Plus shape. Corresponds to ECMA-376 ST_ShapeType 'plus'",
            "Quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrow'",
            "Callout quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrowCallout'",
            "Ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon'",
            "Ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon2'",
            "Right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrow'",
            "Callout right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrowCallout'",
            "Right brace shape. Corresponds to ECMA-376 ST_ShapeType 'rightBrace'",
            "Right bracket shape. Corresponds to ECMA-376 ST_ShapeType 'rightBracket'",
            "One round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'round1Rect'",
            "Two diagonal round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'round2DiagRect'",
            "Two same-side round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'round2SameRect'",
            "Right triangle shape. Corresponds to ECMA-376 ST_ShapeType 'rtTriangle'",
            "Smiley face shape. Corresponds to ECMA-376 ST_ShapeType 'smileyFace'",
            "One snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'snip1Rect'",
            "Two diagonal snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'snip2DiagRect'",
            "Two same-side snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'snip2SameRect'",
            "One snip one round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'snipRoundRect'",
            "Ten pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star10'",
            "Twelve pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star12'",
            "Sixteen pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star16'",
            "Twenty four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star24'",
            "Thirty two pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star32'",
            "Four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star4'",
            "Five pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star5'",
            "Six pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star6'",
            "Seven pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star7'",
            "Eight pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star8'",
            "Striped right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'stripedRightArrow'",
            "Sun shape. Corresponds to ECMA-376 ST_ShapeType 'sun'",
            "Trapezoid shape. Corresponds to ECMA-376 ST_ShapeType 'trapezoid'",
            "Triangle shape. Corresponds to ECMA-376 ST_ShapeType 'triangle'",
            "Up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrow'",
            "Callout up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrowCallout'",
            "Up down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upDownArrow'",
            "U-turn arrow shape. Corresponds to ECMA-376 ST_ShapeType 'uturnArrow'",
            "Vertical scroll shape. Corresponds to ECMA-376 ST_ShapeType 'verticalScroll'",
            "Wave shape. Corresponds to ECMA-376 ST_ShapeType 'wave'",
            "Callout wedge ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'wedgeEllipseCallout'",
            "Callout wedge rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'wedgeRectCallout'",
            "Callout wedge round rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'wedgeRoundRectCallout'",
            "Alternate process flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartAlternateProcess'",
            "Collate flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartCollate'",
            "Connector flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartConnector'",
            "Decision flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDecision'",
            "Delay flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDelay'",
            "Display flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDisplay'",
            "Document flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDocument'",
            "Extract flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartExtract'",
            "Input output flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartInputOutput'",
            "Internal storage flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartInternalStorage'",
            "Magnetic disk flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMagneticDisk'",
            "Magnetic drum flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMagneticDrum'",
            "Magnetic tape flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMagneticTape'",
            "Manual input flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartManualInput'",
            "Manual operation flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartManualOperation'",
            "Merge flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMerge'",
            "Multi-document flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMultidocument'",
            "Offline storage flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOfflineStorage'",
            "Off-page connector flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOffpageConnector'",
            "Online storage flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOnlineStorage'",
            "Or flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOr'",
            "Predefined process flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartPredefinedProcess'",
            "Preparation flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartPreparation'",
            "Process flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartProcess'",
            "Punched card flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartPunchedCard'",
            "Punched tape flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartPunchedTape'",
            "Sort flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSort'",
            "Summing junction flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSummingJunction'",
            "Terminator flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartTerminator'",
            "East arrow shape.",
            "Northeast arrow shape.",
            "North arrow shape.",
            "Speech shape.",
            "Star burst shape.",
            "Teardrop shape. Corresponds to ECMA-376 ST_ShapeType 'teardrop'",
            "Ellipse ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ellipseRibbon'",
            "Ellipse ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ellipseRibbon2'",
            "Callout cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloudCallout'",
            "Custom shape."
          ]
        },
        "objectId": {
          "description": "A user-supplied object ID. If you specify an ID, it must be unique among all pages and page elements in the presentation. The ID must start with an alphanumeric character or an underscore (matches regex `[a-zA-Z0-9_]`); remaining characters may include those as well as a hyphen or colon (matches regex `[a-zA-Z0-9_-:]`). The length of the ID must not be less than 5 or greater than 50. If empty, a unique identifier will be generated.",
          "type": "string"
        }
      },
      "id": "CreateShapeRequest",
      "description": "Creates a new shape."
    },
    "Line": {
      "type": "object",
      "id": "Line",
      "properties": {
        "lineCategory": {
          "enum": [
            "LINE_CATEGORY_UNSPECIFIED",
            "STRAIGHT",
            "BENT",
            "CURVED"
          ],
          "enumDescriptions": [
            "Unspecified line category.",
            "Straight connectors, including straight connector 1.",
            "Bent connectors, including bent connector 2 to 5.",
            "Curved connectors, including curved connector 2 to 5."
          ],
          "type": "string",
          "description": "The category of the line. It matches the `category` specified in CreateLineRequest, and can be updated with UpdateLineCategoryRequest."
        },
        "lineProperties": {
          "$ref": "LineProperties",
          "description": "The properties of the line."
        },
        "lineType": {
          "enumDescriptions": [
            "An unspecified line type.",
            "Straight connector 1 form. Corresponds to ECMA-376 ST_ShapeType 'straightConnector1'.",
            "Bent connector 2 form. Corresponds to ECMA-376 ST_ShapeType 'bentConnector2'.",
            "Bent connector 3 form. Corresponds to ECMA-376 ST_ShapeType 'bentConnector3'.",
            "Bent connector 4 form. Corresponds to ECMA-376 ST_ShapeType 'bentConnector4'.",
            "Bent connector 5 form. Corresponds to ECMA-376 ST_ShapeType 'bentConnector5'.",
            "Curved connector 2 form. Corresponds to ECMA-376 ST_ShapeType 'curvedConnector2'.",
            "Curved connector 3 form. Corresponds to ECMA-376 ST_ShapeType 'curvedConnector3'.",
            "Curved connector 4 form. Corresponds to ECMA-376 ST_ShapeType 'curvedConnector4'.",
            "Curved connector 5 form. Corresponds to ECMA-376 ST_ShapeType 'curvedConnector5'.",
            "Straight line. Corresponds to ECMA-376 ST_ShapeType 'line'. This line type is not a connector."
          ],
          "description": "The type of the line.",
          "type": "string",
          "enum": [
            "TYPE_UNSPECIFIED",
            "STRAIGHT_CONNECTOR_1",
            "BENT_CONNECTOR_2",
            "BENT_CONNECTOR_3",
            "BENT_CONNECTOR_4",
            "BENT_CONNECTOR_5",
            "CURVED_CONNECTOR_2",
            "CURVED_CONNECTOR_3",
            "CURVED_CONNECTOR_4",
            "CURVED_CONNECTOR_5",
            "STRAIGHT_LINE"
          ]
        }
      },
      "description": "A PageElement kind representing a non-connector line, straight connector, curved connector, or bent connector."
    },
    "RefreshSheetsChartRequest": {
      "description": "Refreshes an embedded Google Sheets chart by replacing it with the latest version of the chart from Google Sheets. NOTE: Refreshing charts requires at least one of the spreadsheets.readonly, spreadsheets, drive.readonly, or drive OAuth scopes.",
      "type": "object",
      "properties": {
        "objectId": {
          "type": "string",
          "description": "The object ID of the chart to refresh."
        }
      },
      "id": "RefreshSheetsChartRequest"
    },
    "CreateTableRequest": {
      "id": "CreateTableRequest",
      "properties": {
        "rows": {
          "format": "int32",
          "type": "integer",
          "description": "Number of rows in the table."
        },
        "objectId": {
          "type": "string",
          "description": "A user-supplied object ID. If you specify an ID, it must be unique among all pages and page elements in the presentation. The ID must start with an alphanumeric character or an underscore (matches regex `[a-zA-Z0-9_]`); remaining characters may include those as well as a hyphen or colon (matches regex `[a-zA-Z0-9_-:]`). The length of the ID must not be less than 5 or greater than 50. If you don't specify an ID, a unique one is generated."
        },
        "columns": {
          "type": "integer",
          "description": "Number of columns in the table.",
          "format": "int32"
        },
        "elementProperties": {
          "$ref": "PageElementProperties",
          "description": "The element properties for the table. The table will be created at the provided size, subject to a minimum size. If no size is provided, the table will be automatically sized. Table transforms must have a scale of 1 and no shear components. If no transform is provided, the table will be centered on the page."
        }
      },
      "description": "Creates a new table.",
      "type": "object"
    },
    "Page": {
      "type": "object",
      "properties": {
        "pageProperties": {
          "description": "The properties of the page.",
          "$ref": "PageProperties"
        },
        "layoutProperties": {
          "description": "Layout specific properties. Only set if page_type = LAYOUT.",
          "$ref": "LayoutProperties"
        },
        "objectId": {
          "description": "The object ID for this page. Object IDs used by Page and PageElement share the same namespace.",
          "type": "string"
        },
        "notesProperties": {
          "description": "Notes specific properties. Only set if page_type = NOTES.",
          "$ref": "NotesProperties"
        },
        "pageElements": {
          "description": "The page elements rendered on the page.",
          "items": {
            "$ref": "PageElement"
          },
          "type": "array"
        },
        "slideProperties": {
          "$ref": "SlideProperties",
          "description": "Slide specific properties. Only set if page_type = SLIDE."
        },
        "revisionId": {
          "description": "The revision ID of the presentation containing this page. Can be used in update requests to assert that the presentation revision hasn't changed since the last read operation. Only populated if the user has edit access to the presentation. The format of the revision ID may change over time, so it should be treated opaquely. A returned revision ID is only guaranteed to be valid for 24 hours after it has been returned and cannot be shared across users. If the revision ID is unchanged between calls, then the presentation has not changed. Conversely, a changed ID (for the same presentation and user) usually means the presentation has been updated; however, a changed ID can also be due to internal factors such as ID format changes.",
          "type": "string"
        },
        "masterProperties": {
          "description": "Master specific properties. Only set if page_type = MASTER.",
          "$ref": "MasterProperties"
        },
        "pageType": {
          "type": "string",
          "description": "The type of the page.",
          "enum": [
            "SLIDE",
            "MASTER",
            "LAYOUT",
            "NOTES",
            "NOTES_MASTER"
          ],
          "enumDescriptions": [
            "A slide page.",
            "A master slide page.",
            "A layout page.",
            "A notes page.",
            "A notes master page."
          ]
        }
      },
      "description": "A page in a presentation.",
      "id": "Page"
    },
    "NestingLevel": {
      "description": "Contains properties describing the look and feel of a list bullet at a given level of nesting.",
      "id": "NestingLevel",
      "type": "object",
      "properties": {
        "bulletStyle": {
          "$ref": "TextStyle",
          "description": "The style of a bullet at this level of nesting."
        }
      }
    },
    "Range": {
      "description": "Specifies a contiguous range of an indexed collection, such as characters in text.",
      "type": "object",
      "properties": {
        "endIndex": {
          "description": "The optional zero-based index of the end of the collection. Required for `FIXED_RANGE` ranges.",
          "format": "int32",
          "type": "integer"
        },
        "startIndex": {
          "description": "The optional zero-based index of the beginning of the collection. Required for `FIXED_RANGE` and `FROM_START_INDEX` ranges.",
          "format": "int32",
          "type": "integer"
        },
        "type": {
          "enumDescriptions": [
            "Unspecified range type. This value must not be used.",
            "A fixed range. Both the `start_index` and `end_index` must be specified.",
            "Starts the range at `start_index` and continues until the end of the collection. The `end_index` must not be specified.",
            "Sets the range to be the whole length of the collection. Both the `start_index` and the `end_index` must not be specified."
          ],
          "description": "The type of range.",
          "enum": [
            "RANGE_TYPE_UNSPECIFIED",
            "FIXED_RANGE",
            "FROM_START_INDEX",
            "ALL"
          ],
          "type": "string"
        }
      },
      "id": "Range"
    },
    "DeleteTextRequest": {
      "type": "object",
      "id": "DeleteTextRequest",
      "description": "Deletes text from a shape or a table cell.",
      "properties": {
        "cellLocation": {
          "$ref": "TableCellLocation",
          "description": "The optional table cell location if the text is to be deleted from a table cell. If present, the object_id must refer to a table."
        },
        "textRange": {
          "$ref": "Range",
          "description": "The range of text to delete, based on TextElement indexes. There is always an implicit newline character at the end of a shape's or table cell's text that cannot be deleted. `Range.Type.ALL` will use the correct bounds, but care must be taken when specifying explicit bounds for range types `FROM_START_INDEX` and `FIXED_RANGE`. For example, if the text is \"ABC\", followed by an implicit newline, then the maximum value is 2 for `text_range.start_index` and 3 for `text_range.end_index`. Deleting text that crosses a paragraph boundary may result in changes to paragraph styles and lists as the two paragraphs are merged. Ranges that include only one code unit of a surrogate pair are expanded to include both code units."
        },
        "objectId": {
          "description": "The object ID of the shape or table from which the text will be deleted.",
          "type": "string"
        }
      }
    },
    "UpdatePageElementTransformRequest": {
      "type": "object",
      "properties": {
        "transform": {
          "description": "The input transform matrix used to update the page element.",
          "$ref": "AffineTransform"
        },
        "applyMode": {
          "description": "The apply mode of the transform update.",
          "type": "string",
          "enumDescriptions": [
            "Unspecified mode.",
            "Applies the new AffineTransform matrix to the existing one, and replaces the existing one with the resulting concatenation.",
            "Replaces the existing AffineTransform matrix with the new one."
          ],
          "enum": [
            "APPLY_MODE_UNSPECIFIED",
            "RELATIVE",
            "ABSOLUTE"
          ]
        },
        "objectId": {
          "type": "string",
          "description": "The object ID of the page element to update."
        }
      },
      "id": "UpdatePageElementTransformRequest",
      "description": "Updates the transform of a page element. Updating the transform of a group will change the absolute transform of the page elements in that group, which can change their visual appearance. See the documentation for PageElement.transform for more details."
    },
    "ColorStop": {
      "properties": {
        "alpha": {
          "type": "number",
          "description": "The alpha value of this color in the gradient band. Defaults to 1.0, fully opaque.",
          "format": "float"
        },
        "color": {
          "$ref": "OpaqueColor",
          "description": "The color of the gradient stop."
        },
        "position": {
          "description": "The relative position of the color stop in the gradient band measured in percentage. The value should be in the interval [0.0, 1.0].",
          "format": "float",
          "type": "number"
        }
      },
      "id": "ColorStop",
      "description": "A color and position in a gradient band.",
      "type": "object"
    },
    "DuplicateObjectResponse": {
      "description": "The response of duplicating an object.",
      "type": "object",
      "properties": {
        "objectId": {
          "type": "string",
          "description": "The ID of the new duplicate object."
        }
      },
      "id": "DuplicateObjectResponse"
    },
    "UpdateLinePropertiesRequest": {
      "description": "Updates the properties of a Line.",
      "type": "object",
      "id": "UpdateLinePropertiesRequest",
      "properties": {
        "fields": {
          "description": "The fields that should be updated. At least one field must be specified. The root `lineProperties` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example to update the line solid fill color, set `fields` to `\"lineFill.solidFill.color\"`. To reset a property to its default value, include its field name in the field mask but leave the field itself unset.",
          "format": "google-fieldmask",
          "type": "string"
        },
        "objectId": {
          "description": "The object ID of the line the update is applied to.",
          "type": "string"
        },
        "lineProperties": {
          "description": "The line properties to update.",
          "$ref": "LineProperties"
        }
      }
    },
    "TextRun": {
      "description": "A TextElement kind that represents a run of text that all has the same styling.",
      "type": "object",
      "id": "TextRun",
      "properties": {
        "content": {
          "description": "The text of this run.",
          "type": "string"
        },
        "style": {
          "description": "The styling applied to this run.",
          "$ref": "TextStyle"
        }
      }
    },
    "DeleteObjectRequest": {
      "properties": {
        "objectId": {
          "description": "The object ID of the page or page element to delete. If after a delete operation a group contains only 1 or no page elements, the group is also deleted. If a placeholder is deleted on a layout, any empty inheriting shapes are also deleted.",
          "type": "string"
        }
      },
      "description": "Deletes an object, either pages or page elements, from the presentation.",
      "id": "DeleteObjectRequest",
      "type": "object"
    },
    "InsertTableRowsRequest": {
      "properties": {
        "cellLocation": {
          "description": "The reference table cell location from which rows will be inserted. A new row will be inserted above (or below) the row where the reference cell is. If the reference cell is a merged cell, a new row will be inserted above (or below) the merged cell.",
          "$ref": "TableCellLocation"
        },
        "tableObjectId": {
          "type": "string",
          "description": "The table to insert rows into."
        },
        "insertBelow": {
          "description": "Whether to insert new rows below the reference cell location. - `True`: insert below the cell. - `False`: insert above the cell.",
          "type": "boolean"
        },
        "number": {
          "type": "integer",
          "format": "int32",
          "description": "The number of rows to be inserted. Maximum 20 per request."
        }
      },
      "type": "object",
      "description": "Inserts rows into a table.",
      "id": "InsertTableRowsRequest"
    },
    "ReplaceAllShapesWithImageResponse": {
      "id": "ReplaceAllShapesWithImageResponse",
      "type": "object",
      "properties": {
        "occurrencesChanged": {
          "format": "int32",
          "type": "integer",
          "description": "The number of shapes replaced with images."
        }
      },
      "description": "The result of replacing shapes with an image."
    },
    "UpdateSlidesPositionRequest": {
      "description": "Updates the position of slides in the presentation.",
      "id": "UpdateSlidesPositionRequest",
      "properties": {
        "slideObjectIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The IDs of the slides in the presentation that should be moved. The slides in this list must be in existing presentation order, without duplicates."
        },
        "insertionIndex": {
          "description": "The index where the slides should be inserted, based on the slide arrangement before the move takes place. Must be between zero and the number of slides in the presentation, inclusive.",
          "type": "integer",
          "format": "int32"
        }
      },
      "type": "object"
    },
    "GroupObjectsResponse": {
      "description": "The result of grouping objects.",
      "properties": {
        "objectId": {
          "description": "The object ID of the created group.",
          "type": "string"
        }
      },
      "id": "GroupObjectsResponse",
      "type": "object"
    },
    "ReplaceAllShapesWithSheetsChartRequest": {
      "properties": {
        "spreadsheetId": {
          "type": "string",
          "description": "The ID of the Google Sheets spreadsheet that contains the chart."
        },
        "pageObjectIds": {
          "items": {
            "type": "string"
          },
          "description": "If non-empty, limits the matches to page elements only on the given pages. Returns a 400 bad request error if given the page object ID of a notes page or a notes master, or if a page with that object ID doesn't exist in the presentation.",
          "type": "array"
        },
        "chartId": {
          "description": "The ID of the specific chart in the Google Sheets spreadsheet.",
          "format": "int32",
          "type": "integer"
        },
        "containsText": {
          "$ref": "SubstringMatchCriteria",
          "description": "The criteria that the shapes must match in order to be replaced. The request will replace all of the shapes that contain the given text."
        },
        "linkingMode": {
          "enumDescriptions": [
            "The chart is not associated with the source spreadsheet and cannot be updated. A chart that is not linked will be inserted as an image.",
            "Linking the chart allows it to be updated, and other collaborators will see a link to the spreadsheet."
          ],
          "type": "string",
          "description": "The mode with which the chart is linked to the source spreadsheet. When not specified, the chart will be an image that is not linked.",
          "enum": [
            "NOT_LINKED_IMAGE",
            "LINKED"
          ]
        }
      },
      "description": "Replaces all shapes that match the given criteria with the provided Google Sheets chart. The chart will be scaled and centered to fit within the bounds of the original shape. NOTE: Replacing shapes with a chart requires at least one of the spreadsheets.readonly, spreadsheets, drive.readonly, or drive OAuth scopes.",
      "type": "object",
      "id": "ReplaceAllShapesWithSheetsChartRequest"
    },
    "ReplaceAllShapesWithImageRequest": {
      "type": "object",
      "id": "ReplaceAllShapesWithImageRequest",
      "description": "Replaces all shapes that match the given criteria with the provided image. The images replacing the shapes are rectangular after being inserted into the presentation and do not take on the forms of the shapes.",
      "properties": {
        "containsText": {
          "$ref": "SubstringMatchCriteria",
          "description": "If set, this request will replace all of the shapes that contain the given text."
        },
        "pageObjectIds": {
          "type": "array",
          "description": "If non-empty, limits the matches to page elements only on the given pages. Returns a 400 bad request error if given the page object ID of a notes page or a notes master, or if a page with that object ID doesn't exist in the presentation.",
          "items": {
            "type": "string"
          }
        },
        "replaceMethod": {
          "type": "string",
          "enumDescriptions": [
            "Scales and centers the image to fit within the bounds of the original shape and maintains the image's aspect ratio. The rendered size of the image may be smaller than the size of the shape. This is the default method when one is not specified.",
            "Scales and centers the image to fill the bounds of the original shape. The image may be cropped in order to fill the shape. The rendered size of the image will be the same as that of the original shape."
          ],
          "description": "The replace method. *Deprecated*: use `image_replace_method` instead. If you specify both a `replace_method` and an `image_replace_method`, the `image_replace_method` takes precedence.",
          "enum": [
            "CENTER_INSIDE",
            "CENTER_CROP"
          ]
        },
        "imageUrl": {
          "description": "The image URL. The image is fetched once at insertion time and a copy is stored for display inside the presentation. Images must be less than 50MB in size, cannot exceed 25 megapixels, and must be in one of PNG, JPEG, or GIF format. The provided URL can be at most 2 kB in length. The URL itself is saved with the image, and exposed via the Image.source_url field.",
          "type": "string"
        },
        "imageReplaceMethod": {
          "enum": [
            "IMAGE_REPLACE_METHOD_UNSPECIFIED",
            "CENTER_INSIDE",
            "CENTER_CROP"
          ],
          "enumDescriptions": [
            "Unspecified image replace method. This value must not be used.",
            "Scales and centers the image to fit within the bounds of the original shape and maintains the image's aspect ratio. The rendered size of the image may be smaller than the size of the shape. This is the default method when one is not specified.",
            "Scales and centers the image to fill the bounds of the original shape. The image may be cropped in order to fill the shape. The rendered size of the image will be the same as that of the original shape."
          ],
          "description": "The image replace method. If you specify both a `replace_method` and an `image_replace_method`, the `image_replace_method` takes precedence. If you do not specify a value for `image_replace_method`, but specify a value for `replace_method`, then the specified `replace_method` value is used. If you do not specify either, then CENTER_INSIDE is used.",
          "type": "string"
        }
      }
    }
  },
  "mtlsRootUrl": "https://slides.mtls.googleapis.com/",
  "resources": {
    "presentations": {
      "resources": {
        "pages": {
          "methods": {
            "get": {
              "response": {
                "$ref": "Page"
              },
              "httpMethod": "GET",
              "path": "v1/presentations/{presentationId}/pages/{pageObjectId}",
              "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}",
              "scopes": [
                "https://www.googleapis.com/auth/drive",
                "https://www.googleapis.com/auth/drive.file",
                "https://www.googleapis.com/auth/drive.readonly",
                "https://www.googleapis.com/auth/presentations",
                "https://www.googleapis.com/auth/presentations.readonly"
              ],
              "parameters": {
                "pageObjectId": {
                  "required": true,
                  "description": "The object ID of the page to retrieve.",
                  "type": "string",
                  "location": "path"
                },
                "presentationId": {
                  "type": "string",
                  "location": "path",
                  "description": "The ID of the presentation to retrieve.",
                  "required": true
                }
              },
              "parameterOrder": [
                "presentationId",
                "pageObjectId"
              ],
              "id": "slides.presentations.pages.get",
              "description": "Gets the latest version of the specified page in the presentation."
            },
            "getThumbnail": {
              "httpMethod": "GET",
              "response": {
                "$ref": "Thumbnail"
              },
              "path": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail",
              "description": "Generates a thumbnail of the latest version of the specified page in the presentation and returns a URL to the thumbnail image. This request counts as an [expensive read request](/slides/limits) for quota purposes.",
              "parameters": {
                "presentationId": {
                  "required": true,
                  "type": "string",
                  "description": "The ID of the presentation to retrieve.",
                  "location": "path"
                },
                "thumbnailProperties.mimeType": {
                  "enum": [
                    "PNG"
                  ],
                  "location": "query",
                  "enumDescriptions": [
                    "The default mime type."
                  ],
                  "type": "string",
                  "description": "The optional mime type of the thumbnail image. If you don't specify the mime type, the mime type defaults to PNG."
                },
                "pageObjectId": {
                  "location": "path",
                  "type": "string",
                  "required": true,
                  "description": "The object ID of the page whose thumbnail to retrieve."
                },
                "thumbnailProperties.thumbnailSize": {
                  "description": "The optional thumbnail image size. If you don't specify the size, the server chooses a default size of the image.",
                  "enum": [
                    "THUMBNAIL_SIZE_UNSPECIFIED",
                    "LARGE",
                    "MEDIUM",
                    "SMALL"
                  ],
                  "enumDescriptions": [
                    "The default thumbnail image size. The unspecified thumbnail size implies that the server chooses the size of the image in a way that might vary in the future.",
                    "The thumbnail image width of 1600px.",
                    "The thumbnail image width of 800px.",
                    "The thumbnail image width of 200px."
                  ],
                  "type": "string",
                  "location": "query"
                }
              },
              "id": "slides.presentations.pages.getThumbnail",
              "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail",
              "scopes": [
                "https://www.googleapis.com/auth/drive",
                "https://www.googleapis.com/auth/drive.file",
                "https://www.googleapis.com/auth/drive.readonly",
                "https://www.googleapis.com/auth/presentations",
                "https://www.googleapis.com/auth/presentations.readonly"
              ],
              "parameterOrder": [
                "presentationId",
                "pageObjectId"
              ]
            }
          }
        }
      },
      "methods": {
        "batchUpdate": {
          "description": "Applies one or more updates to the presentation. Each request is validated before being applied. If any request is not valid, then the entire request will fail and nothing will be applied. Some requests have replies to give you some information about how they are applied. Other requests do not need to return information; these each return an empty reply. The order of replies matches that of the requests. For example, suppose you call batchUpdate with four updates, and only the third one returns information. The response would have two empty replies: the reply to the third request, and another empty reply, in that order. Because other users may be editing the presentation, the presentation might not exactly reflect your changes: your changes may be altered with respect to collaborator changes. If there are no collaborators, the presentation should reflect your changes. In any case, the updates in your request are guaranteed to be applied together atomically.",
          "request": {
            "$ref": "BatchUpdatePresentationRequest"
          },
          "path": "v1/presentations/{presentationId}:batchUpdate",
          "httpMethod": "POST",
          "parameters": {
            "presentationId": {
              "required": true,
              "description": "The presentation to apply the updates to.",
              "type": "string",
              "location": "path"
            }
          },
          "scopes": [
            "https://www.googleapis.com/auth/drive",
            "https://www.googleapis.com/auth/drive.file",
            "https://www.googleapis.com/auth/drive.readonly",
            "https://www.googleapis.com/auth/presentations",
            "https://www.googleapis.com/auth/spreadsheets",
            "https://www.googleapis.com/auth/spreadsheets.readonly"
          ],
          "id": "slides.presentations.batchUpdate",
          "parameterOrder": [
            "presentationId"
          ],
          "flatPath": "v1/presentations/{presentationId}:batchUpdate",
          "response": {
            "$ref": "BatchUpdatePresentationResponse"
          }
        },
        "create": {
          "id": "slides.presentations.create",
          "parameterOrder": [],
          "flatPath": "v1/presentations",
          "response": {
            "$ref": "Presentation"
          },
          "request": {
            "$ref": "Presentation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/drive",
            "https://www.googleapis.com/auth/drive.file",
            "https://www.googleapis.com/auth/presentations"
          ],
          "httpMethod": "POST",
          "parameters": {},
          "description": "Creates a blank presentation using the title given in the request. If a `presentationId` is provided, it is used as the ID of the new presentation. Otherwise, a new ID is generated. Other fields in the request, including any provided content, are ignored. Returns the created presentation.",
          "path": "v1/presentations"
        },
        "get": {
          "response": {
            "$ref": "Presentation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/drive",
            "https://www.googleapis.com/auth/drive.file",
            "https://www.googleapis.com/auth/drive.readonly",
            "https://www.googleapis.com/auth/presentations",
            "https://www.googleapis.com/auth/presentations.readonly"
          ],
          "parameters": {
            "presentationId": {
              "required": true,
              "location": "path",
              "description": "The ID of the presentation to retrieve.",
              "type": "string",
              "pattern": "^[^/]+$"
            }
          },
          "httpMethod": "GET",
          "description": "Gets the latest version of the specified presentation.",
          "parameterOrder": [
            "presentationId"
          ],
          "flatPath": "v1/presentations/{presentationsId}",
          "path": "v1/presentations/{+presentationId}",
          "id": "slides.presentations.get"
        }
      }
    }
  },
  "version_module": true,
  "revision": "20201120",
  "documentationLink": "https://developers.google.com/slides/",
  "protocol": "rest",
  "servicePath": "",
  "rootUrl": "https://slides.googleapis.com/",
  "description": "Reads and writes Google Slides presentations.",
  "fullyEncodeReservedExpansion": true,
  "kind": "discovery#restDescription",
  "id": "slides:v1",
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/drive.readonly": {
          "description": "See and download all your Google Drive files"
        },
        "https://www.googleapis.com/auth/spreadsheets.readonly": {
          "description": "View your Google Spreadsheets"
        },
        "https://www.googleapis.com/auth/drive": {
          "description": "See, edit, create, and delete all of your Google Drive files"
        },
        "https://www.googleapis.com/auth/presentations.readonly": {
          "description": "View your Google Slides presentations"
        },
        "https://www.googleapis.com/auth/drive.file": {
          "description": "View and manage Google Drive files and folders that you have opened or created with this app"
        },
        "https://www.googleapis.com/auth/spreadsheets": {
          "description": "See, edit, create, and delete your spreadsheets in Google Drive"
        },
        "https://www.googleapis.com/auth/presentations": {
          "description": "View and manage your Google Slides presentations"
        }
      }
    }
  },
  "canonicalName": "Slides",
  "ownerName": "Google",
  "version": "v1",
  "basePath": ""
}
