REST Resource: documents

Resource: Document

A Google Docs document.

JSON representation
{
  "documentId": string,
  "title": string,
  "body": {
    object (Body)
  },
  "headers": {
    string: {
      object (Header)
    },
    ...
  },
  "footers": {
    string: {
      object (Footer)
    },
    ...
  },
  "footnotes": {
    string: {
      object (Footnote)
    },
    ...
  },
  "documentStyle": {
    object (DocumentStyle)
  },
  "suggestedDocumentStyleChanges": {
    string: {
      object (SuggestedDocumentStyle)
    },
    ...
  },
  "namedStyles": {
    object (NamedStyles)
  },
  "suggestedNamedStylesChanges": {
    string: {
      object (SuggestedNamedStyles)
    },
    ...
  },
  "lists": {
    string: {
      object (List)
    },
    ...
  },
  "namedRanges": {
    string: {
      object (NamedRanges)
    },
    ...
  },
  "revisionId": string,
  "suggestionsViewMode": enum (SuggestionsViewMode),
  "inlineObjects": {
    string: {
      object (InlineObject)
    },
    ...
  },
  "positionedObjects": {
    string: {
      object (PositionedObject)
    },
    ...
  }
}
Fields
documentId

string

Output only. The ID of the document.

title

string

The title of the document.

body

object (Body)

Output only. The main body of the document.

headers

map (key: string, value: object (Header))

Output only. The headers in the document, keyed by header ID.

footers

map (key: string, value: object (Footer))

Output only. The footers in the document, keyed by footer ID.

footnotes

map (key: string, value: object (Footnote))

Output only. The footnotes in the document, keyed by footnote ID.

documentStyle

object (DocumentStyle)

Output only. The style of the document.

suggestedDocumentStyleChanges

map (key: string, value: object (SuggestedDocumentStyle))

Output only. The suggested changes to the style of the document, keyed by suggestion ID.

namedStyles

object (NamedStyles)

Output only. The named styles of the document.

suggestedNamedStylesChanges

map (key: string, value: object (SuggestedNamedStyles))

Output only. The suggested changes to the named styles of the document, keyed by suggestion ID.

lists

map (key: string, value: object (List))

Output only. The lists in the document, keyed by list ID.

namedRanges

map (key: string, value: object (NamedRanges))

Output only. The named ranges in the document, keyed by name.

revisionId

string

Output only. The revision ID of the document. Can be used in update requests to specify which revision of a document to apply updates to and how the request should behave if the document has been edited since that revision. Only populated if the user has edit access to the document.

The revision ID is not a sequential number but an opaque string. The format of the revision ID might change over time. 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 document has not changed. Conversely, a changed ID (for the same document and user) usually means the document has been updated. However, a changed ID can also be due to internal factors such as ID format changes.

suggestionsViewMode

enum (SuggestionsViewMode)

Output only. The suggestions view mode applied to the document.

Note: When editing a document, changes must be based on a document with SUGGESTIONS_INLINE.

inlineObjects

map (key: string, value: object (InlineObject))

Output only. The inline objects in the document, keyed by object ID.

positionedObjects

map (key: string, value: object (PositionedObject))

Output only. The positioned objects in the document, keyed by object ID.

Body

The document body.

The body typically contains the full document contents except for headers, footers, and footnotes.

JSON representation
{
  "content": [
    {
      object (StructuralElement)
    }
  ]
}
Fields
content[]

object (StructuralElement)

The contents of the body.

The indexes for the body's content begin at zero.

StructuralElement

A StructuralElement describes content that provides structure to the document.

JSON representation
{
  "startIndex": integer,
  "endIndex": integer,

  // Union field content can be only one of the following:
  "paragraph": {
    object (Paragraph)
  },
  "sectionBreak": {
    object (SectionBreak)
  },
  "table": {
    object (Table)
  },
  "tableOfContents": {
    object (TableOfContents)
  }
  // End of list of possible types for union field content.
}
Fields
startIndex

integer

The zero-based start index of this structural element, in UTF-16 code units.

endIndex

integer

The zero-based end index of this structural element, exclusive, in UTF-16 code units.

Union field content. The content of the structural element. content can be only one of the following:
paragraph

object (Paragraph)

A paragraph type of structural element.

sectionBreak

object (SectionBreak)

A section break type of structural element.

table

object (Table)

A table type of structural element.

tableOfContents

object (TableOfContents)

A table of contents type of structural element.

Paragraph

A StructuralElement representing a paragraph. A paragraph is a range of content that's terminated with a newline character.

JSON representation
{
  "elements": [
    {
      object (ParagraphElement)
    }
  ],
  "paragraphStyle": {
    object (ParagraphStyle)
  },
  "suggestedParagraphStyleChanges": {
    string: {
      object (SuggestedParagraphStyle)
    },
    ...
  },
  "bullet": {
    object (Bullet)
  },
  "suggestedBulletChanges": {
    string: {
      object (SuggestedBullet)
    },
    ...
  },
  "positionedObjectIds": [
    string
  ],
  "suggestedPositionedObjectIds": {
    string: {
      object (ObjectReferences)
    },
    ...
  }
}
Fields
elements[]

object (ParagraphElement)

The content of the paragraph, broken down into its component parts.

paragraphStyle

object (ParagraphStyle)

The style of this paragraph.

suggestedParagraphStyleChanges

map (key: string, value: object (SuggestedParagraphStyle))

The suggested paragraph style changes to this paragraph, keyed by suggestion ID.

bullet

object (Bullet)

The bullet for this paragraph. If not present, the paragraph does not belong to a list.

suggestedBulletChanges

map (key: string, value: object (SuggestedBullet))

The suggested changes to this paragraph's bullet.

positionedObjectIds[]

string

The IDs of the positioned objects tethered to this paragraph.

suggestedPositionedObjectIds

map (key: string, value: object (ObjectReferences))

The IDs of the positioned objects suggested to be attached to this paragraph, keyed by suggestion ID.

ParagraphElement

A ParagraphElement describes content within a Paragraph.

JSON representation
{
  "startIndex": integer,
  "endIndex": integer,

  // Union field content can be only one of the following:
  "textRun": {
    object (TextRun)
  },
  "autoText": {
    object (AutoText)
  },
  "pageBreak": {
    object (PageBreak)
  },
  "columnBreak": {
    object (ColumnBreak)
  },
  "footnoteReference": {
    object (FootnoteReference)
  },
  "horizontalRule": {
    object (HorizontalRule)
  },
  "equation": {
    object (Equation)
  },
  "inlineObjectElement": {
    object (InlineObjectElement)
  },
  "person": {
    object (Person)
  },
  "richLink": {
    object (RichLink)
  }
  // End of list of possible types for union field content.
}
Fields
startIndex

integer

The zero-based start index of this paragraph element, in UTF-16 code units.

endIndex

integer

The zero-base end index of this paragraph element, exclusive, in UTF-16 code units.

Union field content. The content of the paragraph element. content can be only one of the following:
textRun

object (TextRun)

A text run paragraph element.

autoText

object (AutoText)

An auto text paragraph element.

pageBreak

object (PageBreak)

A page break paragraph element.

columnBreak

object (ColumnBreak)

A column break paragraph element.

footnoteReference

object (FootnoteReference)

A footnote reference paragraph element.

horizontalRule

object (HorizontalRule)

A horizontal rule paragraph element.

equation

object (Equation)

An equation paragraph element.

inlineObjectElement

object (InlineObjectElement)

An inline object paragraph element.

person

object (Person)

A paragraph element that links to a person or email address.

TextRun

A ParagraphElement that represents a run of text that all has the same styling.

JSON representation
{
  "content": string,
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "textStyle": {
    object (TextStyle)
  },
  "suggestedTextStyleChanges": {
    string: {
      object (SuggestedTextStyle)
    },
    ...
  }
}
Fields
content

string

The text of this run.

Any non-text elements in the run are replaced with the Unicode character U+E907.

suggestedInsertionIds[]

string

The suggested insertion IDs. A TextRun may have multiple insertion IDs if it's a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

textStyle

object (TextStyle)

The text style of this run.

suggestedTextStyleChanges

map (key: string, value: object (SuggestedTextStyle))

The suggested text style changes to this run, keyed by suggestion ID.

TextStyle

Represents the styling that can be applied to text.

Inherited text styles are represented as unset fields in this message. A text style's parent depends on where the text style is defined:

  • The TextStyle of text in a Paragraph inherits from the paragraph's corresponding named style type.
  • The TextStyle on a named style inherits from the normal text named style.
  • The TextStyle of the normal text named style inherits from the default text style in the Docs editor.
  • The TextStyle on a Paragraph element that's contained in a table may inherit its text style from the table style.

If the text style does not inherit from a parent, unsetting fields will revert the style to a value matching the defaults in the Docs editor.

JSON representation
{
  "bold": boolean,
  "italic": boolean,
  "underline": boolean,
  "strikethrough": boolean,
  "smallCaps": boolean,
  "backgroundColor": {
    object (OptionalColor)
  },
  "foregroundColor": {
    object (OptionalColor)
  },
  "fontSize": {
    object (Dimension)
  },
  "weightedFontFamily": {
    object (WeightedFontFamily)
  },
  "baselineOffset": enum (BaselineOffset),
  "link": {
    object (Link)
  }
}
Fields
bold

boolean

Whether or not the text is rendered as bold.

italic

boolean

Whether or not the text is italicized.

underline

boolean

Whether or not the text is underlined.

strikethrough

boolean

Whether or not the text is struck through.

smallCaps

boolean

Whether or not the text is in small capital letters.

backgroundColor

object (OptionalColor)

The background color of the text. If set, the color is either an RGB color or transparent, depending on the color field.

foregroundColor

object (OptionalColor)

The foreground color of the text. If set, the color is either an RGB color or transparent, depending on the color field.

fontSize

object (Dimension)

The size of the text's font.

weightedFontFamily

object (WeightedFontFamily)

The font family and rendered weight of the text.

If an update request specifies values for both weightedFontFamily and bold, the weightedFontFamily is applied first, then bold.

If weightedFontFamily#weight is not set, it defaults to 400.

If weightedFontFamily is set, then weightedFontFamily#fontFamily must also be set with a non-empty value. Otherwise, a 400 bad request error is returned.

baselineOffset

enum (BaselineOffset)

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 fontSize field. Changes in this field don't affect the fontSize.

OptionalColor

A color that can either be fully opaque or fully transparent.

JSON representation
{
  "color": {
    object (Color)
  }
}
Fields
color

object (Color)

If set, this will be used as an opaque color. If unset, this represents a transparent color.

Color

A solid color.

JSON representation
{
  "rgbColor": {
    object (RgbColor)
  }
}
Fields
rgbColor

object (RgbColor)

The RGB color value.

RgbColor

An RGB color.

JSON representation
{
  "red": number,
  "green": number,
  "blue": number
}
Fields
red

number

The red component of the color, from 0.0 to 1.0.

green

number

The green component of the color, from 0.0 to 1.0.

blue

number

The blue component of the color, from 0.0 to 1.0.

Dimension

A magnitude in a single direction in the specified units.

JSON representation
{
  "magnitude": number,
  "unit": enum (Unit)
}
Fields
magnitude

number

The magnitude.

unit

enum (Unit)

The units for magnitude.

Unit

Units of measurement.

Enums
UNIT_UNSPECIFIED The units are unknown.
PT A point, 1/72 of an inch.

WeightedFontFamily

Represents a font family and weight of text.

JSON representation
{
  "fontFamily": string,
  "weight": integer
}
Fields
fontFamily

string

The font family of the text.

The font family can be any font from the Font menu in Docs or from Google Fonts. If the font name is unrecognized, the text is rendered in Arial.

weight

integer

The weight of the font. This field can have any value that's 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, with non-numerical values disallowed.

The default value is 400 ("normal").

The font weight makes up just one component of the rendered font weight. A combination of the weight and the text style's resolved bold value determine the rendered weight, after accounting for inheritance:

  • If the text is bold and the weight is less than 400, the rendered weight is 400.
  • If the text is bold and the weight is greater than or equal to 400 but is less than 700, the rendered weight is 700.
  • If the weight is greater than or equal to 700, the rendered weight is equal to the weight.
  • If the text is not bold, the rendered weight is equal to the weight.

BaselineOffset

The ways in which text can be vertically offset from its normal position.

Enums
BASELINE_OFFSET_UNSPECIFIED The text's baseline offset is inherited from the parent.
NONE The text is not vertically offset.
SUPERSCRIPT The text is vertically offset upwards (superscript).
SUBSCRIPT The text is vertically offset downwards (subscript).

SuggestedTextStyle

A suggested change to a TextStyle.

JSON representation
{
  "textStyle": {
    object (TextStyle)
  },
  "textStyleSuggestionState": {
    object (TextStyleSuggestionState)
  }
}
Fields
textStyle

object (TextStyle)

A TextStyle that only includes the changes made in this suggestion. This can be used along with the textStyleSuggestionState to see which fields have changed and their new values.

textStyleSuggestionState

object (TextStyleSuggestionState)

A mask that indicates which of the fields on the base TextStyle have been changed in this suggestion.

TextStyleSuggestionState

A mask that indicates which of the fields on the base TextStyle have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "boldSuggested": boolean,
  "italicSuggested": boolean,
  "underlineSuggested": boolean,
  "strikethroughSuggested": boolean,
  "smallCapsSuggested": boolean,
  "backgroundColorSuggested": boolean,
  "foregroundColorSuggested": boolean,
  "fontSizeSuggested": boolean,
  "weightedFontFamilySuggested": boolean,
  "baselineOffsetSuggested": boolean,
  "linkSuggested": boolean
}
Fields
boldSuggested

boolean

Indicates if there was a suggested change to bold.

italicSuggested

boolean

Indicates if there was a suggested change to italic.

underlineSuggested

boolean

Indicates if there was a suggested change to underline.

strikethroughSuggested

boolean

Indicates if there was a suggested change to strikethrough.

smallCapsSuggested

boolean

Indicates if there was a suggested change to smallCaps.

backgroundColorSuggested

boolean

Indicates if there was a suggested change to backgroundColor.

foregroundColorSuggested

boolean

Indicates if there was a suggested change to foregroundColor.

fontSizeSuggested

boolean

Indicates if there was a suggested change to fontSize.

weightedFontFamilySuggested

boolean

Indicates if there was a suggested change to weightedFontFamily.

baselineOffsetSuggested

boolean

Indicates if there was a suggested change to baselineOffset.

AutoText

A ParagraphElement representing a spot in the text that's dynamically replaced with content that can change over time, like a page number.

JSON representation
{
  "type": enum (Type),
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "textStyle": {
    object (TextStyle)
  },
  "suggestedTextStyleChanges": {
    string: {
      object (SuggestedTextStyle)
    },
    ...
  }
}
Fields
type

enum (Type)

The type of this auto text.

suggestedInsertionIds[]

string

The suggested insertion IDs. An AutoText may have multiple insertion IDs if it's a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

textStyle

object (TextStyle)

The text style of this AutoText.

suggestedTextStyleChanges

map (key: string, value: object (SuggestedTextStyle))

The suggested text style changes to this AutoText, keyed by suggestion ID.

Type

The types of auto text.

Enums
TYPE_UNSPECIFIED An unspecified auto text type.
PAGE_NUMBER Type for auto text that represents the current page number.
PAGE_COUNT Type for auto text that represents the total number of pages in the document.

PageBreak

A ParagraphElement representing a page break. A page break makes the subsequent text start at the top of the next page.

JSON representation
{
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "textStyle": {
    object (TextStyle)
  },
  "suggestedTextStyleChanges": {
    string: {
      object (SuggestedTextStyle)
    },
    ...
  }
}
Fields
suggestedInsertionIds[]

string

The suggested insertion IDs. A PageBreak may have multiple insertion IDs if it's a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

textStyle

object (TextStyle)

The text style of this PageBreak.

Similar to text content, like text runs and footnote references, the text style of a page break can affect content layout as well as the styling of text inserted next to it.

suggestedTextStyleChanges

map (key: string, value: object (SuggestedTextStyle))

The suggested text style changes to this PageBreak, keyed by suggestion ID.

ColumnBreak

A ParagraphElement representing a column break. A column break makes the subsequent text start at the top of the next column.

JSON representation
{
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "textStyle": {
    object (TextStyle)
  },
  "suggestedTextStyleChanges": {
    string: {
      object (SuggestedTextStyle)
    },
    ...
  }
}
Fields
suggestedInsertionIds[]

string

The suggested insertion IDs. A ColumnBreak may have multiple insertion IDs if it's a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

textStyle

object (TextStyle)

The text style of this ColumnBreak.

Similar to text content, like text runs and footnote references, the text style of a column break can affect content layout as well as the styling of text inserted next to it.

suggestedTextStyleChanges

map (key: string, value: object (SuggestedTextStyle))

The suggested text style changes to this ColumnBreak, keyed by suggestion ID.

FootnoteReference

A ParagraphElement representing a footnote reference. A footnote reference is the inline content rendered with a number and is used to identify the footnote.

JSON representation
{
  "footnoteId": string,
  "footnoteNumber": string,
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "textStyle": {
    object (TextStyle)
  },
  "suggestedTextStyleChanges": {
    string: {
      object (SuggestedTextStyle)
    },
    ...
  }
}
Fields
footnoteId

string

The ID of the footnote that contains the content of this footnote reference.

footnoteNumber

string

The rendered number of this footnote.

suggestedInsertionIds[]

string

The suggested insertion IDs. A FootnoteReference may have multiple insertion IDs if it's a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

textStyle

object (TextStyle)

The text style of this FootnoteReference.

suggestedTextStyleChanges

map (key: string, value: object (SuggestedTextStyle))

The suggested text style changes to this FootnoteReference, keyed by suggestion ID.

HorizontalRule

A ParagraphElement representing a horizontal line.

JSON representation
{
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "textStyle": {
    object (TextStyle)
  },
  "suggestedTextStyleChanges": {
    string: {
      object (SuggestedTextStyle)
    },
    ...
  }
}
Fields
suggestedInsertionIds[]

string

The suggested insertion IDs. A HorizontalRule may have multiple insertion IDs if it is a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

textStyle

object (TextStyle)

The text style of this HorizontalRule.

Similar to text content, like text runs and footnote references, the text style of a horizontal rule can affect content layout as well as the styling of text inserted next to it.

suggestedTextStyleChanges

map (key: string, value: object (SuggestedTextStyle))

The suggested text style changes to this HorizontalRule, keyed by suggestion ID.

Equation

A ParagraphElement representing an equation.

JSON representation
{
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ]
}
Fields
suggestedInsertionIds[]

string

The suggested insertion IDs. An Equation may have multiple insertion IDs if it's a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

InlineObjectElement

A ParagraphElement that contains an InlineObject.

JSON representation
{
  "inlineObjectId": string,
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "textStyle": {
    object (TextStyle)
  },
  "suggestedTextStyleChanges": {
    string: {
      object (SuggestedTextStyle)
    },
    ...
  }
}
Fields
inlineObjectId

string

The ID of the InlineObject this element contains.

suggestedInsertionIds[]

string

The suggested insertion IDs. An InlineObjectElement may have multiple insertion IDs if it's a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

textStyle

object (TextStyle)

The text style of this InlineObjectElement.

Similar to text content, like text runs and footnote references, the text style of an inline object element can affect content layout as well as the styling of text inserted next to it.

suggestedTextStyleChanges

map (key: string, value: object (SuggestedTextStyle))

The suggested text style changes to this InlineObject, keyed by suggestion ID.

Person

A person or email address mentioned in a document. These mentions behave as a single, immutable element containing the person's name or email address.

JSON representation
{
  "personId": string,
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "textStyle": {
    object (TextStyle)
  },
  "suggestedTextStyleChanges": {
    string: {
      object (SuggestedTextStyle)
    },
    ...
  },
  "personProperties": {
    object (PersonProperties)
  }
}
Fields
personId

string

Output only. The unique ID of this link.

suggestedInsertionIds[]

string

IDs for suggestions that insert this person link into the document. A Person might have multiple insertion IDs if it's a nested suggested change (a suggestion within a suggestion made by a different user, for example). If empty, then this person link isn't a suggested insertion.

suggestedDeletionIds[]

string

IDs for suggestions that remove this person link from the document. A Person might have multiple deletion IDs if, for example, multiple users suggest deleting it. If empty, then this person link isn't suggested for deletion.

textStyle

object (TextStyle)

The text style of this Person.

suggestedTextStyleChanges

map (key: string, value: object (SuggestedTextStyle))

The suggested text style changes to this Person, keyed by suggestion ID.

personProperties

object (PersonProperties)

Output only. The properties of this Person. This field is always present.

PersonProperties

Properties specific to a linked Person.

JSON representation
{
  "name": string,
  "email": string
}
Fields
name

string

Output only. The name of the person if it's displayed in the link text instead of the person's email address.

email

string

Output only. The email address linked to this Person. This field is always present.

RichLinkProperties

Properties specific to a RichLink.

JSON representation
{
  "title": string,
  "uri": string,
  "mimeType": string
}
Fields
title

string

Output only. The title of the RichLink as displayed in the link. This title matches the title of the linked resource at the time of the insertion or last update of the link. This field is always present.

uri

string

Output only. The URI to the RichLink. This is always present.

mimeType

string

Output only. The MIME type of the RichLink, if there's one (for example, when it's a file in Drive).

ParagraphStyle

Styles that apply to a whole paragraph.

Inherited paragraph styles are represented as unset fields in this message. A paragraph style's parent depends on where the paragraph style is defined:

  • The ParagraphStyle on a Paragraph inherits from the paragraph's corresponding named style type.
  • The ParagraphStyle on a named style inherits from the normal text named style.
  • The ParagraphStyle of the normal text named style inherits from the default paragraph style in the Docs editor.
  • The ParagraphStyle on a Paragraph element that's contained in a table may inherit its paragraph style from the table style.

If the paragraph style does not inherit from a parent, unsetting fields will revert the style to a value matching the defaults in the Docs editor.

JSON representation
{
  "headingId": string,
  "namedStyleType": enum (NamedStyleType),
  "alignment": enum (Alignment),
  "lineSpacing": number,
  "direction": enum (ContentDirection),
  "spacingMode": enum (SpacingMode),
  "spaceAbove": {
    object (Dimension)
  },
  "spaceBelow": {
    object (Dimension)
  },
  "borderBetween": {
    object (ParagraphBorder)
  },
  "borderTop": {
    object (ParagraphBorder)
  },
  "borderBottom": {
    object (ParagraphBorder)
  },
  "borderLeft": {
    object (ParagraphBorder)
  },
  "borderRight": {
    object (ParagraphBorder)
  },
  "indentFirstLine": {
    object (Dimension)
  },
  "indentStart": {
    object (Dimension)
  },
  "indentEnd": {
    object (Dimension)
  },
  "tabStops": [
    {
      object (TabStop)
    }
  ],
  "keepLinesTogether": boolean,
  "keepWithNext": boolean,
  "avoidWidowAndOrphan": boolean,
  "shading": {
    object (Shading)
  },
  "pageBreakBefore": boolean
}
Fields
headingId

string

The heading ID of the paragraph. If empty, then this paragraph is not a heading.

This property is read-only.

namedStyleType

enum (NamedStyleType)

The named style type of the paragraph.

Since updating the named style type affects other properties within ParagraphStyle, the named style type is applied before the other properties are updated.

alignment

enum (Alignment)

The text alignment for this paragraph.

lineSpacing

number

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.

direction

enum (ContentDirection)

The text direction of this paragraph. If unset, the value defaults to LEFT_TO_RIGHT since paragraph direction is not inherited.

spacingMode

enum (SpacingMode)

The spacing mode for the paragraph.

spaceAbove

object (Dimension)

The amount of extra space above the paragraph. If unset, the value is inherited from the parent.

spaceBelow

object (Dimension)

The amount of extra space below the paragraph. If unset, the value is inherited from the parent.

borderBetween

object (ParagraphBorder)

The border between this paragraph and the next and previous paragraphs. If unset, the value is inherited from the parent.

The between border is rendered when the adjacent paragraph has the same border and indent properties.

Paragraph borders cannot be partially updated. When changing a paragraph border, the new border must be specified in its entirety.

borderTop

object (ParagraphBorder)

The border at the top of this paragraph. If unset, the value is inherited from the parent.

The top border is rendered when the paragraph above has different border and indent properties.

Paragraph borders cannot be partially updated. When changing a paragraph border, the new border must be specified in its entirety.

borderBottom

object (ParagraphBorder)

The border at the bottom of this paragraph. If unset, the value is inherited from the parent.

The bottom border is rendered when the paragraph below has different border and indent properties.

Paragraph borders cannot be partially updated. When changing a paragraph border, the new border must be specified in its entirety.

borderLeft

object (ParagraphBorder)

The border to the left of this paragraph. If unset, the value is inherited from the parent.

Paragraph borders cannot be partially updated. When changing a paragraph border, the new border must be specified in its entirety.

borderRight

object (ParagraphBorder)

The border to the right of this paragraph. If unset, the value is inherited from the parent.

Paragraph borders cannot be partially updated. When changing a paragraph border, the new border must be specified in its entirety.

indentFirstLine

object (Dimension)

The amount of indentation for the first line of the paragraph. If unset, the value is inherited from the parent.

indentStart

object (Dimension)

The amount of indentation for the paragraph on the side that corresponds to the start of the text, based on the current paragraph direction. If unset, the value is inherited from the parent.

indentEnd

object (Dimension)

The amount of indentation for the paragraph on the side that corresponds to the end of the text, based on the current paragraph direction. If unset, the value is inherited from the parent.

tabStops[]

object (TabStop)

A list of the tab stops for this paragraph. The list of tab stops is not inherited.

This property is read-only.

keepLinesTogether

boolean

Whether all lines of the paragraph should be laid out on the same page or column if possible. If unset, the value is inherited from the parent.

keepWithNext

boolean

Whether at least a part of this paragraph should be laid out on the same page or column as the next paragraph if possible. If unset, the value is inherited from the parent.

avoidWidowAndOrphan

boolean

Whether to avoid widows and orphans for the paragraph. If unset, the value is inherited from the parent.

shading

object (Shading)

The shading of the paragraph. If unset, the value is inherited from the parent.

pageBreakBefore

boolean

Whether the current paragraph should always start at the beginning of a page. If unset, the value is inherited from the parent.

Attempting to update pageBreakBefore for paragraphs in unsupported regions, including Table, Header, Footer and Footnote, can result in an invalid document state that returns a 400 bad request error.

NamedStyleType

The types of named styles.

Enums
NAMED_STYLE_TYPE_UNSPECIFIED The type of named style is unspecified.
NORMAL_TEXT Normal text.
TITLE Title.
SUBTITLE Subtitle.
HEADING_1 Heading 1.
HEADING_2 Heading 2.
HEADING_3 Heading 3.
HEADING_4 Heading 4.
HEADING_5 Heading 5.
HEADING_6 Heading 6.

Alignment

The types of text alignment for a paragraph.

Enums
ALIGNMENT_UNSPECIFIED The paragraph alignment is inherited from the parent.
START The paragraph is aligned to the start of the line. Left-aligned for LTR text, right-aligned otherwise.
CENTER The paragraph is centered.
END The paragraph is aligned to the end of the line. Right-aligned for LTR text, left-aligned otherwise.
JUSTIFIED The paragraph is justified.

ContentDirection

The directions content can flow in.

Enums
CONTENT_DIRECTION_UNSPECIFIED The content direction is unspecified.
LEFT_TO_RIGHT The content goes from left to right.
RIGHT_TO_LEFT The content goes from right to left.

SpacingMode

The different modes for paragraph spacing.

Enums
SPACING_MODE_UNSPECIFIED The spacing mode is inherited from the parent.
NEVER_COLLAPSE Paragraph spacing is always rendered.
COLLAPSE_LISTS Paragraph spacing is skipped between list elements.

ParagraphBorder

A border around a paragraph.

JSON representation
{
  "color": {
    object (OptionalColor)
  },
  "width": {
    object (Dimension)
  },
  "padding": {
    object (Dimension)
  },
  "dashStyle": enum (DashStyle)
}
Fields
color

object (OptionalColor)

The color of the border.

width

object (Dimension)

The width of the border.

padding

object (Dimension)

The padding of the border.

dashStyle

enum (DashStyle)

The dash style of the border.

DashStyle

The kinds of dashes with which linear geometry can be rendered. These values are based on the "ST_PresetLineDashVal" simple type described in section 20.1.10.48 of "Office Open XML File Formats - Fundamentals and Markup Language Reference", part 1 of ECMA-376 4th edition.

Enums
DASH_STYLE_UNSPECIFIED Unspecified dash style.
SOLID Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'. This is the default dash style.
DOT Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.
DASH Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.

TabStop

A tab stop within a paragraph.

JSON representation
{
  "offset": {
    object (Dimension)
  },
  "alignment": enum (TabStopAlignment)
}
Fields
offset

object (Dimension)

The offset between this tab stop and the start margin.

alignment

enum (TabStopAlignment)

The alignment of this tab stop. If unset, the value defaults to START.

TabStopAlignment

The alignment of the tab stop.

Enums
TAB_STOP_ALIGNMENT_UNSPECIFIED The tab stop alignment is unspecified.
START The tab stop is aligned to the start of the line. This is the default.
CENTER The tab stop is aligned to the center of the line.
END The tab stop is aligned to the end of the line.

Shading

The shading of a paragraph.

JSON representation
{
  "backgroundColor": {
    object (OptionalColor)
  }
}
Fields
backgroundColor

object (OptionalColor)

The background color of this paragraph shading.

SuggestedParagraphStyle

A suggested change to a ParagraphStyle.

JSON representation
{
  "paragraphStyle": {
    object (ParagraphStyle)
  },
  "paragraphStyleSuggestionState": {
    object (ParagraphStyleSuggestionState)
  }
}
Fields
paragraphStyle

object (ParagraphStyle)

A ParagraphStyle that only includes the changes made in this suggestion. This can be used along with the paragraphStyleSuggestionState to see which fields have changed and their new values.

paragraphStyleSuggestionState

object (ParagraphStyleSuggestionState)

A mask that indicates which of the fields on the base ParagraphStyle have been changed in this suggestion.

ParagraphStyleSuggestionState

A mask that indicates which of the fields on the base ParagraphStyle have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "headingIdSuggested": boolean,
  "namedStyleTypeSuggested": boolean,
  "alignmentSuggested": boolean,
  "lineSpacingSuggested": boolean,
  "directionSuggested": boolean,
  "spacingModeSuggested": boolean,
  "spaceAboveSuggested": boolean,
  "spaceBelowSuggested": boolean,
  "borderBetweenSuggested": boolean,
  "borderTopSuggested": boolean,
  "borderBottomSuggested": boolean,
  "borderLeftSuggested": boolean,
  "borderRightSuggested": boolean,
  "indentFirstLineSuggested": boolean,
  "indentStartSuggested": boolean,
  "indentEndSuggested": boolean,
  "keepLinesTogetherSuggested": boolean,
  "keepWithNextSuggested": boolean,
  "avoidWidowAndOrphanSuggested": boolean,
  "shadingSuggestionState": {
    object (ShadingSuggestionState)
  },
  "pageBreakBeforeSuggested": boolean
}
Fields
headingIdSuggested

boolean

Indicates if there was a suggested change to headingId.

namedStyleTypeSuggested

boolean

Indicates if there was a suggested change to namedStyleType.

alignmentSuggested

boolean

Indicates if there was a suggested change to alignment.

lineSpacingSuggested

boolean

Indicates if there was a suggested change to lineSpacing.

directionSuggested

boolean

Indicates if there was a suggested change to direction.

spacingModeSuggested

boolean

Indicates if there was a suggested change to spacingMode.

spaceAboveSuggested

boolean

Indicates if there was a suggested change to spaceAbove.

spaceBelowSuggested

boolean

Indicates if there was a suggested change to spaceBelow.

borderBetweenSuggested

boolean

Indicates if there was a suggested change to borderBetween.

borderTopSuggested

boolean

Indicates if there was a suggested change to borderTop.

borderBottomSuggested

boolean

Indicates if there was a suggested change to borderBottom.

borderLeftSuggested

boolean

Indicates if there was a suggested change to borderLeft.

borderRightSuggested

boolean

Indicates if there was a suggested change to borderRight.

indentFirstLineSuggested

boolean

Indicates if there was a suggested change to indentFirstLine.

indentStartSuggested

boolean

Indicates if there was a suggested change to indentStart.

indentEndSuggested

boolean

Indicates if there was a suggested change to indentEnd.

keepLinesTogetherSuggested

boolean

Indicates if there was a suggested change to keepLinesTogether.

keepWithNextSuggested

boolean

Indicates if there was a suggested change to keepWithNext.

avoidWidowAndOrphanSuggested

boolean

Indicates if there was a suggested change to avoidWidowAndOrphan.

shadingSuggestionState

object (ShadingSuggestionState)

A mask that indicates which of the fields in shading have been changed in this suggestion.

pageBreakBeforeSuggested

boolean

Indicates if there was a suggested change to pageBreakBefore.

ShadingSuggestionState

A mask that indicates which of the fields on the base Shading have been changed in this suggested change. For any field set to true, there's a new suggested value.

JSON representation
{
  "backgroundColorSuggested": boolean
}
Fields
backgroundColorSuggested

boolean

Indicates if there was a suggested change to the Shading.

Bullet

Describes the bullet of a paragraph.

JSON representation
{
  "listId": string,
  "nestingLevel": integer,
  "textStyle": {
    object (TextStyle)
  }
}
Fields
listId

string

The ID of the list this paragraph belongs to.

nestingLevel

integer

The nesting level of this paragraph in the list.

textStyle

object (TextStyle)

The paragraph-specific text style applied to this bullet.

SuggestedBullet

A suggested change to a Bullet.

JSON representation
{
  "bullet": {
    object (Bullet)
  },
  "bulletSuggestionState": {
    object (BulletSuggestionState)
  }
}
Fields
bullet

object (Bullet)

A Bullet that only includes the changes made in this suggestion. This can be used along with the bulletSuggestionState to see which fields have changed and their new values.

bulletSuggestionState

object (BulletSuggestionState)

A mask that indicates which of the fields on the base Bullet have been changed in this suggestion.

BulletSuggestionState

A mask that indicates which of the fields on the base Bullet have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "listIdSuggested": boolean,
  "nestingLevelSuggested": boolean,
  "textStyleSuggestionState": {
    object (TextStyleSuggestionState)
  }
}
Fields
listIdSuggested

boolean

Indicates if there was a suggested change to the listId.

nestingLevelSuggested

boolean

Indicates if there was a suggested change to the nestingLevel.

textStyleSuggestionState

object (TextStyleSuggestionState)

A mask that indicates which of the fields in text style have been changed in this suggestion.

ObjectReferences

A collection of object IDs.

JSON representation
{
  "objectIds": [
    string
  ]
}
Fields
objectIds[]

string

The object IDs.

SectionBreak

A StructuralElement representing a section break. A section is a range of content that has the same SectionStyle. A section break represents the start of a new section, and the section style applies to the section after the section break.

The document body always begins with a section break.

JSON representation
{
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "sectionStyle": {
    object (SectionStyle)
  }
}
Fields
suggestedInsertionIds[]

string

The suggested insertion IDs. A SectionBreak may have multiple insertion IDs if it's a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

sectionStyle

object (SectionStyle)

The style of the section after this section break.

SectionStyle

The styling that applies to a section.

JSON representation
{
  "columnProperties": [
    {
      object (SectionColumnProperties)
    }
  ],
  "columnSeparatorStyle": enum (ColumnSeparatorStyle),
  "contentDirection": enum (ContentDirection),
  "marginTop": {
    object (Dimension)
  },
  "marginBottom": {
    object (Dimension)
  },
  "marginRight": {
    object (Dimension)
  },
  "marginLeft": {
    object (Dimension)
  },
  "marginHeader": {
    object (Dimension)
  },
  "marginFooter": {
    object (Dimension)
  },
  "sectionType": enum (SectionType),
  "defaultHeaderId": string,
  "defaultFooterId": string,
  "firstPageHeaderId": string,
  "firstPageFooterId": string,
  "evenPageHeaderId": string,
  "evenPageFooterId": string,
  "useFirstPageHeaderFooter": boolean,
  "pageNumberStart": integer,
  "flipPageOrientation": boolean
}
Fields
columnProperties[]

object (SectionColumnProperties)

The section's columns properties.

If empty, the section contains one column with the default properties in the Docs editor. A section can be updated to have no more than 3 columns.

When updating this property, setting a concrete value is required. Unsetting this property will result in a 400 bad request error.

columnSeparatorStyle

enum (ColumnSeparatorStyle)

The style of column separators.

This style can be set even when there's one column in the section.

When updating this property, setting a concrete value is required. Unsetting this property results in a 400 bad request error.

contentDirection

enum (ContentDirection)

The content direction of this section. If unset, the value defaults to LEFT_TO_RIGHT.

When updating this property, setting a concrete value is required. Unsetting this property results in a 400 bad request error.

marginTop

object (Dimension)

The top page margin of the section. If unset, the value defaults to marginTop from DocumentStyle.

When updating this property, setting a concrete value is required. Unsetting this property results in a 400 bad request error.

marginBottom

object (Dimension)

The bottom page margin of the section. If unset, the value defaults to marginBottom from DocumentStyle.

When updating this property, setting a concrete value is required. Unsetting this property results in a 400 bad request error.

marginRight

object (Dimension)

The right page margin of the section. If unset, the value defaults to marginRight from DocumentStyle. Updating the right margin causes columns in this section to resize. Since the margin affects column width, it's applied before column properties.

When updating this property, setting a concrete value is required. Unsetting this property results in a 400 bad request error.

marginLeft

object (Dimension)

The left page margin of the section. If unset, the value defaults to marginLeft from DocumentStyle. Updating the left margin causes columns in this section to resize. Since the margin affects column width, it's applied before column properties.

When updating this property, setting a concrete value is required. Unsetting this property results in a 400 bad request error.

marginHeader

object (Dimension)

The header margin of the section. If unset, the value defaults to marginHeader from DocumentStyle. If updated, useCustomHeaderFooterMargins is set to true on DocumentStyle. The value of useCustomHeaderFooterMargins on DocumentStyle indicates if a header margin is being respected for this section.

When updating this property, setting a concrete value is required. Unsetting this property results in a 400 bad request error.

sectionType

enum (SectionType)

Output only. The type of section.

defaultHeaderId

string

The ID of the default header. If unset, the value inherits from the previous SectionBreak's SectionStyle. If the value is unset in the first SectionBreak, it inherits from DocumentStyle's defaultHeaderId.

This property is read-only.

firstPageHeaderId

string

The ID of the header used only for the first page of the section. If useFirstPageHeaderFooter is true, this value is used for the header on the first page of the section. If it's false, the header on the first page of the section uses the defaultHeaderId. If unset, the value inherits from the previous SectionBreak's SectionStyle. If the value is unset in the first SectionBreak, it inherits from DocumentStyle's firstPageHeaderId.

This property is read-only.

evenPageHeaderId

string

The ID of the header used only for even pages. If the value of DocumentStyle's useEvenPageHeaderFooter is true, this value is used for the headers on even pages in the section. If it is false, the headers on even pages use the defaultHeaderId. If unset, the value inherits from the previous SectionBreak's SectionStyle. If the value is unset in the first SectionBreak, it inherits from DocumentStyle's evenPageHeaderId.

This property is read-only.

pageNumberStart

integer

The page number from which to start counting the number of pages for this section. If unset, page numbering continues from the previous section. If the value is unset in the first SectionBreak, refer to DocumentStyle's pageNumberStart.

When updating this property, setting a concrete value is required. Unsetting this property results in a 400 bad request error.

flipPageOrientation

boolean

Optional. Indicates whether to flip the dimensions of DocumentStyle's pageSize for this section, which allows changing the page orientation between portrait and landscape. If unset, the value inherits from DocumentStyle's flipPageOrientation.

When updating this property, setting a concrete value is required. Unsetting this property results in a 400 bad request error.

SectionColumnProperties

Properties that apply to a section's column.

JSON representation
{
  "width": {
    object (Dimension)
  },
  "paddingEnd": {
    object (Dimension)
  }
}
Fields
width

object (Dimension)

Output only. The width of the column.

paddingEnd

object (Dimension)

The padding at the end of the column.

ColumnSeparatorStyle

The style of column separators between columns.

Enums
COLUMN_SEPARATOR_STYLE_UNSPECIFIED An unspecified column separator style.
NONE No column separator lines between columns.
BETWEEN_EACH_COLUMN Renders a column separator line between each column.

SectionType

Represents how the start of the current section is positioned relative to the previous section.

Enums
SECTION_TYPE_UNSPECIFIED The section type is unspecified.
CONTINUOUS The section starts immediately after the last paragraph of the previous section.
NEXT_PAGE The section starts on the next page.

Table

A StructuralElement representing a table.

JSON representation
{
  "rows": integer,
  "columns": integer,
  "tableRows": [
    {
      object (TableRow)
    }
  ],
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "tableStyle": {
    object (TableStyle)
  }
}
Fields
rows

integer

Number of rows in the table.

columns

integer

Number of columns in the table.

It's possible for a table to be non-rectangular, so some rows may have a different number of cells.

tableRows[]

object (TableRow)

The contents and style of each row.

suggestedInsertionIds[]

string

The suggested insertion IDs. A Table may have multiple insertion IDs if it's a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

tableStyle

object (TableStyle)

The style of the table.

TableRow

The contents and style of a row in a Table.

JSON representation
{
  "startIndex": integer,
  "endIndex": integer,
  "tableCells": [
    {
      object (TableCell)
    }
  ],
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "tableRowStyle": {
    object (TableRowStyle)
  },
  "suggestedTableRowStyleChanges": {
    string: {
      object (SuggestedTableRowStyle)
    },
    ...
  }
}
Fields
startIndex

integer

The zero-based start index of this row, in UTF-16 code units.

endIndex

integer

The zero-based end index of this row, exclusive, in UTF-16 code units.

tableCells[]

object (TableCell)

The contents and style of each cell in this row.

It's possible for a table to be non-rectangular, so some rows may have a different number of cells than other rows in the same table.

suggestedInsertionIds[]

string

The suggested insertion IDs. A TableRow may have multiple insertion IDs if it's a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

tableRowStyle

object (TableRowStyle)

The style of the table row.

suggestedTableRowStyleChanges

map (key: string, value: object (SuggestedTableRowStyle))

The suggested style changes to this row, keyed by suggestion ID.

TableCell

The contents and style of a cell in a Table.

JSON representation
{
  "startIndex": integer,
  "endIndex": integer,
  "content": [
    {
      object (StructuralElement)
    }
  ],
  "tableCellStyle": {
    object (TableCellStyle)
  },
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ],
  "suggestedTableCellStyleChanges": {
    string: {
      object (SuggestedTableCellStyle)
    },
    ...
  }
}
Fields
startIndex

integer

The zero-based start index of this cell, in UTF-16 code units.

endIndex

integer

The zero-based end index of this cell, exclusive, in UTF-16 code units.

content[]

object (StructuralElement)

The content of the cell.

tableCellStyle

object (TableCellStyle)

The style of the cell.

suggestedInsertionIds[]

string

The suggested insertion IDs. A TableCell may have multiple insertion IDs if it's a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

suggestedTableCellStyleChanges

map (key: string, value: object (SuggestedTableCellStyle))

The suggested changes to the table cell style, keyed by suggestion ID.

TableCellStyle

The style of a TableCell.

Inherited table cell styles are represented as unset fields in this message. A table cell style can inherit from the table's style.

JSON representation
{
  "rowSpan": integer,
  "columnSpan": integer,
  "backgroundColor": {
    object (OptionalColor)
  },
  "borderLeft": {
    object (TableCellBorder)
  },
  "borderRight": {
    object (TableCellBorder)
  },
  "borderTop": {
    object (TableCellBorder)
  },
  "borderBottom": {
    object (TableCellBorder)
  },
  "paddingLeft": {
    object (Dimension)
  },
  "paddingRight": {
    object (Dimension)
  },
  "paddingTop": {
    object (Dimension)
  },
  "paddingBottom": {
    object (Dimension)
  },
  "contentAlignment": enum (ContentAlignment)
}
Fields
rowSpan

integer

The row span of the cell.

This property is read-only.

columnSpan

integer

The column span of the cell.

This property is read-only.

backgroundColor

object (OptionalColor)

The background color of the cell.

borderLeft

object (TableCellBorder)

The left border of the cell.

borderRight

object (TableCellBorder)

The right border of the cell.

borderTop

object (TableCellBorder)

The top border of the cell.

borderBottom

object (TableCellBorder)

The bottom border of the cell.

paddingLeft

object (Dimension)

The left padding of the cell.

paddingRight

object (Dimension)

The right padding of the cell.

paddingTop

object (Dimension)

The top padding of the cell.

paddingBottom

object (Dimension)

The bottom padding of the cell.

contentAlignment

enum (ContentAlignment)

The alignment of the content in the table cell. The default alignment matches the alignment for newly created table cells in the Docs editor.

TableCellBorder

A border around a table cell.

Table cell borders cannot be transparent. To hide a table cell border, make its width 0.

JSON representation
{
  "color": {
    object (OptionalColor)
  },
  "width": {
    object (Dimension)
  },
  "dashStyle": enum (DashStyle)
}
Fields
color

object (OptionalColor)

The color of the border.

This color cannot be transparent.

width

object (Dimension)

The width of the border.

dashStyle

enum (DashStyle)

The dash style of the border.

ContentAlignment

The types of content alignment.

Derived from a subset of the values of the "ST_TextAnchoringType" simple type in section 20.1.10.59 of "Office Open XML File Formats - Fundamentals and Markup Language Reference", part 1 of ECMA-376 4th edition.

Enums
CONTENT_ALIGNMENT_UNSPECIFIED An unspecified content alignment. The content alignment is inherited from the parent if one exists.
CONTENT_ALIGNMENT_UNSUPPORTED An unsupported content alignment.
TOP An alignment that aligns the content to the top of the content holder. Corresponds to ECMA-376 ST_TextAnchoringType 't'.
MIDDLE An alignment that aligns the content to the middle of the content holder. Corresponds to ECMA-376 ST_TextAnchoringType 'ctr'.
BOTTOM An alignment that aligns the content to the bottom of the content holder. Corresponds to ECMA-376 ST_TextAnchoringType 'b'.

SuggestedTableCellStyle

A suggested change to a TableCellStyle.

JSON representation
{
  "tableCellStyle": {
    object (TableCellStyle)
  },
  "tableCellStyleSuggestionState": {
    object (TableCellStyleSuggestionState)
  }
}
Fields
tableCellStyle

object (TableCellStyle)

A TableCellStyle that only includes the changes made in this suggestion. This can be used along with the tableCellStyleSuggestionState to see which fields have changed and their new values.

tableCellStyleSuggestionState

object (TableCellStyleSuggestionState)

A mask that indicates which of the fields on the base TableCellStyle have been changed in this suggestion.

TableCellStyleSuggestionState

A mask that indicates which of the fields on the base TableCellStyle have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "rowSpanSuggested": boolean,
  "columnSpanSuggested": boolean,
  "backgroundColorSuggested": boolean,
  "borderLeftSuggested": boolean,
  "borderRightSuggested": boolean,
  "borderTopSuggested": boolean,
  "borderBottomSuggested": boolean,
  "paddingLeftSuggested": boolean,
  "paddingRightSuggested": boolean,
  "paddingTopSuggested": boolean,
  "paddingBottomSuggested": boolean,
  "contentAlignmentSuggested": boolean
}
Fields
rowSpanSuggested

boolean

Indicates if there was a suggested change to rowSpan.

columnSpanSuggested

boolean

Indicates if there was a suggested change to columnSpan.

backgroundColorSuggested

boolean

Indicates if there was a suggested change to backgroundColor.

borderLeftSuggested

boolean

Indicates if there was a suggested change to borderLeft.

borderRightSuggested

boolean

Indicates if there was a suggested change to borderRight.

borderTopSuggested

boolean

Indicates if there was a suggested change to borderTop.

borderBottomSuggested

boolean

Indicates if there was a suggested change to borderBottom.

paddingLeftSuggested

boolean

Indicates if there was a suggested change to paddingLeft.

paddingRightSuggested

boolean

Indicates if there was a suggested change to paddingRight.

paddingTopSuggested

boolean

Indicates if there was a suggested change to paddingTop.

paddingBottomSuggested

boolean

Indicates if there was a suggested change to paddingBottom.

contentAlignmentSuggested

boolean

Indicates if there was a suggested change to contentAlignment.

TableRowStyle

Styles that apply to a table row.

JSON representation
{
  "minRowHeight": {
    object (Dimension)
  },
  "tableHeader": boolean,
  "preventOverflow": boolean
}
Fields
minRowHeight

object (Dimension)

The minimum height of the row. The row will be rendered in the Docs editor at a height equal to or greater than this value in order to show all the content in the row's cells.

tableHeader

boolean

Whether the row is a table header.

preventOverflow

boolean

Whether the row cannot overflow across page or column boundaries.

SuggestedTableRowStyle

A suggested change to a TableRowStyle.

JSON representation
{
  "tableRowStyle": {
    object (TableRowStyle)
  },
  "tableRowStyleSuggestionState": {
    object (TableRowStyleSuggestionState)
  }
}
Fields
tableRowStyle

object (TableRowStyle)

A TableRowStyle that only includes the changes made in this suggestion. This can be used along with the tableRowStyleSuggestionState to see which fields have changed and their new values.

tableRowStyleSuggestionState

object (TableRowStyleSuggestionState)

A mask that indicates which of the fields on the base TableRowStyle have been changed in this suggestion.

TableRowStyleSuggestionState

A mask that indicates which of the fields on the base TableRowStyle have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "minRowHeightSuggested": boolean
}
Fields
minRowHeightSuggested

boolean

Indicates if there was a suggested change to minRowHeight.

TableStyle

Styles that apply to a table.

JSON representation
{
  "tableColumnProperties": [
    {
      object (TableColumnProperties)
    }
  ]
}
Fields
tableColumnProperties[]

object (TableColumnProperties)

The properties of each column.

Note that in Docs, tables contain rows and rows contain cells, similar to HTML. So the properties for a row can be found on the row's tableRowStyle.

TableColumnProperties

The properties of a column in a table.

JSON representation
{
  "widthType": enum (WidthType),
  "width": {
    object (Dimension)
  }
}
Fields
widthType

enum (WidthType)

The width type of the column.

width

object (Dimension)

The width of the column. Set when the column's widthType is FIXED_WIDTH.

WidthType

The type of width of the column.

Enums
WIDTH_TYPE_UNSPECIFIED The column width type is unspecified.
EVENLY_DISTRIBUTED

The column width is evenly distributed among the other evenly distributed columns.

The width of the column is automatically determined and will have an equal portion of the width remaining for the table after accounting for all columns with specified widths.

FIXED_WIDTH A fixed column width. The [width][google.apps.docs.v1.TableColumnProperties.width property contains the column's width.

TableOfContents

A StructuralElement representing a table of contents.

JSON representation
{
  "content": [
    {
      object (StructuralElement)
    }
  ],
  "suggestedInsertionIds": [
    string
  ],
  "suggestedDeletionIds": [
    string
  ]
}
Fields
content[]

object (StructuralElement)

The content of the table of contents.

suggestedInsertionIds[]

string

The suggested insertion IDs. A TableOfContents may have multiple insertion IDs if it is a nested suggested change. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

Footnote

A document footnote.

JSON representation
{
  "footnoteId": string,
  "content": [
    {
      object (StructuralElement)
    }
  ]
}
Fields
footnoteId

string

The ID of the footnote.

content[]

object (StructuralElement)

The contents of the footnote.

The indexes for a footnote's content begin at zero.

DocumentStyle

The style of the document.

JSON representation
{
  "background": {
    object (Background)
  },
  "defaultHeaderId": string,
  "defaultFooterId": string,
  "evenPageHeaderId": string,
  "evenPageFooterId": string,
  "firstPageHeaderId": string,
  "firstPageFooterId": string,
  "useFirstPageHeaderFooter": boolean,
  "useEvenPageHeaderFooter": boolean,
  "pageNumberStart": integer,
  "marginTop": {
    object (Dimension)
  },
  "marginBottom": {
    object (Dimension)
  },
  "marginRight": {
    object (Dimension)
  },
  "marginLeft": {
    object (Dimension)
  },
  "pageSize": {
    object (Size)
  },
  "marginHeader": {
    object (Dimension)
  },
  "marginFooter": {
    object (Dimension)
  },
  "useCustomHeaderFooterMargins": boolean,
  "flipPageOrientation": boolean
}
Fields
background

object (Background)

The background of the document. Documents cannot have a transparent background color.

defaultHeaderId

string

The ID of the default header. If not set, there's no default header.

This property is read-only.

evenPageHeaderId

string

The ID of the header used only for even pages. The value of useEvenPageHeaderFooter determines whether to use the defaultHeaderId or this value for the header on even pages. If not set, there's no even page header.

This property is read-only.

firstPageHeaderId

string

The ID of the header used only for the first page. If not set then a unique header for the first page does not exist. The value of useFirstPageHeaderFooter determines whether to use the defaultHeaderId or this value for the header on the first page. If not set, there's no first page header.

This property is read-only.

pageNumberStart

integer

The page number from which to start counting the number of pages.

marginTop

object (Dimension)

The top page margin.

Updating the top page margin on the document style clears the top page margin on all section styles.

marginBottom

object (Dimension)

The bottom page margin.

Updating the bottom page margin on the document style clears the bottom page margin on all section styles.

marginRight

object (Dimension)

The right page margin.

Updating the right page margin on the document style clears the right page margin on all section styles. It may also cause columns to resize in all sections.

marginLeft

object (Dimension)

The left page margin.

Updating the left page margin on the document style clears the left page margin on all section styles. It may also cause columns to resize in all sections.

pageSize

object (Size)

The size of a page in the document.

marginHeader

object (Dimension)

The amount of space between the top of the page and the contents of the header.

flipPageOrientation

boolean

Optional. Indicates whether to flip the dimensions of the pageSize, which allows changing the page orientation between portrait and landscape.

Background

Represents the background of a document.

JSON representation
{
  "color": {
    object (OptionalColor)
  }
}
Fields
color

object (OptionalColor)

The background color.

Size

A width and height.

JSON representation
{
  "height": {
    object (Dimension)
  },
  "width": {
    object (Dimension)
  }
}
Fields
height

object (Dimension)

The height of the object.

width

object (Dimension)

The width of the object.

SuggestedDocumentStyle

A suggested change to the DocumentStyle.

JSON representation
{
  "documentStyle": {
    object (DocumentStyle)
  },
  "documentStyleSuggestionState": {
    object (DocumentStyleSuggestionState)
  }
}
Fields
documentStyle

object (DocumentStyle)

A DocumentStyle that only includes the changes made in this suggestion. This can be used along with the documentStyleSuggestionState to see which fields have changed and their new values.

documentStyleSuggestionState

object (DocumentStyleSuggestionState)

A mask that indicates which of the fields on the base DocumentStyle have been changed in this suggestion.

DocumentStyleSuggestionState

A mask that indicates which of the fields on the base DocumentStyle have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "backgroundSuggestionState": {
    object (BackgroundSuggestionState)
  },
  "defaultHeaderIdSuggested": boolean,
  "defaultFooterIdSuggested": boolean,
  "evenPageHeaderIdSuggested": boolean,
  "evenPageFooterIdSuggested": boolean,
  "firstPageHeaderIdSuggested": boolean,
  "firstPageFooterIdSuggested": boolean,
  "useFirstPageHeaderFooterSuggested": boolean,
  "useEvenPageHeaderFooterSuggested": boolean,
  "pageNumberStartSuggested": boolean,
  "marginTopSuggested": boolean,
  "marginBottomSuggested": boolean,
  "marginRightSuggested": boolean,
  "marginLeftSuggested": boolean,
  "pageSizeSuggestionState": {
    object (SizeSuggestionState)
  },
  "marginHeaderSuggested": boolean,
  "marginFooterSuggested": boolean,
  "useCustomHeaderFooterMarginsSuggested": boolean,
  "flipPageOrientationSuggested": boolean
}
Fields
backgroundSuggestionState

object (BackgroundSuggestionState)

A mask that indicates which of the fields in background have been changed in this suggestion.

defaultHeaderIdSuggested

boolean

Indicates if there was a suggested change to defaultHeaderId.

evenPageHeaderIdSuggested

boolean

Indicates if there was a suggested change to evenPageHeaderId.

firstPageHeaderIdSuggested

boolean

Indicates if there was a suggested change to firstPageHeaderId.

pageNumberStartSuggested

boolean

Indicates if there was a suggested change to pageNumberStart.

marginTopSuggested

boolean

Indicates if there was a suggested change to marginTop.

marginBottomSuggested

boolean

Indicates if there was a suggested change to marginBottom.

marginRightSuggested

boolean

Indicates if there was a suggested change to marginRight.

marginLeftSuggested

boolean

Indicates if there was a suggested change to marginLeft.

pageSizeSuggestionState

object (SizeSuggestionState)

A mask that indicates which of the fields in [size] [google.apps.docs.v1.DocumentStyle.size] have been changed in this suggestion.

marginHeaderSuggested

boolean

Indicates if there was a suggested change to marginHeader.

flipPageOrientationSuggested

boolean

Optional. Indicates if there was a suggested change to flipPageOrientation.

BackgroundSuggestionState

A mask that indicates which of the fields on the base Background have been changed in this suggestion. For any field set to true, the Backgound has a new suggested value.

JSON representation
{
  "backgroundColorSuggested": boolean
}
Fields
backgroundColorSuggested

boolean

Indicates whether the current background color has been modified in this suggestion.

SizeSuggestionState

A mask that indicates which of the fields on the base Size have been changed in this suggestion. For any field set to true, the Size has a new suggested value.

JSON representation
{
  "heightSuggested": boolean,
  "widthSuggested": boolean
}
Fields
heightSuggested

boolean

Indicates if there was a suggested change to height.

widthSuggested

boolean

Indicates if there was a suggested change to width.

NamedStyles

The named styles. Paragraphs in the document can inherit their TextStyle and ParagraphStyle from these named styles.

JSON representation
{
  "styles": [
    {
      object (NamedStyle)
    }
  ]
}
Fields
styles[]

object (NamedStyle)

The named styles.

There's an entry for each of the possible named style types.

NamedStyle

A named style. Paragraphs in the document can inherit their TextStyle and ParagraphStyle from this named style when they have the same named style type.

JSON representation
{
  "namedStyleType": enum (NamedStyleType),
  "textStyle": {
    object (TextStyle)
  },
  "paragraphStyle": {
    object (ParagraphStyle)
  }
}
Fields
namedStyleType

enum (NamedStyleType)

The type of this named style.

textStyle

object (TextStyle)

The text style of this named style.

paragraphStyle

object (ParagraphStyle)

The paragraph style of this named style.

SuggestedNamedStyles

A suggested change to the NamedStyles.

JSON representation
{
  "namedStyles": {
    object (NamedStyles)
  },
  "namedStylesSuggestionState": {
    object (NamedStylesSuggestionState)
  }
}
Fields
namedStyles

object (NamedStyles)

A NamedStyles that only includes the changes made in this suggestion. This can be used along with the namedStylesSuggestionState to see which fields have changed and their new values.

namedStylesSuggestionState

object (NamedStylesSuggestionState)

A mask that indicates which of the fields on the base NamedStyles have been changed in this suggestion.

NamedStylesSuggestionState

The suggestion state of a NamedStyles message.

JSON representation
{
  "stylesSuggestionStates": [
    {
      object (NamedStyleSuggestionState)
    }
  ]
}
Fields
stylesSuggestionStates[]

object (NamedStyleSuggestionState)

A mask that indicates which of the fields on the corresponding NamedStyle in styles have been changed in this suggestion.

The order of these named style suggestion states matches the order of the corresponding named style within the named styles suggestion.

NamedStyleSuggestionState

A suggestion state of a NamedStyle message.

JSON representation
{
  "namedStyleType": enum (NamedStyleType),
  "textStyleSuggestionState": {
    object (TextStyleSuggestionState)
  },
  "paragraphStyleSuggestionState": {
    object (ParagraphStyleSuggestionState)
  }
}
Fields
namedStyleType

enum (NamedStyleType)

The named style type that this suggestion state corresponds to.

This field is provided as a convenience for matching the NamedStyleSuggestionState with its corresponding NamedStyle.

textStyleSuggestionState

object (TextStyleSuggestionState)

A mask that indicates which of the fields in text style have been changed in this suggestion.

paragraphStyleSuggestionState

object (ParagraphStyleSuggestionState)

A mask that indicates which of the fields in paragraph style have been changed in this suggestion.

List

A List represents the list attributes for a group of paragraphs that all belong to the same list. A paragraph that's part of a list has a reference to the list's ID in its bullet.

JSON representation
{
  "listProperties": {
    object (ListProperties)
  },
  "suggestedListPropertiesChanges": {
    string: {
      object (SuggestedListProperties)
    },
    ...
  },
  "suggestedInsertionId": string,
  "suggestedDeletionIds": [
    string
  ]
}
Fields
listProperties

object (ListProperties)

The properties of the list.

suggestedListPropertiesChanges

map (key: string, value: object (SuggestedListProperties))

The suggested changes to the list properties, keyed by suggestion ID.

suggestedInsertionId

string

The suggested insertion ID. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this list.

ListProperties

The properties of a list that describe the look and feel of bullets belonging to paragraphs associated with a list.

JSON representation
{
  "nestingLevels": [
    {
      object (NestingLevel)
    }
  ]
}
Fields
nestingLevels[]

object (NestingLevel)

Describes the properties of the bullets at the associated level.

A list has at most 9 levels of nesting with nesting level 0 corresponding to the top-most level and nesting level 8 corresponding to the most nested level. The nesting levels are returned in ascending order with the least nested returned first.

NestingLevel

Contains properties describing the look and feel of a list bullet at a given level of nesting.

JSON representation
{
  "bulletAlignment": enum (BulletAlignment),
  "glyphFormat": string,
  "indentFirstLine": {
    object (Dimension)
  },
  "indentStart": {
    object (Dimension)
  },
  "textStyle": {
    object (TextStyle)
  },
  "startNumber": integer,

  // Union field glyph_kind can be only one of the following:
  "glyphType": enum (GlyphType),
  "glyphSymbol": string
  // End of list of possible types for union field glyph_kind.
}
Fields
bulletAlignment

enum (BulletAlignment)

The alignment of the bullet within the space allotted for rendering the bullet.

glyphFormat

string

The format string used by bullets at this level of nesting.

The glyph format contains one or more placeholders, and these placeholders are replaced with the appropriate values depending on the glyphType or glyphSymbol. The placeholders follow the pattern %[nestingLevel]. Furthermore, placeholders can have prefixes and suffixes. Thus, the glyph format follows the pattern <prefix>%[nestingLevel]<suffix>. Note that the prefix and suffix are optional and can be arbitrary strings.

For example, the glyph format %0. indicates that the rendered glyph will replace the placeholder with the corresponding glyph for nesting level 0 followed by a period as the suffix. So a list with a glyph type of UPPER_ALPHA and glyph format %0. at nesting level 0 will result in a list with rendered glyphs

A.

B.

C.

The glyph format can contain placeholders for the current nesting level as well as placeholders for parent nesting levels. For example, a list can have a glyph format of %0. at nesting level 0 and a glyph format of %0.%1. at nesting level 1. Assuming both nesting levels have DECIMAL glyph types, this would result in a list with rendered glyphs

1.

2.

2.1.

2.2.

3.

For nesting levels that are ordered, the string that replaces a placeholder in the glyph format for a particular paragraph depends on the paragraph's order within the list.

indentFirstLine

object (Dimension)

The amount of indentation for the first line of paragraphs at this level of nesting.

indentStart

object (Dimension)

The amount of indentation for paragraphs at this level of nesting. Applied to the side that corresponds to the start of the text, based on the paragraph's content direction.

textStyle

object (TextStyle)

The text style of bullets at this level of nesting.

startNumber

integer

The number of the first list item at this nesting level.

A value of 0 is treated as a value of 1 for lettered lists and Roman numeral lists. For values of both 0 and 1, lettered and Roman numeral lists will begin at a and i respectively.

This value is ignored for nesting levels with unordered glyphs.

Union field glyph_kind. The kind of glyph used by bullets. This defines the bullet glyph that replaces the placeholders in the glyph_format. glyph_kind can be only one of the following:
glyphType

enum (GlyphType)

The type of glyph used by bullets when paragraphs at this level of nesting are ordered.

The glyph type determines the type of glyph used to replace placeholders within the glyphFormat when paragraphs at this level of nesting are ordered. For example, if the nesting level is 0, the glyphFormat is %0. and the glyph type is DECIMAL, then the rendered glyph would replace the placeholder %0 in the glyph format with a number corresponding to list item's order within the list.

glyphSymbol

string

A custom glyph symbol used by bullets when paragraphs at this level of nesting are unordered.

The glyph symbol replaces placeholders within the glyphFormat. For example, if the glyphSymbol is the solid circle corresponding to Unicode U+25cf code point and the glyphFormat is %0, the rendered glyph would be the solid circle.

BulletAlignment

The types of alignment for a bullet.

Enums
BULLET_ALIGNMENT_UNSPECIFIED The bullet alignment is unspecified.
START The bullet is aligned to the start of the space allotted for rendering the bullet. Left-aligned for LTR text, right-aligned otherwise.
CENTER The bullet is aligned to the center of the space allotted for rendering the bullet.
END The bullet is aligned to the end of the space allotted for rendering the bullet. Right-aligned for LTR text, left-aligned otherwise.

GlyphType

The types of glyphs used by bullets when paragraphs at this level of nesting are ordered.

Enums
GLYPH_TYPE_UNSPECIFIED The glyph type is unspecified or unsupported.
NONE An empty string.
DECIMAL A number, like 1, 2, or 3.
ZERO_DECIMAL A number where single digit numbers are prefixed with a zero, like 01, 02, or 03. Numbers with more than one digit are not prefixed with a zero.
UPPER_ALPHA An uppercase letter, like A, B, or C.
ALPHA A lowercase letter, like a, b, or c.
UPPER_ROMAN An uppercase Roman numeral, like I, II, or III.
ROMAN A lowercase Roman numeral, like i, ii, or iii.

SuggestedListProperties

A suggested change to ListProperties.

JSON representation
{
  "listProperties": {
    object (ListProperties)
  },
  "listPropertiesSuggestionState": {
    object (ListPropertiesSuggestionState)
  }
}
Fields
listProperties

object (ListProperties)

A ListProperties that only includes the changes made in this suggestion. This can be used along with the listPropertiesSuggestionState to see which fields have changed and their new values.

listPropertiesSuggestionState

object (ListPropertiesSuggestionState)

A mask that indicates which of the fields on the base ListProperties have been changed in this suggestion.

ListPropertiesSuggestionState

A mask that indicates which of the fields on the base ListProperties have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "nestingLevelsSuggestionStates": [
    {
      object (NestingLevelSuggestionState)
    }
  ]
}
Fields
nestingLevelsSuggestionStates[]

object (NestingLevelSuggestionState)

A mask that indicates which of the fields on the corresponding NestingLevel in nestingLevels have been changed in this suggestion.

The nesting level suggestion states are returned in ascending order of the nesting level with the least nested returned first.

NestingLevelSuggestionState

A mask that indicates which of the fields on the base NestingLevel have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "bulletAlignmentSuggested": boolean,
  "glyphTypeSuggested": boolean,
  "glyphFormatSuggested": boolean,
  "glyphSymbolSuggested": boolean,
  "indentFirstLineSuggested": boolean,
  "indentStartSuggested": boolean,
  "textStyleSuggestionState": {
    object (TextStyleSuggestionState)
  },
  "startNumberSuggested": boolean
}
Fields
bulletAlignmentSuggested

boolean

Indicates if there was a suggested change to bulletAlignment.

glyphTypeSuggested

boolean

Indicates if there was a suggested change to glyphType.

glyphFormatSuggested

boolean

Indicates if there was a suggested change to glyphFormat.

glyphSymbolSuggested

boolean

Indicates if there was a suggested change to glyphSymbol.

indentFirstLineSuggested

boolean

Indicates if there was a suggested change to indentFirstLine.

indentStartSuggested

boolean

Indicates if there was a suggested change to indentStart.

textStyleSuggestionState

object (TextStyleSuggestionState)

A mask that indicates which of the fields in text style have been changed in this suggestion.

startNumberSuggested

boolean

Indicates if there was a suggested change to startNumber.

NamedRanges

A collection of all the NamedRanges in the document that share a given name.

JSON representation
{
  "name": string,
  "namedRanges": [
    {
      object (NamedRange)
    }
  ]
}
Fields
name

string

The name that all the named ranges share.

namedRanges[]

object (NamedRange)

The NamedRanges that share the same name.

NamedRange

A collection of Ranges with the same named range ID.

Named ranges allow developers to associate parts of a document with an arbitrary user-defined label so their contents can be programmatically read or edited later. A document can contain multiple named ranges with the same name, but every named range has a unique ID.

A named range is created with a single Range, and content inserted inside a named range generally expands that range. However, certain document changes can cause the range to be split into multiple ranges.

Named ranges are not private. All applications and collaborators that have access to the document can see its named ranges.

JSON representation
{
  "namedRangeId": string,
  "name": string,
  "ranges": [
    {
      object (Range)
    }
  ]
}
Fields
namedRangeId

string

The ID of the named range.

name

string

The name of the named range.

ranges[]

object (Range)

The ranges that belong to this named range.

Range

Specifies a contiguous range of text.

JSON representation
{
  "segmentId": string,
  "startIndex": integer,
  "endIndex": integer
}
Fields
segmentId

string

The ID of the header, footer, or footnote that this range is contained in. An empty segment ID signifies the document's body.

startIndex

integer

The zero-based start index of this range, in UTF-16 code units.

In all current uses, a start index must be provided. This field is an Int32Value in order to accommodate future use cases with open-ended ranges.

endIndex

integer

The zero-based end index of this range, exclusive, in UTF-16 code units.

In all current uses, an end index must be provided. This field is an Int32Value in order to accommodate future use cases with open-ended ranges.

SuggestionsViewMode

The suggestions view mode applied to the document that indicates how suggested changes are represented. It provides options for reading the document with all suggestions inline, accepted, or rejected.

Enums
DEFAULT_FOR_CURRENT_ACCESS The SuggestionsViewMode applied to the returned document depends on the user's current access level. If the user only has view access, PREVIEW_WITHOUT_SUGGESTIONS is applied. Otherwise, SUGGESTIONS_INLINE is applied. This is the default suggestions view mode.
SUGGESTIONS_INLINE

The returned document has suggestions inline. Suggested changes will be differentiated from base content within the document.

Requests to retrieve a document using this mode will return a 403 error if the user does not have permission to view suggested changes.

PREVIEW_SUGGESTIONS_ACCEPTED

The returned document is a preview with all suggested changes accepted.

Requests to retrieve a document using this mode will return a 403 error if the user does not have permission to view suggested changes.

PREVIEW_WITHOUT_SUGGESTIONS The returned document is a preview with all suggested changes rejected if there are any suggestions in the document.

InlineObject

An object that appears inline with text. An InlineObject contains an EmbeddedObject such as an image.

JSON representation
{
  "objectId": string,
  "inlineObjectProperties": {
    object (InlineObjectProperties)
  },
  "suggestedInlineObjectPropertiesChanges": {
    string: {
      object (SuggestedInlineObjectProperties)
    },
    ...
  },
  "suggestedInsertionId": string,
  "suggestedDeletionIds": [
    string
  ]
}
Fields
objectId

string

The ID of this inline object. Can be used to update an object’s properties.

inlineObjectProperties

object (InlineObjectProperties)

The properties of this inline object.

suggestedInlineObjectPropertiesChanges

map (key: string, value: object (SuggestedInlineObjectProperties))

The suggested changes to the inline object properties, keyed by suggestion ID.

suggestedInsertionId

string

The suggested insertion ID. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

InlineObjectProperties

Properties of an InlineObject.

JSON representation
{
  "embeddedObject": {
    object (EmbeddedObject)
  }
}
Fields
embeddedObject

object (EmbeddedObject)

The embedded object of this inline object.

EmbeddedObject

An embedded object in the document.

JSON representation
{
  "title": string,
  "description": string,
  "embeddedObjectBorder": {
    object (EmbeddedObjectBorder)
  },
  "size": {
    object (Size)
  },
  "marginTop": {
    object (Dimension)
  },
  "marginBottom": {
    object (Dimension)
  },
  "marginRight": {
    object (Dimension)
  },
  "marginLeft": {
    object (Dimension)
  },
  "linkedContentReference": {
    object (LinkedContentReference)
  },

  // Union field properties can be only one of the following:
  "embeddedDrawingProperties": {
    object (EmbeddedDrawingProperties)
  },
  "imageProperties": {
    object (ImageProperties)
  }
  // End of list of possible types for union field properties.
}
Fields
title

string

The title of the embedded object. The title and description are both combined to display alt text.

description

string

The description of the embedded object. The title and description are both combined to display alt text.

embeddedObjectBorder

object (EmbeddedObjectBorder)

The border of the embedded object.

size

object (Size)

The visible size of the image after cropping.

marginTop

object (Dimension)

The top margin of the embedded object.

marginBottom

object (Dimension)

The bottom margin of the embedded object.

marginRight

object (Dimension)

The right margin of the embedded object.

marginLeft

object (Dimension)

The left margin of the embedded object.

linkedContentReference

object (LinkedContentReference)

A reference to the external linked source content. For example, it contains a reference to the source Google Sheets chart when the embedded object is a linked chart.

If unset, then the embedded object is not linked.

Union field properties. The properties that are specific to each embedded object type. properties can be only one of the following:
embeddedDrawingProperties

object (EmbeddedDrawingProperties)

The properties of an embedded drawing.

imageProperties

object (ImageProperties)

The properties of an image.

EmbeddedDrawingProperties

This type has no fields.

The properties of an embedded drawing and used to differentiate the object type. An embedded drawing is one that's created and edited within a document. Note that extensive details are not supported.

ImageProperties

The properties of an image.

JSON representation
{
  "contentUri": string,
  "sourceUri": string,
  "brightness": number,
  "contrast": number,
  "transparency": number,
  "cropProperties": {
    object (CropProperties)
  },
  "angle": number
}
Fields
contentUri

string

A URI to the image with a default lifetime of 30 minutes. This URI is tagged with the account of the requester. Anyone with the URI effectively accesses the image as the original requester. Access to the image may be lost if the document's sharing settings change.

sourceUri

string

The source URI is the URI used to insert the image. The source URI can be empty.

brightness

number

The brightness effect of the image. The value should be in the interval [-1.0, 1.0], where 0 means no effect.

contrast

number

The contrast effect of the image. The value should be in the interval [-1.0, 1.0], where 0 means no effect.

transparency

number

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 transparent.

cropProperties

object (CropProperties)

The crop properties of the image.

angle

number

The clockwise rotation angle of the image, in radians.

CropProperties

The crop properties of an image.

The crop rectangle is represented using fractional offsets from the original content's 4 edges.

  • If the offset is in the interval (0, 1), the corresponding edge of crop rectangle is positioned inside of the image's original bounding rectangle.
  • If the offset is negative or greater than 1, the corresponding edge of crop rectangle is positioned outside of the image's original bounding rectangle.
  • If all offsets and rotation angle are 0, the image is not cropped.
JSON representation
{
  "offsetLeft": number,
  "offsetRight": number,
  "offsetTop": number,
  "offsetBottom": number,
  "angle": number
}
Fields
offsetLeft

number

The offset specifies how far inwards the left edge of the crop rectangle is from the left edge of the original content as a fraction of the original content's width.

offsetRight

number

The offset specifies how far inwards the right edge of the crop rectangle is from the right edge of the original content as a fraction of the original content's width.

offsetTop

number

The offset specifies how far inwards the top edge of the crop rectangle is from the top edge of the original content as a fraction of the original content's height.

offsetBottom

number

The offset specifies how far inwards the bottom edge of the crop rectangle is from the bottom edge of the original content as a fraction of the original content's height.

angle

number

The clockwise rotation angle of the crop rectangle around its center, in radians. Rotation is applied after the offsets.

EmbeddedObjectBorder

A border around an EmbeddedObject.

JSON representation
{
  "color": {
    object (OptionalColor)
  },
  "width": {
    object (Dimension)
  },
  "dashStyle": enum (DashStyle),
  "propertyState": enum (PropertyState)
}
Fields
color

object (OptionalColor)

The color of the border.

width

object (Dimension)

The width of the border.

dashStyle

enum (DashStyle)

The dash style of the border.

propertyState

enum (PropertyState)

The property state of the border property.

PropertyState

The possible states of a property.

Enums
RENDERED If a property's state is RENDERED, then the element has the corresponding property when rendered in the document. This is the default value.
NOT_RENDERED If a property's state is NOT_RENDERED, then the element does not have the corresponding property when rendered in the document.

LinkedContentReference

A reference to the external linked source content.

JSON representation
{

  // Union field reference can be only one of the following:
  "sheetsChartReference": {
    object (SheetsChartReference)
  }
  // End of list of possible types for union field reference.
}
Fields
Union field reference. The reference specific to the type of linked content. reference can be only one of the following:
sheetsChartReference

object (SheetsChartReference)

A reference to the linked chart.

SheetsChartReference

A reference to a linked chart embedded from Google Sheets.

JSON representation
{
  "spreadsheetId": string,
  "chartId": integer
}
Fields
spreadsheetId

string

The ID of the Google Sheets spreadsheet that contains the source chart.

chartId

integer

The ID of the specific chart in the Google Sheets spreadsheet that's embedded.

SuggestedInlineObjectProperties

A suggested change to InlineObjectProperties.

JSON representation
{
  "inlineObjectProperties": {
    object (InlineObjectProperties)
  },
  "inlineObjectPropertiesSuggestionState": {
    object (InlineObjectPropertiesSuggestionState)
  }
}
Fields
inlineObjectProperties

object (InlineObjectProperties)

An InlineObjectProperties that only includes the changes made in this suggestion. This can be used along with the inlineObjectPropertiesSuggestionState to see which fields have changed and their new values.

inlineObjectPropertiesSuggestionState

object (InlineObjectPropertiesSuggestionState)

A mask that indicates which of the fields on the base InlineObjectProperties have been changed in this suggestion.

InlineObjectPropertiesSuggestionState

A mask that indicates which of the fields on the base InlineObjectProperties have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "embeddedObjectSuggestionState": {
    object (EmbeddedObjectSuggestionState)
  }
}
Fields
embeddedObjectSuggestionState

object (EmbeddedObjectSuggestionState)

A mask that indicates which of the fields in embeddedObject have been changed in this suggestion.

EmbeddedObjectSuggestionState

A mask that indicates which of the fields on the base EmbeddedObject have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "embeddedDrawingPropertiesSuggestionState": {
    object (EmbeddedDrawingPropertiesSuggestionState)
  },
  "imagePropertiesSuggestionState": {
    object (ImagePropertiesSuggestionState)
  },
  "titleSuggested": boolean,
  "descriptionSuggested": boolean,
  "embeddedObjectBorderSuggestionState": {
    object (EmbeddedObjectBorderSuggestionState)
  },
  "sizeSuggestionState": {
    object (SizeSuggestionState)
  },
  "marginLeftSuggested": boolean,
  "marginRightSuggested": boolean,
  "marginTopSuggested": boolean,
  "marginBottomSuggested": boolean,
  "linkedContentReferenceSuggestionState": {
    object (LinkedContentReferenceSuggestionState)
  }
}
Fields
embeddedDrawingPropertiesSuggestionState

object (EmbeddedDrawingPropertiesSuggestionState)

A mask that indicates which of the fields in embeddedDrawingProperties have been changed in this suggestion.

imagePropertiesSuggestionState

object (ImagePropertiesSuggestionState)

A mask that indicates which of the fields in imageProperties have been changed in this suggestion.

titleSuggested

boolean

Indicates if there was a suggested change to title.

descriptionSuggested

boolean

Indicates if there was a suggested change to description.

embeddedObjectBorderSuggestionState

object (EmbeddedObjectBorderSuggestionState)

A mask that indicates which of the fields in embeddedObjectBorder have been changed in this suggestion.

sizeSuggestionState

object (SizeSuggestionState)

A mask that indicates which of the fields in size have been changed in this suggestion.

marginLeftSuggested

boolean

Indicates if there was a suggested change to marginLeft.

marginRightSuggested

boolean

Indicates if there was a suggested change to marginRight.

marginTopSuggested

boolean

Indicates if there was a suggested change to marginTop.

marginBottomSuggested

boolean

Indicates if there was a suggested change to marginBottom.

linkedContentReferenceSuggestionState

object (LinkedContentReferenceSuggestionState)

A mask that indicates which of the fields in linkedContentReference have been changed in this suggestion.

EmbeddedDrawingPropertiesSuggestionState

This type has no fields.

A mask that indicates which of the fields on the base EmbeddedDrawingProperties have been changed in this suggestion. For any field set to true, there's a new suggested value.

ImagePropertiesSuggestionState

A mask that indicates which of the fields on the base ImageProperties have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "contentUriSuggested": boolean,
  "sourceUriSuggested": boolean,
  "brightnessSuggested": boolean,
  "contrastSuggested": boolean,
  "transparencySuggested": boolean,
  "cropPropertiesSuggestionState": {
    object (CropPropertiesSuggestionState)
  },
  "angleSuggested": boolean
}
Fields
contentUriSuggested

boolean

Indicates if there was a suggested change to contentUri.

sourceUriSuggested

boolean

Indicates if there was a suggested change to [sourceUri] [google.apps.docs.v1.EmbeddedObject.source_uri].

brightnessSuggested

boolean

Indicates if there was a suggested change to [brightness] [google.apps.docs.v1.EmbeddedObject.brightness].

contrastSuggested

boolean

Indicates if there was a suggested change to [contrast] [google.apps.docs.v1.EmbeddedObject.contrast].

transparencySuggested

boolean

Indicates if there was a suggested change to [transparency] [google.apps.docs.v1.EmbeddedObject.transparency].

cropPropertiesSuggestionState

object (CropPropertiesSuggestionState)

A mask that indicates which of the fields in cropProperties have been changed in this suggestion.

angleSuggested

boolean

Indicates if there was a suggested change to [angle] [google.apps.docs.v1.EmbeddedObject.angle].

CropPropertiesSuggestionState

A mask that indicates which of the fields on the base CropProperties have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "offsetLeftSuggested": boolean,
  "offsetRightSuggested": boolean,
  "offsetTopSuggested": boolean,
  "offsetBottomSuggested": boolean,
  "angleSuggested": boolean
}
Fields
offsetLeftSuggested

boolean

Indicates if there was a suggested change to offsetLeft.

offsetRightSuggested

boolean

Indicates if there was a suggested change to offsetRight.

offsetTopSuggested

boolean

Indicates if there was a suggested change to offsetTop.

offsetBottomSuggested

boolean

Indicates if there was a suggested change to offsetBottom.

angleSuggested

boolean

Indicates if there was a suggested change to angle.

EmbeddedObjectBorderSuggestionState

A mask that indicates which of the fields on the base EmbeddedObjectBorder have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "colorSuggested": boolean,
  "widthSuggested": boolean,
  "dashStyleSuggested": boolean,
  "propertyStateSuggested": boolean
}
Fields
colorSuggested

boolean

Indicates if there was a suggested change to [color] [google.apps.docs.v1.EmbeddedBorderObject.color].

widthSuggested

boolean

Indicates if there was a suggested change to [width] [google.apps.docs.v1.EmbeddedBorderObject.width].

dashStyleSuggested

boolean

Indicates if there was a suggested change to [dashStyle] [google.apps.docs.v1.EmbeddedBorderObject.dash_style].

propertyStateSuggested

boolean

Indicates if there was a suggested change to [propertyState] [google.apps.docs.v1.EmbeddedBorderObject.property_state].

LinkedContentReferenceSuggestionState

A mask that indicates which of the fields on the base LinkedContentReference have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "sheetsChartReferenceSuggestionState": {
    object (SheetsChartReferenceSuggestionState)
  }
}
Fields
sheetsChartReferenceSuggestionState

object (SheetsChartReferenceSuggestionState)

A mask that indicates which of the fields in sheetsChartReference have been changed in this suggestion.

SheetsChartReferenceSuggestionState

A mask that indicates which of the fields on the base SheetsChartReference have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "spreadsheetIdSuggested": boolean,
  "chartIdSuggested": boolean
}
Fields
spreadsheetIdSuggested

boolean

Indicates if there was a suggested change to spreadsheetId.

chartIdSuggested

boolean

Indicates if there was a suggested change to chartId.

PositionedObject

An object that's tethered to a Paragraph and positioned relative to the beginning of the paragraph. A PositionedObject contains an EmbeddedObject such as an image.

JSON representation
{
  "objectId": string,
  "positionedObjectProperties": {
    object (PositionedObjectProperties)
  },
  "suggestedPositionedObjectPropertiesChanges": {
    string: {
      object (SuggestedPositionedObjectProperties)
    },
    ...
  },
  "suggestedInsertionId": string,
  "suggestedDeletionIds": [
    string
  ]
}
Fields
objectId

string

The ID of this positioned object.

positionedObjectProperties

object (PositionedObjectProperties)

The properties of this positioned object.

suggestedPositionedObjectPropertiesChanges

map (key: string, value: object (SuggestedPositionedObjectProperties))

The suggested changes to the positioned object properties, keyed by suggestion ID.

suggestedInsertionId

string

The suggested insertion ID. If empty, then this is not a suggested insertion.

suggestedDeletionIds[]

string

The suggested deletion IDs. If empty, then there are no suggested deletions of this content.

PositionedObjectProperties

Properties of a PositionedObject.

JSON representation
{
  "positioning": {
    object (PositionedObjectPositioning)
  },
  "embeddedObject": {
    object (EmbeddedObject)
  }
}
Fields
positioning

object (PositionedObjectPositioning)

The positioning of this positioned object relative to the newline of the Paragraph that references this positioned object.

embeddedObject

object (EmbeddedObject)

The embedded object of this positioned object.

PositionedObjectPositioning

The positioning of a PositionedObject. The positioned object is positioned relative to the beginning of the Paragraph it's tethered to.

JSON representation
{
  "layout": enum (PositionedObjectLayout),
  "leftOffset": {
    object (Dimension)
  },
  "topOffset": {
    object (Dimension)
  }
}
Fields
layout

enum (PositionedObjectLayout)

The layout of this positioned object.

leftOffset

object (Dimension)

The offset of the left edge of the positioned object relative to the beginning of the Paragraph it's tethered to. The exact positioning of the object can depend on other content in the document and the document's styling.

topOffset

object (Dimension)

The offset of the top edge of the positioned object relative to the beginning of the Paragraph it's tethered to. The exact positioning of the object can depend on other content in the document and the document's styling.

PositionedObjectLayout

The possible layouts of a [PositionedObject][google.aps.docs.v1.PositionedObject].

Enums
POSITIONED_OBJECT_LAYOUT_UNSPECIFIED The layout is unspecified.
WRAP_TEXT The text wraps around the positioned object.
BREAK_LEFT Breaks text such that the positioned object is on the left and text is on the right.
BREAK_RIGHT Breaks text such that the positioned object is on the right and text is on the left.
BREAK_LEFT_RIGHT Breaks text such that there's no text on the left or right of the positioned object.
IN_FRONT_OF_TEXT The positioned object is in front of the text.
BEHIND_TEXT The positioned object is behind the text.

SuggestedPositionedObjectProperties

A suggested change to PositionedObjectProperties.

JSON representation
{
  "positionedObjectProperties": {
    object (PositionedObjectProperties)
  },
  "positionedObjectPropertiesSuggestionState": {
    object (PositionedObjectPropertiesSuggestionState)
  }
}
Fields
positionedObjectProperties

object (PositionedObjectProperties)

A PositionedObjectProperties that only includes the changes made in this suggestion. This can be used along with the positionedObjectPropertiesSuggestionState to see which fields have changed and their new values.

positionedObjectPropertiesSuggestionState

object (PositionedObjectPropertiesSuggestionState)

A mask that indicates which of the fields on the base PositionedObjectProperties have been changed in this suggestion.

PositionedObjectPropertiesSuggestionState

A mask that indicates which of the fields on the base PositionedObjectProperties have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "positioningSuggestionState": {
    object (PositionedObjectPositioningSuggestionState)
  },
  "embeddedObjectSuggestionState": {
    object (EmbeddedObjectSuggestionState)
  }
}
Fields
positioningSuggestionState

object (PositionedObjectPositioningSuggestionState)

A mask that indicates which of the fields in positioning have been changed in this suggestion.

embeddedObjectSuggestionState

object (EmbeddedObjectSuggestionState)

A mask that indicates which of the fields in embeddedObject have been changed in this suggestion.

PositionedObjectPositioningSuggestionState

A mask that indicates which of the fields on the base PositionedObjectPositioning have been changed in this suggestion. For any field set to true, there's a new suggested value.

JSON representation
{
  "layoutSuggested": boolean,
  "leftOffsetSuggested": boolean,
  "topOffsetSuggested": boolean
}
Fields
layoutSuggested

boolean

Indicates if there was a suggested change to layout.

leftOffsetSuggested

boolean

Indicates if there was a suggested change to leftOffset.

topOffsetSuggested

boolean

Indicates if there was a suggested change to topOffset.

Methods

batchUpdate

Applies one or more updates to the document.

create

Creates a blank document using the title given in the request.

get

Gets the latest version of the specified document.