Gmail API

借助 Gmail API,您可以查看和管理 Gmail 邮箱数据,例如会话、邮件和标签。

服务:gmail.googleapis.com

如要调用此服务,我们建议您使用 Google 提供的客户端库。如果您的应用需要使用您自己的库来调用此服务,则在发出 API 请求时应使用以下信息。

发现文档

发现文档是用于说明和使用 REST API 的机器可读规范。它用于构建客户端库、IDE 插件以及与 Google API 交互的其他工具。一项服务可能会提供多个发现文档。此服务提供了以下发现文档:

服务端点

服务端点是一个基础网址,指定了 API 服务的网络地址。一项服务可能有多个服务端点。此服务具有以下服务端点,下面的所有 URI 都与此服务端点相关:

  • https://gmail.googleapis.com

REST 资源:v1.users

方法
getProfile GET /gmail/v1/users/{userId}/profile
获取当前用户的 Gmail 个人资料。
stop POST /gmail/v1/users/{userId}/stop
针对指定用户邮箱关闭推送通知递送。
watch POST /gmail/v1/users/{userId}/watch
在指定用户邮箱中设置或更新推送通知监听器。

REST 资源:v1.users.drafts

方法
create POST /gmail/v1/users/{userId}/drafts
POST /upload/gmail/v1/users/{userId}/drafts
创建带有 DRAFT 标签的草稿。
delete DELETE /gmail/v1/users/{userId}/drafts/{id}
立即永久删除指定的草稿。
get GET /gmail/v1/users/{userId}/drafts/{id}
获取指定的草稿。
list GET /gmail/v1/users/{userId}/drafts
列出用户邮箱中的草稿。
send POST /gmail/v1/users/{userId}/drafts/send
POST /upload/gmail/v1/users/{userId}/drafts/send
将指定的现有草稿发送给 ToCcBcc 标头中的收件人。
update PUT /gmail/v1/users/{userId}/drafts/{id}
PUT /upload/gmail/v1/users/{userId}/drafts/{id}
替换草稿的内容。

REST 资源:v1.users.history

方法
list GET /gmail/v1/users/{userId}/history
列出指定邮箱的所有更改的历史记录。

REST 资源:v1.users.labels

方法
create POST /gmail/v1/users/{userId}/labels
创建标签。
delete DELETE /gmail/v1/users/{userId}/labels/{id}
立即永久删除指定标签,并从应用了该标签的所有邮件和会话中移除该标签。
get GET /gmail/v1/users/{userId}/labels/{id}
获取指定的标签。
list GET /gmail/v1/users/{userId}/labels
列出用户邮箱中的所有标签。
patch PATCH /gmail/v1/users/{userId}/labels/{id}
修补指定标签。
update PUT /gmail/v1/users/{userId}/labels/{id}
更新指定的标签。

REST 资源:v1.users.messages

方法
batchDelete POST /gmail/v1/users/{userId}/messages/batchDelete
根据消息 ID 删除多条消息。
batchModify POST /gmail/v1/users/{userId}/messages/batchModify
修改指定邮件的标签。
delete DELETE /gmail/v1/users/{userId}/messages/{id}
立即永久删除指定的消息。
get GET /gmail/v1/users/{userId}/messages/{id}
获取指定的消息。
import POST /gmail/v1/users/{userId}/messages/import
POST /upload/gmail/v1/users/{userId}/messages/import
将邮件导入到相应用户的邮箱中,并进行标准电子邮件传送扫描和分类,类似于通过 SMTP 接收邮件。
insert POST /gmail/v1/users/{userId}/messages
POST /upload/gmail/v1/users/{userId}/messages
直接将消息插入到相应用户的邮箱中,类似于 IMAP APPEND,绕过大多数扫描和分类。
list GET /gmail/v1/users/{userId}/messages
列出用户邮箱中的邮件。
modify POST /gmail/v1/users/{userId}/messages/{id}/modify
修改指定邮件的标签。
send POST /gmail/v1/users/{userId}/messages/send
POST /upload/gmail/v1/users/{userId}/messages/send
将指定消息发送给 ToCcBcc 标头中的收件人。
trash POST /gmail/v1/users/{userId}/messages/{id}/trash
将指定邮件移至回收站。
untrash POST /gmail/v1/users/{userId}/messages/{id}/untrash
从回收站中移除指定的消息。

REST 资源:v1.users.messages.attachments

方法
get GET /gmail/v1/users/{userId}/messages/{messageId}/attachments/{id}
获取指定的消息附件。

REST 资源:v1.users.settings

方法
getAutoForwarding GET /gmail/v1/users/{userId}/settings/autoForwarding
获取指定账号的自动转发设置。
getImap GET /gmail/v1/users/{userId}/settings/imap
获取 IMAP 设置。
getLanguage GET /gmail/v1/users/{userId}/settings/language
获取语言设置。
getPop GET /gmail/v1/users/{userId}/settings/pop
获取 POP 设置。
getVacation GET /gmail/v1/users/{userId}/settings/vacation
获取外出回复设置。
updateAutoForwarding PUT /gmail/v1/users/{userId}/settings/autoForwarding
更新指定账号的自动转发设置。
updateImap PUT /gmail/v1/users/{userId}/settings/imap
更新 IMAP 设置。
updateLanguage PUT /gmail/v1/users/{userId}/settings/language
更新语言设置。
updatePop PUT /gmail/v1/users/{userId}/settings/pop
更新 POP 设置。
updateVacation PUT /gmail/v1/users/{userId}/settings/vacation
更新外出回复设置。

REST 资源:v1.users.settings.cse.identities

方法
create POST /gmail/v1/users/{userId}/settings/cse/identities
创建并配置一个有权从用户账号发送邮件的客户端加密身份。
delete DELETE /gmail/v1/users/{userId}/settings/cse/identities/{cseEmailAddress}
删除客户端加密身份。
get GET /gmail/v1/users/{userId}/settings/cse/identities/{cseEmailAddress}
检索客户端加密功能身份配置。
list GET /gmail/v1/users/{userId}/settings/cse/identities
列出已通过身份验证的用户的客户端加密身份。
patch PATCH /gmail/v1/users/{userId}/settings/cse/identities/{emailAddress}
将其他密钥对与现有的客户端加密功能身份相关联。

REST 资源:v1.users.settings.cse.keypairs

方法
create POST /gmail/v1/users/{userId}/settings/cse/keypairs
为经过身份验证的用户创建并上传客户端加密功能 S/MIME 公钥证书链和私钥元数据。
disable POST /gmail/v1/users/{userId}/settings/cse/keypairs/{keyPairId}:disable
关闭客户端加密功能密钥对。
enable POST /gmail/v1/users/{userId}/settings/cse/keypairs/{keyPairId}:enable
启用已停用的客户端加密密钥对。
get GET /gmail/v1/users/{userId}/settings/cse/keypairs/{keyPairId}
检索现有的客户端加密功能密钥对。
list GET /gmail/v1/users/{userId}/settings/cse/keypairs
列出已通过身份验证的用户的客户端加密功能密钥对。
obliterate POST /gmail/v1/users/{userId}/settings/cse/keypairs/{keyPairId}:obliterate
永久且立即删除客户端加密密钥对。

REST 资源:v1.users.settings.delegates

方法
create POST /gmail/v1/users/{userId}/settings/delegates
添加受托人,并将其验证状态直接设置为 accepted,而不发送任何验证邮件。
delete DELETE /gmail/v1/users/{userId}/settings/delegates/{delegateEmail}
移除指定的委托人(可以是任何验证状态),并撤消使用该委托人可能需要的任何验证。
get GET /gmail/v1/users/{userId}/settings/delegates/{delegateEmail}
获取指定的委托。
list GET /gmail/v1/users/{userId}/settings/delegates
列出指定账号的受托人。

REST 资源:v1.users.settings.filters

方法
create POST /gmail/v1/users/{userId}/settings/filters
创建过滤条件。
delete DELETE /gmail/v1/users/{userId}/settings/filters/{id}
立即永久删除指定的过滤条件。
get GET /gmail/v1/users/{userId}/settings/filters/{id}
获取过滤器。
list GET /gmail/v1/users/{userId}/settings/filters
列出 Gmail 用户的邮件过滤条件。

REST 资源:v1.users.settings.forwardingAddresses

方法
create POST /gmail/v1/users/{userId}/settings/forwardingAddresses
创建转发地址。
delete DELETE /gmail/v1/users/{userId}/settings/forwardingAddresses/{forwardingEmail}
删除指定转发地址,并撤消可能需要的任何验证。
get GET /gmail/v1/users/{userId}/settings/forwardingAddresses/{forwardingEmail}
获取指定的转发地址。
list GET /gmail/v1/users/{userId}/settings/forwardingAddresses
列出指定账号的转发地址。

REST 资源:v1.users.settings.sendAs

方法
create POST /gmail/v1/users/{userId}/settings/sendAs
创建自定义“发件人”发送身份别名。
delete DELETE /gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}
删除指定的“以其他身份发送”别名。
get GET /gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}
获取指定的“发件人别名”。
list GET /gmail/v1/users/{userId}/settings/sendAs
列出指定账号的“发件人别名”。
patch PATCH /gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}
修补指定的“用以下地址发送邮件”别名。
update PUT /gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}
更新“发件人别名”。
verify POST /gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/verify
向指定的“发件人别名”地址发送验证邮件。

REST 资源:v1.users.settings.sendAs.smimeInfo

方法
delete DELETE /gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}
删除指定“发件人别名”的指定 S/MIME 配置。
get GET /gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}
获取指定“发件人别名”的指定 S/MIME 配置。
insert POST /gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/smimeInfo
为指定的“以其他身份发送”别名插入(上传)给定的 S/MIME 配置。
list GET /gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/smimeInfo
列出指定“发件人别名”的 S/MIME 配置。
setDefault POST /gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}/setDefault
为指定的“发件人别名”设置默认 S/MIME 配置。

REST 资源:v1.users.threads

方法
delete DELETE /gmail/v1/users/{userId}/threads/{id}
立即永久删除指定线程。
get GET /gmail/v1/users/{userId}/threads/{id}
获取指定的帖子串。
list GET /gmail/v1/users/{userId}/threads
列出用户邮箱中的会话。
modify POST /gmail/v1/users/{userId}/threads/{id}/modify
修改应用于线程的标签。
trash POST /gmail/v1/users/{userId}/threads/{id}/trash
将指定线程移至回收站。
untrash POST /gmail/v1/users/{userId}/threads/{id}/untrash
从“回收站”中移除指定的消息串。