使用通知範本設定通知

您正在查看 Apigee Edge 說明文件。
參閱 Apigee X說明文件
資訊

什麼是通知範本?

營利功能提供一組範本,可為各種事件通知定義範本文字。您可以自訂任何範本,以便:

  • 通知所有開發人員有關事件的資訊,例如新產品、新版條款或新費率方案。
  • 通知受影響的開發人員相關事件,例如修訂的費率方案。
  • 通知 API 供應商開發人員相關事件,例如開發人員註冊帳戶或訂閱費率方案。
  • 將特定事件告知所有公司管理員。

或者,您也可以建立用於定義 HTTP 回呼處理常式的 webhook,然後設定觸發 webhook 的條件,詳情請參閱「使用 webhook 設定通知」一文。

探索「通知」頁面

按照下方說明存取「通知」頁面。

邊緣

如要使用 Edge UI 存取「通知」頁面,請按照下列步驟操作:

  1. 登入 apigee.com/edge
  2. 在左側導覽列中依序選取「發布」>「營利」>「通知」

系統隨即會顯示「通知」頁面。

如圖所示,「通知」頁面可讓您:

傳統版 Edge (Private Cloud)

如要使用 Edge 傳統版 UI 存取「通知」頁面,請按照下列步驟操作:

  1. 登入 http://ms-ip:9000,其中 ms-ip 是管理伺服器節點的 IP 位址或 DNS 名稱。
  2. 依序選取頂端導覽列的「管理員」>「通知」

您可以在「通知」頁面中執行以下操作:

編輯通知

如要使用 UI 編輯通知,請按照下列步驟操作:

  1. 前往「通知」頁面。
  2. 按一下要編輯的通知旁邊的 ,即可展開詳細資料。
  3. 視需要編輯 [主旨]、[內文] 和 [收件者 (如果有的話)] 欄位。

    如要進一步瞭解可在通知範本中指定的變數,請參閱在通知範本中使用變數

    如要進一步瞭解如何編輯各類別的通知,請參閱以下各節:

  4. 勾選通知旁的核取方塊,即可啟用通知。
  5. 如要編輯其他通知,請重複執行步驟 2 到 4。
  6. 按一下「儲存」即可儲存所有變更。

系統會顯示訊息,確認通知已儲存。儲存作業可能需要幾分鐘才能完成。

編輯通知,以便通知所有開發人員

系統會將您在「通知所有開發人員」專區中選取的事件類型通知傳送給所有開發人員。

通知已排定在當天結束執行。通知傳送後,系統會自動清除事件核取方塊。您必須再次選取這些項目,才能排定相關事件類型的通知。

下表列出「通知所有開發人員」一節中,依事件類型分類的通知。詳情請參閱「使用 UI 編輯通知」。

事件類型 觸發條件 附註
新增套件 有新的 API 套件可用

在電子郵件範本的內文中加入每個新套件的名稱 (以及每個套件中包含的產品),做為更新內容的一部分。您也可以新增開發人員入口網站或任何其他網站的連結,以便提供有關通知的更多資訊。

新產品 推出新的 API 產品

在電子郵件範本的內文中加入每項新產品的名稱,作為更新內容的一部分。您也可以新增開發人員入口網站的連結,或是其他提供更多通知相關資訊的網站。

新市場/服務範圍 全新 API 產品僅在特定地理區域推出

在電子郵件範本的內文中加入每個新市場和相關產品的名稱,作為更新內容的一部分。您也可以新增開發人員入口網站或任何其他網站的連結,以便提供有關通知的更多資訊。

編輯通知,通知受影響的開發人員

您在「通知受影響的開發人員」部分選取的事件類型通知,只會傳送給受這些事件類型影響的開發人員。舉例來說,如果您選取「修訂版費率方案」事件,系統只會傳送通知給已接受費率方案的開發人員。

下表列出「通知受影響的開發人員」一節中,依事件類型分類的通知。詳情請參閱「使用 UI 編輯通知」。

事件類型 觸發條件 附註
未接受或已過期的條款及細則 已發布新的條款及細則組合,但開發人員尚未接受

通知會在新條款生效前 30 天、7 天和 1 天傳送。

新房價方案 已發布新的房價方案

如果費率方案為:

  • 如為標準方案,所有開發人員都會收到通知。
  • 開發人員類別費率方案,只有該類別的開發人員會收到通知。
  • 開發人員費率方案,只有特定開發人員會收到通知。
修訂房價方案 已推出購買的費率方案新版本

只有購買目前版本的開發人員會收到通知。開發人員可以透過這項通知查看新版內容,並在不接受新費率的情況下終止或切換方案。

費率方案已過期 費率方案已過期,沒有後續追蹤費率方案

在您最初將費率方案設為到期時,系統會傳送這則通知,並在到期日前 30、7 和 1 天傳送其他通知。只有購買費率方案到期的開發人員會收到通知。

續訂費率方案 已續訂費率方案。

告知開發人員將收取適用的費用。

超過頻率限制 超過費率方案限制

告知開發人員將收取適用的費用。

已用完的免費精簡版房價方案 免費使用期 (以交易次數或天數為單位) 已用完

免費使用期長度取決於您的免付費費率方案。

帳單文件已發布

提供開發人員的帳單文件 (例如月結單)。

開發人員註冊新費率方案 開發人員註冊新的費率方案。

編輯通知給 Notify API 供應商

系統會將您在「通知 API 供應器」部分選取的事件類型通知傳送至指定的 API 供應器。

下表列出在「Notify API 供應商」部分中的事件類型通知。詳情請參閱「使用 UI 編輯通知」。

事件類型 觸發條件
新開發人員註冊

開發人員已註冊帳戶。

開發人員新增應用程式

開發人員已建立新的應用程式。

開發人員註冊新費率方案

開發人員已訂閱費率方案。

開發人員變更財務詳細資料

開發人員變更了財務詳細資料,例如公司名稱或公司地址。

啟用或停用通知

如何使用 UI 啟用或停用通知:

  1. 前往通知頁面
  2. 選取或取消勾選通知旁的核取方塊,即可啟用或停用通知。
  3. 按一下「儲存」即可儲存所有變更。

儲存作業會在幾分鐘內完成。系統會顯示訊息,確認通知已儲存。

使用 API 範本設定通知

按照下列各節所述,使用 API 設定通知。

使用 API 管理通知範本

按照下列各節所述,使用 API 管理通知範本:

使用 API 查看所有通知範本

您可以向 /mint/organizations/{org_name}/notification-email-templates 發出 GET 要求,列出營利功能提供的所有通知範本。例如:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/notification-email-templates" \
  -u email:password

舉例來說,以下是可通知開發人員新 API 產品可用性的事件範本:

{
    "createdDate" : 1376975394984,
    "htmlImage" : "<p>Dear ${developer.legalName} , ${developer.name} <br /> Introducing _________. For more details visit us at _________________</p>",
    "id" : "4d81ea64-d005-4010-b0a7-6ec8a5c3954b",
    "name" : "DEFAULT_NEW_PRODUCT_TEMPLATE",
    "orgId" : "myorg",
    "source" : "Mail Man Test",
    "subject" : "Notification of new product",
    "updatedDate" : 1376975394984
}

使用 API 查看通知範本

如要查看通知範本,請向 /mint/organizations/{org_name}/notification-email-templates/{template_id} 發出 GET 要求,其中 {template_id} 是範本的 ID。例如:

curl -X GET "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/notification-email-templates/4d81ea64-d005-4010-b0a7-6ec8a5c3954b" \
  -H "Accept:application/json"  \
  -u email:password

範本中開頭為 $ 的項目為變數。詳情請參閱「在通知範本中使用變數」。假設通知中的變數會評估為下列值:

  • ${developer.legalName}.XYZ company
  • ${developer.name}.DEV1
  • ${QUOTA_TYPE}.Transactions
  • ${PERCENT}.90%
  • ${QUOTA_UNIT}.Calls
  • ${QUOTA_LIMIT}.100
  • ${ratePlan.monetizationPackage.products.name}.X
  • ${EXPIRY_DATE}.2016-09-30

範本提供的通知訊息將如下所示:

    "Dear XYZ company, DEV1
    You have exceeded Transactions of 90% calls of 100 calls for X product. Your API calls will be blocked till 2016-09-30"

使用 API 編輯通知範本

/nint/organizations/{org_name}/notification-email-templates/{template_id} 發出 PUT 要求,即可編輯通知範本。在要求主體中提供變更後的範本內容。

在通知範本中自訂訊息時,您可以加入一或多個變數。詳情請參閱「在通知範本中使用變數」。

舉例來說,下列要求會編輯新 API 產品通知的內容:

curl -X PUT "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/notification-email-templates/4d81ea64-d005-4010-b0a7-6ec8a5c3954b " \
  -H "Content-Type: application/json" \
  -d '{
    "id" : "4d81ea64-d005-4010-b0a7-6ec8a5c3954b",
    "htmlImage" : "<p>Exciting news, we have added a new product :${Product.name}. See details in <a href="${Product.url}">New Products</a> </p>",
    "name" : "NewProductNotification",
    "organization": {
    "id": "{org_name}"
    },
    "source" : "Mail Man Test ",
    "subject" : "New Product Available: ${Product.name}"
  }' \
  -u email:password

使用 API 管理通知條件和動作

按照下列各節所述,使用 API 管理通知條件和動作。

使用 API 建立通知條件和動作

建立通知條件和動作,藉由向 /mint/organizations/{org_name}/notification-conditions 發出 POST 要求,產生自動通知。

提出要求時,請在要求內容中指定導致通知的條件,以及達到條件時要採取的動作 (例如傳送通知電子郵件)。

您可以指定一或多個屬性值,定義通知條件的詳細資料。如需屬性清單,請參閱通知條件的設定屬性。針對事件通知,發布新產品時可能會觸發條件。

定義 actions 時,請參照適用的通知範本。如需動作清單,請參閱「通知動作的設定屬性」。

舉例來說,下列要求會指定當屬性為 NEW_PRODUCT,且屬性 PUBLISHED 的值為 true 時,以 ID 01191bf9-5fdd-45bf-8130-3f024694e63 (即 DEFAULT_NEW_PRODUCT_TEMPLATE) 傳送範本中的通知。

curl -X POST "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/notification-conditions" \
  -H "Content-Type:application/json"
  -d '{
    "notificationCondition": [
    {
      "attribute": "NEW_PRODUCT"
    },
    {
      "attribute": "PUBLISHED",
      "value": "true"
    }
    ],
    "actions": [{
      "actionAttribute": "DEV_ID",
      "value": "ANY",
      "templateId": "01191bf9-5fdd-45bf-8130-3f024694e63"
    }]
  }' \
  -u email:password

使用 API 查看通知條件和動作

如要查看通知條件和動作,請向 organizations/{org_name}/notification-conditions/{condition_Id} 發出 GET 要求,其中 {condition_Id} 是條件的 ID。建立通知條件時,系統會傳回 ID。例如:

curl -X GET "https://api.enterprise.apigee.com /v1/mint/organizations/{org_name}/notification-conditions/2d08d03f-8a54-4e75-bd6f-9c9da2f53fc4" \
  -H "Accept:application/json" \
  -u email:password

以下提供回應範例:

    {
    "actions" : [ {
    "actionAttribute" : "DEV_ID",
    "id" : "141ba00c-d7bd-4fef-b339-9d58b83255f4",
    "templateId" : "766aba4f-0f7a-4555-b48e-d707c48b8f4c",
    "value" : "ANY"
    }, {
    "actionAttribute" : "ORG_EMAIL",
    "id" : "21486ce1-4290-4a55-b415-165af3e93c9d",
    "templateId" : "efa4ce63-7c08-4876-984b-6878ec435994",
    "value" : "DEFAULT_LIMIT_NOTIFICATION_EMAIL"
    } ],
    "notificationCondition" : [ {
    "attribute" : "Balance",
    "id" : "2d08d03f-8a54-4e75-bd6f-9c9da2f53fc4",
    "organization" : {
    ...
    },
    "value" : "< 0"
    } ]
    }

使用 API 編輯通知條件和動作

如要編輯通知條件和動作,請向 organizations/{org_name}/notification-conditions/{condition_Id} 發出 POST 要求,其中 {condition_Id} 是條件的 ID。系統會在您建立通知條件時傳回 ID。發出要求時,請在要求主體中指定您要對通知條件或動作所做的變更。

例如:

   $ curl -H "Content-Type:application/json" -X POST -d \
    ' {
    "notificationCondition": [
    {
      "attribute": "NEW_PRODUCT"
    },
    {
    "attribute": "PUBLISHED",
    "value": "true"
    }
    ],
    "actions": [{
      "actionAttribute": "DEV_ID",
      "value": "ANY",
      "templateId": "01191bf9-5fdd-45bf-8130-3f024694e63"
    }]
    }' \
    "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/notification-conditions/2d08d03f-8a54-4e75-bd6f-9c9da2f53fc4" \
  -u email:password

使用 API 刪除通知條件和動作

organizations/{org_name}notification-conditions/{condition_Id} 發出 DELETE 要求,即可刪除通知條件。例如:

curl -X DELETE "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/notification-conditions/2d08d03f-8a54-4e75-bd6f-9c9da2f53fc4"  \
  -H "Accept:application/json"  \
  -u email:password

通知條件的設定屬性

使用 API 時,可使用下列通知條件設定屬性。

名稱 說明 預設 必填與否
attribute

通知條件的詳細資料。您可以指定一或多個屬性,藉此細化通知條件。

這個值可以是下列一或多個值:

  • ADD_RATEPLAN
  • ADHOC_NOTIFY_DEVELOPERS
  • BILLING_DOCS_PUBLISHED
  • COMPANY_ACCEPTS_INVITATION
  • COMPANY_CANCELS_INVITATION
  • COMPANY_DECLINES_INVITATION
  • COMPANY_INVITES_DEVELOPER
  • CREATE_APPLICATION
  • CREATE_DEVELOPER
  • DATE
  • DEVELOPER_ACCEPTS_INVITATION
  • DEVELOPER_CANCELS_INVITATION
  • DEVELOPER_DECLINES_INVITATION
  • DEVELOPER_INVITES_COMPANY
  • EXPIRING_TNC
  • FeeExposure
  • FREEMIUM_USED_UP
  • NEW_PACKAGE
  • NEW_PRODUCT
  • PUBLISHED
  • RATEPLAN
  • RATEPLAN_ACCEPTED
  • RATEPLAN_ENDED
  • RATEPLAN_EXPIRED
  • RATEPLAN_RENEWED
  • RATEPLAN_REVISION
  • Transactions
  • UPDATE_DEVELOPER
  • UsageTarget (僅適用於設定 Webhook)
不適用
value

屬性值。

不適用
associatedCondition

參照相關條件。

不適用

通知動作的設定屬性

使用 API 時,通知動作可使用下列設定屬性。

名稱 說明 預設 必填與否
actionAttribute

用於識別通知收件者的做法。這個值可以是下列一或多個值:

  • ORG_EMAIL. 通知收件者會透過電子郵件地址識別。
  • DEV_ID:通知收件者會透過開發人員 ID (電子郵件地址) 識別。
  • COMPANY_ADMINS。無論設定的值為何,系統都會傳送通知給所有公司管理員。請注意,公司管理員與機構管理員不同。
  • WEBHOOK. 通知收件者資訊會傳送至 webhook 回呼處理程序。請參閱「使用 Webhook 設定通知」一節。
不適用
value

動作屬性的值。

如果 actionAttribute 設為 ORG_EMAILDEV_IDANY 值會將通知傳送給任何適用的收件者,例如任何 ORG_EMAIL 地址或任何 DEV_ID

如果 actionAttribute 設為 WEBHOOK,請將這個值設為 webhook 的 ID。

如果將 actionAttribute 設為 COMPANY_ADMINS,系統會忽略這個值;通知會傳送給所有公司管理員。

不適用
templateID

通知範本的 ID。

注意:如果 actionAttribute 設為 WEBHOOK,這個選項就無效。

不適用
postURL

Webhook 的回呼處理常式。

注意:如果 actionAttribute 設為 WEBHOOK,則必須使用這個選項。如果值設為 ORG_EMAILDEV_IDCOMPANY_ADMINS,則此選項無效。

不適用

在通知範本中使用變數

編輯通知範本中的訊息時,您可以使用 Spring 運算式語言 (SpEL) 加入一或多個變數,用來代表 Transaction 物件中傳回的值。

下表總結了最常用的通知範本變數。

變數 說明
${application.name}

應用程式的名稱。

${application.products.name} 應用程式中所含產品的名稱。
${BALANCE} 指定配額的餘額。
${developer.legalName}

開發人員公司的名稱。

${developer.name}

開發人員的名稱。

${EXPIRY_DATE}

限制到期或重設的日期/時間。

${LONG_PERCENT} 目前用量達到的上限百分比,不含 % 符號。例如:50
${PERCENT}

目前用量達到限制的百分比,以 % 符號表示。例如 50%。

${products.displayName} 為產品定義的顯示名稱。
${QUOTA_TYPE}

限制類型 (交易量、支出上限或費用曝險)。

${QUOTA_UNIT}

限制的基本單位:貨幣 (支出上限) 或呼叫 (交易上限)。

${QUOTA_LIMIT}

限制金額。

${ratePlan.displayName} 房價方案的顯示名稱。
${ratePlan.endDate} API 供應商終止費率方案的日期。
${ratePlan.monetizationPackage.displayName}

API 套件名稱。

${ratePlan.monetizationPackage.name} 營利套件名稱。
${ratePlan.monetizationPackage.products.displayName}

為 API 產品定義的顯示名稱。

${ratePlan.monetizationPackage.products.name} 營利套裝方案中包含的產品名稱。
${ratePlan.startDate} 房價方案的建立日期。
${USAGE} 目前的用量 (總收益或費用,或銷售量)。
${USER}

使用者名稱。

自訂回覆電子郵件地址

以營利來說,系統會將預設的 noreply@apigee.com 地址設為用於發送給公司和開發人員的電子郵件通知。請與 Apigee 支援團隊聯絡,為貴機構設定自訂回覆名稱和地址。