通知テンプレートを使用して通知を設定する

<ph type="x-smartling-placeholder"></ph> 現在、Apigee Edge のドキュメントが表示されています。
Apigee X のドキュメント
詳細

通知テンプレートとは

収益化には、さまざまなタイプのイベントのサンプル テキストを定義する一連のテンプレートが用意されています。 通知を受け取れます。これらのテンプレートは、以下の目的でカスタマイズできます。

  • 新製品、利用規約の新しいバージョン、 考えてみましょう
  • 料金プランの変更などのイベントについて、影響を受けるデベロッパーに通知します。
  • デベロッパーが登録したときなど、デベロッパー関連のイベントについて API プロバイダに通知する またはデベロッパーが料金プランに登録したとき。
  • 特定の予定について会社のすべての管理者に通知します。

または、HTTP コールバック ハンドラを定義する Webhook を作成し、 Webhook をトリガーする条件( Webhook をご覧ください

[Notifications] ページにアクセスする

以下の手順に従って、[Notifications] ページにアクセスします。

Edge

Edge UI を使用して [Notifications] ページにアクセスするには:

  1. apigee.com/edge にログインします。
  2. [公開 >収益化 >通知] をクリックします。

[Notifications] ページが表示されます。

上の図に示すように、[Notifications] ページでは次のことができます。

Classic Edge(プライベート クラウド)

Classic Edge UI を使用して [Notifications] ページにアクセスするには:

  1. http://ms-ip:9000ms-ip の部分)にログインします。 Management Server ノードの IP アドレスまたは DNS 名。
  2. [管理 >通知] をクリックします。

[通知] ページでは、以下のことができます。

通知の編集

UI を使用して通知を編集するには:

  1. [通知] ページにアクセスします。
  2. 編集する通知の横にある をクリックして、詳細を開きます。
  3. 必要に応じて、[Subject]、[Body]、[Recipient](該当する場合)の各欄を編集します。

    通知テンプレート内で指定できる変数については、通知テンプレートでの変数の使用をご覧ください。

    各カテゴリの通知の編集について詳しくは、以下のセクションをご覧ください。

  4. 通知の横にあるチェックボックスをオンにして有効にします。
  5. 別の通知を編集するには、ステップ 2 ~ 4 を繰り返します。
  6. [保存] をクリックしてすべての変更を保存します。

通知が送信されたことを確認するメッセージが表示されます。 保存されました。保存オペレーションには数分かかることがあります。

すべてのデベロッパーに通知するための通知の編集

[Notify All Developers] で選択したイベントの種類に関する通知 セクションがすべてのデベロッパーに送信されます。

通知は 1 日の終わりに実行されるようにスケジュール設定されています。通知が イベントが送信されると、イベントのチェックボックスは自動的にオフになります。スケジュール設定するには、もう一度選択する必要があります イベントタイプの通知の数が示されます。

次の表に、[すべてのデベロッパーに通知] セクションのイベントタイプに基づいて通知を示します。 詳細については、UI を使用した通知の編集をご覧ください。

イベントタイプ トリガー メモ
新しいパッケージ 新しい API パッケージが利用可能

新しいパッケージ(および各パッケージに含まれるプロダクト)の名前を 更新に使用するメール テンプレートの本文を入力します。また、 デベロッパー ポータルやその他のウェブサイトで 通知を受け取ります。

新製品 新しい API プロダクトが利用可能

新しい各商品の名前をメール テンプレートの本文に 更新されますデベロッパー ポータルやその他のウェブサイトへのリンクも追加できます。 は、通知に関する詳細情報を提供します。

新しい市場/カバレッジ 新しい API プロダクトが特定の地域で利用可能に

メールの本文に、新しい市場と関連プロダクトの名前を追加する 更新の一部としてテンプレートが生成されます。また、デベロッパー ポータルや任意のリソースへのリンクを 他のウェブサイトをご覧ください。

影響を受けるデベロッパーに通知する通知の編集

[Notify Affected(影響を通知)] で選択したイベントの種類に関する通知 デベロッパーのセクションは、この種のイベントの影響を受けるデベロッパーのみに送られます。 たとえば、[改訂された料金プラン] イベントを選択すると、 料金プランに同意したデベロッパーです

次の表に、「影響を受けるデベロッパーに通知」セクションのイベントタイプに基づく通知を示します。 詳細については、UI を使用した通知の編集をご覧ください。

イベントタイプ トリガー メモ
利用規約が同意されていないか、期限切れになっています 新しい利用規約が公開されましたが、デベロッパーがまだ同意していません

通知は、新しい利用規約の期限の 30 日前、7 日前、1 日前に送信されます。 適用されます。

新しい料金プラン 新しい料金プランが公開されました

料金プランは:

  • スタンダード プランをご利用の場合は、すべてのデベロッパーに通知されます。
  • デベロッパー カテゴリの料金プランを選択すると、そのカテゴリのデベロッパーにのみ通知されます。
  • デベロッパー料金プラン: 特定のデベロッパーにのみ通知されます。
改定後の料金プラン 購入した料金プランの新しいバージョンを利用できます

通知は、現行バージョンを購入したデベロッパー様にのみ送信されます。「 デベロッパーはこの通知を使用して、新しいバージョンを確認し、 新しい料金を受け入れられない場合は このプランを利用します

料金プランが期限切れです 料金プランが期限切れになり、フォローアップの料金プランがありません

この通知は、料金プランを最初に期限切れに設定したときに送信されます。 有効期限の 30 日前、7 日前、1 日前に送信されます。それらの広告のみ 期限切れになる料金プランを購入したデベロッパーには、その旨が通知されます。

料金プランの更新 料金プランのサブスクリプションが更新されました。

適用される手数料が請求されることをデベロッパーに伝えます。

レート制限の超過 料金プランの上限を超えています

適用される手数料が請求されることをデベロッパーに伝えます。

フリーミアム料金プランの終了 無料使用期間(トランザクション数または日数で測定)を使い切りました

無料使用期間は、フリーミアム料金プランによって定義されます。

請求ドキュメントが公開されました

デベロッパーの課金ドキュメント(請求書など)を利用できます。

デベロッパーが新しい料金プランに登録する デベロッパーが新しい料金プランに申し込みます。

通知を編集して API プロバイダに通知

[Notify API Provider] で選択したイベントタイプの通知 セクションは、指定した API プロバイダに送信されます。

次の表に、[Notify API Provider] セクションのイベントタイプに基づく通知を示します。 詳細については、UI を使用した通知の編集をご覧ください。

イベントタイプ トリガー
新しいデベロッパーの登録

デベロッパーがアカウントを登録しました。

デベロッパーがアプリを追加する

デベロッパーが新しいアプリケーションを作成しました。

デベロッパーが新しい料金プランに申し込む

デベロッパーが料金プランに登録しました。

デベロッパーが財務情報を変更する

デベロッパーが財務情報(会社名や会社名など)を変更した あります。

通知を有効または無効にする

UI を使用して通知を有効または無効にするには:

  1. [通知] ページにアクセスします。
  2. 通知の横にあるチェックボックスをオンまたはオフにして、通知を有効にします。
  3. [保存] をクリックしてすべての変更を保存します。

保存オペレーションには数分かかることがあります。通知が送信されたことを確認するメッセージが表示されます。 保存されました。

API でテンプレートを使用して通知を設定する

以下のセクションで説明するように、API を使用して通知を設定します。

API を使用した通知テンプレートの管理

以下のセクションでは、API を使用して通知テンプレートを管理する方法について説明します。

API を使用してすべての通知テンプレートを表示する

GET を発行することで、収益化で提供されるすべての通知テンプレートを一覧表示できます。 /mint/organizations/{org_name}/notification-email-templates へのリクエストです。例:

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 を使用して通知テンプレートを表示する

通知テンプレートを表示するには、次の宛先に GET リクエストを発行します。 /mint/organizations/{org_name}/notification-email-templates/{template_id}, ここで、{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 を使用した通知テンプレートの編集

通知テンプレートを編集するには、PUT リクエストを /nint/organizations/{org_name}/notification-email-templates/{template_id}。 リクエストの本文で、変更したテンプレートの内容を提供します。

通知テンプレートのメッセージをカスタマイズする場合、 使用します。詳細については、通知での変数の使用をご覧ください。 テンプレート

たとえば、次のリクエストでは、新しい 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 を使用した通知の条件とアクションの作成

次のを発行して、自動通知につながる通知の条件とアクションを作成します。 /mint/organizations/{org_name}/notification-conditions への POST リクエスト。

リクエストを送信するときは、 その条件が満たされたときに実行するアクション(たとえば、 通知メール)。

1 つ以上の属性を指定して、通知条件の詳細を定義します。 使用できます。詳細については、通知条件の構成プロパティをご覧ください。 構成します。イベント通知の場合は、新商品の発売時に条件がトリガーされます。 できます。

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 を使用した通知の条件とアクションの表示

GET リクエストを次の宛先に発行して通知の条件とアクションを表示する organizations/{org_name}/notification-conditions/{condition_Id}、ここで {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 を使用した通知の条件とアクションの編集

POST リクエストを次の宛先に送信して、通知の条件とアクションを編集します。 organizations/{org_name}/notification-conditions/{condition_Id}、ここで {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 を使用した通知の条件とアクションの削除

通知条件を削除するには、次の宛先に DELETE リクエストを発行します。 organizations/{org_name}notification-conditions/{condition_Id}。例:

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

通知条件の詳細。1 つ以上の属性を指定して、 通知条件を絞り込むことができます

値は次のいずれか 1 つ以上になります。

  • 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

通知の受信者を識別する方法。この値は 1 つ以上 次のとおりです。

  • ORG_EMAIL。通知の受信者はメールアドレスで識別されます。
  • DEV_ID。通知の受信者はデベロッパー ID(メールアドレス)で識別されます。
  • COMPANY_ADMINS。会社のすべての管理者に通知が送信されます 常に適用されます。なお、企業の管理者は 組織管理者に委任できます。
  • WEBHOOK。通知の受信者情報が Webhook に送信されます 呼び出すことができます。通知を設定する Webhook を使用する
なし
value

アクション属性の値。

actionAttributeORG_EMAIL または DEV_ID。値を ANY にすると、該当するすべての IP アドレスに通知が送信されます。 任意の ORG_EMAIL アドレスや任意の宛先など、任意の宛先 DEV_ID

actionAttributeWEBHOOK に設定されている場合は、この値を Webhook の ID。

actionAttributeCOMPANY_ADMINS に設定されている場合、この値は無視されます。通知が送信されます 会社のすべての管理者に公開されます。

なし
templateID

通知テンプレートの ID。

注: actionAttribute が設定されている場合、このオプションは無効です。 宛先: WEBHOOK

なし
postURL

Webhook のコールバック ハンドラ。

注: actionAttribute が設定されている場合、このオプションは必須です。 宛先: WEBHOOK。このオプションは、値を ORG_EMAILDEV_ID、または COMPANY_ADMINS

なし

通知テンプレートでの変数の使用

通知テンプレートのメッセージを編集する際、1 つ以上の変数、 Spring Expression Language(SpEL)を使用して、トランザクションで返された値を表現する 渡されます。

次の表は、最もよく使用される通知テンプレート変数をまとめたものです。

変数 説明
${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}

ユーザーの名前。