Как перевести разработчиков на монетизацию

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

Если у вас есть разработчики, которых нужно перевести на монетизацию:

  1. Создайте продукты API, пакеты API и тарифные планы для разработчиков, которых вы переносите, если они ещё не существуют. Дополнительную информацию можно найти в следующих статьях:
  2. Опубликуйте тарифные планы, как описано в разделе Публикация тарифных планов.
  3. Добавьте новых разработчиков в организацию, как описано в разделе Регистрация разработчиков приложений.
  4. Пополните баланс предоплаты для каждого разработчика, как описано в разделе Как управлять балансом предоплаченного аккаунта.
  5. Примите тарифный план, как описано в разделе Как покупать тарифные планы с помощью API.

    Примечание. Чтобы отменить комиссию за настройку, если она уже была списана с разработчика, задайте для параметра запроса waivefees значение true.

  6. Если у разработчика, которого вы переносите, есть транзакции, вы можете вручную перенести использование транзакций, используя следующий ресурс:
    /organizations/{org_name}/transactions, где {org_name} – название организации.

    Примечание. Если у разработчика нет транзакций, этот шаг можно пропустить.

    Ресурс transactions вставляет одну транзакцию, которая отражает текущее использование транзакций, и обновляет все внутренние счетчики, чтобы отразить это новое значение.

    Например, если до переноса разработчик выполнил 1000 вызовов API, чтобы сохранить текущую активность, можно задать значение 1000 для использования транзакций, вызвав ресурс transactions и задав для свойства batchSize значение 1000 в теле запроса.

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

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

    Идентификатор приложения разработчика.

    Н/Д Да
    batchSize

    Количество транзакций, которые вы хотите перенести.

    1 Нет
    custAttn

    Значение настраиваемого атрибута, которое используется с batchSize для расчета использования транзакций.

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

    Настраиваемый атрибут должен быть определен в:

    Н/Д Да
    product

    Идентификатор продукта API.

    Н/Д Да
    type

    Необходимо указать следующее значение: CHARGE (это значение по умолчанию).

    CHARGE Нет

    Чтобы пропустить этапы проверки и принудительно задать количество транзакций, установите для параметра запроса force значение true (например, ?force=true). По умолчанию выполняются ?force=false и этапы проверки. Например, если у разработчика, использующего предоплату, нулевой баланс и активность в аккаунте приостановлена, то при проверке запрос ?force=false будет отклонен.

    Например, следующий запрос устанавливает количество транзакций на уровне 50 для указанного приложения и продукта API:

    $ curl -H "Content-Type:application/json" -X POST -d \
    '{ 
       "application":{
         "id":"6a9b1afc-2110-43d6-bae7-1b137aecb05b"
       },
       "product":{
         "id":"testproduct"
       },
       "batchSize":50
    }' \
    "https://api.enterprise.apigee.com/v1/mint/organizations/myOrg/transactions" \
    -u email:password
    

    В следующем запросе для указанного приложения и продукта API задано значение 12,5 для использования транзакций. В запросе атрибуту batchSize присвоено значение 125, а первому настраиваемому атрибуту, определенному для продукта API, присвоено значение 0.1. При умножении 125 на 0,1 получается 12,5.

    $ curl -H "Content-Type:application/json" -X POST -d \
    '{ 
       "application":{
         "id":"6a9b1afc-2110-43d6-bae7-1b137aecb05b"
       },
       "product":{
         "id":"testproduct"
       },
       "batchSize": 125,
       "custAtt1" : 0.1
    }' \
    "https://api.enterprise.apigee.com/v1/mint/organizations/myOrg/transactions" \
    -u email:password
    
  7. Если с разработчика не была списана плата за настройку или регулярная плата, вы можете вручную списать плату за настройку или регулярную плату за тарифный план, используя следующий ресурс:
    /organizations/{org_name}/transactions, где {org_name} – название организации.

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

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

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

    Валюта, используемая для тарифного плана. Укажите код валюты в формате ISO 4217, например usd для доллара США или chf для швейцарского франка.

    Н/Д Да
    developer

    Идентификатор разработчика.

    Н/Д Да
    rate

    Комиссия за настройку или регулярная комиссия.

    Н/Д Да
    ratePlan

    Идентификатор тарифного плана.

    Н/Д Да
    type

    Должно иметь значение SETUPFEES или RECURRINGFEES.

    CHARGE Да

    Чтобы пропустить этапы проверки и принудительно взимать комиссию, задайте для параметра запроса force значение true (например, ?force=true). По умолчанию выполняются ?force=false и этапы проверки. Например, если у разработчика, который вносит предоплату, нулевой баланс и активность в аккаунте приостановлена, то при проверке запрос ?force=false будет отклонен.

    Например, следующий запрос позволяет взимать с разработчика, подписанного на тарифный план, плату за настройку в размере 10 долларов США:

    $ curl -H "Content-Type:application/json" -X POST -d \
    '{ 
       "developer":{
         "id":"dev1@myorg.com"
       },
       "currency":{
         "id":"usd"
       },
       "ratePlan":{
         "id":"mypackage_rateplan1"
       },   
       "rate":10,
       "type":"SETUPFEES"
    }' \
    "https://api.enterprise.apigee.com/v1/mint/organizations/myOrg/transactions" \
    -u email:password