Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы может все еще выполняться. Актуальные сведения см. в документации на английском языке.

События веб-перехватчика для API GitHub Marketplace

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

Примечание: Эта статья относится только к публикации GitHub Apps в GitHub Marketplace. Дополнительные сведения о публикации GitHub Actions в GitHub Marketplace см. в разделе Публикация действий в GitHub Marketplace.

Сведения о веб-перехватчиках и GitHub Marketplace

Запросы веб-перехватчиков POST содержат специальные символы. Дополнительные сведения см. в разделе События и полезные данные веб-перехватчика. GitHub не выполняет повторную отправку в случае сбоя доставки. Убедитесь, что приложение может принимать все полезные данные веб-перехватчика, отправленные GitHub.

Отмена и понижение уровня вступают в силу в первый день следующего цикла выставления счетов. События понижения уровня и отмены отправляются, когда новый план вступает в силу в начале следующего цикла выставления счетов. События для новых покупок и обновлений начинаются немедленно. Используйте effective_date в полезных данных веб-перехватчика, чтобы определить, когда начнется изменение.

Примечание. Если вы обнаружили спам GitHub Marketplace покупок или другое вредоносное поведение, заполните форму сообщения о нарушении, где следует указать дополнительные сведения о пользователей.

Сведения о полезных данных веб-перехватчика покупки для GitHub Marketplace

Все marketplace_purchase полезные данные веб-перехватчика будут содержать следующие сведения:

КлючТипОписание
actionstringДействие, выполненное для создания веб-перехватчика. Может быть purchased, cancelled, pending_change, pending_change_cancelled или changed. Дополнительные сведения см. в примере полезных данных веб-перехватчика ниже. Примечание. Полезные данные pending_change и pending_change_cancelled содержат те же ключи, которые показаны в changed примере полезных данных.
effective_datestringДата, когда action вступает в силу.
senderobjectЧеловек, который взял action, который вызвал веб-перехватчик.
marketplace_purchaseobjectИнформация о покупке GitHub Marketplace.

Объект marketplace_purchase содержит следующие ключи:

КлючТипОписание
accountobjectУчетные записи organization или user, связанные с подпиской. Учетные записи организации будут включать organization_billing_email — адрес электронной почты администратора организации. Чтобы найти адреса электронной почты для личных учетных записей, можно использовать конечную точку Получение пользователя, прошедшего проверку подлинности.
billing_cyclestringМожет иметь значение yearly или monthly. Если владелец account использует бесплатный план GitHub и приобрел бесплатный план GitHub Marketplace, billing_cycle будет иметь значение nil.
unit_countintegerКоличество приобретенных единиц.
on_free_trialbooleantrue, если account доступен в пробной бесплатной версии.
free_trial_ends_onstringДата истечения срока действия бесплатной пробной версии.
next_billing_datestringДата начала следующего цикла выставления счетов. Если владелец account использует бесплатный план GitHub.com и приобрел бесплатный план GitHub Marketplace, next_billing_date будет иметь значение nil.
planobjectПлан, приобретенный user или organization.

Объект plan содержит следующие ключи:

КлючТипОписание
idintegerУникальный идентификатор этого плана.
namestringИмя плана.
descriptionstringОписание этого плана.
monthly_price_in_centsintegerЦена этого плана за месяц в центах (валюта США). Например, листинг, который стоит 10 долларов США в месяц, будет иметь значение "1000 центов".
yearly_price_in_centsintegerЦена этого плана за год в центах (валюта США). Например, листинг, который стоит 100 долларов США в год, будет иметь значение "120 000 центов".
price_modelstringМодель ценообразования для этого листинга. Может иметь значение FLAT_RATE, PER_UNIT или FREE.
has_free_trialbooleantrue, если в этом листинге предлагается бесплатная пробная версия.
unit_namestringИмя единицы. Если модель ценообразования отличается от per-unit, будет иметь значение nil.
bulletarray of stringsИмена маркеров, заданных в тарифном плане.