{"note":"OpenAPI conversion -- returning structured metadata","name":"google-docs","description":"Google Docs API","version":"v1","base_url":"https://docs.googleapis.com/","endpoints":3,"raw":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Google Docs API\n@base https://docs.googleapis.com/\n@version v1\n@auth OAuth2 | OAuth2\n@endpoints 3\n@toc documents(3)\n\n@endpoint POST /v1/documents\n@desc Creates a blank document using the title given in the request. Other fields in the request, including any provided content, are ignored. Returns the created document.\n@optional {body: map{content: [map]} # The document body. The body typically contains the full document contents except for headers, footers, and footnotes., documentId: str # Output only. The ID of the document., documentStyle: map{background: map, defaultFooterId: str, defaultHeaderId: str, evenPageFooterId: str, evenPageHeaderId: str, firstPageFooterId: str, firstPageHeaderId: str, marginBottom: map, marginFooter: map, marginHeader: map, marginLeft: map, marginRight: map, marginTop: map, pageNumberStart: int(int32), pageSize: map, useCustomHeaderFooterMargins: bool, useEvenPageHeaderFooter: bool, useFirstPageHeaderFooter: bool} # The style of the document., footers: map # Output only. The footers in the document, keyed by footer ID., footnotes: map # Output only. The footnotes in the document, keyed by footnote ID., headers: map # Output only. The headers in the document, keyed by header ID., inlineObjects: map # Output only. The inline objects in the document, keyed by object ID., lists: map # Output only. The lists in the document, keyed by list ID., namedRanges: map # Output only. The named ranges in the document, keyed by name., namedStyles: map{styles: [map]} # The named styles. Paragraphs in the document can inherit their TextStyle and ParagraphStyle from these named styles., positionedObjects: map # Output only. The positioned objects in the document, keyed by object ID., revisionId: str # 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., suggestedDocumentStyleChanges: map # Output only. The suggested changes to the style of the document, keyed by suggestion ID., suggestedNamedStylesChanges: map # Output only. The suggested changes to the named styles of the document, keyed by suggestion ID., suggestionsViewMode: str(DEFAULT_FOR_CURRENT_ACCESS/SUGGESTIONS_INLINE/PREVIEW_SUGGESTIONS_ACCEPTED/PREVIEW_WITHOUT_SUGGESTIONS) # 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., title: str # The title of the document.}\n@returns(200) {body: map{content: [map]}, documentId: str, documentStyle: map{background: map{color: map{color: map}}, defaultFooterId: str, defaultHeaderId: str, evenPageFooterId: str, evenPageHeaderId: str, firstPageFooterId: str, firstPageHeaderId: str, marginBottom: map{magnitude: num(double), unit: str}, marginFooter: map{magnitude: num(double), unit: str}, marginHeader: map{magnitude: num(double), unit: str}, marginLeft: map{magnitude: num(double), unit: str}, marginRight: map{magnitude: num(double), unit: str}, marginTop: map{magnitude: num(double), unit: str}, pageNumberStart: int(int32), pageSize: map{height: map{magnitude: num(double), unit: str}, width: map{magnitude: num(double), unit: str}}, useCustomHeaderFooterMargins: bool, useEvenPageHeaderFooter: bool, useFirstPageHeaderFooter: bool}, footers: map, footnotes: map, headers: map, inlineObjects: map, lists: map, namedRanges: map, namedStyles: map{styles: [map]}, positionedObjects: map, revisionId: str, suggestedDocumentStyleChanges: map, suggestedNamedStylesChanges: map, suggestionsViewMode: str, title: str} # Successful response\n\n@endpoint GET /v1/documents/{documentId}\n@desc Gets the latest version of the specified document.\n@required {documentId: str # The ID of the document to retrieve.}\n@optional {suggestionsViewMode: str(DEFAULT_FOR_CURRENT_ACCESS/SUGGESTIONS_INLINE/PREVIEW_SUGGESTIONS_ACCEPTED/PREVIEW_WITHOUT_SUGGESTIONS) # The suggestions view mode to apply to the document. This allows viewing the document with all suggestions inline, accepted or rejected. If one is not specified, DEFAULT_FOR_CURRENT_ACCESS is used.}\n@returns(200) {body: map{content: [map]}, documentId: str, documentStyle: map{background: map{color: map{color: map}}, defaultFooterId: str, defaultHeaderId: str, evenPageFooterId: str, evenPageHeaderId: str, firstPageFooterId: str, firstPageHeaderId: str, marginBottom: map{magnitude: num(double), unit: str}, marginFooter: map{magnitude: num(double), unit: str}, marginHeader: map{magnitude: num(double), unit: str}, marginLeft: map{magnitude: num(double), unit: str}, marginRight: map{magnitude: num(double), unit: str}, marginTop: map{magnitude: num(double), unit: str}, pageNumberStart: int(int32), pageSize: map{height: map{magnitude: num(double), unit: str}, width: map{magnitude: num(double), unit: str}}, useCustomHeaderFooterMargins: bool, useEvenPageHeaderFooter: bool, useFirstPageHeaderFooter: bool}, footers: map, footnotes: map, headers: map, inlineObjects: map, lists: map, namedRanges: map, namedStyles: map{styles: [map]}, positionedObjects: map, revisionId: str, suggestedDocumentStyleChanges: map, suggestedNamedStylesChanges: map, suggestionsViewMode: str, title: str} # Successful response\n\n@endpoint POST /v1/documents/{documentId}:batchUpdate\n@desc Applies one or more updates to the document. Each request is validated before being applied. If any request is not valid, then the entire request will fail and nothing will be applied. Some requests have replies to give you some information about how they are applied. Other requests do not need to return information; these each return an empty reply. The order of replies matches that of the requests. For example, suppose you call batchUpdate with four updates, and only the third one returns information. The response would have two empty replies, the reply to the third request, and another empty reply, in that order. Because other users may be editing the document, the document might not exactly reflect your changes: your changes may be altered with respect to collaborator changes. If there are no collaborators, the document should reflect your changes. In any case, the updates in your request are guaranteed to be applied together atomically.\n@required {documentId: str # The ID of the document to update.}\n@optional {requests: [map{createFooter: map, createFootnote: map, createHeader: map, createNamedRange: map, createParagraphBullets: map, deleteContentRange: map, deleteFooter: map, deleteHeader: map, deleteNamedRange: map, deleteParagraphBullets: map, deletePositionedObject: map, deleteTableColumn: map, deleteTableRow: map, insertInlineImage: map, insertPageBreak: map, insertSectionBreak: map, insertTable: map, insertTableColumn: map, insertTableRow: map, insertText: map, mergeTableCells: map, pinTableHeaderRows: map, replaceAllText: map, replaceImage: map, replaceNamedRangeContent: map, unmergeTableCells: map, updateDocumentStyle: map, updateParagraphStyle: map, updateSectionStyle: map, updateTableCellStyle: map, updateTableColumnProperties: map, updateTableRowStyle: map, updateTextStyle: map}] # A list of updates to apply to the document., writeControl: map{requiredRevisionId: str, targetRevisionId: str} # Provides control over how write requests are executed.}\n@returns(200) {documentId: str, replies: [map], writeControl: map{requiredRevisionId: str, targetRevisionId: str}} # Successful response\n\n@end\n"}