Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
В этом разделе описывается, как приобрести опубликованный тарифный план, а также, при желании, аннулировать или отменить приобретенный тарифный план с помощью API.
Приобретение опубликованного тарифного плана с использованием API.
После публикации тарифного плана разработчик или компания могут приобрести (или «принять») его, отправив POST-запрос по адресу /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans , где {org_name} — название организации, а {developer_or_company_id} — идентификатор разработчика или компании.
Чтобы отменить плату за настройку при покупке тарифного плана, установите параметр запроса waivefees в true . Этот флаг полезен при переводе разработчиков на монетизацию, как описано в разделе «Перевод разработчиков на монетизацию» .
В таблице ниже приведено краткое описание свойств конфигурации, которые можно указать в теле запроса, их значения по умолчанию, а также указано, являются ли они обязательными.
| Имя | Описание | По умолчанию | Необходимый? |
|---|---|---|---|
startDate | Дата начала действия тарифного плана. Например: 24.03.2017 . | Н/Д | Да |
endDate | Дата окончания действия тарифного плана. Например: 24.09.2017 . Тарифный план будет действовать до конца дня указанной даты. Например, если вы хотите, чтобы действие тарифного плана истекло 1 декабря 2017 года, вам следует установить значение endDate равным 2017-11-30 . В этом случае действие тарифного плана истечет в конце дня 30 ноября 2017 года; все запросы, поданные 1 декабря 2017 года, будут заблокированы. | Н/Д | Нет |
developer | Свойство | Н/Д | Да |
quotaTarget | Для разработчика приложения разрешено целевое количество транзакций. Вы можете настроить отправку уведомлений в зависимости от того, какой процент от целевого числа достигнут, например, 90%, 100% или 150%. После достижения целевого числа дополнительные транзакции не блокируются. Установите это значение на положительное целое число или на 0, чтобы отключить уведомления для разработчика приложения. | 0 | Нет |
ratePlan | Свойство Идентификатор тарифного плана отличается от отображаемого названия. Чтобы просмотреть подробную информацию о тарифном плане, включая идентификатор, см. страницу «Изучение тарифных планов» . | Н/Д | Да |
suppressWarning | Флаг, указывающий, следует ли подавлять ошибку, если разработчик пытается приобрести тарифный план, который частично совпадает с другим приобретенным тарифным планом. Значение может быть одним из следующих:
| Н/Д | Нет |
waveTerminationCharge | Флаг, указывающий, отменяются ли сборы за расторжение договора при прекращении действия текущего тарифного плана в рамках активации нового тарифного плана. Значение может быть одним из следующих:
| Н/Д | Нет |
Например, следующий запрос приобретает тарифный план location_&_messaging для указанного разработчика:
curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
-X POST \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"developer":{
"id":"5cTWgdUvdr6JW3xU"
},
"startDate":"2017-08-30",
"ratePlan":{
"id":"location_&_messaging"
},
"suppressWarning":false
}'
В этом примере свойство suppressWarning установлено в значение false . В этом случае при возникновении конфликта будет выброшена ошибка. Например, если разработчик попытается приобрести тарифный план, который пересекается с другим приобретенным тарифным планом, будет выброшена ошибка. Это позволяет приложению, предоставляющему пользовательский интерфейс для монетизации, перехватить ошибку и отобразить конфликтующие продукты разработчику для подтверждения (при необходимости). Если suppressWarning установлено в true , монетизация прекращает использование всех приобретенных разработчиком тарифных планов для пакетов API, содержащих конфликтующие продукты. Затем она приобретает новый пакет API для разработчика.
В следующем запросе приобретается тарифный план с регулируемой частотой уведомлений, а целевое количество транзакций устанавливается на уровне 4000.
curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
-X POST \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"developer":{
"id":"5cTWgdUvdr6JW3xU"
},
"ratePlan":{
"id":"adjustable-notification-plan"
},
"startDate": "2017-03-24",
"quotaTarget": 4000,
"suppressWarning":false
}'
В любом из приведенных выше примеров, если возвращается следующее сообщение об ошибке:
Developer legal name not specified.
Затем необходимо установить атрибуты монетизации MINT_DEVELOPER_ADDRESS и MINT_DEVELOPER_LEGAL_NAME , после чего повторить вызов API.
Истечение срока действия тарифного плана, приобретенного разработчиком с использованием API.
Чтобы аннулировать (или отменить) тарифный план, приобретенный разработчиком, обновите сведения о приобретенном тарифном плане и укажите свойство endDate в теле запроса PUT к ресурсу /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id} .
Тарифный план будет действовать до конца дня указанной даты окончания. Например, если вы хотите, чтобы действие тарифного плана истекло 1 декабря 2017 года, вам следует установить значение endDate равным 2017-11-30 . В этом случае действие тарифного плана истечет в конце дня 30 ноября 2017 года; все запросы, поданные 1 декабря 2017 года, будут заблокированы.
При покупке опубликованного тарифного плана в ответе возвращается значение {developer_rateplan_id} .
Например:
{
"created": "2017-03-31 18:59:54",
"developer": {
...
},
"id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
"quotaTarget": 3000,
"ratePlan": {
...
},
"startDate": "2017-03-31 00:00:00",
"updated": "2017-03-31 18:59:54",
"waiveTerminationCharge": false
}
В качестве альтернативы, вы можете получить идентификатор {developer-rateplan-id} для тарифного плана разработчика, отправив GET-запрос по адресу /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans , где {developer_id} — это адрес электронной почты разработчика. Для получения дополнительной информации см. раздел «Просмотр всех тарифных планов, приобретенных разработчиком» .
Следующий запрос обновляет дату окончания действия тарифного плана до 1 декабря 2017 года. То есть, действие тарифного плана истечет в конце дня 30 ноября 2017 года; все запросы, поданные 1 декабря 2017 года, будут заблокированы.
curl "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans/b1c600b8-f871-496d-8173-12b9950d6ab1"
-X PUT \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"id" : "b1c600b8-f871-496d-8173-12b9950d6ab1",
"developer":{
"id":"dev@mycompany.com"
},
"ratePlan":{
"id":"p1_adjustable-notification-plan"
},
"startDate": "2017-04-15 00:00:00",
"endDate": "2017-11-30",
"quotaTarget": 3000,
"suppressWarning":false
}'
Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
В этом разделе описывается, как приобрести опубликованный тарифный план, а также, при желании, аннулировать или отменить приобретенный тарифный план с помощью API.
Приобретение опубликованного тарифного плана с использованием API.
После публикации тарифного плана разработчик или компания могут приобрести (или «принять») его, отправив POST-запрос по адресу /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans , где {org_name} — название организации, а {developer_or_company_id} — идентификатор разработчика или компании.
Чтобы отменить плату за настройку при покупке тарифного плана, установите параметр запроса waivefees в true . Этот флаг полезен при переводе разработчиков на монетизацию, как описано в разделе «Перевод разработчиков на монетизацию» .
В таблице ниже приведено краткое описание свойств конфигурации, которые можно указать в теле запроса, их значения по умолчанию, а также указано, являются ли они обязательными.
| Имя | Описание | По умолчанию | Необходимый? |
|---|---|---|---|
startDate | Дата начала действия тарифного плана. Например: 24.03.2017 . | Н/Д | Да |
endDate | Дата окончания действия тарифного плана. Например: 24.09.2017 . Тарифный план будет действовать до конца дня указанной даты. Например, если вы хотите, чтобы действие тарифного плана истекло 1 декабря 2017 года, вам следует установить значение endDate равным 2017-11-30 . В этом случае действие тарифного плана истечет в конце дня 30 ноября 2017 года; все запросы, поданные 1 декабря 2017 года, будут заблокированы. | Н/Д | Нет |
developer | Свойство | Н/Д | Да |
quotaTarget | Для разработчика приложения разрешено целевое количество транзакций. Вы можете настроить отправку уведомлений в зависимости от того, какой процент от целевого числа достигнут, например, 90%, 100% или 150%. После достижения целевого числа дополнительные транзакции не блокируются. Установите это значение на положительное целое число или на 0, чтобы отключить уведомления для разработчика приложения. | 0 | Нет |
ratePlan | Свойство Идентификатор тарифного плана отличается от отображаемого названия. Чтобы просмотреть подробную информацию о тарифном плане, включая идентификатор, см. страницу «Изучение тарифных планов» . | Н/Д | Да |
suppressWarning | Флаг, указывающий, следует ли подавлять ошибку, если разработчик пытается приобрести тарифный план, который частично совпадает с другим приобретенным тарифным планом. Значение может быть одним из следующих:
| Н/Д | Нет |
waveTerminationCharge | Флаг, указывающий, отменяются ли сборы за расторжение договора при прекращении действия текущего тарифного плана в рамках активации нового тарифного плана. Значение может быть одним из следующих:
| Н/Д | Нет |
Например, следующий запрос приобретает тарифный план location_&_messaging для указанного разработчика:
curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
-X POST \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"developer":{
"id":"5cTWgdUvdr6JW3xU"
},
"startDate":"2017-08-30",
"ratePlan":{
"id":"location_&_messaging"
},
"suppressWarning":false
}'
В этом примере свойство suppressWarning установлено в значение false . В этом случае при возникновении конфликта будет выброшена ошибка. Например, если разработчик попытается приобрести тарифный план, который пересекается с другим приобретенным тарифным планом, будет выброшена ошибка. Это позволяет приложению, предоставляющему пользовательский интерфейс для монетизации, перехватить ошибку и отобразить конфликтующие продукты разработчику для подтверждения (при необходимости). Если suppressWarning установлено в true , монетизация прекращает использование всех приобретенных разработчиком тарифных планов для пакетов API, содержащих конфликтующие продукты. Затем она приобретает новый пакет API для разработчика.
В следующем запросе приобретается тарифный план с регулируемой частотой уведомлений, а целевое количество транзакций устанавливается на уровне 4000.
curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
-X POST \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"developer":{
"id":"5cTWgdUvdr6JW3xU"
},
"ratePlan":{
"id":"adjustable-notification-plan"
},
"startDate": "2017-03-24",
"quotaTarget": 4000,
"suppressWarning":false
}'
В любом из приведенных выше примеров, если возвращается следующее сообщение об ошибке:
Developer legal name not specified.
Затем необходимо установить атрибуты монетизации MINT_DEVELOPER_ADDRESS и MINT_DEVELOPER_LEGAL_NAME , после чего повторить вызов API.
Истечение срока действия тарифного плана, приобретенного разработчиком с использованием API.
Чтобы аннулировать (или отменить) тарифный план, приобретенный разработчиком, обновите сведения о приобретенном тарифном плане и укажите свойство endDate в теле запроса PUT к ресурсу /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id} .
Тарифный план будет действовать до конца дня указанной даты окончания. Например, если вы хотите, чтобы действие тарифного плана истекло 1 декабря 2017 года, вам следует установить значение endDate равным 2017-11-30 . В этом случае действие тарифного плана истечет в конце дня 30 ноября 2017 года; все запросы, поданные 1 декабря 2017 года, будут заблокированы.
При покупке опубликованного тарифного плана в ответе возвращается значение {developer_rateplan_id} .
Например:
{
"created": "2017-03-31 18:59:54",
"developer": {
...
},
"id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
"quotaTarget": 3000,
"ratePlan": {
...
},
"startDate": "2017-03-31 00:00:00",
"updated": "2017-03-31 18:59:54",
"waiveTerminationCharge": false
}
В качестве альтернативы, вы можете получить идентификатор {developer-rateplan-id} для тарифного плана разработчика, отправив GET-запрос по адресу /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans , где {developer_id} — это адрес электронной почты разработчика. Для получения дополнительной информации см. раздел «Просмотр всех тарифных планов, приобретенных разработчиком» .
Следующий запрос обновляет дату окончания действия тарифного плана до 1 декабря 2017 года. То есть, действие тарифного плана истечет в конце дня 30 ноября 2017 года; все запросы, поданные 1 декабря 2017 года, будут заблокированы.
curl "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans/b1c600b8-f871-496d-8173-12b9950d6ab1"
-X PUT \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"id" : "b1c600b8-f871-496d-8173-12b9950d6ab1",
"developer":{
"id":"dev@mycompany.com"
},
"ratePlan":{
"id":"p1_adjustable-notification-plan"
},
"startDate": "2017-04-15 00:00:00",
"endDate": "2017-11-30",
"quotaTarget": 3000,
"suppressWarning":false
}'