

AWS Marketplace API 参考已重组。有关支持的 API 操作的更多信息，请参阅 [AWS Marketplace API 参考](https://docs.aws.amazon.com/marketplace/latest/APIReference/Welcome.html)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用渠道合作伙伴的私有优惠 AWS Marketplace API
<a name="work-with-cppos"></a>

您可以使用自动执行 AWS Marketplace Catalog API 与渠道合作伙伴私有优惠 (CPPO) 合作的任务。

当您创建或更新 CPPO 时，报价草稿将包含转售授权中的条款和规则，买家将看不见。在组织中使用多个角色来创建私人报价是可能的，但不是必需的。

例如，一个角色可以负责更新价格，而另一个角色可以负责更新付款时间表。然后，第三人可以负责更新法律条款。您可以授予角色更新优惠某些部分的权限。但是，您只能向转售授权授予读取权限。

调用变更类型的先决条件是，您必须已收到一份或多份转售授权并且熟悉使用。 AWS Marketplace Catalog API

有关更多信息，请参阅《*AWS Marketplace 卖家指南》*中的[渠道合作伙伴私有优惠](https://docs.aws.amazon.com/marketplace/latest/userguide/channel-partner-offers.html)。

以下主题介绍如何使用目录 API 创建和更新 CPPO：

**Topics**
+ [CPPO 先决条件](#cppo-prerequisites)
+ [创建一个 CPPO](#create-offer-using-resale-auth)
+ [创建渠道合作伙伴私下替换报价](#create-replacement-offer-using-resale-auth)
+ [更新标记](#update-markup)
+ [更新定位配置](#update-targeting-cppo)
+ [更新法律资源](#update-legal-terms-cppo)
+ [更新 CPPO 的可发现性](#update-availability-cppo)
+ [定义协议的到期日期](#update-validity-terms-cppo)
+ [更新定价](#update-pricing-terms-cppo)
+ [更新付款时间表详情](#update-payment-schedule-terms-cppo)
+ [发布 CPPO](#release-offer-cppo)
+ [定义现有的 CPPO](#describe-entity-cppo)

## CPPO 先决条件
<a name="cppo-prerequisites"></a>

Service-linked 角色for ResaleAuthorization (SLR) 设置是使用转售授权创建 CPPO 的必备先决条件。要使用转售授权，独立软件供应商 (ISV) 和 AWS Marketplace 渠道合作伙伴都必须创建一个提供资源共享权限的服务相关角色。 AWS如果两个小组都未满足此先决条件，则 AWS 无法将 ISV 的授权资源共享给 AWS Marketplace 渠道合作伙伴。有关更多信息，请参阅《*AWS Marketplace 卖家指南》 AWS Marketplace*中的 “[使用角色进行转售授权](https://docs.aws.amazon.com/marketplace/latest/userguide/using-roles-for-resale-authorization.html)”。

## 创建一个 CPPO
<a name="create-offer-using-resale-auth"></a>

您使用针对您的转售授权在`Draft`州创建渠道合作伙伴私募报价 (CPPO)。 AWS Marketplace

如果您的请求成功处理，则会根据转售授权条款为您 AWS Marketplace Catalog API 生成`Draft`州内报价。您可以使用`DescribeEntity`从 “转售授权” 中查看适用于报价草稿的条款。这是一份不完整的报价，买家看不见 AWS Marketplace。然后，您可以使用与 CPPO 关联的变更类型来完成报价。

报价完成后，您可以使用`ReleaseOffer`变更类型完成报价创建流程并发布报价。这将验证整个报价，并使您的报价对买家可见 AWS Marketplace。

要创建渠道合作伙伴私有优惠，请使用`CreateOfferUsingResaleAuthorization`更改类型调用 `StartChangeSet` API 操作，如以下示例所示。

**请求语法**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "CreateOfferUsingResaleAuthorization",
      "Entity": {
        "Type": "Offer@1.0"
      },
      "DetailsDocument": {
        "ResaleAuthorizationId": "resaleauthz-123456789",
        "Name": "Test Offer",
        "OfferSetId": "offerset-b3f9EXAMPLE27"
      }
    }
  ]
}
```

为要添加`CreateOfferUsingResaleAuthorization`更改类型的字段提供信息：
+ **实体**（对象）（必填）-您的 CPPO。
  + **类型**（字符串）（必填）-始终`Type`为`Offer@1.0`。
+ **DetailsDocument**（对象）（必填）-请求细节的 JSON 值。
  + **ResaleAuthorizationId**（字符串）（必填）-包含所提供的产品、条款和规则的唯一标识符。渠道合作伙伴可以使用更新变更类型添加其他条款和规则。 ResaleAuthorization 作为合作伙伴，必须可供您使用并定向到位。
  + **名称**（字符串）（可选）-为提高可读性而与选件关联的名称。它作为协议信息的一部分显示。
  + **OfferSetId**（字符串）（可选）-设置为与此优惠关联的优惠的 ID。仅在创建将成为优惠套餐一部分的报价时才指定此字段。如果 OfferSetId 未提供，则将创建可单独购买的个人报价。请注意，在创建报价 OfferSetId 期间指定仅表示您打算将该优惠与该优惠集相关联。要完成关联，您必须在创建优惠后[使用 AssociateOffers 更改类型](work-with-offer-sets.md#associate-offers)。

**响应语法**

已根据您的请求创建更改集。对该请求的响应为您提供了变更集的和，如下所示。`ChangeSetId` `ChangeSetArn`

```
{
  "ChangeSetId": "example123456789012abcdef",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

变更请求被添加到队列中并进行处理。

您可以通过，也可以使用 API 操作直接通过 Catalog API 检查请求的`[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)`状态。 AWS Marketplace 管理门户

对该请求的回复将向您提供请求的状态。如果状态为`SUCCEEDED`，则会生成一个新`OfferId`的。

```
{
  "ChangeSetId": "example123456789012abcdef",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef",
  "ChangeSetName": "Submitted by 123456789012",
  "StartTime": "2021-05-27T22:21:26Z",
  "EndTime": "2021-05-27T22:32:19Z",
  "Status": "SUCCEEDED",
  "ChangeSet": [
    {
      "ChangeType": "CreateOfferUsingResaleAuthorization",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "ResaleAuthorizationId": "resaleauthz-123456789",
        "Name": "Test Offer"
      },
      "ErrorDetailList": []
    }
  ]
}
```

您可以使用该`GET``DescribeEntity`请求来描述 AWS Marketplace Catalog API 参考文献`ResaleAuthorization`中创建的报价规则和条款草案。有关更多信息，请参阅 [https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)。

**条款和规则来自 ResaleAuthorization**
+ **LegalTerms**— 描述法律条款的条款，例如中的最终用户许可协议， ResaleAuthorization 将添加到报价草案中。您可以使用`UpdateLegalTerms`变更类型添加法律条款。有关更多信息，请参阅 [https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-legal-terms-cppo](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-legal-terms-cppo)。
+ **PricingTerms**— 制造商在中描述的所有定价条款（`ConfigurableUpfrontPricingTerm``FixedUpfrontPricingTerm``UsageBasedPricingTerm`、、、`PaymentScheduleTerms`）都 ResaleAuthorization 将添加到报价草稿中。您可以使用`UpdateMarkup`变更类型选择提高目标买家的价格（针对每个维度）。有关更多信息，请参阅本指南中的[https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-markup](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-markup)。
+ **PaymentTerms**— 如果制造商在中定义了未来付款时间表 ResaleAuthorization，那么您将能够在报价草案中看到付款条款。您可以使用`UpdateMarkup`变更类型选择增加目标买家的付款计划金额。如果您想为买家设置付款时间表，可以使用`UpdatePaymentScheduleTerms`。有关更多信息，请参阅 [https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-payment-schedule-terms-cppo](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-payment-schedule-terms-cppo)。
+ **TargetingRule**— 如果针对特定买家，则渠道合作伙伴可以使用向一部分买家提供私人报价 PositiveTargeting。 ResaleAuthorization 默认情况下，该规则将包括来自的所有买家 ResaleAuthorization。您可以选择特定的买家并使用`UpdateTargeting`更改类型更新报价草稿。有关更多信息，请参阅 [https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-targeting-cppo](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-targeting-cppo)。

```
{
  "EntityType": "Offer@1.0",
  "EntityIdentifier": "offer-a5EXAMPLEwzpu@1",
  "EntityArn": "arn:aws:aws-marketplace:us-east-1:444555666777:AWSMarketplace/Offer/offer-a5oEXAMPLEzpu",
  "LastModifiedDate": "2021-03-10T21:57:16Z",
  "DetailsDocument": {
    "Id": "offer-3rb23tu92rn",
    "Name": "Test Offer",
    "Description": "Worldwide private offer for Test Product",
    "ProductId": "prod-0bc848d78b51",
    "ResaleAuthorizationId": "resaleauthz-123456789",
    "Terms": [
      {
        "Type": "LegalTerm",
        "Documents": [
          {
            "Type": "CustomEula",
            "Url": "https://s3.amazonaws.com/EULA/custom-eula-1234.txt"
          }
        ]
      },
      {
        "Type": "ConfigurableUpfrontPricingTerm",
        "CurrencyCode": "USD",
        "RateCards": [
          {
            "Selector": {
              "Type": "Duration",
              "Value": "P12M"
            },
            "RateCard": [
              {
                "DimensionKey": "m3.large",
                "Price": "300.00"
              },
              {
                "DimensionKey": "m4.xlarge",
                "Price": "400.00"
              }
            ],
            "Constraints": {
              "MultipleDimensionSelection": "Allowed",
              "QuantityConfiguration": "Allowed"
            }
          }
        ]
      },
      {
        "Type": "UsageBasedPricingTerm",
        "CurrencyCode": "USD",
        "RateCards": [
          {
            "RateCard": [
              {
                "DimensionKey": "m3.large",
                "Price": "0.10"
              },
              {
                "DimensionKey": "m4.xlarge",
                "Price": "0.20"
              }
            ]
          }
        ]
      },
      {
        "Type": "PaymentScheduleTerm",
        "CurrencyCode": "USD",
        "Schedule": [
          {
            "ChargeDate": "2020-12-01T00:00:00.000Z",
            "ChargeAmount": "1000.00"
          },
          {
            "ChargeDate": "2021-06-15T00:00:00.000Z",
            "ChargeAmount": "1250.00"
          }
        ]
      }
    ],
    "Rules": [
      {
        "Type": "TargetingRule",
        "PositiveTargeting": {
          "BuyerAccounts": [
            "111222333444"
          ]
        }
      }
    ]
  }
}
```

**同步验证**

以下架构验证特定于中的`CreateOfferUsingResaleAuthorization` AWS Marketplace Catalog API操作。这些验证是在您致电`StartChangeSet`时执行的。如果请求不符合以下要求，则会失败，并显示 HTTP 响应。


| 输入字段 | 验证规则 | HTTP 代码 | 
| --- | --- | --- | 
| Name | 必填<br />长度必须介于 1 到 150 个字符之间 | 422 | 
| 说明 | 必填<br />长度必须介于 1 到 255 个字符之间 | 422 | 
| ResaleAuthorizationId | 必填<br />长度必须介于 1 到 50 个字符之间 | 422 | 
| ResaleAuthorizationId | ResaleAuthorization 必须针对渠道合作伙伴。 | 422 | 
| ResaleAuthorizationId | ResaleAuthorization 必须处于活动状态 | 422 | 
| 渠道合作伙伴 | 渠道合作伙伴必须向卖家付款 AWS Marketplace | 422 | 

**异步错误**

以下错误特定于中的`CreateOfferUsingResaleAuthorization`操作 AWS Marketplace Catalog API。当您在处理更改集`DescribeChangeSet`之后调用时，会返回这些错误。有关使用`DescribeChangeSet`获取变更请求状态的更多信息，请参阅[使用变更集](catalog-apis.md#working-with-change-sets)。


| 错误代码  | 错误消息 | 
| --- | --- | 
| 不兼容\_转售\_授权 | 使用 ResaleAuthorization 处于活动状态的。 | 
| 不兼容的产品 | OfferSetId 不支持该产品的报价。 | 

## 创建渠道合作伙伴私下替换报价
<a name="create-replacement-offer-using-resale-auth"></a>

您可以使用 Catalog API 在中创建渠道合作伙伴私有替代报价 AWS Marketplace。

您可以使用`ResaleAuthorization`针对您的内容和您作为提案人的协议通过调用`CreateReplacementOfferUsingResaleAuthorization`变更类型来创建目录API中`Draft`状态的渠道合作伙伴私`StartChangeSet`有替代报价，如以下示例所示。在协议到期之前，替换报价可用于替换先前报价中的协议。

`CreateReplacementOfferUsingResaleAuthorization`将与协议接受者一起创建报价草稿。之后无法更改此定位。报价草稿还将包含协议的来源报价 ID。

要创建渠道合作伙伴私有替代报价，请使用`CreateReplacementOfferUsingResaleAuthorization`变更类型调用 `StartChangeSet` API 操作，如以下示例所示。

**请求语法**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "CreateReplacementOfferUsingResaleAuthorization",
      "Entity": {
        "Type": "Offer@1.0"
      },
      "DetailsDocument": {
        "ResaleAuthorizationId": "2bd2c761-3b7f-3771-a9a7-e8ad36517698",
        "Name": "CAPI-saas-abo-contract-fps",
        "AgreementId": "agmt-f2ooEXAMLEamtm7mjj0j59gu"
      }
    }
  ]
}
```

为要添加`CreateReplacementOfferUsingResaleAuthorization`更改类型的字段提供信息：
+ **实体**（对象）（必填）-您的 CPPO。
  + **类型**（字符串）（必填）-始终`Type`为`Offer@1.0`。
+ **DetailsDocument**（对象）（必填）-请求细节的 JSON 值。
  + **ResaleAuthorizationId**（字符串）（必填）— `ResaleAuthorizationId` 是唯一标识符，包括所提供的产品、条款和规则。渠道合作伙伴可以使用 “更新变更类型” 添加其他条款和规则。

    `ResaleAuthorization`作为合作伙伴，必须可供您使用并定向到位。
  + **名称**（字符串）（可选）— `Name` 与报价相关联，以便您和您的客户更容易阅读。它也将作为协议信息的一部分显示。
  + **AgreementId**（字符串）（必填）— `AgreementId` 是目标买家接受您要替换的先前报价时创建的协议的唯一标识符

**响应语法**

已根据您的请求创建更改集。对该请求的响应为您提供了变更集的和，如下所示。`ChangeSetId` `ChangeSetArn`

```
{
  "ChangeSetId": "example123456789012abcdef",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

变更请求被添加到队列中并进行处理。

您可以通过，也可以使用 API 操作直接通过 Catalog API 检查请求的`[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)`状态。 AWS Marketplace 管理门户

**同步验证**

以下架构验证特定于中的`CreateReplacementOfferUsingResaleAuthorization` AWS Marketplace Catalog API操作。这些验证是在您致电`StartChangeSet`时执行的。如果请求不符合以下要求，则会失败，并显示 HTTP 响应。


| 输入字段 | 验证规则 | 
| --- | --- | 
| Name | 长度必须介于 1 到 150 个字符之间 | 
| AgreementId | 提供的协议必须处于有效状态前提是协议必须存在<br />提供的协议必须归渠道合作伙伴所有 | 
| ResaleAuthorizationId | 必填<br />长度必须介于 1 到 50 个字符之间 | 
| ResaleAuthorizationId | ResaleAuthorization 必须针对渠道合作伙伴。 | 
| ResaleAuthorizationId | ResaleAuthorization 必须处于活动状态 | 
| 渠道合作伙伴 | 渠道合作伙伴必须向卖家付款 AWS Marketplace | 

**异步错误**

以下错误特定于中的`CreateReplacementOfferUsingResaleAuthorization`操作 AWS Marketplace Catalog API。当您在处理更改集`DescribeChangeSet`之后调用时，会返回这些错误。有关使用`DescribeChangeSet`获取变更请求状态的更多信息，请参阅[使用变更集](catalog-apis.md#working-with-change-sets)。


| 错误代码  | 错误消息 | 
| --- | --- | 
| 不兼容\_转售\_授权 | 使用 ResaleAuthorization 处于活动状态的。 | 
| 不兼容\_转售\_授权 |  ResaleAuthorization 必须针对与协议关联的同一产品。 | 
| 不兼容\_转售\_授权 | 使用 ResaleAuthorization 针对协议接受者的目标。 | 

## 更新标记
<a name="update-markup"></a>

您可以使用目录 API 按报价中的百分比值更新定价条款 AWS Marketplace。

这将对制造商在中定义的所有定价条款和付款条款（适用于未来的付款计划）应用给定的百分比加价。 ResaleAuthorization任何现有的标记都将被覆盖。您可以使用查看更新的定价和付款条款`DescribeEntity`。

要更新标记，请使用`UpdateMarkup`更改类型调用 `StartChangeSet` API 操作，如以下示例所示。

**请求语法**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdateMarkup",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "Percentage": "5.0"
      }
    }
  ]
}
```

为要添加`UpdateMarkup`更改类型的字段提供信息：
+ **实体**（对象）（必填）-您的 CPPO。
  + **类型**（字符串）（必填）-始终`Type`为`Offer@1.0`。
  + **标识符**（字符串）（必填）-您的报价编号。有关更多信息，请参阅 [标识符](catalog-apis.md#identifier)。
+ **DetailsDocument**（对象）（必填）-请求细节的 JSON 值。
  + **百分比**（字符串）（必填）-百分比值将添加到制造商定价或付款条件中。

**响应语法**

已根据您的请求创建更改集。对该请求的响应为您提供了变更集的和，如下所示。`ChangeSetId` `ChangeSetArn`

```
{
  "ChangeSetId": "example123456789012abcdef",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

变更请求被添加到队列中并进行处理。这包括向 AWS Marketplace 卖家运营团队验证信息，以确保其符合 AWS Marketplace 指南。验证过程可能需要几分钟到几小时不等。

您可以通过，也可以使用 API 操作直接通过 Catalog API 检查请求的`[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)`状态。 AWS Marketplace 管理门户

**同步验证**

以下架构验证特定于中的`UpdateMarkup` AWS Marketplace Catalog API操作。这些验证是在您致电`StartChangeSet`时执行的。如果请求不符合以下要求，则会失败，并显示 HTTP 响应。


| 输入字段 | 验证规则 | 
| --- | --- | 
| 百分比 | 必填<br />数据类型为 “字符串” <br />必须为非负数 <br />最多允许 9 位小数 | 

**异步错误**

以下错误特定于中的`UpdateMarkup`操作 AWS Marketplace Catalog API。当您在处理更改集`DescribeChangeSet`之后调用时，会返回这些错误。有关使用`DescribeChangeSet`获取变更请求状态的更多信息，请参阅[使用变更集](catalog-apis.md#working-with-change-sets)。


| 错误代码  | 错误消息 | 
| --- | --- | 
| 不兼容标记 | 报价发布后，无法执行所请求的更改。 | 
| 不兼容\_转售\_授权 | MarkupPercentage当PaymentScheduleTerm或存在于报价中但不FixedUpfrontPricingTerm存在时，无法更新ResaleAuthorization。 | 
| 不兼容条款 |  UpdatePaymentScheduleTerms 使用特定的付款金额或预定日期 UpdateMarkup 的单一加价百分比。 | 
| 无效加价百分比 | UpdateMarkup 只能为使用创建的选件调用 ResaleAuthorization。 | 

## 更新定位配置
<a name="update-targeting-cppo"></a>

您可以使用目录 API 在中完全替换现有的定位配置 AWS Marketplace。

任何未包含在最新请求中的现有定位选项都将从报价中删除。制造商可以在中提及特定的目标买家`ResaleAuthorization`。渠道合作伙伴可以在`UpdateTargeting`变更类型`PositiveTargeting`中使用向一部分买家提供私密报价。

要更新您的商品的定位配置，请使用`UpdateTargeting`更改类型调用 `StartChangeSet` API 操作，如以下示例所示。

**请求语法**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdateTargeting",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "PositiveTargeting": {
          "CountryCodes": [
            "US",
            "CA"
          ],
          "BuyerAccounts": [
            "111222333444"
          ]
        },
        "NegativeTargeting": {
          "CountryCodes": [
            "XX"
          ]
        }
      }
    }
  ]
}
```

为要添加`UpdateTargeting`更改类型的字段提供信息：
+ **实体**（对象）（必填）-您的 CPPO。
  + **类型**（字符串）（必填）-始终`Type`为`Offer@1.0`。
  + **标识符**（字符串）（必填）-您的报价编号。有关更多信息，请参阅 [标识符](catalog-apis.md#identifier)。
+ **DetailsDocument**（对象）（必填）-请求细节的 JSON 值。
  + **PositiveTargeting**（object）（可选）— 正面定位定义了任何买家的个人资料都应满足的标准，才允许他们访问报价。此字段为可选字段，但如果存在此字段，则应至少提供一个定位选项。
    + **CountryCodes**（字符串数组）（可选）-列出为允许基于国家/地区进行定位的选项。如果目的不是将报价定位到某个国家/地区，则应省略此字段。如果存在，则该列表必须至少包含一个国家/地区代码。此列表中的每个元素都应为有效的 2 个字母的国家/地区代码，格式为：ISO 3166-1 alpha-2。
    + **BuyerAccounts**（字符串数组）（可选）— 列出为允许基于 AWS 账户 （也称为 “私人报价”）进行定位的选项。如果意图不是将报价定位到 AWS 账户，则应省略此字段。
  + **NegativeTargeting**（object）（可选）— 负面定位定义了任何客户的个人资料都应满足的标准，以限制其访问优惠。尽管此字段是可选字段，但如果存在此字段，则应至少提供一个定位选项。
    + **CountryCodes**（字符串数组）（必填）-列为允许基于国家/地区进行定位的选项。如果目的不是将报价定位到特定的国家/地区，则应省略此字段。如果存在，则该列表必须至少包含一个国家/地区代码。此列表中的每个元素都应为有效的双字母国家/地区代码，格式为：ISO 3166-1 alpha-2。

**响应语法**

已根据您的请求创建更改集。对该请求的响应为您提供了变更集的和，如下所示。`ChangeSetId` `ChangeSetArn`

```
{
  "ChangeSetId": "example123456789012abcdef",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

变更请求被添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。

您可以通过，也可以使用 API 操作直接通过 Catalog API 检查请求的`[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)`状态。 AWS Marketplace 管理门户

**同步验证**

以下架构验证特定于中的`UpdateTargeting` AWS Marketplace Catalog API操作。这些验证是在您致电`StartChangeSet`时执行的。如果请求不符合以下要求，则会失败，并显示 HTTP 响应。


| 输入字段 | 验证规则 | HTTP 代码 | 
| --- | --- | --- | 
|  说明  | 必填 | 422 | 
|  PositiveTargeting | 可选 | 422 | 
| NegativeTargeting | 可选 | 422 | 
| PositiveTargeting.CountryCodes | 可选<br />国家/地区代码必须有效（ISO 3166-1 alpha-2） | 422 | 
| PositiveTargeting.BuyerAccounts | 可选<br />AWS 账户 身份证必须采用有效格式（12 位数字）<br />不得包含超过 25 个账户 | 422 | 
| NegativeTargeting.CountryCodes | 可选<br />国家/地区代码必须有效（ISO 3166-1 alpha-2） | 422 | 
| NegativeTargeting.BuyerAccounts | 不得提供（ BuyerAccounts 不支持负面定向） | 422 | 

**异步错误**

以下错误特定于中的`UpdateTargeting`操作 AWS Marketplace Catalog API。当您在处理更改集`DescribeChangeSet`之后调用时，会返回这些错误。有关使用`DescribeChangeSet`获取变更请求状态的更多信息，请参阅[使用变更集](catalog-apis.md#working-with-change-sets)。


| 错误代码 | 错误消息 | 
| --- | --- | 
| 买家账户无效 | 提供有效的买家账户。无效的帐户:[x]。 | 
| 无效的国家/地区代码 | 提供支持的国家/地区代码。 | 
| 无效定位 | 对同一属性使用负面或正面定位。 | 
| 不兼容的产品 | Country-based 该产品不支持定位。 | 
| 不兼容\_转售\_授权 | 提供 BuyerAccounts 与. 兼容的产品 ResaleAuthorization。 | 
| 不兼容的定位 | 报价发布后，无法执行所请求的更改。 | 
| 不兼容的定位 | 报价到期后，无法执行所请求的更改。 | 
| 不兼容的定位 | 无法根据替代报价更新定位。如果买家与提供的商品无关 AgreementId，则通过提供与买家 AgreementId关联的报价来创建新的私募报价。 | 
| 买家账户太多了 | 在允许的限制 BuyerAccounts 范围内提供。 | 

## 更新法律资源
<a name="update-legal-terms-cppo"></a>

您可以使用目录 API 合并转售授权法律条款，并完全替换中的 AWS Marketplace现有法律条款。

此变更不影响现有协议。最新申请中未包含的法律条款将从报价中删除。您可以致电查看合并后的法律条款`DescribeEntity`。

要更新报价的法律条款，请使用`UpdateLegalTerms`变更类型调用 `StartChangeSet` API 操作，如以下示例所示。

**请求语法**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdateLegalTerms",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "Terms": [
          {
            "Type": "LegalTerm",
            "Documents": [
              {
                "Type": "CustomEula",
                "Url": "https://s3.amazonaws.com/EULA/custom-eula-1234.txt"
              }
            ]
          }
        ]
      }
    }
  ]
}
```

为要添加`UpdateLegalTerms`更改类型的字段提供信息：
+ **实体**（对象）（必填）-您的 CPPO。
  + **类型**（字符串）（必填）-始终`Type`为`Offer@1.0`。
  + **标识符**（字符串）（必填）-您的报价编号。有关更多信息，请参阅 [标识符](catalog-apis.md#identifier)。
+ **DetailsDocument**（对象）（必填）-请求细节的 JSON 值。
  + **条款**（结构数组）（必填）-要更新的法律术语列表。支持的法律条款有：
  + **LegalTerm**（object）（必填）— 定义要向接受者提出的文本协议清单。此类协议的一个例子是最终用户许可协议 (EULA)。
    + **类型**（字符串）（必填）-正在更新的术语类别。
    + **文件**（结构阵列）（必填）— 向买方提出的法律资源参考清单。此类资源的一个例子是最终用户许可协议 (EULA)。每个引用都由一个类型和一个 URL 组成：
      + **类型**（字符串）（必填）-文档类型。可用的文件类型有：
        + **CustomEula**— 您作为卖家提供的自定义 EULA。此文档类型需要存储在可访问的 S3 存储桶中的 EULA 的 URL。
        + **StandardEula**— 标准合约 AWS Marketplace （南华早报）。有关 SCMP 的更多信息，请参阅《 AWS Marketplace 卖家指南》。您没有为此类型提供 URL，因为它是由管理的 AWS Marketplace。
      + **网址**（字符串）（有条件必填）— 供买家阅读的法律文件的 URL。当`Type`是以下 [`CustomEula`] 之一时为必填项。
      + **版本**（字符串）（有条件要求）— 提供的 AWS Marketplace标准合约版本。如果是，`Type`则需要这样做`StandardEula`。可用版本有：
        + **2022-07-14** — 此版本的标准合同可从以下亚马逊 S3 存储段获得： AWS Marketplace [https://s3.amazonaws.com/aws-mp-standard-contracts/Standard-Contact-for-AWS-Marketplace-2022-07-14.pdf](https://s3.amazonaws.com/aws-mp-standard-contracts/Standard-Contact-for-AWS-Marketplace-2022-07-14.pdf)

已根据您的请求创建更改集。对该请求的响应将为您提供变更集的 ID。

**响应语法**

```
{
"ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-
1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

变更请求被添加到队列中并进行处理。这包括向 AWS Marketplace 卖家运营团队验证信息，以确保其符合 AWS Marketplace 指南。验证过程可能需要几分钟到几小时不等。您可以通过或在目录 API 中使用`DescribeChangeSet`操作检查请求的状态。 AWS Marketplace 管理门户

**同步验证**

以下架构验证特定于中的`UpdateLegalTerms` AWS Marketplace Catalog API操作。这些验证是在您致电`StartChangeSet`时执行的。如果请求不符合以下要求，则会失败，并显示 HTTP 响应。


| 输入字段 | 验证规则 | HTTP 代码 | 
| --- | --- | --- | 
| 术语 | 必填<br /> LegalTerm 仅允许出现在列表中<br />列表大小必须为 1 | 422 | 
| 条款 []。 LegalTerm.Documents | 必填 | 422 | 
| 条款 []。 LegalTerm.Documents[] .Type | 必填<br />允许的值：[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_cn/marketplace/latest/developerguide/work-with-cppos.html) | 422 | 
| 条款 []。 LegalTerm.Documents[] .Url | 必填且在 “类型” 是其中之一时必须是有效的 URL[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_cn/marketplace/latest/developerguide/work-with-cppos.html) | 422 | 

**异步错误**

以下错误特定于中的`UpdateLegalTerms`操作 AWS Marketplace Catalog API。当您在处理更改集`DescribeChangeSet`之后调用时，会返回这些错误。有关使用`DescribeChangeSet`获取变更请求状态的更多信息，请参阅[使用变更集](catalog-apis.md#working-with-change-sets)。


| 错误代码  | 错误消息 | 
| --- | --- | 
| 不兼容条款 | 报价发布后，无法执行所请求的更改。 | 
| 不兼容条款 | 报价到期后，无法执行所请求的更改。 | 
| 无效的法律文件 | 为存储在可访问的 S3 存储桶中的法律文档提供网址。 | 
| 无效的法律文件 | 新优惠 StandardEula 仅支持最新版本的。 | 
| 无效的法律文件 | 以支持的文件格式提供法律文件。 | 
| 无效的法律文件 | 使用支持的文档类型提供法律文件。 | 
| LIMIT\_EXCEDED\_LEGAL\_DOCUMENT\_SIZE | 在允许的大小范围内提供法律文件。 | 

## 更新 CPPO 的可发现性
<a name="update-availability-cppo"></a>

您可以使用目录 API 来管理您的商品在中的 AWS Marketplace可发现性。此更改类型不影响现有协议。

您可以选择将来设定一个特定的日期以限制您的报价的可发现性，也可以选择将您的报价设置为过去的到期日期。

要管理您的商品的可发现性，请使用`UpdateAvailability`更改类型调用 `StartChangeSet` API 操作，如以下示例所示。

**请求语法**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdateAvailability",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "AvailabilityEndDate": "2024-05-31"
      }
    }
  ]
}
```

为要添加`UpdateAvailability`更改类型的字段提供信息：
+ **实体**（对象）（必填）-您的 CPPO。
  + **类型**（字符串）（必填）-始终`Type`为`Offer@1.0`。
  + **标识符**（字符串）（必填）-您的报价编号。有关更多信息，请参阅 [标识符](catalog-apis.md#identifier)。
+ **DetailsDocument**（对象）（必填）-请求细节的 JSON 值。
  + **AvailabilityEndDate**（字符串）— 直到该报价可在中被发现和购买的日期。 AWS Marketplace您可以选择将来的特定日期设置为未来以限制可用性，也可以选择将过去的特定日期设置为过期。日期以`YYYY-MM-DD`格式表示。优惠将于提供日期的世界标准时间 23:59:59 .999 到期。

**响应语法**

已根据您的请求创建更改集。对该请求的响应为您提供了变更集的和，如下所示。`ChangeSetId` `ChangeSetArn`

```
{
  "ChangeSetId": "example123456789012abcdef",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

变更请求被添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。

您可以通过，也可以使用 API 操作直接通过 Catalog API 检查请求的`[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)`状态。 AWS Marketplace 管理门户

**同步验证**

以下架构验证特定于中的`UpdateAvailability` AWS Marketplace Catalog API操作。这些验证是在您致电`StartChangeSet`时执行的。如果请求不符合以下要求，则会失败，并显示 HTTP 响应。


| 输入字段 | 验证规则 | HTTP 代码 | 
| --- | --- | --- | 
| AvailabilityEndDate | 必填<br />格式：“YYYY-MM-DD” | 422 | 

**异步错误**

以下错误特定于中的`UpdateAvailability`操作 AWS Marketplace Catalog API。当您在处理更改集`DescribeChangeSet`之后调用时，会返回这些错误。有关使用`DescribeChangeSet`获取变更请求状态的更多信息，请参阅[使用变更集](catalog-apis.md#working-with-change-sets)。


| 错误代码 | 错误消息 | 
| --- | --- | 
| 无效\_可用性\_结束\_日期 | AvailabilityEndDate 不支持公开报价。 | 
| 无效\_可用性\_结束\_日期 | 提供未来 AvailabilityEndDate。 | 
| 无效\_可用性\_结束\_日期 | 提供 AvailabilityEndDate 之前的 AgreementEndDate。 | 
| 缺少可用性结束日期 | 提供 AvailabilityEndDate 协议结束日期之前的。 | 

## 定义协议的到期日期
<a name="update-validity-terms-cppo"></a>

您可以使用目录 API 来定义使用此优惠创建的协议的到期日期 AWS Marketplace。

此变更不影响现有协议。制造商可以在转售授权中提及最长协议开始日期。但是，渠道合作伙伴提供的协议开始日期不能晚于该日期。

要定义协议的到期日期，请使用`UpdateValidityTerms`更改类型调用 `StartChangeSet` API 操作，如以下示例所示。

**请求语法**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdateValidityTerms",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "Terms": [
          {
            "Type": "ValidityTerm",
            "AgreementDuration": "P12M",
            "AgreementStartDate": "2021-08-01",
            "AgreementEndDate": "2022-08-01"
          }
        ]
      }
    }
  ]
}
```

为要添加`UpdateValidityTerms`更改类型的字段提供信息：
+ **实体**（对象）（必填）-您的 CPPO。
  + **类型**（字符串）（必填）-始终`Type`为`Offer@1.0`。
  + **标识符**（字符串）（必填）-您的报价编号。有关更多信息，请参阅 [标识符](catalog-apis.md#identifier)。
+ **DetailsDocument**（对象）（必填）-请求细节的 JSON 值。
  + **术语**（结构数组）**-** 要更新的有效性术语列表。支持的有效期条款有：
    + **ValidityTerm**（object）**—** 定义使根据此优惠生成的协议保持有效的条件。
      + **类型**（字符串）**-** 正在更新的术语的类别。
      + **AgreementDuration**（字符串）**-** 定义协议保持活动状态的持续时间。如果`AgreementStartDate`未提供，则协议持续时间与协议签署时间相关。持续时间以 ISO\_8601 格式表示。
      + **AgreementStartDate**（字符串）**-** 定义协议的开始日期。 `AgreementStartDate`以 YYYY-MM-DD 格式表示。协议从所提供日期的世界标准时间 00:00:00.000 开始。如果`AgreementStartDate`未提供，则根据协议签名时间确定协议开始日期。
      + **AgreementEndDate**（字符串）**-** 定义协议结束的日期。`AgreementEndDate`以 YYYY-MM-DD 格式表示。协议在提供的日期世界标准时间 23:59:59 .999 结束。如果`AgreementEndDate`未提供，则协议结束日期由各个条款的有效性决定。

**响应语法**

已根据您的请求创建更改集。对该请求的响应为您提供了变更集的和，如下所示。`ChangeSetId` `ChangeSetArn`

```
{
  "ChangeSetId": "example123456789012abcdef",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

变更请求被添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。

您可以通过，也可以使用 API 操作直接通过 Catalog API 检查请求的`[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)`状态。 AWS Marketplace 管理门户

**同步验证**

以下架构验证特定于中的`UpdateValidityTerms` AWS Marketplace Catalog API操作。这些验证是在您致电`StartChangeSet`时执行的。如果请求不符合以下要求，则会失败，并显示 HTTP 响应。


| 输入字段 | 验证规则 | HTTP 代码 | 
| --- | --- | --- | 
| 术语 | 必填<br />列表中只允许 ValidityTerm “” <br />必须为空或仅包含 1 个词语 | 422 | 
|  条款 []。 ValidityTerm  | 支持的使用案例：<br />1。 ValidityTerm 只有 AgreementDuration<br />2。 ValidityTerm 只有 AgreementStartDate<br />3。 ValidityTerm 只有 AgreementEndDate<br />4。 ValidityTerm 同时使用 AgreementStartDate 和 AgreementEndDate | 422 | 
| 条款 []。 ValidityTerm.AgreementDuration | 可选<br />以 ISO\_8601 格式表示。 | 422 | 
| 条款 []。 ValidityTerm.AgreementStartDate | 可选<br />格式：“YYYY-MM-DD” | 422 | 
| 条款 []。 ValidityTerm.AgreementEndDate | 可选<br />格式：“YYYY-MM-DD” | 422 | 

**异步错误**

以下错误特定于中的`UpdateValidityTerms`操作 AWS Marketplace Catalog API。当您在处理更改集`DescribeChangeSet`之后调用时，会返回这些错误。有关使用`DescribeChangeSet`获取变更请求状态的更多信息，请参阅[使用变更集](catalog-apis.md#working-with-change-sets)。


| 错误代码 | 错误消息 | 
| --- | --- | 
| 不兼容协议 | AgreementStartDate 不可能在将来要取代的当前协议未过时。 | 
| 不兼容\_协议\_结束\_日期 | AgreementEndDate 优惠发布后无法更新。 | 
| 不兼容\_协议\_开始\_日期 | AgreementStartDate 优惠发布后无法更新。 | 
| 不兼容的产品 | AgreementStartDate 不支持 in the future。 | 
| 不兼容\_转售\_授权 | 确保 AgreementStartDate 和 AgreementEndDate 之间的持续时间与兼容 ResaleAuthorization。 | 
| 不兼容\_转售\_授权 | 确保 AgreementStartDate 与. 兼容 ResaleAuthorization。 | 
| 不兼容\_转售\_授权 | 确保 AgreementEndDate 与. 兼容 ResaleAuthorization。 | 
| 不兼容\_转售\_授权 | 确保 AgreementStartDate 和 AgreementEndDate 之间的持续时间与兼容 ResaleAuthorization。 | 
| 不兼容\_转售\_授权 | 确保 AgreementDuration 匹配中指定的持续时间 ResaleAuthorization。 | 
| 不兼容条款  | ValidityTerm 不支持公开报价。 | 
| 不兼容条款  | 报价到期后，无法执行所请求的更改。 | 
| 无效协议持续时间 | 提供大 AgreementDuration 于或等于 [x] 天。 | 
| 无效的协议结束日期 | 提供未来 AgreementEndDate。 | 
| 无效的协议结束日期 | 提供大 AgreementEndDate 于或等于 [x]。 | 
| 无效的协议开始日期 | 提供一个 tha AgreementStartDate t is aft AvailabilityEndDate er。 | 
| 无效的协议开始日期 | 提供 AgreementStartDate 之前的 AgreementEndDate. | 
| 无效的协议开始日期 | 提供 AgreementStartDate 从今天起 [x] 年内的。 | 
| 无效协议时间间隔 | ValidityTerm 两者兼 AgreementDuration 而有且 AgreementEndDate 不支持。 | 
| 无效协议时间间隔 | ValidityTerm 同时使用 AgreementStartDate 且 AgreementDuration 不支持该产品的报价。 | 
| 无效协议时间间隔 | ValidityTerm 该产品的报价 AgreementStartDate 不支持使用。 | 
| 无效协议时间间隔 | ValidityTerm AgreementStartDate 不支持 “只有”。 | 
| 无效协议时间间隔 | AgreementEndDate 除非它与 future 组合使用 AgreementStartDate 或用于替代报价，否则不支持。 | 
| 无效协议时间间隔 |  AgreementEndDate 如果 AgreementStartDate 差异小于或等于 [x] 年，则提供。 | 
| 缺少协议开始日期 | 与一起使用 ValidityTerm时请确保 AgreementStartDate 存在 ConfigurableUpfrontPricingTerm。 | 

## 更新定价
<a name="update-pricing-terms-cppo"></a>

您可以使用目录 API 来完全替换现有的定价条款。

最新请求中未包含的定价条款将从报价中删除。渠道合作伙伴只能使用此变更类型通过`FixedUpFrontPricingTerm`。

要更新商品的定价条款，请使用`UpdatePricingTerms`更改类型调用 `StartChangeSet` API 操作，如以下示例所示。

**请求语法**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdatePricingTerms",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "Details": {
        "PricingModel": "Contract",
        "Terms": [
          {
            "Type": "FixedUpfrontPricingTerm",
            "CurrencyCode": "USD",
            "Price": "200.00",
            "Duration": "P465D",
            "Grants": [
              {
                "DimensionKey": "Users",
                "MaxQuantity": 10
              }
            ]
          }
        ]
      }
    }
  ]
}
```

为要添加`UpdatePricingTerms`更改类型的字段提供信息：
+ **实体**（对象）（必填）-您的 CPPO。
  + **类型**（字符串）（必填）-始终`Type`为`Offer@1.0`。
  + **标识符**（字符串）（必填）-您的报价编号。有关更多信息，请参阅 [标识符](catalog-apis.md#identifier)。
+ **详细信息**（字符串）（必填）-请求的细节。此字段是一个 JSON 字符串字段。对于单行字符串字段，包括字符串中不能包含的转义字符（例如引号），必须正确设置其格式。
  + **PricingModel**（字符串）（必填）-报价的定价模型。定价模型的可能值为：
    + **合同** — Contract-based 定价模式，在这种模式下，买家要么提前收取使用您的产品的费用，要么为他们提供灵活的付款时间表。买家还可以为合同之外的额外使用付费。
    + **条款**（结构数组）（必填）-要更新的定价术语列表。支持的定价条款有：
      + **FixedUpfrontPricingTerm**（object）— 定义一种预付费定价模型，在该模型中，向客户收取固定的预付金额。
        + **类型**（字符串）（必填）-要更新的术语的类型。
        + **CurrencyCode**（字符串）（必填）— 定义本术语中提及的价格的货币。对于公开报价，仅支持美元。对于私募出价，支持美元、澳元、欧元、英镑和日元。
        + **价格**（字符串）（必填）-接受此条款时向客户收取的固定金额。
        + **补助金**（结构数组）（必填）— 作为协议执行的一部分，将向固定预付的接受者授予的权利。
          + **DimensionKey**（字符串）（必填）-产品文档中定义的唯一维度密钥。尺寸代表产品的容量类别，在列出产品时指定 AWS Marketplace。
          + **MaxQuantity**（整数）（可选）-买方有权获得产品给定尺寸的最大容量。如果`MaxQuantity`未提供，则买家将能够无限量使用给定维度。
        + **持续时间**（字符串）（可选）-定义术语保持活动状态的持续时间。此字段支持 ISO 8601 格式。

**响应语法**

已根据您的请求创建更改集。对该请求的响应为您提供了变更集的和，如下所示。`ChangeSetId` `ChangeSetArn`

```
{
  "ChangeSetId": "example123456789012abcdef",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

变更请求被添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。

您可以通过，也可以使用 API 操作直接通过 Catalog API 检查请求的`[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)`状态。 AWS Marketplace 管理门户

**同步验证**

以下架构验证特定于中的`UpdatePricingTerms` AWS Marketplace Catalog API操作。这些验证是在您致电`StartChangeSet`时执行的。如果请求不符合以下要求，则会失败，并显示 HTTP 响应。


| 输入字段 | 验证规则 | 
| --- | --- | 
| PricingModel | 必填<br />允许的定价模式：<br />合同 | 
| 术语 | 必填<br />允许的条款：<br />FixedUpfrontPricingTerm | 
| 条款 []。 FixedUpfrontPricingTerm.CurrencyCode | 必填<br />允许的值：[“美元”、“澳元”、“欧元”、“英镑”、“日元”]<br />允许的定价模式：<br />合同 | 
| 条款 []。 FixedUpfrontPricingTerm.Price | 必填<br />数据类型为 “字符串” 必须为非负数 <br />Support 最多支持 6 位小数<br />不支持特殊字符 | 
| 条款 []。 FixedUpfrontPricingTerm.Duration | 必填<br />预期格式：ISO 8601 持续时间 | 
| 条款 []。 FixedUpfrontPricingTerm.Grants[]。 DimensionKey | 必填<br />长度必须介于 1 和 60 之间 | 
| 条款 []。 FixedUpfrontPricingTerm.Grants[]。 MaxQuantity | 必填 | 

**异步错误**

以下错误特定于中的`UpdatePricingTerms`操作 AWS Marketplace Catalog API。当您在处理更改集`DescribeChangeSet`之后调用时，会返回这些错误。有关使用`DescribeChangeSet`获取变更请求状态的更多信息，请参阅[使用变更集](catalog-apis.md#working-with-change-sets)。


| 错误代码 | 错误消息 | 
| --- | --- | 
| 重复的维度密钥 | 在 [x] 中为 Grants 提供唯一的维度键列表。 | 
| 重复的维度密钥 | 在 [x] 中提供 RateCard 唯一的维度键列表。 | 
| 重复选择器  | 在中提供唯一的选择器列表。 ConfigurableUpfrontPricingTerm | 
| 重复术语类型 | 提供唯一的术语类型列表。 | 
| 不兼容协议 | 无法从替换商品中删除以下条款：[x, y, z]。 | 
| 不兼容协议 | 以下条款不能添加到替换商品中：[x, y, z]。 | 
| 不兼容的货币代码 | CurrencyCode 优惠发布后无法更改。 | 
| 不兼容的付款设置 | 更新您的付款设置以使其与兼容 CurrencyCode。 | 
| 不兼容的产品 | 该产品不支持使用量定价模式。 | 
| 不兼容的产品 | 该产品不支持合同定价模式。 | 
| 不兼容的产品 | 该产品不支持 Byol 定价模式。 | 
| 不兼容的产品 | 该产品不支持免费定价模式。 | 
| 不兼容的产品 | 该产品的报价不支持 [x]。 | 
| 不兼容的产品 | 提供的付款和定价条款不兼容。 | 
| 不兼容的产品 | 在 [x] 中使用产品中现有的可用尺寸。 | 
| 不兼容的产品 | FreeTrialPricingTerm 因为该产品不支持该报价的唯一定价条款。 | 
| 不兼容的产品 | 该产品不支持以下术语：[x, y, z]。 | 
| 不兼容的产品 | 仅合同定价模式支持替换报价。 | 
| 不兼容的产品 | 提供与产品尺寸兼容的定价条款。不兼容的定价条款：[x, y, z]。 | 
| 不兼容的费率卡片约束 | 在使用量定价模式中， QuantityConfiguration 将 MultipleDimensionSelection 和设置 ConfigurableUpfrontPricingTerm 为 “允许”。 | 
| 不兼容的费率卡片约束 | 在使用量定价模式中 QuantityConfiguration ，将 MultipleDimensionSelection 和设置 ConfigurableUpfrontPricingTerm 为 “不允许”。 | 
| 不兼容的费率卡片约束 | QuantityConfiguration 优惠发布后 ConfigurableUpfrontPricingTerm 无法更改 in。 | 
| 不兼容的费率卡片约束 | MultipleDimensionSelection 优惠发布后 ConfigurableUpfrontPricingTerm 无法更改 in。 | 
| 不兼容费率 | 使用免费定价模式时，将所有费用金额和价格设置为零 (0)。 | 
| 不兼容费率 | 该产品的免费试用优惠只允许使用零 (0) 个价格。 UsageBasedPricingTerm  | 
| 不兼容\_转售\_授权 | 请提供中指定的相同 CurrencyCode 内容 ResaleAuthorization。 | 
| 不兼容\_转售\_授权 | 确保比赛持续时间在中指定的 FixedUpfrontPricingTerm 比赛持续时间中指定 ResaleAuthorization。 | 
| 不兼容\_转售\_授权 | 提供与. 兼容的术语 ResaleAuthorization。不兼容的术语：[x, y, z]。 | 
| 不兼容的选择器持续时间 | 优惠发布 ConfigurableUpfrontPricingTerm 后，不允许从价目表中删除时长。 | 
| 不兼容卖家验证 | 完成所有必需的卖家验证流程。 | 
| 不兼容条款  | 不支持 [x] 和以下术语：[y, z]。 | 
| 不兼容条款  | 优惠发布后无法添加以下条款：[x, y, z]。 | 
| 不兼容条款  | 优惠发布后无法删除以下条款：[x, y, z]。 | 
| 不兼容条款  | 私密优惠不支持 [x]。 | 
| 不兼容条款  | 不支持以下允许无限使用的术语：[x, y, z]。 FreeTrialPricingTerm  | 
| 不兼容条款  | 该产品不支持以下术语：[x, y, z]。 FreeTrialPricingTerm  | 
| 不兼容条款  |  FixedUpfrontPricingTerm如果报价包含，则提供零 (0) 价格 PaymentScheduleTerm。 | 
| 不兼容条款  | 以下术语与 PricingModel:[x, y, z] 不兼容。 | 
| 不兼容条款  | FixedUpfrontPricingTerm 大于零 (0) 时 MarkupPercentage 不支持。 | 
| 不兼容条款  | 报价发布后，无法执行所请求的更改。 | 
| 不兼容条款  | 报价到期后，无法执行所请求的更改。 | 
| 无效协议持续时间 | 提供介于 [x] 和 [y] 个月之间的持续时间。 | 
| 无效协议持续时间 | 确保计量维度的持续时间粒度为日级别。 | 
| 无效的货币代码 | 提供支持的 CurrencyCode。 | 
| 无效的货币代码 |  CurrencyCode 所有定价和付款条件均相同。 | 
| 无效持续时间 | 确保持续时间 FreeTrialPricingTerm 在允许的范围内。 | 
| 无效持续时间 | 在中提供与之间的 AgreementStartDate 持续时间 FixedUpfrontPricingTerm 相匹配的持续时间 AgreementEndDate。 | 
| 无效持续时间 | 提供介于 [x] 和 [y] 个月之间的持续时间。 | 
| 无效持续时间 | 确保计量维度的持续时间粒度为日级别。 | 
| 无效补助金 | 为中的所有 MaxQuantity 补助金提供相同的补助 FreeTrialPricingTerm。 | 
| 无效补助金 | 为中所有可用的计量维度提供资助。 FreeTrialPricingTerm | 
| 价格变动无效 | [x] 要等到 [y] 才能更新，因为您在过去 120 天内申请了提价。要取消您之前的涨价请求或了解更多信息，请联系 AWS Marketplace 托管目录运营团队。 | 
| 价格变动无效 | 同一请求不支持在 [x] 中增加价格和增加维度。先添加维度。 | 
| 价格变动无效 | 同一请求 UsageBasedPricingTerm不支持涨价和降价。先降低价格。 | 
| 价格变动无效 | 在同一个请求中 UsageBasedPricingTerm 不支持价格上涨 RecurringPaymentTerm 和降价。先降低价格。 | 
| 价格变动无效 | 在同一个请求中 UsageBasedPricingTerm 不支持降价 RecurringPaymentTerm 和提价。先降低价格。 | 
| 无效的费率卡 | ConfigurableUpfrontPricingTerm 在持续时间 [x] 内缺少一个或多个维度密钥。提供所有持续时间内同一组维度密钥的价格。 | 
| 无效的费率卡 | 在中仅提供计量尺寸的价目表。 UsageBasedPricingTerm | 
| 无效的费率卡 | 无法从 [x] 中删除费率。在现有价目表中提供所有维度的价格。 | 
| 无效的费率卡 | 提供在 [x] 中具有相同单位的尺寸。 | 
| 无效的费率卡 | 在 [x] 中提供所有计量尺寸或所有授权尺寸。 | 
| 无效的费率卡 | 在 [x] 中仅提供授权尺寸。 | 
| 无效的费率卡 | 为中所有可用的计量维度提供基于使用量的费率。 UsageBasedPricingTerm | 
| 无效的费率卡 | 为所有免费试用版维度提供基于使用量的费率。 | 
| 无效的费率卡 | 提供最多 8 位小数点的价格 UsageBasedPricingTerm。 | 
| 无效的选择器持续时间值 | 提供介于 [x] 和 [y] 个月之间的持续时间。 | 
| 无效的选择器持续时间值 | 确保计量维度的持续时间粒度为日级别。 | 
| 无效的选择器持续时间值 | 确保持续时间 ConfigurableUpfrontPricingTerm 在允许的范围内。 | 
| 无效的选择器持续时间值 | 提供一个或多个支持的合同期限。 | 
| 无效的选择器持续时间值 | 提供一个或多个支持的合同期限或单个自定义期限。 | 
| 选择器持续时间值无效 | 在中提供与之间的 AgreementStartDate 持续时间 ConfigurableUpfrontPricingTerm相匹配的持续时间 AgreementEndDate。 | 
| 缺少持续时间 | 请提供持续时间 FixedUpfrontPricingTerm。 | 
| 缺少强制性条款 | FixedUpfrontPricingTerm 仅在与 ByolPricingTerm 或配对时才支持 PaymentScheduleTerm。 | 
| 缺少强制性条款 | 至少提供 [x, y, z] 中的一个。 | 
| 缺少强制性条款 | 在使用 Byol 定价模型 ByolPricingTerm 时提供信息。 | 
| 补助金太多了 | 在 [y] 中提供最多 [x] 项补助。 | 
| 评分卡太多了 | 该产品只允许 ConfigurableUpfrontPricingTerm使用一张价目表。 | 
| 评分卡太多了 | 该产品最多允许 [x] 张 ConfigurableUpfrontPricingTerm 价目表。 | 
| 费率太多了 | 在允许的限制 RateCards 范围内提供 ConfigurableUpfrontPricingTerm。 | 
| 费率太多了 | 在允许的限制 RateCards 范围内提供 UsageBasedPricingTerm。 | 

## 更新付款时间表详情
<a name="update-payment-schedule-terms-cppo"></a>

您可以在中使用目录 API 来更改付款计划详细信息，例如灵活的付款时间表 AWS Marketplace。

如果制造商在 “转售授权” 中提供了付款时间表，则渠道合作伙伴可以：
+ 使用`UpdateMarkup`变更类型对所有付款计划应用统一的百分比加价。
+ 使用`UpdatePaymentScheduleTerms`更改类型将自定义付款金额设置为大于或等于转售授权中提供的金额。付款日期无法更改。这两个选项不能同时应用。如果先应用加价，而您需要对其进行更改以应用付款时间表，请将加价设置为`0`通过`UpdateMarkup`更改类型。如果先应用付款时间表，则无法恢复更改以应用加价。

要更新您的报价与付款相关的详细信息，请使用`UpdatePaymentScheduleTerms`更改类型调用 `StartChangeSet` API 操作，如以下示例所示。

**请求语法**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdatePaymentScheduleTerms",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "Terms": [
          {
            "Type": "PaymentScheduleTerm",
            "Schedule": [
              {
                "ChargeDate": "2021-12-01",
                "ChargeAmount": "200.00"
              },
              {
                "ChargeDate": "2022-03-01",
                "ChargeAmount": "250.00"
              }
            ]
          }
        ]
      }
    }
  ]
}
```

为要添加`UpdatePaymentScheduleTerms`更改类型的字段提供信息：
+ **实体**（对象）（必填）-您的 CPPO。
  + **类型**（字符串）（必填）-始终`Type`为`Offer@1.0`。
  + **标识符**（字符串）（必填）-您的报价编号。有关更多信息，请参阅 [标识符](catalog-apis.md#identifier)。
+ **DetailsDocument**（对象）（必填）-请求细节的 JSON 值。
  + **条款**（结构数组）-您要更新的付款条件列表。支持的付款条件有：
    + **PaymentScheduleTerm**（object）— 定义一种基于分期付款的定价模型，在该模型中，在协议有效期内的不同日期向客户收取固定价格。
      + **类型**（字符串）-要更新的术语的类型。这是对象的值：`"PaymentScheduleTerm"`。
      + **附表**（结构数组）-付款时间表列表，其中每个要素定义一期付款。它包含计算要支付的价格和向客户收取费用的日期所需的信息。
        + **ChargeDate**（字符串）-客户支付此付款时间表条款中定义的价格的日期。 `ChargeDate`以 YYYY-MM-DD 格式表示。发票在提供的日期生成。
        + **ChargeAmount**（字符串）—客户在预定日期要支付的价格（`ChargeDate`）。

**响应语法**

已根据您的请求创建更改集。对该请求的响应为您提供了变更集的和，如下所示。`ChangeSetId` `ChangeSetArn`

```
{
  "ChangeSetId": "example123456789012abcdef",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

变更请求被添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。

您可以通过，也可以使用 API 操作直接通过 Catalog API 检查请求的`[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)`状态。 AWS Marketplace 管理门户

**同步验证**

以下架构验证特定于中的`UpdatePaymentScheduleTerms` AWS Marketplace Catalog API操作。这些验证是在您致电`StartChangeSet`时执行的。如果请求不符合以下要求，则会失败，并显示 HTTP 响应。


| 输入字段 | 验证规则 | HTTP | 
| --- | --- | --- | 
| 术语 | 必填<br />只允许 PaymentScheduleTerm “”<br />列表大小必须小于 2 | 422 | 
| 条款 []。 PaymentScheduleTerm.CurrencyCode | 必填<br />支持的货币：[“美元”、“澳元”、“欧元”、“英镑”、“日本”] | 422 | 
| 条款 []。 PaymentScheduleTerm.Schedule[] | 必填<br />列表大小必须介于 1 到 60 之间（含） | 422 | 
| 条款 []。 PaymentScheduleTerm.Schedule[]。 ChargeDate | 必填<br />格式：“YYYY-MM-DD” | 422 | 
| 条款 []。 PaymentScheduleTerm.Schedule[]。 ChargeAmount | 必填数据类型为 “字符串”<br />Non-negative支持最多 2 位小数的小数<br />不允许使用其他属性 | 422 | 

**异步错误**

以下错误特定于中的`UpdatePaymentScheduleTerms`操作 AWS Marketplace Catalog API。当您在处理更改集`DescribeChangeSet`之后调用时，会返回这些错误。有关使用`DescribeChangeSet`获取变更请求状态的更多信息，请参阅[使用变更集](catalog-apis.md#working-with-change-sets)。


| 错误代码 | 错误消息 | 
| --- | --- | 
| 重复充电日期 | 在中提供唯一的收费日期 PaymentScheduleTerm。 | 
| 不兼容的加价百分比 | PaymentScheduleTerm 大于零 (0) 时 MarkupPercentage 不支持。 | 
| 不兼容\_转售\_授权 | 提供与. 兼容的术语 ResaleAuthorization。不兼容的术语：[PaymentScheduleTerm]。 | 
| 不兼容\_转售\_授权 | 确保 ChargeAmounts 总输入 PaymentScheduleTerm值与 ResaleAuthorization. | 
| 不兼容\_转售\_授权 | 确保中的充电日期 PaymentScheduleTerm 与中的充电日期相同 ResaleAuthorization。 | 
| 不兼容\_转售\_授权 | 确保中的费用金额大 PaymentScheduleTerm 于或等于该日期的 ResaleAuthorization 费用金额。 | 
| 不兼容条款 | 报价发布后，无法执行所请求的更改。 | 
| 不兼容条款 | 报价到期后，无法执行所请求的更改。 | 
| 不兼容条款 |  UpdatePaymentScheduleTerms 使用特定的付款金额或预定日期 UpdateMarkup 的单一加价百分比。 | 
| 无效的收费日期 | 提供之前的收费日期 AgreementEndDate。 | 
| TOO\_MANY\_BACKDATED\_CHARGES | 之前最多提供 1 次定期付款 AvailabilityEndDate。 | 


| 错误代码 | 错误消息 | 
| --- | --- | 
| 重复充电日期 | 在中提供唯一的收费日期 PaymentScheduleTerm。 | 
| 不兼容的货币代码 | CurrencyCode 优惠发布后无法更改。 | 
| 不兼容的加价百分比 | PaymentScheduleTerm 大于零 (0) 时 MarkupPercentage 不支持。 | 
| 不兼容的付款设置 | 更新您的付款设置以使其与兼容 CurrencyCode。 | 
| 不兼容\_转售\_授权 | 提供与. 兼容的术语 ResaleAuthorization。不兼容的术语：[PaymentScheduleTerm]。 | 
| 不兼容\_转售\_授权 | 确保 ChargeAmounts 总输入 PaymentScheduleTerm值与 ResaleAuthorization. | 
| 不兼容卖家验证 | 完成所有必需的卖家验证流程。 | 
| 不兼容条款 | 报价发布后，无法执行所请求的更改。 | 
| 不兼容条款 | 报价到期后，无法执行所请求的更改。 | 
| 无效的收费日期 | 提供之前的收费日期 AgreementEndDate。 | 
| 无效的货币代码 | 提供支持的 CurrencyCode。 | 
| 无效的货币代码 |  CurrencyCode 所有定价和付款条件均相同。 | 
| TOO\_MANY\_BACKDATED\_CHARGES | 之前最多提供 1 次定期付款 AvailabilityEndDate。 | 

## 发布 CPPO
<a name="release-offer-cppo"></a>

您可以使用 Catalog API 合并从所有更新更改类型收集的信息，然后在中发布优惠 AWS Marketplace。

优惠将保持`Draft`状态，直到被`ReleaseOffer`叫出为止。优惠发布后，即可在中找到。 AWS Marketplace

要发布您的报价，请使用`ReleaseOffer`更改类型调用 `StartChangeSet` API 操作，如以下示例所示。

**请求语法**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "ReleaseOffer",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {}
    }
  ]
}
```

为要添加`ReleaseOffer`更改类型的字段提供信息：
+ **实体**（对象）（必填）-您的 CPPO。
  + **类型**（字符串）（必填）-始终`Type`为`Offer@1.0`。
  + **标识符**（字符串）（必填）-您的报价编号。有关更多信息，请参阅 [标识符](catalog-apis.md#identifier)。
+ **DetailsDocument**（对象）（必填）-请求细节的 JSON 值。必须为空`ReleaseOffer`。

**响应语法**

已根据您的请求创建更改集。对该请求的响应为您提供了变更集的和，如下所示。`ChangeSetId` `ChangeSetArn`

```
{
  "ChangeSetId": "example123456789012abcdef",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

变更请求被添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。

您可以通过，也可以使用 API 操作直接通过 Catalog API 检查请求的`[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)`状态。 AWS Marketplace 管理门户

**同步验证**

以下架构验证特定于中的`ReleaseOffer` AWS Marketplace Catalog API操作。这些验证是在您致电`StartChangeSet`时执行的。如果请求不符合以下要求，则会失败，并显示 HTTP 响应。


| 输入字段 | 验证规则 | 
| --- | --- | 
| 说明  | 必须为空 ({}) | 

**异步错误**

以下错误特定于中的`ReleaseOffer`操作 AWS Marketplace Catalog API。当您在处理更改集`DescribeChangeSet`之后调用时，会返回这些错误。有关使用`DescribeChangeSet`获取变更请求状态的更多信息，请参阅[使用变更集](catalog-apis.md#working-with-change-sets)。


| 错误代码 | 错误消息 | 
| --- | --- | 
| 不兼容的付款设置 | 更新您的付款设置以使其与兼容 CurrencyCode。 | 
| 不兼容的产品 | 首先为产品创建公开报价。 | 
| 不兼容卖家验证 | 完成所有必需的卖家验证流程。 | 
| 无效的更新请求 | 报价发布后，无法执行所请求的更改。 | 
| 缺少协议结束日期 | 提供 AgreementEndDate 换货报价。 | 
| 缺少可用性结束日期 | 提供私人 AvailabilityEndDate 报价。 | 
| 缺少强制性条款 |  FixedUpfrontPricingTerm 如果报价包含，则提供 PaymentScheduleTerm。 | 
| 缺少买家账户 |  BuyersAccounts 为 PositiveTargeting 使用创建的报价提供 ResaleAuthorization。 | 
| 缺少买家账户 | 该产品的所有报价都必须是私密的。 PositiveTargeting 提供 BuyersAccounts。 | 
| 缺少描述 | 在发布优惠之前设置描述。 | 
| 缺少强制性条款 | 在报价中添加 [x]。 | 
| 缺少强制性条款 |  FixedUpfrontPricingTerm 如果报价包含，则提供 PaymentScheduleTerm。 | 
| 缺少名字 | 在发布优惠之前设置名称。 | 
| 优惠太多了 | 每种产品只能创建一个公开报价。 | 
| 优惠太多了 | 每种产品只能创建一项公开免费试用优惠。 | 

## 定义现有的 CPPO
<a name="describe-entity-cppo"></a>

您可以使用目录 API 在中定义 CPPO 详细信息。 AWS Marketplace

要定义现有 CPPO，请使用`Offer@1.0`实体类型调用 `DescribeEntity` API 操作，如以下示例所示。

**请求语法**

```
GET /DescribeEntity?catalog=<Catalog>&entityId=<EntityId> HTTP/1.1
```

为要添加`DescribeEntity`更改类型的字段提供信息：
+ **目录**（字符串）-与请求相关的目录。固定值:`AWSMarketplace`.
+ E@@ **ntityID**（字符串）-要描述的选件的唯一 ID。

**响应语法**

对该请求的回复将为您提供报价详情，如下所示。

```
{
  "EntityType": "Offer@1.0",
  "EntityIdentifier": "offer-a5oEXAMPLEzpu@1",
  "EntityArn": "arn:aws:aws-marketplace:us-east-1:446235747164:AWSMarketplace/Offer/offer-a5oEXAMPLEzpu",
  "LastModifiedDate": "2021-03-10T21:57:16Z",
  "Details": {
    "Id": "offer-3rEXAMPLErn",
    "State": "Released",
    "Name": "Test Offer",
    "Description": "Worldwide private offer for Test Product",
    "PreExistingAgreement": {
      "AcquisitionChannel": "External",
      "PricingModel": "Contract"
    },
    "ProductId": "prod-0bEXAMPLEb51",
    "ResaleAuthorizationId": "resaleauthz-123456789",
    "MarkupPercentage": "5.0",
    "Terms": [
      {
        "Type": "LegalTerm",
        "Documents": [
          {
            "Type": "CustomEula",
            "Url": "https://s3.amazonaws.com/EULA/custom-eula-1234.txt"
          }
        ]
      },
      {
        "Type": "ConfigurableUpfrontPricingTerm",
        "CurrencyCode": "USD",
        "RateCards": [
          {
            "Selector": {
              "Type": "Duration",
              "Value": "P12M"
            },
            "RateCard": [
              {
                "DimensionKey": "m3.large",
                "Price": "300.00"
              },
              {
                "DimensionKey": "m4.xlarge",
                "Price": "400.00"
              }
            ],
            "Constraints": {
              "MultipleDimensionSelection": "Allowed",
              "QuantityConfiguration": "Allowed"
            }
          }
        ]
      },
      {
        "Type": "UsageBasedPricingTerm",
        "CurrencyCode": "USD",
        "RateCards": [
          {
            "RateCard": [
              {
                "DimensionKey": "m3.large",
                "Price": "0.10"
              },
              {
                "DimensionKey": "m4.xlarge",
                "Price": "0.20"
              }
            ]
          }
        ]
      },
      {
        "Type": "PaymentScheduleTerm",
        "CurrencyCode": "USD",
        "Schedule": [
          {
            "ChargeDate": "2020-12-01T00:00:00Z",
            "ChargeAmount": "1000.00"
          },
          {
            "ChargeDate": "2021-06-15T00:00:00Z",
            "ChargeAmount": "1250.00"
          }
        ]
      }
    ],
    "Rules": [
      {
        "Type": "TargetingRule",
        "PositiveTargeting": {
          "CountryCodes": [
            "US",
            "CA"
          ],
          "BuyerAccounts": [
            "118033953248"
          ]
        },
        "NegativeTargeting": {
          "CountryCodes": [
            "XX"
          ]
        }
      },
      {
        "Type": "AvailabilityRule",
        "AvailabilityEndDate": "2050-08-30T01:56:03Z"
      }
    ]
  }
}
```

为`DescribeEntity`响应的输入字段提供信息：
+ **EntityType**（字符串）-实体的命名类型，即`Offer@1.0`。
+ **EntityIdentifier**（字符串）-实体的标识符，格式为`EntityId@RevisionId`。
+ **EntityArn**（字符串）-与此请求中引用的更改集的唯一标识符关联的 ARN。
+ **LastModifiedDate**（字符串）-实体的上次修改日期，采用 ISO 8601 格式 () `2018-02-27T13:45:22Z`。
+ **DetailsDocument**（对象）-JSON 对象包含实体的详细信息。
  + **ID**（字符串）- AWS Marketplace 和中报价实体的唯一标识符，在创建报价期间生成。
  + **州**（字符串）-报价的状态。
  + **名称**（字符串）-与报价关联的名称，便于您和您的客户阅读。它也将作为协议信息的一部分显示。
  + **描述**（字符串）-描述是一种自由格式的文本，仅供您使用，永远不会向买家公开。
  + **PreExistingAgreement**（字符串）— 确定此优惠是否为与现有客户签订的相同基础产品的现有协议的续订。现有协议可以是内部协议，也可以是外部协议 AWS Marketplace。 AWS 可能会审核并确认您的报价是否为续订。 AWS 如果无法验证您的报价，则 AWS 可以撤销客户的报价和权利。
    + **AcquisitionChannel**（字符串）-表示现有协议是在外部 AWS Marketplace 还是内部签署 AWS Marketplace。可能的值：`External`、`AwsMarketplace`。

       
    + **PricingModel**（字符串）-表示现有协议使用哪种定价模式。可能的值：`Contract`、`Usage`、`Byol`、`Free`。
  + **ProductId**（字符串）— 描述是一种自由格式的文本，仅供您使用，永远不会向买家公开。
  + **ResaleAuthorizationId**（字符串）— ResaleAuthorization 用于创建私人报价。
  + **MarkupPercentage**（字符串）-渠道合作伙伴在`UpdateMarkup`变更类型中传递的百分比值。此标记已应用于条款。
  + **术语**（结构数组）-术语列表。
  + **规则**（结构数组）-规则列表。