Как настроить уведомления с помощью шаблонов уведомлений

Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X.
Информация

Что такое шаблоны уведомлений?

В разделе "Монетизация" есть шаблоны с примерами текста для уведомлений о разных типах событий. Вы можете настроить любой из этих шаблонов, чтобы:

  • Уведомлять всех разработчиков о событиях, таких как выпуск новых продуктов, новых версий Условий использования или новых тарифных планов.
  • Уведомлять разработчиков о событиях, например об изменении тарифного плана.
  • Уведомлять поставщика API о событиях, связанных с разработчиками, например о регистрации аккаунта или оформлении тарифного плана.
  • Уведомлять всех администраторов компании о конкретном событии.

Вы также можете создать веб-перехватчик, который определяет обработчик обратного вызова HTTP, а затем настроить условие, которое запускает веб-перехватчик, как описано в разделе Как настроить уведомления с помощью веб-перехватчиков.

Страница уведомлений

Перейдите на страницу уведомлений, как описано ниже.

Edge

Чтобы перейти на страницу уведомлений в интерфейсе Edge:

  1. Войдите в аккаунт на сайте apigee.com/edge.
  2. На панели навигации слева выберите Публикация > Монетизация > Уведомления.

Откроется страница уведомлений.

Как показано на рисунке, на странице уведомлений можно:

Классическая версия Edge (частное облако)

Чтобы перейти на страницу уведомлений в классическом интерфейсе Edge:

  1. Войдите в http://ms-ip:9000, где ms-ip – это IP-адрес или DNS-имя узла сервера управления.
  2. На панели навигации вверху страницы выберите Администрирование > Уведомления.

На странице уведомлений можно:

Как изменить уведомления

Чтобы изменить уведомление с помощью интерфейса:

  1. Откройте страницу уведомлений.
  2. Нажмите на стрелку вниз рядом с уведомлением, чтобы развернуть его.
  3. При необходимости измените поля "Тема", "Текст письма" и "Получатель".

    Информацию о переменных, которые можно указать в шаблоне уведомления, можно найти в статье Как использовать переменные в шаблонах уведомлений.

    Подробную информацию о том, как изменить настройки уведомлений в каждой категории, можно найти в следующих разделах:

  4. Установите флажок рядом с нужным уведомлением.
  5. Повторите шаги 2–4, чтобы изменить другие уведомления.
  6. Нажмите Сохранить, чтобы сохранить все изменения.

Появится сообщение о том, что настройки уведомлений сохранены. Сохранение может занять несколько минут.

Изменение уведомлений для всех разработчиков

Уведомления о событиях, выбранных в разделе Уведомлять всех разработчиков, отправляются всем разработчикам.

Уведомления запланированы на конец дня. После отправки уведомлений флажки событий будут сняты автоматически. Чтобы получать уведомления о связанных типах событий, вам нужно будет выбрать их снова.

В таблице ниже перечислены уведомления, которые можно настроить в разделе "Уведомлять всех разработчиков". Подробнее о том, как изменять уведомления с помощью интерфейса…

Тип события Триггер Примечания
Новый пакет Доступен новый пакет API

Добавьте названия новых пакетов (и товаров, входящих в каждый пакет) в текст шаблона письма. Вы также можете добавить ссылку на портал для разработчиков или любой другой сайт, на котором можно найти дополнительную информацию об уведомлении.

Новый товар Доступен новый продукт API

Добавьте названия новых товаров в текст шаблона письма. Вы также можете добавить ссылку на портал для разработчиков или любой другой сайт, на котором есть дополнительная информация об уведомлении.

Новые рынки/охват Новые продукты API доступны на определенных географических рынках

Добавьте в шаблон письма названия новых рынков и подходящие товары. Вы также можете добавить ссылку на портал для разработчиков или любой другой сайт, на котором можно найти дополнительную информацию об уведомлении.

Как изменить уведомления, чтобы сообщить о проблеме затронутым разработчикам

Уведомления о событиях, выбранных в разделе Уведомлять затронутых разработчиков, отправляются только тем разработчикам, которых эти события касаются. Например, если вы выберете событие "Измененный тарифный план", уведомление будет отправлено только тем разработчикам, которые приняли тарифный план.

В таблице ниже перечислены уведомления, которые отправляются разработчикам в зависимости от типа события. Подробнее о том, как изменять уведомления с помощью интерфейса…

Тип события Триггер Примечания
Условия использования не приняты или истек срок их действия Опубликованы новые Условия использования, но разработчик ещё не принял их.

Уведомление отправляется за 30, 7 и 1 день до вступления в силу новых Условий использования.

Новый тарифный план Опубликованы новые тарифные планы

Если тарифный план:

  • План Standard: уведомления получают все разработчики.
  • Тарифный план для разработчиков определенной категории – уведомления получают только разработчики из этой категории.
  • Тарифный план для разработчиков – уведомление получает только разработчик.
Измененный тарифный план Доступна более новая версия приобретенного тарифного плана

Уведомления получат только те разработчики, которые приобрели текущую версию. Уведомление позволяет разработчикам ознакомиться с новой версией и отменить или изменить тарифный план, если они не хотят принимать новые цены.

Срок действия тарифного плана истек Срок действия тарифного плана истек, а новый не назначен

Это уведомление отправляется, когда вы впервые устанавливаете срок действия тарифного плана. Дополнительные уведомления отправляются за 30, 7 и 1 день до даты окончания срока действия. Уведомления получат только те разработчики, которые приобрели тарифный план, срок действия которого истекает.

Продленный тарифный план Подписка на тарифный план продлена.

Сообщите разработчику, что с него будет взиматься комиссия.

Превышено ограничение на частоту запросов Превышен лимит тарифного плана

Сообщите разработчику, что с него будет взиматься комиссия.

Тарифный план Freemium с исчерпанным лимитом Бесплатный период использования, измеряемый количеством транзакций или дней, истек.

Бесплатный период использования определяется вашим тарифным планом freemium.

Опубликован платежный документ

Доступны платежные документы разработчика, например счета.

Разработчик оформляет новый тарифный план Разработчик оформляет новый тарифный план.

Уведомления об изменении для поставщиков API

Уведомления о типах событий, выбранных в разделе Уведомлять поставщика API, отправляются указанному вами поставщику API.

В таблице ниже перечислены уведомления, основанные на типах событий в разделе Notify API Provider (Поставщик API уведомлений). Подробнее о том, как изменять уведомления с помощью интерфейса…

Тип события Триггер
Новый разработчик регистрируется

Разработчик зарегистрировал аккаунт.

Разработчик добавляет приложение

Разработчик создал новое приложение.

Регистрация разработчика в новом тарифном плане

Разработчик оформил тарифный план.

Разработчик меняет финансовые данные

Разработчик изменил финансовые данные, например название или адрес компании.

включить или отключить уведомление;

Чтобы включить или отключить уведомление с помощью интерфейса:

  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} – идентификатор шаблона. Пример:

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, как описано в следующих разделах.

Как создать условие и действие для уведомления с помощью API

Создайте условие и действие для уведомления, чтобы оно отправлялось автоматически, выполнив запрос POST к /mint/organizations/{org_name}/notification-conditions.

В теле запроса укажите условие, при котором должно отправляться уведомление, и действия, которые нужно выполнить при достижении этого условия (например, отправить уведомление по электронной почте).

Вы можете задать условия уведомления, указав одно или несколько значений атрибутов. Список атрибутов можно найти в разделе Свойства конфигурации для условий уведомлений. Для уведомления о событии условие может быть активировано при публикации нового продукта.

При определении значения actions укажите подходящий шаблон уведомления. Список действий можно найти в разделе Свойства конфигурации для действий с уведомлениями.

Например, в следующем запросе указано, что если атрибут NEW_PRODUCTPUBLISHED имеет значение true, то нужно отправить уведомление на основе шаблона с идентификатором 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} – идентификатор условия. Идентификатор возвращается при создании условия уведомления. Пример:

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} – идентификатор условия. Идентификатор возвращается при создании условия уведомления. При отправке запроса укажите в его теле изменения, которые вы хотите внести в условие или действие уведомления.

Пример:

   $ 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

Сведения об условии уведомления. Вы можете указать один или несколько атрибутов, чтобы уточнить условие уведомления.

Возможные значения:

  • 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 (действительно только для настройки вебхуков)
Н/Д Да
value

Значение атрибута.

Н/Д Нет
associatedCondition

Ссылка на связанное условие.

Н/Д Нет

Свойства конфигурации для действий с уведомлениями

При использовании API для действий с уведомлениями доступны следующие свойства конфигурации.

Название Описание По умолчанию Обязательно?
actionAttribute

Способ идентификации получателя уведомления. Возможные значения:

  • ORG_EMAIL. Получатель уведомления определяется по адресу электронной почты.
  • DEV_ID. Получатель уведомления определяется по идентификатору разработчика (адресу электронной почты).
  • COMPANY_ADMINS. Уведомление отправляется всем администраторам компании независимо от заданного значения. Обратите внимание, что администраторы компании отличаются от администраторов организации.
  • WEBHOOK. Информация о получателе уведомления отправляется обработчику обратного вызова webhook. Подробнее о том, как настроить уведомления с помощью вебхуков…
Н/Д Да
value

Значение атрибута действия.

Если для параметра actionAttribute задано значение ORG_EMAIL или DEV_ID, то значение ANY отправит уведомление любому подходящему получателю, например на любой адрес ORG_EMAIL или DEV_ID.

Если для параметра actionAttribute задано значение WEBHOOK, укажите идентификатор веб-перехватчика.

Если для правила actionAttribute задано значение COMPANY_ADMINS, это значение игнорируется и уведомление отправляется всем администраторам компании.

Н/Д Да
templateID

Идентификатор шаблона уведомления.

Примечание. Этот вариант недопустим, если для параметра actionAttribute задано значение WEBHOOK.

Н/Д Да
postURL

Обработчик обратного вызова для вебхука.

Примечание. Этот вариант обязателен, если для параметра actionAttribute задано значение WEBHOOK. Этот вариант недоступен, если задано значение ORG_EMAIL, DEV_ID или COMPANY_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.