The Google API surface

July 12, 2026 · View on GitHub

Every method Google publishes for the APIs this server targets, and whether we expose it — plus the APIs we do not target yet, so you can see what is on the table and ask for it. Descriptions are Google's own, quoted verbatim from the Discovery documents — the same specification the client is generated from. They are not paraphrased.

Missing something? Click Request on the method. It opens a pre-filled issue. Read API coverage first — it explains what makes a request persuasive.

60 of 233 methods exposed (26%) across the 7 APIs we target.

APIMCP toolExposed
calendarmanage_calendar7 / 3818%
docsmanage_docs3 / 3100%
drivemanage_drive14 / 6422%
gmailmanage_email9 / 7911%
meetmanage_meet10 / 1856%
sheetsmanage_sheets8 / 1747%
tasksmanage_tasks9 / 1464%

Plus 89 methods across 4 APIs we do not expose yet — see Not targeted yet below.

APIMethods
chatThe Google Chat API lets you build Chat apps to integrate your services with Google Chat and manage Chat resources such as spaces, members, and messages50
formsReads and writes Google Forms and responses10
peopleProvides access to information about profiles and contacts24
slidesReads and writes Google Slides presentations5

calendar

manage_calendar — 7 of 38 methods exposed. Google Discovery: calendar:v3.

MethodStatus
acl.delete
DELETE
Deletes an access control rule.Request
acl.get
GET
Returns an access control rule.Request
acl.insert
POST
Creates an access control rule.Request
acl.list
GET
Returns the rules in the access control list for the calendar.Request
acl.patch
PATCH
Updates an access control rule. This method supports patch semantics.Request
acl.update
PUT
Updates an access control rule.Request
acl.watch
POST
Watch for changes to ACL resources.Request
calendarList.delete
DELETE
Removes a calendar from the user's calendar list.Request
calendarList.get
GET
Returns a calendar from the user's calendar list.Request
calendarList.insert
POST
Inserts an existing calendar into the user's calendar list.Request
calendarList.list
GET
Returns the calendars on the user's calendar list.manage_calendar calendars
calendarList.patch
PATCH
Updates an existing calendar on the user's calendar list. This method supports patch semantics.Request
calendarList.update
PUT
Updates an existing calendar on the user's calendar list.Request
calendarList.watch
POST
Watch for changes to CalendarList resources.Request
calendars.clear
POST
Clears a primary calendar. This operation deletes all events associated with the primary calendar of an account.Request
calendars.delete
DELETE
Deletes a secondary calendar. Use calendars.clear for clearing all events on primary calendars.Request
calendars.get
GET
Returns metadata for a calendar.Request
calendars.insert
POST
Creates a secondary calendar. The authenticated user for the request is made the data owner of the new calendar. Note: We recommend to authenticate as the intended data owner of the calendar. You can use domain-wide delegation of authority to allow applications to act on behalf of a specific user. Don't use a service account for authentication. If you use a service account for authentication, the service account is the data owner, which can lead to unexpected behavior. For example, if a service account is the data owner, data ownership cannot be transferred.Request
calendars.patch
PATCH
Updates metadata for a calendar. This method supports patch semantics.Request
calendars.transferOwnership
POST
Transfers a secondary calendar between users within a Google Workspace organization. Requires user authentication with Manage Calendars administrator privilege, and one of the following authorization scopes: - https://www.googleapis.com/auth/calendar - https://www.googleapis.com/auth/calendar.calendars In the request, set useAdminAccess to true. The secondary calendar must be active to be transferred. Transferring disabled or deleted calendars isn't supported.Request
calendars.update
PUT
Updates metadata for a calendar.Request
channels.stop
POST
Stop watching resources through this channelRequest
colors.get
GET
Returns the color definitions for calendars and events.Request
events.delete
DELETE
Deletes an event.manage_calendar delete
events.get
GET
Returns an event based on its Google Calendar ID. To retrieve an event using its iCalendar ID, call the events.list method using the iCalUID parameter.manage_calendar get
events.import
POST
Imports an event. This operation is used to add a private copy of an existing event to a calendar. Only events with an eventType of default may be imported. Deprecated behavior: If a non-default event is imported, its type will be changed to default and any event-type-specific properties it may have will be dropped.Request
events.insert
POST
Creates an event.Request
events.instances
GET
Returns instances of the specified recurring event.Request
events.list
GET
Returns events on the specified calendar.manage_calendar list
events.move
POST
Moves an event to another calendar, i.e. changes an event's organizer. Note that only default events can be moved; birthday, focusTime, fromGmail, outOfOffice and workingLocation events cannot be moved.Request
events.patch
PATCH
Updates an event. This method supports patch semantics.manage_calendar update
events.quickAdd
POST
Creates an event based on a simple text string.manage_calendar quickAdd
events.update
PUT
Updates an event.Request
events.watch
POST
Watch for changes to Events resources.Request
freebusy.query
POST
Returns free/busy information for a set of calendars.manage_calendar freebusy
settings.get
GET
Returns a single user setting.Request
settings.list
GET
Returns all user settings for the authenticated user.Request
settings.watch
POST
Watch for changes to Settings resources.Request

docs

manage_docs — 3 of 3 methods exposed. Google Discovery: docs:v1.

MethodStatus
documents.batchUpdate
POST
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.manage_docs write, insertText, replaceText
documents.create
POST
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.manage_docs create
documents.get
GET
Gets the latest version of the specified document.manage_docs get

drive

manage_drive — 14 of 64 methods exposed. Google Discovery: drive:v3.

MethodStatus
about.get
GET
Gets information about the user, the user's Drive, and system capabilities. For more information, see Return user info. Required: The fields parameter must be set. To return the exact fields you need, see Return specific fields.Request
accessproposals.get
GET
Retrieves an access proposal by ID. For more information, see Manage pending access proposals.Request
accessproposals.list
GET
List the access proposals on a file. For more information, see Manage pending access proposals. Note: Only approvers are able to list access proposals on a file. If the user isn't an approver, a 403 error is returned.Request
accessproposals.resolve
POST
Approves or denies an access proposal. For more information, see Manage pending access proposals.Request
approvals.approve
POST
Approves an approval. For more information, see Manage approvals. This is used to update the ReviewerResponse of the requesting user with a Response of APPROVED. If this is the last required reviewer response, this also completes the approval and sets the approval Status to APPROVED.Request
approvals.cancel
POST
Cancels an approval. For more information, see Manage approvals. Updates the approval Status to CANCELLED. This can be called by any user with the writer permission on the file while the approval Status is IN_PROGRESS.Request
approvals.comment
POST
Comments on an approval. For more information, see Manage approvals. This sends a notification to both the initiator and the reviewers. Additionally, a message is also added to the approval activity log.Request
approvals.decline
POST
Declines an approval. For more information, see Manage approvals. This is used to update the ReviewerResponse of the requesting user with a Response of DECLINED. This also completes the approval and sets the approval Status to DECLINED.Request
approvals.get
GET
Gets an approval by ID. For more information, see Manage approvals.Request
approvals.list
GET
Lists the approvals on a file. For more information, see Manage approvals.Request
approvals.reassign
POST
Reassigns the reviewers on an approval. For more information, see Manage approvals. Adds or replaces reviewers in the ReviewerResponse of the approval. This can be called by any user with the writer permission on the file while the approval Status is IN_PROGRESS and the Response for the reviewer being reassigned is NO_RESPONSE. A user with the reader permission can only reassign an approval that's assigned to themselves. Removing a reviewer isn't allowed.Request
approvals.start
POST
Starts an approval on a file. For more information, see Manage approvals.Request
apps.get
GET
Gets a specific app. For more information, see Return user info.Request
apps.list
GET
Lists a user's installed apps. For more information, see Return user info.Request
changes.getStartPageToken
GET
Gets the starting pageToken for listing future changes. For more information, see Retrieve changes.Request
changes.list
GET
Lists the changes for a user or shared drive. For more information, see Retrieve changes.Request
changes.watch
POST
Subscribes to changes for a user. For more information, see Notifications for resource changes.Request
channels.stop
POST
Stops watching resources through this channel. For more information, see Notifications for resource changes.Request
comments.create
POST
Creates a comment on a file. For more information, see Manage comments and replies. Required: The fields parameter must be set. To return the exact fields you need, see Return specific fields.manage_drive addComment
comments.delete
DELETE
Deletes a comment. For more information, see Manage comments and replies.Request
comments.get
GET
Gets a comment by ID. For more information, see Manage comments and replies. Required: The fields parameter must be set. To return the exact fields you need, see Return specific fields.manage_drive getComment
comments.list
GET
Lists a file's comments. For more information, see Manage comments and replies. Required: The fields parameter must be set. To return the exact fields you need, see Return specific fields.manage_drive listComments
comments.update
PATCH
Updates a comment with patch semantics. For more information, see Manage comments and replies. Required: The fields parameter must be set. To return the exact fields you need, see Return specific fields.manage_drive resolveComment
drives.create
POST
Creates a shared drive. For more information, see Manage shared drives.Request
drives.delete
DELETE
Permanently deletes a shared drive for which the user is an organizer. The shared drive cannot contain any untrashed items. For more information, see Manage shared drives.Request
drives.get
GET
Gets a shared drive's metadata by ID. For more information, see Manage shared drives.Request
drives.hide
POST
Hides a shared drive from the default view. For more information, see Manage shared drives.Request
drives.list
GET
Lists the user's shared drives. This method accepts the q parameter, which is a search query combining one or more search terms. For more information, see the Search for shared drives guide.Request
drives.unhide
POST
Restores a shared drive to the default view. For more information, see Manage shared drives.Request
drives.update
PATCH
Updates the metadata for a shared drive. For more information, see Manage shared drives.Request
files.copy
POST
Creates a copy of a file and applies any requested updates with patch semantics. For more information, see Create and manage files.manage_drive copy
files.create
POST
Creates a file. For more information, see Create and manage files. This method supports an /upload URI and accepts uploaded media with the following characteristics: - Maximum file size: 5,120 GB - Accepted Media MIME types: */* (Specify a valid MIME type, rather than the literal */* value. The literal */* is only used to indicate that any valid MIME type can be uploaded. For more information, see Google Workspace and Google Drive supported MIME types.) For more information on uploading files, see Upload file data. Apps creating shortcuts with the create method must specify the MIME type application/vnd.google-apps.shortcut. Apps should specify a file extension in the name property when inserting files with the API. For example, an operation to insert a JPEG file should specify something like "name": "cat.jpg" in the metadata. Subsequent GET requests include the read-only fileExtension property populated with the extension originally specified in the name property. When a Google Drive user requests to download a file, or when the file is downloaded through the sync client, Drive builds a full filename (with extension) based on the name. In cases where the extension is missing, Drive attempts to determine the extension based on the file's MIME type.Request
files.delete
DELETE
Permanently deletes a file owned by the user without moving it to the trash. For more information, see Trash or delete files and folders. If the file belongs to a shared drive, the user must be an organizer on the parent folder. If the target is a folder, all descendants owned by the user are also deleted.manage_drive delete
files.download
POST
Downloads the content of a file. For more information, see Download and export files. Operations are valid for 24 hours from the time of creation.Request
files.emptyTrash
DELETE
Permanently deletes all of the user's trashed files. For more information, see Trash or delete files and folders.Request
files.export
GET
Exports a Google Workspace document to the requested MIME type and returns exported byte content. For more information, see Download and export files. Note that the exported content is limited to 10 MB.manage_drive export
files.generateCseToken
GET
Generates a CSE token which can be used to create or update CSE files.Request
files.generateIds
GET
Generates a set of file IDs which can be provided in create or copy requests. For more information, see Create and manage files.Request
files.get
GET
Gets a file's metadata or content by ID. For more information, see Search for files and folders. If you provide the URL parameter alt=media, then the response includes the file contents in the response body. Downloading content with alt=media only works if the file is stored in Drive. To download Google Docs, Sheets, and Slides use files.export instead. For more information, see Download and export files.manage_drive get, viewImage, download
files.list
GET
Lists the user's files. For more information, see Search for files and folders. This method accepts the q parameter, which is a search query combining one or more search terms. This method returns all files by default, including trashed files. If you don't want trashed files to appear in the list, use the trashed=false query parameter to remove trashed files from the results.manage_drive search
files.listLabels
GET
Lists the labels on a file. For more information, see List labels on a file.Request
files.modifyLabels
POST
Modifies the set of labels applied to a file. For more information, see Set a label field on a file. Returns a list of the labels that were added or modified.Request
files.update
PATCH
Updates a file's metadata, content, or both. When calling this method, only populate fields in the request that you want to modify. When updating fields, some fields might be changed automatically, such as modifiedDate. This method supports patch semantics. This method supports an /upload URI and accepts uploaded media with the following characteristics: - Maximum file size: 5,120 GB - Accepted Media MIME types: */* (Specify a valid MIME type, rather than the literal */* value. The literal */* is only used to indicate that any valid MIME type can be uploaded. For more information, see Google Workspace and Google Drive supported MIME types.) For more information on uploading files, see Upload file data.manage_drive update
files.watch
POST
Subscribes to changes to a file. For more information, see Notifications for resource changes.Request
operations.get
GET
Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.Request
permissions.create
POST
Creates a permission for a file or shared drive. For more information, see Share files, folders, and drives. Warning: Concurrent permissions operations on the same file aren't supported; only the last update is applied.manage_drive share
permissions.delete
DELETE
Deletes a permission. For more information, see Share files, folders, and drives. Warning: Concurrent permissions operations on the same file aren't supported; only the last update is applied.manage_drive unshare
permissions.get
GET
Gets a permission by ID. For more information, see Share files, folders, and drives.Request
permissions.list
GET
Lists a file's or shared drive's permissions. For more information, see Share files, folders, and drives.manage_drive listPermissions
permissions.update
PATCH
Updates a permission with patch semantics. For more information, see Share files, folders, and drives. Warning: Concurrent permissions operations on the same file aren't supported; only the last update is applied.Request
replies.create
POST
Creates a reply to a comment. For more information, see Manage comments and replies.manage_drive replyToComment
replies.delete
DELETE
Deletes a reply. For more information, see Manage comments and replies.Request
replies.get
GET
Gets a reply by ID. For more information, see Manage comments and replies.Request
replies.list
GET
Lists a comment's replies. For more information, see Manage comments and replies.Request
replies.update
PATCH
Updates a reply with patch semantics. For more information, see Manage comments and replies.Request
revisions.delete
DELETE
Permanently deletes a file version. You can only delete revisions for files with binary content in Google Drive, like images or videos. Revisions for other files, like Google Docs or Sheets, and the last remaining file version can't be deleted. For more information, see Manage file revisions.Request
revisions.get
GET
Gets a revision's metadata or content by ID. For more information, see Manage file revisions.Request
revisions.list
GET
Lists a file's revisions. For more information, see Manage file revisions. Important: The list of revisions returned by this method might be incomplete for files with a large revision history, including frequently edited Google Docs, Sheets, and Slides. Older revisions might be omitted from the response, meaning the first revision returned may not be the oldest existing revision. The revision history visible in the Workspace editor user interface might be more complete than the list returned by the API.Request
revisions.update
PATCH
Updates a revision with patch semantics. For more information, see Manage file revisions.Request
teamdrives.create
POST
Deprecated: Use drives.create instead.Request
teamdrives.delete
DELETE
Deprecated: Use drives.delete instead.Request
teamdrives.get
GET
Deprecated: Use drives.get instead.Request
teamdrives.list
GET
Deprecated: Use drives.list instead.Request
teamdrives.update
PATCH
Deprecated: Use drives.update instead.Request

gmail

manage_email — 9 of 79 methods exposed. Google Discovery: gmail:v1.

MethodStatus
users.drafts.create
POST
Creates a draft with the DRAFT label. For more information, see Create and send draft emails.Request
users.drafts.delete
DELETE
Immediately and permanently deletes the specified draft. Does not simply trash it. For more information, see Create and send draft emails.Request
users.drafts.get
GET
Gets the specified draft. For more information, see Create and send draft emails.Request
users.drafts.list
GET
Lists the drafts in the user's mailbox. For more information, see Create and send draft emails.Request
users.drafts.send
POST
Sends the specified, existing draft to the recipients in the To, Cc, and Bcc headers. For more information, see Create and send draft emails.Request
users.drafts.update
PUT
Replaces a draft's content. For more information, see Create and send draft emails.Request
users.getProfile
GET
Gets the current user's Gmail profile.Request
users.history.list
GET
Lists the history of all changes to the given mailbox. History results are returned in chronological order (increasing historyId). For more information, see Synchronize clients with Gmail.Request
users.labels.create
POST
Creates a label. For more information, see Manage labels.Request
users.labels.delete
DELETE
Immediately and permanently deletes the specified label and removes it from any messages and threads that it's applied to. For more information, see Manage labels.Request
users.labels.get
GET
Gets the specified label. For more information, see Manage labels.Request
users.labels.list
GET
Lists all labels in the user's mailbox. For more information, see Manage labels.manage_email labels
users.labels.patch
PATCH
Patch the specified label. For more information, see Manage labels.Request
users.labels.update
PUT
Updates the specified label. For more information, see Manage labels.Request
users.messages.attachments.get
GET
Gets the specified message attachment.manage_email getAttachment, viewAttachment
users.messages.batchDelete
POST
Deletes many messages by message ID. Provides no guarantees that messages were not already deleted or even existed at all.Request
users.messages.batchModify
POST
Modifies the labels and the Classification Label values on the specified messages. For administrators modifying messages for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.modify.restricted scope.Request
users.messages.delete
DELETE
Immediately and permanently deletes the specified message. This operation cannot be undone. Prefer messages.trash instead.Request
users.messages.get
GET
Gets the specified message.manage_email read
users.messages.import
POST
Imports a message into only this user's mailbox, with standard email delivery scanning and classification similar to receiving via SMTP. This method doesn't perform SPF checks, so it might not work for some spam messages, such as those attempting to perform domain spoofing. This method does not send a message. Note that the maximum size of the message is 150 MB.Request
users.messages.insert
POST
Directly inserts a message into only this user's mailbox similar to IMAP APPEND, bypassing most scanning and classification. Does not send a message. For more information, see Create and send email messages.Request
users.messages.list
GET
Lists the messages in the user's mailbox. For more information, see List Gmail messages.manage_email search, triage
users.messages.modify
POST
Modifies the labels and the Classification Label values on the specified message. For administrators modifying message for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.modify.restricted scope.manage_email modify
users.messages.send
POST
Sends the specified message to the recipients in the To, Cc, and Bcc headers. For more information, see Create and send email messages.Request
users.messages.trash
POST
Moves the specified message to the trash.manage_email trash
users.messages.untrash
POST
Removes the specified message from the trash.manage_email untrash
users.settings.cse.identities.create
POST
Creates and configures a client-side encryption identity that's authorized to send mail from the user account. Google publishes the S/MIME certificate to a shared domain-wide directory so that people within a Google Workspace organization can encrypt and send mail to the identity. For administrators managing identities and keypairs for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.settings.basic scope. For users managing their own identities and keypairs, requests require hardware key encryption turned on and configured.Request
users.settings.cse.identities.delete
DELETE
Deletes a client-side encryption identity. The authenticated user can no longer use the identity to send encrypted messages. You cannot restore the identity after you delete it. Instead, use the CreateCseIdentity method to create another identity with the same configuration. For administrators managing identities and keypairs for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.settings.basic scope. For users managing their own identities and keypairs, requests require hardware key encryption turned on and configured.Request
users.settings.cse.identities.get
GET
Retrieves a client-side encryption identity configuration. For administrators managing identities and keypairs for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.settings.basic scope. For users managing their own identities and keypairs, requests require hardware key encryption turned on and configured.Request
users.settings.cse.identities.list
GET
Lists the client-side encrypted identities for an authenticated user. For administrators managing identities and keypairs for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.settings.basic scope. For users managing their own identities and keypairs, requests require hardware key encryption turned on and configured.Request
users.settings.cse.identities.patch
PATCH
Associates a different key pair with an existing client-side encryption identity. The updated key pair must validate against Google's S/MIME certificate profiles. For administrators managing identities and keypairs for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.settings.basic scope. For users managing their own identities and keypairs, requests require hardware key encryption turned on and configured.Request
users.settings.cse.keypairs.create
POST
Creates and uploads a client-side encryption S/MIME public key certificate chain and private key metadata for the authenticated user. For administrators managing identities and keypairs for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.settings.basic scope. For users managing their own identities and keypairs, requests require hardware key encryption turned on and configured.Request
users.settings.cse.keypairs.disable
POST
Turns off a client-side encryption key pair. The authenticated user can no longer use the key pair to decrypt incoming CSE message texts or sign outgoing CSE mail. To regain access, use the EnableCseKeyPair to turn on the key pair. After 30 days, you can permanently delete the key pair by using the ObliterateCseKeyPair method. For administrators managing identities and keypairs for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.settings.basic scope. For users managing their own identities and keypairs, requests require hardware key encryption turned on and configured.Request
users.settings.cse.keypairs.enable
POST
Turns on a client-side encryption key pair that was turned off. The key pair becomes active again for any associated client-side encryption identities. For administrators managing identities and keypairs for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.settings.basic scope. For users managing their own identities and keypairs, requests require hardware key encryption turned on and configured.Request
users.settings.cse.keypairs.get
GET
Retrieves an existing client-side encryption key pair. For administrators managing identities and keypairs for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.settings.basic scope. For users managing their own identities and keypairs, requests require hardware key encryption turned on and configured.Request
users.settings.cse.keypairs.list
GET
Lists client-side encryption key pairs for an authenticated user. For administrators managing identities and keypairs for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.settings.basic scope. For users managing their own identities and keypairs, requests require hardware key encryption turned on and configured.Request
users.settings.cse.keypairs.obliterate
POST
Deletes a client-side encryption key pair permanently and immediately. You can only permanently delete key pairs that have been turned off for more than 30 days. To turn off a key pair, use the DisableCseKeyPair method. Gmail can't restore or decrypt any messages that were encrypted by an obliterated key. Authenticated users and Google Workspace administrators lose access to reading the encrypted messages. For administrators managing identities and keypairs for users in their organization, requests require authorization with a service account that has domain-wide delegation authority to impersonate users with the https://www.googleapis.com/auth/gmail.settings.basic scope. For users managing their own identities and keypairs, requests require hardware key encryption turned on and configured.Request
users.settings.delegates.create
POST
Adds a delegate with its verification status set directly to accepted, without sending any verification email. The delegate user must be a member of the same Google Workspace organization as the delegator user. For more information, see Manage delegates. Gmail imposes limitations on the number of delegates and delegators each user in a Google Workspace organization can have. These limits depend on your organization, but in general each user can have up to 25 delegates and up to 10 delegators. A delegate user must be referred to by their primary email address, and not an email alias. When a new delegate is created, there may be up to a one minute delay before the new delegate is available for use. This method is only available to service account clients that have been delegated domain-wide authority.Request
users.settings.delegates.delete
DELETE
Removes the specified delegate (which can be of any verification status), and revokes any verification that may have been required for using it. For more information, see Manage delegates. A delegate user must be referred to by their primary email address, and not an email alias. This method is only available to service account clients that have been delegated domain-wide authority.Request
users.settings.delegates.get
GET
Gets the specified delegate. For more information, see Manage delegates. A delegate user must be referred to by their primary email address, and not an email alias. This method is only available to service account clients that have been delegated domain-wide authority.Request
users.settings.delegates.list
GET
Lists the delegates for the specified account. For more information, see Manage delegates. This method is only available to service account clients that have been delegated domain-wide authority.Request
users.settings.filters.create
POST
Creates a filter. Note: you can only create a maximum of 1,000 filters. For more information, see Manage Gmail filters.Request
users.settings.filters.delete
DELETE
Immediately and permanently deletes the specified filter. For more information, see Manage Gmail filters.Request
users.settings.filters.get
GET
Gets a filter. For more information, see Manage Gmail filters.Request
users.settings.filters.list
GET
Lists the message filters of a Gmail user. For more information, see Manage Gmail filters.Request
users.settings.forwardingAddresses.create
POST
Creates a forwarding address. If ownership verification is required, a message will be sent to the recipient and the resource's verification status will be set to pending; otherwise, the resource will be created with verification status set to accepted. For more information, see Manage email forwarding. This method is only available to service account clients that have been delegated domain-wide authority.Request
users.settings.forwardingAddresses.delete
DELETE
Deletes the specified forwarding address and revokes any verification that may have been required. For more information, see Manage email forwarding. This method is only available to service account clients that have been delegated domain-wide authority.Request
users.settings.forwardingAddresses.get
GET
Gets the specified forwarding address. For more information, see Manage email forwarding.Request
users.settings.forwardingAddresses.list
GET
Lists the forwarding addresses for the specified account. For more information, see Manage email forwarding.Request
users.settings.getAutoForwarding
GET
Gets the auto-forwarding setting for the specified account. For more information, see Manage email forwarding.Request
users.settings.getImap
GET
Gets IMAP settings. For more information, see Configure POP and IMAP settings with the Gmail API.Request
users.settings.getLanguage
GET
Gets language settings. For more information, see Manage language settings.Request
users.settings.getPop
GET
Gets POP settings. For more information, see Configure POP and IMAP settings with the Gmail API.Request
users.settings.getVacation
GET
Gets vacation responder settings. For more information, see Manage vacation settings with the Gmail API.Request
users.settings.sendAs.create
POST
Creates a custom "from" send-as alias. If an SMTP MSA is specified, Gmail will attempt to connect to the SMTP service to validate the configuration before creating the alias. If ownership verification is required for the alias, a message will be sent to the email address and the resource's verification status will be set to pending; otherwise, the resource will be created with verification status set to accepted. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias. For more information, see Manage aliases and signatures with the Gmail API. This method is only available to service account clients that have been delegated domain-wide authority.Request
users.settings.sendAs.delete
DELETE
Deletes the specified send-as alias. Revokes any verification that may have been required for using it. For more information, see Manage aliases and signatures with the Gmail API. This method is only available to service account clients that have been delegated domain-wide authority.Request
users.settings.sendAs.get
GET
Gets the specified send-as alias. Fails with an HTTP 404 error if the specified address is not a member of the collection. For more information, see Manage aliases and signatures with the Gmail API.Request
users.settings.sendAs.list
GET
Lists the send-as aliases for the specified account. The result includes the primary send-as address associated with the account as well as any custom "from" aliases. For more information, see Manage aliases and signatures with the Gmail API.Request
users.settings.sendAs.patch
PATCH
Patch the specified send-as alias. For more information, see Manage aliases and signatures with the Gmail API.Request
users.settings.sendAs.smimeInfo.delete
DELETE
Deletes the specified S/MIME config for the specified send-as alias. For more information, see Manage S/MIME certificates with the Gmail API.Request
users.settings.sendAs.smimeInfo.get
GET
Gets the specified S/MIME config for the specified send-as alias. For more information, see Manage S/MIME certificates with the Gmail API.Request
users.settings.sendAs.smimeInfo.insert
POST
Insert (upload) the given S/MIME config for the specified send-as alias. Note that pkcs12 format is required for the key. For more information, see Manage S/MIME certificates with the Gmail API.Request
users.settings.sendAs.smimeInfo.list
GET
Lists S/MIME configs for the specified send-as alias. For more information, see Manage S/MIME certificates with the Gmail API.Request
users.settings.sendAs.smimeInfo.setDefault
POST
Sets the default S/MIME config for the specified send-as alias. For more information, see Manage S/MIME certificates with the Gmail API.Request
users.settings.sendAs.update
PUT
Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias. For more information, see Manage aliases and signatures with the Gmail API. Addresses other than the primary address for the account can only be updated by service account clients that have been delegated domain-wide authority.Request
users.settings.sendAs.verify
POST
Sends a verification email to the specified send-as alias address. The verification status must be pending. For more information, see Manage aliases and signatures with the Gmail API. This method is only available to service account clients that have been delegated domain-wide authority.Request
users.settings.updateAutoForwarding
PUT
Updates the auto-forwarding setting for the specified account. A verified forwarding address must be specified when auto-forwarding is enabled. For more information, see Manage email forwarding. This method is only available to service account clients that have been delegated domain-wide authority.Request
users.settings.updateImap
PUT
Updates IMAP settings. For more information, see Configure POP and IMAP settings with the Gmail API.Request
users.settings.updateLanguage
PUT
Updates language settings. For more information, see Manage language settings. If successful, the return object contains the displayLanguage that was saved for the user, which may differ from the value passed into the request. This is because the requested displayLanguage may not be directly supported by Gmail but have a close variant that is, and so the variant may be chosen and saved instead.Request
users.settings.updatePop
PUT
Updates POP settings. For more information, see Configure POP and IMAP settings with the Gmail API.Request
users.settings.updateVacation
PUT
Updates vacation responder settings. For more information, see Manage vacation settings with the Gmail API.Request
users.stop
POST
Turn off push notification delivery for the given user mailbox. For more information, see Configure push notifications in Gmail API.Request
users.threads.delete
DELETE
Immediately and permanently deletes the specified thread. Any messages that belong to the thread are also deleted. This operation cannot be undone. Prefer threads.trash instead. For more information, see Manage threads.Request
users.threads.get
GET
Gets the specified thread. For more information, see Manage threads.manage_email getThread
users.threads.list
GET
Lists the threads in the user's mailbox. For more information, see Manage threads.manage_email threads
users.threads.modify
POST
Modifies the labels applied to the thread. This applies to all messages in the thread. For more information, see Manage threads.Request
users.threads.trash
POST
Moves the specified thread to the trash. Any messages that belong to the thread are also moved to the trash. For more information, see Manage threads.Request
users.threads.untrash
POST
Removes the specified thread from the trash. Any messages that belong to the thread are also removed from the trash. For more information, see Manage threads.Request
users.watch
POST
Set up or update a push notification watch on the given user mailbox. For more information, see Configure push notifications in Gmail API.Request

meet

manage_meet — 10 of 18 methods exposed. Google Discovery: meet:v2.

MethodStatus
conferenceRecords.get
GET
Gets a conference record by conference ID.manage_meet getConference
conferenceRecords.list
GET
Lists the conference records. By default, ordered by start time and in descending order.manage_meet listConferences
conferenceRecords.participants.get
GET
Gets a participant by participant ID.Request
conferenceRecords.participants.list
GET
Lists the participants in a conference record. By default, ordered by join time and in descending order. This API supports fields as standard parameters like every other API. However, when the fields request parameter is omitted, this API defaults to 'participants/*, next_page_token'.manage_meet listParticipants
conferenceRecords.participants.participantSessions.get
GET
Gets a participant session by participant session ID.Request
conferenceRecords.participants.participantSessions.list
GET
Lists the participant sessions of a participant in a conference record. By default, ordered by join time and in descending order. This API supports fields as standard parameters like every other API. However, when the fields request parameter is omitted this API defaults to 'participantsessions/*, next_page_token'.Request
conferenceRecords.recordings.get
GET
Gets a recording by recording ID.manage_meet getRecording
conferenceRecords.recordings.list
GET
Lists the recording resources from the conference record. By default, ordered by start time and in ascending order.manage_meet listRecordings
conferenceRecords.smartNotes.get
GET
Gets smart notes by smart note ID.manage_meet getSmartNote
conferenceRecords.smartNotes.list
GET
Lists the set of smart notes from the conference record. By default, ordered by start time and in ascending order.manage_meet listSmartNotes
conferenceRecords.transcripts.entries.get
GET
Gets a TranscriptEntry resource by entry ID. Note: The transcript entries returned by the Google Meet API might not match the transcription found in the Google Docs transcript file. This can occur when 1) we have interleaved speakers within milliseconds, or 2) the Google Docs transcript file is modified after generation.Request%20we%20have%20interleaved%20speakers%20within%20milliseconds%2C%20or%202)%20the%20Google%20Docs%20transcript%20file%20is%20modified%20after%20generation.%0A%0A%23%23%23%20What%20do%20you%20want%20to%20do%20that%20you%20can't%20do%20today%3F%0A%0A_Describe%20the%20task%2C%20not%20the%20method.%20What%20are%20you%20trying%20to%20get%20the%20agent%20to%20accomplish%3F_%0A%0A%23%23%23%20Why%20does%20an%20existing%20operation%20not%20cover%20it%3F%0A%0A_The%20server%20exposes%20a%20curated%20subset%20on%20purpose%20%E2%80%94%20more%20surface%20is%20not%20better.%20What%20did%20you%20try%2C%20and%20where%20did%20it%20fall%20short%3F_%0A&labels=enhancement)
conferenceRecords.transcripts.entries.list
GET
Lists the structured transcript entries per transcript. By default, ordered by start time and in ascending order. Note: The transcript entries returned by the Google Meet API might not match the transcription found in the Google Docs transcript file. This can occur when 1) we have interleaved speakers within milliseconds, or 2) the Google Docs transcript file is modified after generation.manage_meet listTranscriptEntries
conferenceRecords.transcripts.get
GET
Gets a transcript by transcript ID.manage_meet getTranscript
conferenceRecords.transcripts.list
GET
Lists the set of transcripts from the conference record. By default, ordered by start time and in ascending order.manage_meet listTranscripts, getFullTranscript
spaces.create
POST
Creates a space.Request
spaces.endActiveConference
POST
Ends an active conference (if there's one). For an example, see End active conference.Request
spaces.get
GET
Gets details about a meeting space. For an example, see Get a meeting space.Request
spaces.patch
PATCH
Updates details about a meeting space. For an example, see Update a meeting space.Request

sheets

manage_sheets — 8 of 17 methods exposed. Google Discovery: sheets:v4.

MethodStatus
spreadsheets.batchUpdate
POST
Applies one or more updates to the spreadsheet. 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. The replies will mirror the requests. For example, if you applied 4 updates and the 3rd one had a reply, then the response will have 2 empty replies, the actual reply, and another empty reply, in that order. Due to the collaborative nature of spreadsheets, it is not guaranteed that the spreadsheet will reflect exactly your changes after this completes, however it is guaranteed that the updates in the request will be applied together atomically. Your changes may be altered with respect to collaborator changes. If there are no collaborators, the spreadsheet should reflect your changes.manage_sheets addSheet, renameSheet, deleteSheet, duplicateSheet, renameSpreadsheet
spreadsheets.create
POST
Creates a spreadsheet, returning the newly created spreadsheet.manage_sheets create
spreadsheets.developerMetadata.get
GET
Returns the developer metadata with the specified ID. The caller must specify the spreadsheet ID and the developer metadata's unique metadataId. For more information, see Read, write, and search metadata.Request
spreadsheets.developerMetadata.search
POST
Returns all developer metadata matching the specified DataFilter. For more information, see Read, write, and search metadata. If the provided DataFilter represents a DeveloperMetadataLookup object, this will return all DeveloperMetadata entries selected by it. If the DataFilter represents a location in a spreadsheet, this will return all developer metadata associated with locations intersecting that region.Request
spreadsheets.get
GET
Returns the spreadsheet at the given ID. The caller must specify the spreadsheet ID. By default, data within grids is not returned. You can include grid data in one of 2 ways: * Specify a field mask listing your desired fields using the fields URL parameter in HTTP * Set the includeGridData URL parameter to true. If a field mask is set, the includeGridData parameter is ignored For large spreadsheets, as a best practice, retrieve only the specific spreadsheet fields that you want. To retrieve only subsets of spreadsheet data, use the ranges URL parameter. Ranges are specified using A1 notation. You can define a single cell (for example, A1) or multiple cells (for example, A1:D5). You can also get cells from other sheets within the same spreadsheet (for example, Sheet2!A1:C4) or retrieve multiple ranges at once (for example, ?ranges=A1:D5&ranges=Sheet2!A1:C4). Limiting the range returns only the portions of the spreadsheet that intersect the requested ranges.manage_sheets get
spreadsheets.getByDataFilter
POST
Returns the spreadsheet at the given ID. The caller must specify the spreadsheet ID. For more information, see Read, write, and search metadata. This method differs from GetSpreadsheet in that it allows selecting which subsets of spreadsheet data to return by specifying a dataFilters parameter. Multiple DataFilters can be specified. Specifying one or more data filters returns the portions of the spreadsheet that intersect ranges matched by any of the filters. By default, data within grids is not returned. You can include grid data in one of two ways: * Specify a field mask listing your desired fields using the fields URL parameter in HTTP. * Set the includeGridData parameter to true. If a field mask is set, the includeGridData parameter is ignored. For large spreadsheets, as a best practice, retrieve only the specific spreadsheet fields that you want.Request
spreadsheets.sheets.copyTo
POST
Copies a single sheet from a spreadsheet to another spreadsheet. Returns the properties of the newly created sheet.manage_sheets copySheetTo
spreadsheets.values.append
POST
Appends values to a spreadsheet. The input range is used to search for existing data and find a "table" within that range. Values will be appended to the next row of the table, starting with the first column of the table. See the guide and sample code for specific details of how tables are detected and data is appended. The caller must specify the spreadsheet ID, range, and a valueInputOption. The valueInputOption only controls how the input data will be added to the sheet (column-wise or row-wise), it does not influence what cell the data starts being written to.manage_sheets append
spreadsheets.values.batchClear
POST
Clears one or more ranges of values from a spreadsheet. The caller must specify the spreadsheet ID and one or more ranges. Only values are cleared -- all other properties of the cell (such as formatting and data validation) are kept.Request
spreadsheets.values.batchClearByDataFilter
POST
Clears one or more ranges of values from a spreadsheet. For more information, see Read, write, and search metadata. The caller must specify the spreadsheet ID and one or more DataFilters. Ranges matching any of the specified data filters will be cleared. Only values are cleared -- all other properties of the cell (such as formatting, data validation, etc.) are kept.Request
spreadsheets.values.batchGet
GET
Returns one or more ranges of values from a spreadsheet. The caller must specify the spreadsheet ID and one or more ranges.Request
spreadsheets.values.batchGetByDataFilter
POST
Returns one or more ranges of values that match the specified data filters. For more information, see Read, write, and search metadata. The caller must specify the spreadsheet ID and one or more DataFilters. Ranges that match any of the data filters in the request will be returned.Request
spreadsheets.values.batchUpdate
POST
Sets values in one or more ranges of a spreadsheet. The caller must specify the spreadsheet ID, a valueInputOption, and one or more ValueRanges.Request
spreadsheets.values.batchUpdateByDataFilter
POST
Sets values in one or more ranges of a spreadsheet. For more information, see Read, write, and search metadata. The caller must specify the spreadsheet ID, a valueInputOption, and one or more DataFilterValueRanges.Request
spreadsheets.values.clear
POST
Clears values from a spreadsheet. The caller must specify the spreadsheet ID and range. Only values are cleared -- all other properties of the cell (such as formatting, data validation, etc..) are kept.manage_sheets clearValues
spreadsheets.values.get
GET
Returns a range of values from a spreadsheet. The caller must specify the spreadsheet ID and a range.manage_sheets read, getValues
spreadsheets.values.update
PUT
Sets values in a range of a spreadsheet. The caller must specify the spreadsheet ID, range, and a valueInputOption.manage_sheets updateValues

tasks

manage_tasks — 9 of 14 methods exposed. Google Discovery: tasks:v1.

MethodStatus
tasklists.delete
DELETE
Deletes the authenticated user's specified task list. If the list contains assigned tasks, both the assigned tasks and the original tasks in the assignment surface (Docs, Chat Spaces) are deleted.manage_tasks deleteTaskList
tasklists.get
GET
Returns the authenticated user's specified task list.manage_tasks getTaskList
tasklists.insert
POST
Creates a new task list and adds it to the authenticated user's task lists. A user can have up to 2000 lists at a time.manage_tasks createTaskList
tasklists.list
GET
Returns all the authenticated user's task lists. A user can have up to 2000 lists at a time.manage_tasks listTaskLists
tasklists.patch
PATCH
Updates the authenticated user's specified task list. This method supports patch semantics.Request
tasklists.update
PUT
Updates the authenticated user's specified task list.Request
tasks.clear
POST
Clears all completed tasks from the specified task list. The affected tasks will be marked as 'hidden' and no longer be returned by default when retrieving all tasks for a task list.Request
tasks.delete
DELETE
Deletes the specified task from the task list. If the task is assigned, both the assigned task and the original task (in Docs, Chat Spaces) are deleted. To delete the assigned task only, navigate to the assignment surface and unassign the task from there.manage_tasks delete
tasks.get
GET
Returns the specified task.manage_tasks get
tasks.insert
POST
Creates a new task on the specified task list. Tasks assigned from Docs or Chat Spaces cannot be inserted from Tasks Public API; they can only be created by assigning them from Docs or Chat Spaces. A user can have up to 20,000 non-hidden tasks per list and up to 100,000 tasks in total at a time.manage_tasks create
tasks.list
GET
Returns all tasks in the specified task list. Doesn't return assigned tasks by default (from Docs, Chat Spaces). A user can have up to 20,000 non-hidden tasks per list and up to 100,000 tasks in total at a time.manage_tasks list
tasks.move
POST
Moves the specified task to another position in the destination task list. If the destination list is not specified, the task is moved within its current list. This can include putting it as a child task under a new parent and/or move it to a different position among its sibling tasks. A user can have up to 2,000 subtasks per task.Request
tasks.patch
PATCH
Updates the specified task. This method supports patch semantics.manage_tasks update, complete
tasks.update
PUT
Updates the specified task.Request

Not targeted yet

Google publishes these too, and this server does not touch them. They are listed here because not targeted is a decision, not a fact of nature — and it was made without you.

Nothing here is wired up, so every method carries a Request link. A request that names a task the tool cannot do today is what moves one of these from this section into the one above.

Some are cheap and some are not, and the difference is worth knowing before you ask:

  • contacts (People API) — straightforward. Ordinary OAuth scopes (contacts, contacts.readonly), works on a personal Google account, and "who is this person and how do I reach them" is a question agents ask constantly.
  • slides, forms — small, self-contained surfaces. Slides is 5 methods; Forms is 10.
  • chat (Google Chat API) — the biggest surface here and the least certain. Much of it is built for Chat apps (bots), not for acting as yourself: the scope lists are dominated by chat.bot, chat.app.* and chat.admin.*. User-credential access is a narrower path and, in places, Workspace-only — so a personal @gmail.com account may not be able to call it at all. That question would need answering with a real request before any of it is promised.

chat

Not exposed — 50 methods. Google Discovery: chat:v1.

Method
customEmojis.create
POST
Creates a custom emoji. Custom emojis are only available for Google Workspace accounts, and the administrator must turn custom emojis on for the organization. For more information, see Learn about custom emojis in Google Chat and Manage custom emoji permissions. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.customemojisRequest
customEmojis.delete
DELETE
Deletes a custom emoji. By default, users can only delete custom emoji they created. Emoji managers assigned by the administrator can delete any custom emoji in the organization. See Learn about custom emojis in Google Chat. Custom emojis are only available for Google Workspace accounts, and the administrator must turn custom emojis on for the organization. For more information, see Learn about custom emojis in Google Chat and Manage custom emoji permissions. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.customemojisRequest
customEmojis.get
GET
Returns details about a custom emoji. Custom emojis are only available for Google Workspace accounts, and the administrator must turn custom emojis on for the organization. For more information, see Learn about custom emojis in Google Chat and Manage custom emoji permissions. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.customemojis.readonly - https://www.googleapis.com/auth/chat.customemojisRequest
customEmojis.list
GET
Lists custom emojis visible to the authenticated user. Custom emojis are only available for Google Workspace accounts, and the administrator must turn custom emojis on for the organization. For more information, see Learn about custom emojis in Google Chat and Manage custom emoji permissions. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.customemojis.readonly - https://www.googleapis.com/auth/chat.customemojisRequest
media.download
GET
Downloads media. Download is supported on the URI /v1/media/{+name}?alt=media.Request
media.upload
POST
Uploads an attachment. For an example, see Upload media as a file attachment. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.messages.create - https://www.googleapis.com/auth/chat.messages - https://www.googleapis.com/auth/chat.import (import mode spaces only) You can upload attachments up to 200 MB. Certain file types aren't supported. For details, see File types blocked by Google Chat.Request
spaces.completeImport
POST
Completes the import process for the specified space and makes it visible to users. Requires user authentication and domain-wide delegation with the authorization scope: - https://www.googleapis.com/auth/chat.import For more information, see Authorize Google Chat apps to import data.Request
spaces.create
POST
Creates a space. Can be used to create a named space, or a group chat in Import mode. For an example, see Create a space. Supports the following types of authentication: - App authentication with administrator approval and one of the following authorization scopes: - https://www.googleapis.com/auth/chat.app.spaces.create - https://www.googleapis.com/auth/chat.app.spaces - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.spaces.create - https://www.googleapis.com/auth/chat.spaces - https://www.googleapis.com/auth/chat.import (import mode spaces only) When authenticating as an app, the space.customer field must be set in the request. When authenticating as an app, the Chat app is added as a member of the space. However, unlike human authentication, the Chat app is not added as a space manager. By default, the Chat app can be removed from the space by all space members. To allow only space managers to remove the app from a space, set space.permission_settings.manage_apps to managers_allowed. Space membership upon creation depends on whether the space is created in Import mode: * Import mode: No members are created. * All other modes: The calling user is added as a member. This is: * The app itself when using app authentication. * The human user when using user authentication. If you receive the error message ALREADY_EXISTS when creating a space, try a different displayName. An existing space within the Google Workspace organization might already use this display name.Request
spaces.delete
DELETE
Deletes a named space. Always performs a cascading delete, which means that the space's child resources—like messages posted in the space and memberships in the space—are also deleted. For an example, see Delete a space. Supports the following types of authentication: - App authentication with administrator approval and the authorization scope: - https://www.googleapis.com/auth/chat.app.delete (only in spaces the app created) - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.delete - https://www.googleapis.com/auth/chat.import (import mode spaces only) - User authentication grants administrator privileges when an administrator account authenticates, use_admin_access is true, and the following authorization scope is used: - https://www.googleapis.com/auth/chat.admin.deleteRequest
spaces.findDirectMessage
GET
Returns the existing direct message with the specified user. If no direct message space is found, returns a 404 NOT_FOUND error. For an example, see Find a direct message. With app authentication, returns the direct message space between the specified user and the calling Chat app. With user authentication, returns the direct message space between the specified user and the authenticated user. Supports the following types of authentication: - App authentication with the authorization scope: - https://www.googleapis.com/auth/chat.bot - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.spaces.readonly - https://www.googleapis.com/auth/chat.spacesRequest
spaces.findGroupChats
GET
Returns all spaces with spaceType == GROUP_CHAT, whose human memberships contain exactly the calling user, and the users specified in FindGroupChatsRequest.users. Only members that have joined the conversation are supported. For an example, see Find group chats. If the calling user blocks, or is blocked by, some users, and no spaces with the entire specified set of users are found, this method returns spaces that don't include the blocked or blocking users. The specified set of users must contain only human (non-app) memberships. A request that contains non-human users doesn't return any spaces. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.memberships.readonly - https://www.googleapis.com/auth/chat.membershipsRequest
spaces.get
GET
Returns details about a space. For an example, see Get details about a space. Supports the following types of authentication: - App authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.bot - https://www.googleapis.com/auth/chat.app.spaces with administrator approval - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.spaces.readonly - https://www.googleapis.com/auth/chat.spaces - User authentication grants administrator privileges when an administrator account authenticates, use_admin_access is true, and one of the following authorization scopes is used: - https://www.googleapis.com/auth/chat.admin.spaces.readonly - https://www.googleapis.com/auth/chat.admin.spaces App authentication has the following limitations: - space.access_settings is only populated when using the chat.app.spaces scope. - space.predefind_permission_settings and space.permission_settings are only populated when using the chat.app.spaces scope, and only for spaces the app created.Request
spaces.list
GET
Lists spaces the caller is a member of. Group chats and DMs aren't listed until the first message is sent. For an example, see List spaces. Supports the following types of authentication: - App authentication with the authorization scope: - https://www.googleapis.com/auth/chat.bot - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.spaces.readonly - https://www.googleapis.com/auth/chat.spaces To list all named spaces by Google Workspace organization, use the spaces.search() method using Workspace administrator privileges instead.Request
spaces.members.create
POST
Creates a membership for the calling Chat app, a user, or a Google Group. Creating memberships for other Chat apps isn't supported. When creating a membership, if the specified member has their auto-accept policy turned off, then they're invited, and must accept the space invitation before joining. Otherwise, creating a membership adds the member directly to the specified space. Supports the following types of authentication: - App authentication with administrator approval and the authorization scope: - https://www.googleapis.com/auth/chat.app.memberships - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.memberships - https://www.googleapis.com/auth/chat.memberships.app (to add the calling app to the space) - https://www.googleapis.com/auth/chat.import (import mode spaces only) - User authentication grants administrator privileges when an administrator account authenticates, use_admin_access is true, and the following authorization scope is used: - https://www.googleapis.com/auth/chat.admin.memberships App authentication is not supported for the following use cases: - Inviting users external to the Workspace organization that owns the space. - Adding a Google Group to a space. - Adding a Chat app to a space. For example usage, see: - Invite or add a user to a space. - Invite or add a Google Group to a space. - Add the Chat app to a space.Request
spaces.members.delete
DELETE
Deletes a membership. For an example, see Remove a user or a Google Chat app from a space. Supports the following types of authentication: - App authentication with administrator approval and the authorization scope: - https://www.googleapis.com/auth/chat.app.memberships - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.memberships - https://www.googleapis.com/auth/chat.memberships.app (to remove the calling app from the space) - https://www.googleapis.com/auth/chat.import (import mode spaces only) - User authentication grants administrator privileges when an administrator account authenticates, use_admin_access is true, and the following authorization scope is used: - https://www.googleapis.com/auth/chat.admin.memberships App authentication is not supported for the following use cases: - Removing a Google Group from a space. - Removing a Chat app from a space. To delete memberships for space managers, the requester must be a space manager. If you're using app authentication the Chat app must be the space creator.Request
spaces.members.get
GET
Returns details about a membership. For an example, see Get details about a user's or Google Chat app's membership. Supports the following types of authentication: - App authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.bot - https://www.googleapis.com/auth/chat.app.memberships (requires administrator approval) - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.memberships.readonly - https://www.googleapis.com/auth/chat.memberships - User authentication grants administrator privileges when an administrator account authenticates, use_admin_access is true, and one of the following authorization scopes is used: - https://www.googleapis.com/auth/chat.admin.memberships.readonly - https://www.googleapis.com/auth/chat.admin.membershipsRequest
spaces.members.list
GET
Lists memberships in a space. For an example, see List users and Google Chat apps in a space. Listing memberships with app authentication lists memberships in spaces that the Chat app has access to, but excludes Chat app memberships, including its own. Listing memberships with User authentication lists memberships in spaces that the authenticated user has access to. Supports the following types of authentication: - App authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.bot - https://www.googleapis.com/auth/chat.app.memberships (requires administrator approval) - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.memberships.readonly - https://www.googleapis.com/auth/chat.memberships - https://www.googleapis.com/auth/chat.import (import mode spaces only) - User authentication grants administrator privileges when an administrator account authenticates, use_admin_access is true, and one of the following authorization scopes is used: - https://www.googleapis.com/auth/chat.admin.memberships.readonly - https://www.googleapis.com/auth/chat.admin.membershipsRequest
spaces.members.patch
PATCH
Updates a membership. For an example, see Update a user's membership in a space. Supports the following types of authentication: - App authentication with administrator approval and the authorization scope: - https://www.googleapis.com/auth/chat.app.memberships (only in spaces the app created) - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.memberships - https://www.googleapis.com/auth/chat.import (import mode spaces only) - User authentication grants administrator privileges when an administrator account authenticates, use_admin_access is true, and the following authorization scope is used: - https://www.googleapis.com/auth/chat.admin.membershipsRequest
spaces.messages.attachments.get
GET
Gets the metadata of a message attachment. The attachment data is fetched using the media API. For an example, see Get metadata about a message attachment. Requires app authentication with the authorization scope: - https://www.googleapis.com/auth/chat.botRequest
spaces.messages.create
POST
Creates a message in a Google Chat space. For an example, see Send a message. Supports the following types of authentication: - App authentication with the authorization scope: - https://www.googleapis.com/auth/chat.bot - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.messages.create - https://www.googleapis.com/auth/chat.messages - https://www.googleapis.com/auth/chat.import (import mode spaces only) Chat attributes the message sender differently depending on the type of authentication that you use in your request. The following image shows how Chat attributes a message when you use app authentication. Chat displays the Chat app as the message sender. The content of the message can contain text (text), cards (cardsV2), and accessory widgets (accessoryWidgets). !Message sent with app authentication The following image shows how Chat attributes a message when you use user authentication. Chat displays the user as the message sender and attributes the Chat app to the message by displaying its name. The content of message can only contain text (text). !Message sent with user authentication The maximum message size, including the message contents, is 32,000 bytes. For webhook requests, the response doesn't contain the full message. The response only populates the name and thread.name fields in addition to the information that was in the request.Request
spaces.messages.delete
DELETE
Deletes a message. For an example, see Delete a message. Supports the following types of authentication: - App authentication with the authorization scope: - https://www.googleapis.com/auth/chat.bot - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.messages - https://www.googleapis.com/auth/chat.import (import mode spaces only) When using app authentication, requests can only delete messages created by the calling Chat app.Request
spaces.messages.get
GET
Returns details about a message. For an example, see Get details about a message. Supports the following types of authentication: - App authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.bot: When using this authorization scope, this method returns details about a message the Chat app has access to, like direct messages and slash commands that invoke the Chat app. - https://www.googleapis.com/auth/chat.app.messages.readonly with administrator approval. When using this authentication scope, this method returns details about a public message in a space. - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.messages.readonly - https://www.googleapis.com/auth/chat.messages Note: Might return a message from a blocked member or space.Request
spaces.messages.list
GET
Lists messages in a space that the caller is a member of, including messages from blocked members and spaces. System messages, like those announcing new space members, aren't included. If you list messages from a space with no messages, the response is an empty object. When using a REST/HTTP interface, the response contains an empty JSON object, {}. For an example, see List messages. Supports the following types of authentication: - App authentication with administrator approval with the authorization scope: - https://www.googleapis.com/auth/chat.app.messages.readonly. When using this authentication scope, this method only returns public messages in a space. It doesn't include private messages. - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.messages.readonly - https://www.googleapis.com/auth/chat.messages - https://www.googleapis.com/auth/chat.import (import mode spaces only)Request
spaces.messages.patch
PATCH
Updates a message. There's a difference between the patch and update methods. The patch method uses a patch request while the update method uses a put request. We recommend using the patch method. For an example, see Update a message. Supports the following types of authentication: - App authentication with the authorization scope: - https://www.googleapis.com/auth/chat.bot - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.messages - https://www.googleapis.com/auth/chat.import (import mode spaces only) When using app authentication, requests can only update messages created by the calling Chat app.Request
spaces.messages.reactions.create
POST
Creates a reaction and adds it to a message. For an example, see Add a reaction to a message. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.messages.reactions.create - https://www.googleapis.com/auth/chat.messages.reactions - https://www.googleapis.com/auth/chat.messages - https://www.googleapis.com/auth/chat.import (import mode spaces only)Request
spaces.messages.reactions.delete
DELETE
Deletes a reaction to a message. For an example, see Delete a reaction. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.messages.reactions - https://www.googleapis.com/auth/chat.messages - https://www.googleapis.com/auth/chat.import (import mode spaces only)Request
spaces.messages.reactions.list
GET
Lists reactions to a message. For an example, see List reactions for a message. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.messages.reactions.readonly - https://www.googleapis.com/auth/chat.messages.reactions - https://www.googleapis.com/auth/chat.messages.readonly - https://www.googleapis.com/auth/chat.messagesRequest
spaces.messages.update
PUT
Updates a message. There's a difference between the patch and update methods. The patch method uses a patch request while the update method uses a put request. We recommend using the patch method. For an example, see Update a message. Supports the following types of authentication: - App authentication with the authorization scope: - https://www.googleapis.com/auth/chat.bot - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.messages - https://www.googleapis.com/auth/chat.import (import mode spaces only) When using app authentication, requests can only update messages created by the calling Chat app.Request
spaces.patch
PATCH
Updates a space. For an example, see Update a space. If you're updating the displayName field and receive the error message ALREADY_EXISTS, try a different display name.. An existing space within the Google Workspace organization might already use this display name. Supports the following types of authentication: - App authentication with administrator approval and one of the following authorization scopes: - https://www.googleapis.com/auth/chat.app.spaces - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.spaces - https://www.googleapis.com/auth/chat.import (import mode spaces only) - User authentication grants administrator privileges when an administrator account authenticates, use_admin_access is true, and the following authorization scopes is used: - https://www.googleapis.com/auth/chat.admin.spaces App authentication has the following limitations: - To update either space.predefined_permission_settings or space.permission_settings, the app must be the space creator. - Updating the space.access_settings.audience is not supported for app authentication.Request
spaces.search
GET
Returns a list of spaces in a Google Workspace organization. For an example, see Search for and manage spaces. When use_admin_access is set to false, the results are limited to spaces where the calling user is a joined member. To search with administrator privileges, set use_admin_access to true. Setting use_admin_access to false is available under Developer Preview. Supports the following types of authentication: - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.spaces.readonly - https://www.googleapis.com/auth/chat.spaces - User authentication with administrator privileges and one of the following authorization scopes: - https://www.googleapis.com/auth/chat.admin.spaces.readonly - https://www.googleapis.com/auth/chat.admin.spacesRequest
spaces.setup
POST
Creates a space and adds specified users to it. The calling user is automatically added to the space, and shouldn't be specified as a membership in the request. For an example, see Set up a space with initial members. To specify the human members to add, add memberships with the appropriate membership.member.name. To add a human user, use users/{user}, where {user} can be the email address for the user. For users in the same Workspace organization {user} can also be the id for the person from the People API, or the id for the user in the Directory API. For example, if the People API Person profile ID for user@example.com is 123456789, you can add the user to the space by setting the membership.member.name to users/user@example.com or users/123456789. To specify the Google groups to add, add memberships with the appropriate membership.group_member.name. To add or invite a Google group, use groups/{group}, where {group} is the id for the group from the Cloud Identity Groups API. For example, you can use Cloud Identity Groups lookup API to retrieve the ID 123456789 for group email group@example.com, then you can add the group to the space by setting the membership.group_member.name to groups/123456789. Group email is not supported, and Google groups can only be added as members in named spaces. For a named space or group chat, if the caller blocks, or is blocked by some members, or doesn't have permission to add some members, then those members aren't added to the created space. To create a direct message (DM) between the calling user and another human user, specify exactly one membership to represent the human user. If one user blocks the other, the request fails and the DM isn't created. To create a DM between the calling user and the calling app, set Space.singleUserBotDm to true and don't specify any memberships. You can only use this method to set up a DM with the calling app. To add the calling app as a member of a space or an existing DM between two human users, see Invite or add a user or app to a space. If a DM already exists between two users, even when one user blocks the other at the time a request is made, then the existing DM is returned. Spaces with threaded replies aren't supported. If you receive the error message ALREADY_EXISTS when setting up a space, try a different displayName. An existing space within the Google Workspace organization might already use this display name. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.spaces.create - https://www.googleapis.com/auth/chat.spacesRequest
spaces.spaceEvents.get
GET
Returns an event from a Google Chat space. The event payload contains the most recent version of the resource that changed. For example, if you request an event about a new message but the message was later updated, the server returns the updated Message resource in the event payload. Note: The permissionSettings field is not returned in the Space object of the Space event data for this request. Supports the following types of authentication with an authorization scope appropriate for reading the requested data: - App authentication with administrator approval with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.app.spaces - https://www.googleapis.com/auth/chat.app.spaces.readonly - https://www.googleapis.com/auth/chat.app.messages.readonly - https://www.googleapis.com/auth/chat.app.memberships - https://www.googleapis.com/auth/chat.app.memberships.readonly - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.spaces.readonly - https://www.googleapis.com/auth/chat.spaces - https://www.googleapis.com/auth/chat.messages.readonly - https://www.googleapis.com/auth/chat.messages - https://www.googleapis.com/auth/chat.messages.reactions.readonly - https://www.googleapis.com/auth/chat.messages.reactions - https://www.googleapis.com/auth/chat.memberships.readonly - https://www.googleapis.com/auth/chat.memberships To get an event, the authenticated caller must be a member of the space. For an example, see Get details about an event from a Google Chat space.Request
spaces.spaceEvents.list
GET
Lists events from a Google Chat space. For each event, the payload contains the most recent version of the Chat resource. For example, if you list events about new space members, the server returns Membership resources that contain the latest membership details. If new members were removed during the requested period, the event payload contains an empty Membership resource. Supports the following types of authentication with an authorization scope appropriate for reading the requested data: - App authentication with administrator approval with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.app.spaces - https://www.googleapis.com/auth/chat.app.spaces.readonly - https://www.googleapis.com/auth/chat.app.messages.readonly - https://www.googleapis.com/auth/chat.app.memberships - https://www.googleapis.com/auth/chat.app.memberships.readonly - User authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.spaces.readonly - https://www.googleapis.com/auth/chat.spaces - https://www.googleapis.com/auth/chat.messages.readonly - https://www.googleapis.com/auth/chat.messages - https://www.googleapis.com/auth/chat.messages.reactions.readonly - https://www.googleapis.com/auth/chat.messages.reactions - https://www.googleapis.com/auth/chat.memberships.readonly - https://www.googleapis.com/auth/chat.memberships To list events, the authenticated caller must be a member of the space. For an example, see List events from a Google Chat space.Request
users.availability.get
GET
Returns availability information for a human user in Google Chat. For example, this can be used to check if a user is online or away, or to retrieve their custom status message. This method only retrieves the authenticated user's availability. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.users.availability.readonly - https://www.googleapis.com/auth/chat.users.availabilityRequest
users.availability.markAsActive
POST
Marks user as ACTIVE in Google Chat. Sets the user's availability state to ACTIVE. The ACTIVE state lasts until the specified expiration, at which point the user's state becomes AWAY. Note that if the user is actively using Chat, the ACTIVE state duration may extend beyond the provided expiration. This method only updates the authenticated user's availability. Requires user authentication with authorization scope: - https://www.googleapis.com/auth/chat.users.availabilityRequest
users.availability.markAsAway
POST
Marks user as AWAY in Google Chat. Sets the user's state to away and is not affected by the user's activity. This method only updates the authenticated user's availability. Requires user authentication with authorization scope: - https://www.googleapis.com/auth/chat.users.availabilityRequest
users.availability.markAsDoNotDisturb
POST
Marks user as DO_NOT_DISTURB in Google Chat. Sets a user's availability state to DO_NOT_DISTURB until a specified expiration time. When in DO_NOT_DISTURB, users typically won't receive notifications. This method only updates the authenticated user's availability. Requires user authentication with authorization scope: - https://www.googleapis.com/auth/chat.users.availabilityRequest
users.availability.patch
PATCH
Updates availability information for a human user. Only the custom_status field can be updated through this method. This method only updates the authenticated user's availability. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.users.availabilityRequest
users.sections.create
POST
Creates a section in Google Chat. Sections help users group conversations and customize the list of spaces displayed in Chat navigation panel. Only sections of type CUSTOM_SECTION can be created. For details, see Create and organize sections in Google Chat. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.users.sectionsRequest
users.sections.delete
DELETE
Deletes a section of type CUSTOM_SECTION. If the section contains items, such as spaces, the items are moved to Google Chat's default sections and are not deleted. For details, see Create and organize sections in Google Chat. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.users.sectionsRequest
users.sections.items.list
GET
Lists items in a section. Only spaces can be section items. For details, see Create and organize sections in Google Chat. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.users.sections - https://www.googleapis.com/auth/chat.users.sections.readonlyRequest
users.sections.items.move
POST
Moves an item from one section to another. For example, if a section contains spaces, this method can be used to move a space to a different section. For details, see Create and organize sections in Google Chat. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.users.sectionsRequest
users.sections.list
GET
Lists sections available to the Chat user. Sections help users group their conversations and customize the list of spaces displayed in Chat navigation panel. For details, see Create and organize sections in Google Chat. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.users.sections - https://www.googleapis.com/auth/chat.users.sections.readonlyRequest
users.sections.patch
PATCH
Updates a section. Only sections of type CUSTOM_SECTION can be updated. For details, see Create and organize sections in Google Chat. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.users.sectionsRequest
users.sections.position
POST
Changes the sort order of a section. For details, see Create and organize sections in Google Chat. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.users.sectionsRequest
users.spaces.getSpaceReadState
GET
Returns details about a user's read state within a space, used to identify read and unread messages. For an example, see Get details about a user's space read state. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.users.readstate.readonly - https://www.googleapis.com/auth/chat.users.readstateRequest
users.spaces.spaceNotificationSetting.get
GET
Gets the space notification setting. For an example, see Get the caller's space notification setting. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.users.spacesettingsRequest
users.spaces.spaceNotificationSetting.patch
PATCH
Updates the space notification setting. For an example, see Update the caller's space notification setting. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.users.spacesettingsRequest
users.spaces.threads.getThreadReadState
GET
Returns details about a user's read state within a thread, used to identify read and unread messages. For an example, see Get details about a user's thread read state. Requires user authentication with one of the following authorization scopes: - https://www.googleapis.com/auth/chat.users.readstate.readonly - https://www.googleapis.com/auth/chat.users.readstateRequest
users.spaces.updateSpaceReadState
PATCH
Updates a user's read state within a space, used to identify read and unread messages. For an example, see Update a user's space read state. Requires user authentication with the authorization scope: - https://www.googleapis.com/auth/chat.users.readstateRequest

forms

Not exposed — 10 methods. Google Discovery: forms:v1.

Method
forms.batchUpdate
POST
Change the form with a batch of updates.Request
forms.create
POST
Create a new form using the title given in the provided form message in the request. Important: Only the form.info.title and form.info.document_title fields are copied to the new form. All other fields including the form description, items and settings are disallowed. To create a new form and add items, you must first call forms.create to create an empty form with a title and (optional) document title, and then call forms.update to add the items.Request
forms.get
GET
Get a form.Request
forms.responses.get
GET
Get one response from the form.Request
forms.responses.list
GET
List a form's responses.Request
forms.setPublishSettings
POST
Updates the publish settings of a form. Legacy forms aren't supported because they don't have the publish_settings field.Request
forms.watches.create
POST
Create a new watch. If a watch ID is provided, it must be unused. For each invoking project, the per form limit is one watch per Watch.EventType. A watch expires seven days after it is created (see Watch.expire_time).Request
forms.watches.delete
DELETE
Delete a watch.Request
forms.watches.list
GET
Return a list of the watches owned by the invoking project. The maximum number of watches is two: For each invoker, the limit is one for each event type per form.Request
forms.watches.renew
POST
Renew an existing watch for seven days. The state of the watch after renewal is ACTIVE, and the expire_time is seven days from the renewal. Renewing a watch in an error state (e.g. SUSPENDED) succeeds if the error is no longer present, but fail otherwise. After a watch has expired, RenewWatch returns NOT_FOUND.Request

people

Not exposed — 24 methods. Google Discovery: people:v1.

Method
contactGroups.batchGet
GET
Get a list of contact groups owned by the authenticated user by specifying a list of contact group resource names.Request
contactGroups.create
POST
Create a new contact group owned by the authenticated user. Created contact group names must be unique to the users contact groups. Attempting to create a group with a duplicate name will return a HTTP 409 error. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.Request
contactGroups.delete
DELETE
Delete an existing contact group owned by the authenticated user by specifying a contact group resource name. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.Request
contactGroups.get
GET
Get a specific contact group owned by the authenticated user by specifying a contact group resource name.Request
contactGroups.list
GET
List all contact groups owned by the authenticated user. Members of the contact groups are not populated.Request
contactGroups.members.modify
POST
Modify the members of a contact group owned by the authenticated user. The only system contact groups that can have members added are contactGroups/myContacts and contactGroups/starred. Other system contact groups are deprecated and can only have contacts removed.Request
contactGroups.update
PUT
Update the name of an existing contact group owned by the authenticated user. Updated contact group names must be unique to the users contact groups. Attempting to create a group with a duplicate name will return a HTTP 409 error. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.Request
otherContacts.copyOtherContactToMyContactsGroup
POST
Copies an "Other contact" to a new contact in the user's "myContacts" group Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.Request
otherContacts.list
GET
List all "Other contacts", that is contacts that are not in a contact group. "Other contacts" are typically auto created contacts from interactions. Sync tokens expire 7 days after the full sync. A request with an expired sync token will get an error with an google.rpc.ErrorInfo with reason "EXPIRED_SYNC_TOKEN". In the case of such an error clients should make a full sync request without a sync_token. The first page of a full sync request has an additional quota. If the quota is exceeded, a 429 error will be returned. This quota is fixed and can not be increased. When the sync_token is specified, resources deleted since the last sync will be returned as a person with PersonMetadata.deleted set to true. When the page_token or sync_token is specified, all other request parameters must match the first call. Writes may have a propagation delay of several minutes for sync requests. Incremental syncs are not intended for read-after-write use cases. See example usage at List the user's other contacts that have changed.Request
otherContacts.search
GET
Provides a list of contacts in the authenticated user's other contacts that matches the search query. The query matches on a contact's names, emailAddresses, and phoneNumbers fields that are from the OTHER_CONTACT source. IMPORTANT: Before searching, clients should send a warmup request with an empty query to update the cache. See https://developers.google.com/people/v1/other-contacts#search_the_users_other_contactsRequest
people.batchCreateContacts
POST
Create a batch of new contacts and return the PersonResponses for the newly Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.Request
people.batchDeleteContacts
POST
Delete a batch of contacts. Any non-contact data will not be deleted. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.Request
people.batchUpdateContacts
POST
Update a batch of contacts and return a map of resource names to PersonResponses for the updated contacts. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.Request
people.connections.list
GET
Provides a list of the authenticated user's contacts. Sync tokens expire 7 days after the full sync. A request with an expired sync token will get an error with an google.rpc.ErrorInfo with reason "EXPIRED_SYNC_TOKEN". In the case of such an error clients should make a full sync request without a sync_token. The first page of a full sync request has an additional quota. If the quota is exceeded, a 429 error will be returned. This quota is fixed and can not be increased. When the sync_token is specified, resources deleted since the last sync will be returned as a person with PersonMetadata.deleted set to true. When the page_token or sync_token is specified, all other request parameters must match the first call. Writes may have a propagation delay of several minutes for sync requests. Incremental syncs are not intended for read-after-write use cases. See example usage at List the user's contacts that have changed.Request
people.createContact
POST
Create a new contact and return the person resource for that contact. The request returns a 400 error if more than one field is specified on a field that is a singleton for contact sources: * biographies * birthdays * genders * names Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.Request
people.deleteContact
DELETE
Delete a contact person. Any non-contact data will not be deleted. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.Request
people.deleteContactPhoto
DELETE
Delete a contact's photo. Mutate requests for the same user should be done sequentially to avoid // lock contention.Request
people.get
GET
Provides information about a person by specifying a resource name. Use people/me to indicate the authenticated user. The request returns a 400 error if 'personFields' is not specified.Request
people.getBatchGet
GET
Provides information about a list of specific people by specifying a list of requested resource names. Use people/me to indicate the authenticated user. The request returns a 400 error if 'personFields' is not specified.Request
people.listDirectoryPeople
GET
Provides a list of domain profiles and domain contacts in the authenticated user's domain directory. When the sync_token is specified, resources deleted since the last sync will be returned as a person with PersonMetadata.deleted set to true. When the page_token or sync_token is specified, all other request parameters must match the first call. Writes may have a propagation delay of several minutes for sync requests. Incremental syncs are not intended for read-after-write use cases. See example usage at List the directory people that have changed.Request
people.searchContacts
GET
Provides a list of contacts in the authenticated user's grouped contacts that matches the search query. The query matches on a contact's names, nickNames, emailAddresses, phoneNumbers, and organizations fields that are from the CONTACT source. IMPORTANT: Before searching, clients should send a warmup request with an empty query to update the cache. See https://developers.google.com/people/v1/contacts#search_the_users_contactsRequest
people.searchDirectoryPeople
GET
Provides a list of domain profiles and domain contacts in the authenticated user's domain directory that match the search query.Request
people.updateContact
PATCH
Update contact data for an existing contact person. Any non-contact data will not be modified. Any non-contact data in the person to update will be ignored. All fields specified in the update_mask will be replaced. The server returns a 400 error if person.metadata.sources is not specified for the contact to be updated or if there is no contact source. The server returns a 400 error with reason "failedPrecondition" if person.metadata.sources.etag is different than the contact's etag, which indicates the contact has changed since its data was read. Clients should get the latest person and merge their updates into the latest person. If making sequential updates to the same person, the etag from the updateContact response should be used to avoid failures. The server returns a 400 error if memberships are being updated and there are no contact group memberships specified on the person. The server returns a 400 error if more than one field is specified on a field that is a singleton for contact sources: * biographies * birthdays * genders * names Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.Request
people.updateContactPhoto
PATCH
Update a contact's photo. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.Request

slides

Not exposed — 5 methods. Google Discovery: slides:v1.

Method
presentations.batchUpdate
POST
Applies one or more updates to the presentation. Each request is validated before being applied. If any request is not valid, then the entire request will fail and nothing will be applied. Some requests have replies to give you some information about how they are applied. Other requests do not need to return information; these each return an empty reply. The order of replies matches that of the requests. For example, suppose you call batchUpdate with four updates, and only the third one returns information. The response would have two empty replies: the reply to the third request, and another empty reply, in that order. Because other users may be editing the presentation, the presentation might not exactly reflect your changes: your changes may be altered with respect to collaborator changes. If there are no collaborators, the presentation should reflect your changes. In any case, the updates in your request are guaranteed to be applied together atomically.Request
presentations.create
POST
Creates a blank presentation using the title given in the request. If a presentationId is provided, it is used as the ID of the new presentation. Otherwise, a new ID is generated. Other fields in the request, including any provided content, are ignored. Returns the created presentation.Request
presentations.get
GET
Gets the latest version of the specified presentation.Request
presentations.pages.get
GET
Gets the latest version of the specified page in the presentation.Request
presentations.pages.getThumbnail
GET
Generates a thumbnail of the latest version of the specified page in the presentation and returns a URL to the thumbnail image. This request counts as an expensive read request for quota purposes.Request

Why the subset is curated, and what makes a request persuasive: API coverage.