为开发者改用创收功能

您正在查看 Apigee Edge 文档。
转到 Apigee X 文档。
info

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

  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

    设置为 SETUPFEES 或 RECURRINGFEES。

    CHARGE 是

    如需跳过验证步骤并强制收取费用,请将 force query parameter 设置为 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