管理费率方案

您正在查看 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

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

不适用 是
ratingParameter

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

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

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

不适用 是
revenueType

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

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

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

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

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

不适用 是