管理费率方案

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

使用界面API 管理费率方案,如以下几个部分所述。

浏览“费率方案”页面

访问“费率方案”页面,如下所述。

Edge

如需在 Edge 界面中查看费率方案,请访问“费率方案”页面:

  1. 登录 apigee.com/edge
  2. 在左侧导航栏中选择发布 > 创收 > 费率方案

系统会显示“费率方案”页面。

如图所示,“费率方案”页面让您可执行以下操作:

经典边缘(私有云)

如需使用经典版 Edge 界面查看费率方案,请访问“API 软件包”页面:

  1. 登录 http://ms-ip:9000,其中 ms-ip 是管理服务器节点的 IP 地址或 DNS 名称。
  2. 在顶部导航栏中选择发布 > 软件包

“API 软件包”页面会显示为每个软件包定义的费率方案。

借助“费率方案”页面,您可以:

创建费率方案

如需创建费率方案,请执行以下操作:

  1. 访问“费率方案”页面
  2. 点击 + 费率方案
  3. 在顶部面板中配置以下字段:
    字段 说明 默认 必填
    价格方案名称 费率方案的名称。

    NOTE:名称在 API 产品包中必须是唯一的。同一产品套装中的两个方案不能同名。

    不适用
    价格方案类型 价格方案类型。从下拉列表中选择一个值。如需查看有效的费率方案类型列表,请参阅支持的费率方案类型 不适用
    产品组合 API 产品包。从下拉列表中选择一个值。如需详细了解 API 产品包,请参阅管理 API 产品包

    如果您选择的产品包包含多个 API 产品,则需要选择是为每个 API 产品配置单独的费率方案,还是配置适用于所有 API 产品的通用费率方案。

    不适用
    受众 可访问相应费率方案的受众群体。从下拉列表中选择以下值之一:
    • 所有人 - 所有开发者。
    • 开发者 - 开发者或公司。输入开发者名称或公司名称。随着您的输入,下拉列表中会显示包含相应字符串的开发者/公司列表。在下拉列表中点击开发者或公司的名称。
    • 开发者类别 - 开发者类别。从下拉列表中选择开发者类别。

      根据需要配置开发者类别,如管理开发者类别中所述。

    所有人
    开始日期 费率方案生效的日期。输入开始日期或使用日历选择日期。 今天
    结束日期 费率方案的结束日期。如需指定结束日期,请启用有结束日期切换开关,然后输入结束日期或使用日历选择日期。

    注意:费率方案将一直有效,直到指定日期的当天结束。例如,如果您想让某个费率方案在 2018 年 12 月 1 日过期,则应将 endDate 值设置为 2018-11-30。在这种情况下,费率方案将于 2018 年 11 月 30 日结束时过期;2018 年 12 月 1 日的所有请求都将被阻止。

    对门户可见 设置费率方案是公开还是不公开。请参阅公开费率方案与非公开价格方案 已启用
  4. 为费率方案配置费用。请参阅为费率方案配置费用
    NOTE:不适用于可调整的通知方案。
  5. 如果您选择的商品套装包含多个 API 产品,请在特定或通用费率方案部分中设置以下偏好设置:
    注意:此步骤不适用于可调整的通知方案。
    字段 说明 默认
    单独配置每件商品 用于指定是否为每个 API 产品配置单独的费率方案的标志。 已停用
    单独配置每件商品的免费增值优惠 用于指定是否为每个 API 产品配置免费增值方案的标志。 已停用
    选择商品 如果您启用一个或两个标志,则必须从下拉列表中单独选择每个商品,并配置其费率方案详细信息。

    NOTE:请务必配置商品套装中的所有商品。

    不适用
  6. 根据所选的费率方案类型配置费率方案详细信息:
  7. 点击下列选项之一:
    按钮 说明
    保存为草稿 将费率方案保存为草稿。

    在您发布费率方案之前,应用开发者将无法看到该方案。您可以修改草稿费率方案中的任何字段。

    发布新方案 发布方案。

    NOTE:发布费率方案后,您只能修改尚未设置的结束日期。发布费率方案后,您无法将其删除,但可以使其过期,并将其替换为未来的费率方案,如使已发布的费率方案过期中所述。

  8. 创收限制检查政策附加到与费率方案中包含的 API 产品关联的 API 代理。“创收限制检查”政策可对 API 代理强制执行创收限制,并确保在分析和创收报告中准确捕获任何故障。如需了解详情,请参阅对 API 代理实施获利限制

修改费率方案

您可以修改费率方案草稿中的所有字段,但“产品套装”“类型”和“受众群体”除外。发布费率方案后,您只能修改结束日期,前提是之前未指定结束日期。

如需修改费率方案,请执行以下操作:

  1. 访问“费率方案”页面
  2. 点击要修改的费率方案所在的行。
    系统会显示“费率方案”面板。
  3. 根据需要修改费率方案字段。
    NOTE:发布费率方案后,您只能修改尚未设置的结束日期。
  4. 点击以下任一选项:
    按钮 说明
    更新草稿(草稿费率方案) 将费率方案保存为草稿。

    在您发布费率方案之前,应用开发者将无法看到该方案。您可以修改草稿费率方案中的任何字段。
    发布草稿(草稿费率方案) 发布费率方案。

    NOTE:发布费率方案后,您只能修改尚未设置的结束日期。发布费率方案后,您无法将其删除,但可以使其过期,并将其替换为未来的费率方案,如使已发布的费率方案过期中所述。
    更新后的结束日期(已发布的费率方案) 为已发布的方案设置结束日期。

    NOTE:已发布的费率方案设置结束日期后,便无法再修改。

删除费率方案草稿

如果不再需要某个费率方案草稿,请将其删除。

注意:您无法删除已发布的费率方案。

如需删除费率方案草稿,请执行以下操作:

  1. 访问“费率方案”页面
  2. 将光标置于要删除的费率方案上,以显示操作菜单。
  3. 点击
  4. 点击删除以确认操作。

使用 API 管理费率方案

以下部分介绍了如何使用 API 管理费率方案。

使用 API 创建费率方案

如需创建费率方案,请向 /organizations/{org_name}/monetization-packages/{monetizationpackage_id}/rate-plans 发出 POST 请求,其中 {monetizationpackage_id} 是您要为其创建费率方案的 API 产品包的 ID(创建 API 产品包时,系统会在响应中返回该 ID)。

创建费率方案时,您必须在请求正文中指定以下内容:

  • 组织 ID
  • API 产品软件包 ID
  • 费率方案的名称
  • 费率方案的说明
  • 价格方案的适用范围(是适用于所有开发者,还是仅适用于特定开发者、公司或开发者类别)
  • 相应费率方案的生效日期
  • 相应费率方案的币种
  • 是否发布费率方案
  • 相应费率方案是公开还是非公开

您还可以选择指定其他设置,例如付款到期期限(例如 30 天)。请参阅费率方案的配置属性

如果您为包含多个产品的 API 产品套装创建费率方案(仅限费用的方案除外),则可以将该方案应用于产品套装中的特定产品。为此,您需要在请求中指明商品。如果您未指定产品,则相应方案会应用于 API 产品包中的所有产品。

以下部分介绍了如何创建费率方案:

使用 API 创建标准费率方案

如需创建标准费率方案,请将 type 属性设置为 STANDARD,如以下示例所示。

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Simple rate plan",
     "currency": {
      "id" : "usd"
     },
     "description": "Simple rate plan",
     "displayName" : "Simple rate plan",
     "monetizationPackage": {
      "id": "location"
     },
     "organization": {
      "id": "{org_name}"
     },
     "published": true,
     "isPrivate" : false,
     "ratePlanDetails": [
     {
      …
     }
     ],
     "startDate": "2013-09-15",
     "type": "STANDARD"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location_package/rate-plans" \
-u email:password

使用 API 创建开发者或公司费率方案

如需将费率方案应用于特定开发者或公司,请将 type 值设置为 Developer。您还需要在请求中指明开发者或公司,并提供开发者或公司的 ID、法定名称和名称。

例如,以下摘录为 Dev Five 开发者创建了一个费率方案:

...
     "type": "DEVELOPER",
       "developer" : {
        "id" : "0mkKu1PALUGfjUph",
        "legalName" : "DEV FIVE",
        "name" : "Dev Five"
      }
...

使用 API 创建开发者类别费率方案

如需将价格方案应用于开发者类别,请将 type 值设置为 Developer_Category。您还需要在请求中指明开发者类别。 例如:

...
     "type": "DEVELOPER_CATEGORY",
       "developerCategory" : {
        "id" : "5e172299-8232-45f9-ac46-40076139f373",
        "name" : "Silver",
        "description" : "Silver category"
      }
...

使用 API 创建特定于 API 产品的费率方案

为包含多个 API 产品的 API 产品套装创建费率方案时,您可以单独为每个 API 产品指定费率方案详情。

例如,以下代码会创建一个包含两款 API 产品的收入分成方案:

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Multi-product rate plan",
     "currency": {
      "id" : "usd"
     },
     "description": "Multi-product rate plan",
     "displayName" : "Multi-product rate plan",
     "monetizationPackage": {
      "id": "mypackage",
      ...
     },
     "organization": {
      "id": "{org_name}",
      ...
     },
     "published": true,
     "isPrivate" : false,
     "ratePlanDetails": [
     {
        "ratePlanRates":[{
            "revshare":0,
            "startUnit":0,
            "type":"REVSHARE",
            "endUnit":null
        }],
       "revenueType":"NET",
       "type":"REVSHARE"
       "currency":{...},
       "product":{"id":"product1","displayName":"Product1"},
       "customPaymentTerm":false
     },
     {
        "ratePlanRates":[{
            "revshare":10,
            "startUnit":0,
            "type":"REVSHARE",
            "endUnit":null
        }],
       "revenueType":"NET",
       "type":"REVSHARE"
       "currency":{...},
       "product":{"id":"product2","displayName":"Product2"},
       "customPaymentTerm":false
     }
     ],
     "startDate": "2019-09-15",
     "type": "STANDARD"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/my-package/rate-plans" \
-u email:password

如需向 my-package API 产品包添加 API 产品,您需要在请求正文中添加 API 产品的费率方案详细信息,如向 API 产品包添加具有 API 产品专属费率方案的 API 产品中所述。

$ curl -H "Content-Type:application/json" -X POST -d \
'{
    "ratePlan": [
    {
        "id": "my-package_multi-product-rate-plan",
        "ratePlanDetails": [
        {
            "ratePlanRates":[{
                "revshare":20,
                "startUnit":0,
                "type":"REVSHARE",
                "endUnit":null
             }],
             "revenueType":"NET",
             "type":"REVSHARE"
             "currency":{...},
             "customPaymentTerm":false
         }]
    }]
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/my-package/products/product3" \
-u email:password

使用 API 将费率方案设置为公开或私密

创建费率方案时,您可以使用请求正文中的 isPrivate 属性指定该方案是公开还是非公开。如果设置为 true,则相应费率方案将为非公开。如需了解详情,请参阅公开费率方案与非公开价格方案

例如,以下代码会创建一个非公开价格方案:

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Simple rate plan",
     "currency": {
      "id" : "usd"
     },
     "description": "Simple rate plan",
     "displayName" : "Simple rate plan",
     "monetizationPackage": {
      "id": "location"
     },
     "organization": {
      "id": "{org_name}"
     },
     "published": true,
     "isPrivate" : true,
     "ratePlanDetails": [
     {
      …
     }
     ],
     "startDate": "2013-09-15",
     "type": "STANDARD"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location_package/rate-plans" \
-u email:password

使用 API 发布费率方案

如需发布费率方案,请在创建费率方案时将 published 属性值设置为 true。开发者将能够查看从相应方案的 startDate 属性中指定的日期开始的费率方案。

例如,以下代码会创建一个费率卡方案并发布它(仅显示部分请求):

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Flat rate card plan",
     "developer":null,
     "developerCategory":null,
     "advance": "false",
     …
     "published": "true",
     "ratePlanDetails": [
     …
      ],
     …
     "type": "RATECARD"
     }],
     …
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans" \
-u email:password

使用 API 保存费率方案草稿

如需保存费率方案而不发布,请在创建费率方案时将 published 属性值设置为 false。

例如,以下代码会创建一个费率卡方案并将其保存为草稿(仅显示部分请求):

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Flat rate card plan",
     "developer":null,
     "developerCategory":null,
     "advance": "false",
     …
     "published": "false",
     "ratePlanDetails": [
     …
      ],
     …
     "type": "RATECARD"
     }],
     …
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans" \
-u email:password

使用 API 修改费率方案草稿

如需更新费率方案草稿,请向 /organizations/{org_name}/monetization-packages/{package_id}/rate-plans/{plan_Id} 发出 PUT 请求,其中 {package_id} 是 API 软件包的标识,{plan_Id} 是费率方案的标识。进行更新时,您需要在请求正文中指定更新后的设置和费率方案的 ID。如果您更新了费率方案的费率,还需要指定费率方案费率的 ID。例如,以下请求会更新 ID 为 location_flat_rate_card_plan 的费率方案中的费率方案费率(更新部分已突出显示):

$ curl -H "Content-Type: application/json" -X PUT -d \
 '{
      "id" : "location_flat_rate_card_plan",
      "name": "Flat rate card plan",
      "advance": "false",
      "currency": {
       "id" : "usd"
      },
      "description": "Flat rate card plan",
      "displayName" : "Flat rate card plan",
      "frequencyDuration": "30",
      "frequencyDurationType": "DAY",
      "earlyTerminationFee": "10",
      "monetizationPackage": {
       "id": "location"
      },
      "organization": {
       "id": "{org_name}"
      },
      "paymentDueDays": "30",
      "prorate": "false",
      "published": "false",
      "ratePlanDetails": [
      {
       "currency": {
        "id" : "usd"
       },
       "paymentDueDays": "30",
       "meteringType": "UNIT",
       "organization": {
        "id": "{org_name}"
       },
       "ratePlanRates": [
        {
         "id" : "26b69b0b-9863-48c9-ba73-74a5b918fcec",
         "type": "RATECARD",
         "rate": "0.15",
         "startUnit": "0"
        }
       ],
      "ratingParameter": "VOLUME",
      "type": "RATECARD"
      }],
      "recurringStartUnit": 1,
      "recurringType": "CALENDAR",
      "recurringFee": "10",
      "setUpFee": "10",
      "startDate": "2013-09-15 00:00:00",
      "type": "STANDARD"
 }' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans/location_flat_rate_card_plan" \
-u email:password

响应中包含更新后的费率方案费率(仅显示部分响应):

"ratePlanRates" : [ {
  "id" : "26b69b0b-9863-48c9-ba73-74a5b918fcec",
  "rate" : 0.15,
  "startUnit" : 0,
  "type" : "RATECARD"
} ],

使用 API 查看费率方案

您可以使用 Monetization API 查看费率方案,如以下部分所述。

使用 API 查看组织的所有费率方案

如需查看组织的全部费率方案,请向 /mint/organizations/{org_name}/rate-plans 发出 GET 请求,其中 {org_name} 是您的组织的名称。

您可以传递以下查询参数来过滤结果:

查询参数 说明
all 标志,用于指定是否返回所有费率方案。如果设置为 false,则每页返回的费率方案数量由 size 查询参数定义。默认值为 true
size 每页返回的 API 软件包数量。如果 all 查询参数设置为 true,则此参数会被忽略。
page 要返回的页面的编号(如果内容已分页)。如果 all 查询参数设置为 true,则系统会忽略此参数。

例如:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/rate-plans" \
  -u email:password

使用 API 查看 API 产品套装的所有费率方案

如需查看 API 软件包的所有费率方案,请向 /mint/organizations/{org_name}/monetization-packages/{package_id}/rate-plans 发出 GET 请求,其中 {package_id} 是 API 软件包的 ID(创建创收软件包时会返回软件包 ID)。

默认情况下,结果中仅返回有效、公开和标准费率方案。若要添加,请执行以下操作:

  • 对于草稿或已过期的费率方案,请将 current 查询参数设置为 false(例如 ?current=false)。
  • 非公开价格方案,请将 showPrivate 查询参数设置为 true(例如 ?showPrivate=true)。
  • 所有标准费率方案,将 standard 查询参数设置为 true(例如 ?standard=true)。

例如:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/monetization-packages/communications/rate-plans" \
  -u email:password

使用 API 查看 API 软件包的费率方案

如需查看 API 软件包的费率方案,请向 /mint/organizations/{org_name}/monetization-packages/{package_id}/rate-plans/{plan_id} 发出 GET 请求,其中 {package_id} 是 API 软件包的 ID,{plan_id} 是费率方案的 ID(创建创收软件包时会返回软件包 ID,创建费率方案时会返回费率方案 ID)。

例如:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/monetization-packages/communications/rate-plans/communications_standard_fixed_plan" \
  -u email:password

以下提供了一个响应示例:

{
   "advance" : true,
   "contractDuration" : 1,
   "contractDurationType" : "YEAR",
   "currency" : {
     "id" : "usd",
     ...
     "organization" : {
       ...
     },
     ...
   },
   "description" : "Standard Fixed Plan",
   "displayName" : "Standard Fixed Plan",
   "earlyTerminationFee" : 0.0000,
   "frequencyDuration" : 1,
   "frequencyDurationType" : "MONTH",
   "id" : "communications_standard_fixed_plan",
   "isPrivate" : false,
   "monetizationPackage" : {
     "description" : "Communications",
     "displayName" : "Communications",
     "id" : "communications",
     "name" : "Communications",
     "organization" : {
      ...
     },
     "product" : [ {
       "customAtt1Name" : "user",
       "description" : "Location",
       "displayName" : "Location",
       "id" : "location",
       "name" : "location",
       "organization" : {
       ...
       },
       "status" : "CREATED"
     }, {
       "customAtt1Name" : "user",
       "description" : "Messaging",
       "displayName" : "Messaging",
       "id" : "messaging",
       "name" : "messaging",
       "organization" : {
         ...
       },
       "status" : "CREATED"
     } ],
     "status" : "CREATED"
   },
   "name" : "Standard Fixed Plan",
   "organization" : {
     ...
   },
   "paymentDueDays" : "30",
   "prorate" : true,
   "published" : true,
   "ratePlanDetails" : [ {
     "aggregateFreemiumCounters" : true,
     "aggregateStandardCounters" : true,
     "currency" : {
       "id" : "usd",
       "name" : "USD",
       "organization" : {
        ...
       },
       "status" : "ACTIVE",
       "virtualCurrency" : false
     },
     "id" : "cb92f7f3-7331-446f-ad63-3e176ad06a86",
     "meteringType" : "UNIT",
     "organization" : {
      ...
     },
     "paymentDueDays" : "30",
     "ratePlanRates" : [ {
       "id" : "07eefdfb-4db5-47f6-b182-5d606c6051c2",
       "rate" : 0.0500,
       "startUnit" : 0,
       "type" : "RATECARD"
     } ],
     "ratingParameter" : "VOLUME",
     "type" : "RATECARD"
   } ],
   "recurringFee" : 200.0000,
   "recurringStartUnit" : 1,
   "recurringType" : "CALENDAR",
   "setUpFee" : 100.0000,
   "startDate" : "2013-01-11 22:00:00",
   "type" : "STANDARD"
 }

使用 API 查看开发者的所有有效费率方案

如需查看开发者的所有有效费率方案,请向 /mint/organizations/{org_name}/developers/{developer_id}/developer-rateplans 发出 GET 请求,其中 {developer_id} 是开发者的电子邮件地址。

您可以传递以下查询参数来过滤结果:

查询参数 说明
all 一个标志,用于指定是否返回所有 API 软件包。如果设置为 false,则每页返回的 API 软件包数量由 size 查询参数定义。默认值为 false
size 每页返回的 API 软件包数量。默认值为 20。如果 all 查询参数设置为 true,则此参数会被忽略。
page 要返回的页面的编号(如果内容已分页)。如果 all 查询参数设置为 true,则系统会忽略此参数。

例如:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans" \
  -u email:password

以下提供了一个响应示例:

{
  "ratePlan" : [ {
    "advance" : true,
    "contractDuration" : 1,
    "contractDurationType" : "MONTH",
    "currency" : {
      "description" : "United States Dollar",
      "displayName" : "United States Dollar",
      "id" : "usd",
      "name" : "USD",
      "organization" : {
        ...
      },
      "status" : "ACTIVE",
      "virtualCurrency" : false
    },
    "description" : "Fee Only RatePlan",
    "displayName" : "Fee Only RatePlan",
    "earlyTerminationFee" : 10.0000,
    "freemiumDuration" : 0,
    "freemiumDurationType" : "MONTH",
    "freemiumUnit" : 0,
    "frequencyDuration" : 1,
    "frequencyDurationType" : "WEEK",
    "id" : "messaging_package_fee_only_rateplan",
    "isPrivate" : false,
    "monetizationPackage" : {
      "description" : "messaging package",
      "displayName" : "Messaging Package",
      "id" : "messaging_package",
      "name" : "Messaging Package",
      "organization" : {
        ...
      },
      "product" : [ {
        "customAtt1Name" : "user",
        "customAtt2Name" : "response size",
        "customAtt3Name" : "content-length",
        "description" : "messaging api product",
        "displayName" : "messaging",
        "id" : "messaging",
        "name" : "messaging",
        "organization" : {
         ...
        },
        "status" : "CREATED",
        "transactionSuccessCriteria" : "status == 'SUCCESS'"
      } ],
      "status" : "CREATED"
    },
    "name" : "Fee Only RatePlan",
    "organization" : {
     ...
    },
    "paymentDueDays" : "30",
    "prorate" : false,
    "published" : true,
    "ratePlanDetails" : [ ],
    "recurringFee" : 10.0000,
    "recurringStartUnit" : 1,
    "recurringType" : "CALENDAR",
    "setUpFee" : 20.0000,
    "startDate" : "2013-02-20 00:00:00",
    "type" : "STANDARD"
  } ],
  "totalRecords" : 1
}

使用 API 查看开发者接受的费率方案

如需查看开发者的有效费率方案,请向 /mint/organizations/{org_name}/developers/{developer_id}/developer-rateplans/{developer_rateplan_id} 发出 GET 请求,其中 {developer_id} 是开发者的电子邮件地址,{developer_rateplan_id} 是您接受已发布的费率方案时在响应中返回的已接受费率方案的 ID。

例如:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans/messaging_package_fee_only_rateplan" \
  -u email:password

以下提供了一个响应示例:

{
    "created" : "2018-01-25 20:01:54",
    "developer" : {
    },
    "id" : "a73s104-276f-45b3-8075-83d1046ea550",
    "nextCycleStartDate" : "2018-02-19 00:00:00",
    "nextRecurringFeeDate" : "2018-02-19 00:00:00",
    "prevRecurringFeeDate" : "2018-01-25 00:00:00",
    "ratePlan" : {
      "frequencyDuration" : 1,
      "frequencyDurationType" : "MONTH",
      "recurringFee" : 0.0000,
      "recurringStartUnit" : 19,
      "recurringType" : "CALENDAR",
      "setUpFee" : 0.0000,
      "type" : "STANDARD"
    },
    "startDate" : "2018-01-25 20:01:54",
    "updated" : "2018-01-25 20:01:54"
  }

使用 API 查看包含 API 产品的开发者的已接受费率方案

如需查看包含 API 产品的开发者的已接受费率方案,请向 /mint/organizations/{org_id}/developers/{developer_id}/products/{product_id}/rate-plan-by-developer-product 发出 GET 请求,其中 {developer_id} 是开发者的 ID,/{product_id} 是产品的 ID。

默认情况下,结果中仅返回公开费率方案。如需显示非公开价格方案,请将 showPrivate 查询参数设置为 true(例如 ?showPrivate=true)。

例如:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/products/location/rate-plan-by-developer-product" \
  -u email:password

使用 API 查看开发者接受的所有费率方案

如需查看开发者接受的价格方案,请向 /mint/organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans 发出 GET 请求,其中 {developer_id} 是开发者的 ID。

您可以传递以下查询参数来过滤结果:

查询参数 说明
all 一个标志,用于指定是否返回所有 API 软件包。如果设置为 false,则每页返回的 API 软件包数量由 size 查询参数定义。默认值为 false
size 每页返回的 API 软件包数量。默认值为 20。如果 all 查询参数设置为 true,则此参数会被忽略。
page 要返回的页面的编号(如果内容已分页)。如果 all 查询参数设置为 true,则系统会忽略此参数。

例如:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-accepted-rateplans" \
  -u email:password

以下提供了一个响应示例:

{
  "developerRatePlan" : [ {
     "created" : "2018-01-25 20:01:54",
     "developer" : { ...
     },
     "id" : "a73s104-276f-45b3-8075-83d1046ea550",
     "nextCycleStartDate" : "2018-02-19 00:00:00",
     "nextRecurringFeeDate" : "2018-02-19 00:00:00",
     "prevRecurringFeeDate" : "2018-01-25 00:00:00",
     "ratePlan" : {
       "frequencyDuration" : 1,
       "frequencyDurationType" : "MONTH",
       "recurringFee" : 0.0000,
       "recurringStartUnit" : 19,
       "recurringType" : "CALENDAR",
       "setUpFee" : 0.0000,
       "type" : "STANDARD"
     },
     "startDate" : "2018-01-25 20:01:54",
     "updated" : "2018-01-25 20:01:54"
   }],
   "totalRecords" : 1
}

使用 API 删除费率方案草稿

如需删除费率方案草稿,请向 /organizations/{org_name}/monetization-packages/package_id}/rate-plans/{plan_Id} 发出 DELETE 请求,其中 {plan_Id} 是要删除的费率方案的标识,{package_id} 是费率方案的 API 软件包的标识。例如:

$ curl -H "Accept:application/json" -X DELETE \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans/location_flat_rate_card_plan" \
-u email:password

收费方案的配置属性

使用 API 创建费率方案时,您可以指定以下配置设置。

名称 说明 默认值 是否必需?
advance

仅适用于定期费用。用于指定是否预先收取周期性费用的标志。有效值包括:

  • true - 周期性费用会提前收取。例如,如果周期为 1 个月,则在上一结算月结束时生成的账单中收取定期费用。
  • false - 周期性费用在周期结束时收取。例如,如果周期为 1 个月,则在当前结算月份结束时,系统会在账单中收取定期费用。这是默认值。
false
contractDuration

方案的合同期限(包括 contractDurationType)。 例如,如需指定 6 个月的合同期限,请将 contractDuration 设置为 6,并将 contractDurationType 设置为 MONTH

不适用
contractDurationType

包含 contractDuration 的“一起制定计划”方案的合同期限。有效值包括:

  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR
不适用
currency

费率方案所用的币种。指定相应币种的 ISO 4217 代码,例如 usd 代表美元,chf 代表瑞士法郎。

不适用
description

费率方案的说明。

不适用
developer

开发者 ID(电子邮件地址)。仅针对开发者费率方案指定。

不适用
developerCategory

开发者类别 ID。仅针对开发者类别价格方案指定。

不适用
displayName

相应费率方案的易记显示名称。

不适用
earlyTerminationFee

如果开发者在续订期限结束前结束方案,则需支付一次性费用。

不适用
endDate

方案结束日期。在此日期之后,开发者将无法查看费率方案。如果您不希望费率方案在特定日期结束,请为 endDate 指定 null 值。

费率方案将一直有效,直到指定日期的结束。例如,如果您想在 2016 年 12 月 1 日使某个费率方案失效,则应将 endDate 值设置为 2016-11-30。在这种情况下,费率方案将于 2016 年 11 月 30 日结束时过期;2016 年 12 月 1 日的所有请求都将被阻止。

NOTE:使用 API 查看费率方案时,endDate 时间戳指定为 YYYY-MM-DD 00:00:00,这可能会造成误导。

不适用
freemiumDuration

免费增值期的时间段,与 freemiumDurationType 结合使用。例如,如需指定免费增值期为 30 天,请将 freemiumDuration 设置为 30,并将 freemiumDurationType 设置为 DAY

不适用
freemiumDurationType

免费增值期的时间段,与 freemiumDuration 结合使用。 有效值包括:

  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR
不适用
freemiumUnit

免费增值数量。该值可以是交易次数,也可以是与交易记录政策中记录的自定义属性相关的单位数量。

不适用
frequencyDuration

仅适用于定期费用。周期性费用扣款之间的时间段,以及 frequencyDurationType。例如,如需指定费用收取周期为 30 天,请将 frequencyDuration 设置为 30,并将 frequencyDurationType 设置为 DAY

不适用
frequencyDurationType 仅适用于定期费用。周期性费用扣款之间的时间段,以及 frequencyDuration。有效值包括:
  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR
不适用
isPrivate 用于指定费率方案是公开还是不公开的标志。默认值为 false(公开)。如需了解详情,请参阅公开费率方案与非公开价格 不适用
monetizationPackage

相应费率方案的 API 产品软件包 ID。

不适用
name

费率方案的名称。

不适用
organization

费率方案的组织 ID。

不适用
paymentDueDays

仅适用于定期费用。费用到期天数。例如,将值设置为 30 表示费用应在 30 天内支付。

不适用
proRate

仅适用于定期费用。一个标志,用于指定开发者在一个月的中途开始或结束方案时,是否按比例分摊经常性费用。有效值包括:

  • true - 初始费用按到期日之前的天数(或相应周期内已使用的天数)按比例计算。
  • false - 无论开发者何时开始(或结束)方案,都需要支付全额初始费用。这是默认值。
false
published

一个标志,用于指定是否应发布费率方案以供开发者查看。有效值包括:

  • true - 发布费率方案。
  • false - 不发布费率方案。
不适用
ratePlanDetails

费率方案的详细信息(请参阅费率方案详细信息的配置属性)。

不适用
recurringFee

持续向开发者收取的费用,直到开发者结束相应方案为止。

不适用
recurringStartUnit

仅当 recurringType 设置为 CALENDAR 时有效。收取定期费用的日期。例如,如果经常性费用按月收取,且 recurringStartUnit 设置为 1,则系统会在每个月的第一天收取经常性费用。

不适用
recurringType

周期性费用的时间安排。有效值包括:

  • CALENDAR - 根据日历安排。
  • CUSTOM - 根据自定义日期设置进行安排。
不适用
setUpFee

在方案开始日期(即开发者购买方案的日期)向每个开发者收取的一次性费用。

不适用
startDate

方案的开始日期。开发者能够自此日期起查看费率方案。

不适用
type

费率方案类型。指定以下其中一项:

  • STANDARD。适用于所有开发者。
  • DEVELOPER_CATEGORY。适用于所选类别中的所有开发者。
  • DEVELOPER. 适用于特定开发者或公司。
不适用

价格方案详情的配置属性

创建费率方案时,您可以在 ratePlanDetails 数组中指定以下任一配置属性。

名称 说明 默认值 是否必需?
aggregateFreemiumCounters

一个标志,用于指定是否启用汇总计数器来确定 API 产品的使用量是否在免费范围内。必须启用汇总计数器,才能为产品设置免费增值方案。有效值包括:

  • true - 启用汇总计数器。
  • false - 不启用汇总计数器。
不适用
aggregateStandardCounters

一个标志,用于指定是否使用汇总计数器来确定使用情况的频段(例如费率卡计划的流量频段)。可以是以下值之一:

  • true - 使用汇总计数器。
  • false - 请勿使用汇总计数器。
不适用
aggregateTransactions

NOTE:此属性目前未用于创收,可以忽略。

true
currency

Currency(币种)。

不适用
duration

计算频率的时间段,与 durationType 一起使用,其中允许的 duration 值是 1-24。

例如,将 duration 设置为 2,并将 durationType 设置为 MONTH,以指定 2 个月的计算频率。

不适用
durationType

计算频次的时间段,与 duration 结合使用。 唯一的有效值为 MONTH

如需查看使用示例,请参阅 duration

不适用
freemiumDuration

单个 API 产品的免费增值期时长,与 freemiumDurationType 一起使用。例如,如需指定 API 产品的免费增值期为 30 天,请将 freemiumDuration 设置为 30,并将 freemiumDurationType 设置为 DAY

不适用
freemiumDurationType

单个 API 产品的免费增值期时长,与 freemiumDuration 一起使用。有效值包括:

  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR

例如,如需指定 API 产品的免费增值期为 30 天,请将 freemiumDuration 设置为 30,并将 freemiumDurationType 设置为 DAY。

不适用
freemiumUnit

API 产品的免费增值数量。该值可以是交易次数,也可以是交易记录政策中记录的与自定义属性相关的单位数。

不适用
meteringType

价目表方案的收费模式。有效值包括:

  • UNIT - 固定费率充电模式。
  • VOLUME - 基于数量区间的收费模式。
  • STAIR_STEP - 捆绑式充电模式。
  • DEV_SPECIFIC - 可调节的通知充电模式。不适用于任何其他收入模式。
不适用
organization

组织 ID。

不适用
paymentDueDays

后付费开发者的付款截止日期。例如,将值设置为 30 表示付款期限为 30 天。

不适用
product

API 商品信息,例如 ID。

不适用
ratePlanRates

费率方案的费率详细信息,例如费率方案的类型(REVSHARERATECARD)、价目表方案的费率、收益分成方案的收益分成,以及范围(应用费率方案费率的起始单位和结束单位)。

不适用
ratingParameter

费率方案的基础。费率方案基于交易或自定义属性。有效值包括:

  • VOLUME - 费率方案基于交易量。
  • custom_attribute - API 产品的交易记录政策中定义的自定义属性的名称,仅对费率卡方案有效。 自定义属性名称不能定义为 VOLUME
VOLUME
ratingParameterUnit

适用于 ratingParameter. Only required if ratingParameter 的单位设置为自定义属性(即,未设置为 VOLUME)。

不适用
revenueType

收益分成方案中收益分成的依据。有效值包括:

  • GROSS - 收益分成基于交易总价的百分比。
  • NET - 收益分成基于交易净价格的百分比。
不适用
type

价格方案类型。有效值包括:

  • REVSHARE - 收益分成模式。
  • RATECARD - 价目表模型。
  • REVSHARE_RATECARD - 收益分成和价目表模式。
  • USAGE_TARGET - 可调整的通知模型。

如需详细了解费率方案类型,请参阅支持的费率方案类型

不适用