为开发者改用创收功能

您正在查看 Apigee Edge 文档。
前往 Apigee X 文档
信息

如果您有现有开发者需要迁移到创收,请执行以下操作:

  1. 为要迁移的开发者创建 API 产品、API 软件包和费率方案(如果尚不存在)。如需了解详情,请参阅:
  2. 发布费率方案,如发布费率方案中所述。
  3. 将新开发者添加到您的组织,如注册应用开发者中所述。
  4. 按照管理预付款账号余额中的说明为每位开发者充值。
  5. 接受费率方案,如使用 API 购买费率方案中所述。

    注意:如果开发者已被收取设置费用,若要免除设置费用,请将 waivefees 查询参数设置为 true

  6. 如果您要迁移的开发者有现有交易,您可以使用以下资源手动转移交易用量:
    /organizations/{org_name}/transactions,其中 {org_name} 是组织的名称。

    注意:如果开发者没有现有交易,则可以跳过此步骤。

    transactions 资源会插入一个反映当前事务用量的单个事务,并更新所有内部计数器以反映此新值。

    例如,如果开发者在迁移之前向 API 发出了 1000 次调用,那么为了捕获当前活动,您可以通过调用 transactions 资源并在请求正文中将 batchSize 属性设置为 1000 来将事务用量设置为 1000。

    下表总结了您可以在请求正文中指定的配置属性,以便手动设置事务数量、默认值以及是否为必需属性。

    属性 说明 默认值 是否必需?
    application

    开发者应用的 ID。

    不适用
    batchSize

    您要转移的交易次数。

    1
    custAttn

    自定义属性的值,与 batchSize 搭配使用以计算事务用量。

    消息中的自定义属性编号必须指定为正整数或小数(最多小数点后四位)值。不允许使用负值。

    自定义属性必须在以下位置定义:

    不适用
    product

    API 产品的 ID。

    不适用
    type

    必须设置为 CHARGE(默认值)。

    CHARGE

    如需跳过验证步骤并强制设置交易数量,请将 force 查询参数设置为 true(例如 ?force=true)。默认情况下,系统会执行 ?force=false 和验证步骤。例如,如果预付款开发者的余额为零,并且账号的活动已暂停,则如果 ?force=false,请求将在验证期间失败。

    例如,以下请求会将指定应用和 API 产品的事务数设置为 50:

    $ 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

    开发者的 ID。

    不适用
    rate

    要收取的设置费用或周期性费用。

    不适用
    ratePlan

    费率方案的 ID。

    不适用
    type

    设为 SETUPFEESRECURRINGFEES

    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