管理別名
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
「以別名傳送」別名代表帳戶可從中傳送郵件的電子郵件地址。每個帳戶至少都會有一個別名,代表帳戶的主要電子郵件地址。
寄件者身分別名對應於網頁介面中的「選擇寄件地址」功能。
別名也可用於管理帳戶的簽名。如要變更電子郵件簽名,您必須先瞭解「以別名傳送郵件」功能。上述影片說明如何逐一查看「以其他地址或別名傳送郵件」別名,並修改使用者主要電子郵件地址的簽名。
如要瞭解如何建立、列出、取得、更新或刪除別名,請參閱 SendAs
參考資料。
建立及驗證別名
您必須先建立別名,才能使用別名。在某些情況下,使用者也必須驗證別名的擁有權。
如果 Gmail 要求驗證別名使用者,系統會傳回狀態為 pending
的別名。系統會自動將驗證郵件傳送到目標電子郵件地址。電子郵件地址擁有者必須完成驗證程序,才能使用該地址。
不需要驗證的別名驗證狀態為 accepted
。
如有需要,請使用 verify 方法重新傳送驗證要求。
SMTP 設定
外部地址的別名應透過遠端 SMTP 郵件傳送代理程式 (MSA) 傳送郵件。如要為別名設定 SMTP MSA,請使用 smtpMsa
欄位提供連線詳細資料。
管理簽名
您也可以為每個別名設定電子郵件簽名。舉例來說,如要為使用者的主要地址設定簽名檔,請執行下列操作:
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-08-01 (世界標準時間)。
[null,null,["上次更新時間:2025-08-01 (世界標準時間)。"],[],[],null,["# Managing Aliases\n\nSend-as aliases represent the email addresses an account can\nsend mail from. Each account always has at least one alias to represent the\nprimary email address of the account.\n\nSend-as aliases correspond to the\n[\"Send mail as\" feature](https://support.google.com/mail/answer/22370) in the\nweb interface.\n\nAliases are also used to manage signatures for an account. Basic understanding\nof send-as aliases are required for you to be able to change email signatures.\nThe above video shows you how to loop through send-as aliases and modify the\nsignature for a user's primary email address.\n\nFor information about how to\n[create](/workspace/gmail/api/v1/reference/users/settings/sendAs/create),\n[list](/workspace/gmail/api/v1/reference/users/settings/sendAs/list),\n[get](/workspace/gmail/api/v1/reference/users/settings/sendAs/get),\n[update](/workspace/gmail/api/v1/reference/users/settings/sendAs/update),\nor [delete](/workspace/gmail/api/v1/reference/users/settings/sendAs/delete) aliases,\nsee the\n[`SendAs` reference](/workspace/gmail/api/reference/rest/v1/users.settings.sendAs).\n\nCreating and verifying aliases\n------------------------------\n\nYou must [create](/workspace/gmail/api/v1/reference/users/settings/sendAs/create)\naliases prior to use. In some cases, users must also verify ownership of the\nalias.\n\nIf Gmail requires user verification for an alias, the alias is returned with the\nstatus `pending`. A verification message is automatically sent to the\ntarget email address. The owner of the email address must complete the verification\nprocess before it can be used.\n\nAliases that do not require verification have a verification status of `accepted`.\n\nUse the [verify](/workspace/gmail/api/v1/reference/users/settings/sendAs/verify) method to\nresend the verification request if needed.\n\n### SMTP settings\n\nAliases for external addresses should send mail through a remote SMTP\nmail sending agent (MSA). To configure the SMTP MSA for an alias, use\nthe `smtpMsa` field to provide the connection details.\n\nManaging signatures\n-------------------\n\nYou may also configure email signatures for each alias. For example, to set the\nsignature for the user's primary address: \n\n### Java\n\ngmail/snippets/src/main/java/UpdateSignature.java \n[View on GitHub](https://github.com/googleworkspace/java-samples/blob/main/gmail/snippets/src/main/java/UpdateSignature.java) \n\n```java\nimport com.google.api.client.googleapis.json.GoogleJsonError;\nimport com.google.api.client.googleapis.json.GoogleJsonResponseException;\nimport com.google.api.client.http.HttpRequestInitializer;\nimport com.google.api.client.http.javanet.NetHttpTransport;\nimport com.google.api.client.json.gson.GsonFactory;\nimport com.google.api.services.gmail.Gmail;\nimport com.google.api.services.gmail.GmailScopes;\nimport com.google.api.services.gmail.model.ListSendAsResponse;\nimport com.google.api.services.gmail.model.SendAs;\nimport com.google.auth.http.HttpCredentialsAdapter;\nimport com.google.auth.oauth2.GoogleCredentials;\nimport java.io.IOException;\n\n/* Class to demonstrate the use of Gmail Update Signature API */\npublic class UpdateSignature {\n /**\n * Update the gmail signature.\n *\n * @return the updated signature id , {@code null} otherwise.\n * @throws IOException - if service account credentials file not found.\n */\n public static String updateGmailSignature() throws IOException {\n /* Load pre-authorized user credentials from the environment.\n TODO(developer) - See https://developers.google.com/identity for\n guides on implementing OAuth2 for your application. */\n GoogleCredentials credentials = GoogleCredentials.getApplicationDefault()\n .createScoped(GmailScopes.GMAIL_SETTINGS_BASIC);\n HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter(credentials);\n\n // Create the gmail API client\n Gmail service = new Gmail.Builder(new NetHttpTransport(),\n GsonFactory.getDefaultInstance(),\n requestInitializer)\n .setApplicationName(\"Gmail samples\")\n .build();\n\n try {\n SendAs primaryAlias = null;\n ListSendAsResponse aliases = service.users().settings().sendAs().list(\"me\").execute();\n for (SendAs alias : aliases.getSendAs()) {\n if (alias.getIsPrimary()) {\n primaryAlias = alias;\n break;\n }\n }\n // Updating a new signature\n SendAs aliasSettings = new SendAs().setSignature(\"Automated Signature\");\n SendAs result = service.users().settings().sendAs().patch(\n \"me\",\n primaryAlias.getSendAsEmail(),\n aliasSettings)\n .execute();\n //Prints the updated signature\n System.out.println(\"Updated signature - \" + result.getSignature());\n return result.getSignature();\n } catch (GoogleJsonResponseException e) {\n // TODO(developer) - handle error appropriately\n GoogleJsonError error = e.getDetails();\n if (error.getCode() == 403) {\n System.err.println(\"Unable to update signature: \" + e.getDetails());\n } else {\n throw e;\n }\n }\n return null;\n }\n}\n```\n\n### Python\n\ngmail/snippet/settings snippets/update_signature.py \n[View on GitHub](https://github.com/googleworkspace/python-samples/blob/main/gmail/snippet/settings snippets/update_signature.py) \n\n```python\nimport google.auth\nfrom googleapiclient.discovery import build\nfrom googleapiclient.errors import HttpError\n\n\ndef update_signature():\n \"\"\"Create and update signature in gmail.\n Returns:Draft object, including updated signature.\n\n Load pre-authorized user credentials from the environment.\n TODO(developer) - See https://developers.google.com/identity\n for guides on implementing OAuth2 for the application.\n \"\"\"\n creds, _ = google.auth.default()\n\n try:\n # create gmail api client\n service = build(\"gmail\", \"v1\", credentials=creds)\n\n primary_alias = None\n\n # pylint: disable=E1101\n aliases = service.users().settings().sendAs().list(userId=\"me\").execute()\n for alias in aliases.get(\"sendAs\"):\n if alias.get(\"isPrimary\"):\n primary_alias = alias\n break\n\n send_as_configuration = {\n \"displayName\": primary_alias.get(\"sendAsEmail\"),\n \"signature\": \"Automated Signature\",\n }\n\n # pylint: disable=E1101\n result = (\n service.users()\n .settings()\n .sendAs()\n .patch(\n userId=\"me\",\n sendAsEmail=primary_alias.get(\"sendAsEmail\"),\n body=send_as_configuration,\n )\n .execute()\n )\n print(f'Updated signature for: {result.get(\"displayName\")}')\n\n except HttpError as error:\n print(f\"An error occurred: {error}\")\n result = None\n\n return result.get(\"signature\")\n\n\nif __name__ == \"__main__\":\n update_signature()\n```"]]