对 AWS Marketplace API 参考进行了重组。有关支持的 API 操作的更多信息,请参阅 AWS 市场 API 参考。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用渠道合作伙伴的私人优惠 AWS Marketplace API
您可以使用自动执行渠道合作伙伴私人优惠 (CPPO) 的任务。 AWS Marketplace Catalog API
当您创建或更新 CPPO 时,报价草稿将包含转售授权中的条款和规则,买家看不见。在组织中加入多个角色来创建私人报价是可能的,但不是必需的。
例如,一个角色可以负责更新价格,而另一个角色可以负责更新付款时间表。然后,第三方可以负责更新法律条款。您可以向角色授予更新优惠某些部分的权限。但是,您只能向转售授权授予读取权限。
作为调用变更类型的先决条件,您必须获得一项或多项转售授权并熟悉使用方法。 AWS Marketplace Catalog API
有关更多信息,请参阅《AWS Marketplace 卖家指南》中的渠道合作伙伴私人优惠。
以下主题介绍如何使用目录 API 来创建和更新 cpPO:
主题
CPPO 的先决条件
Service-linked 角色设置 ResaleAuthorization (SLR) 是使用转售授权创建 CPPO 的必备先决条件。要使用转售授权,独立软件供应商 (ISV) 和 AWS Marketplace 渠道合作伙伴都必须创建服务相关角色,为提供资源共享权限。 AWS如果两个小组都不执行此先决条件,则 AWS 无法将授权资源从 ISV 共享给 AWS Marketplace 渠道合作伙伴。有关更多信息,请参阅《AWS Marketplace 卖家指南》 AWS Marketplace中的使用角色进行转售授权。
创建 CPPO
您使用针对您的转售授权在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 变更类型。
-
响应语法
系统会为您的请求创建变更集。对该请求的响应为您提供了变更集的和,如下所示。ChangeSetId ChangeSetArn
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
变更请求将添加到队列中并进行处理。
您可以通过查看请求的状态 AWS Marketplace 管理门户,也可以使用 API 操作直接通过目录 API 来检查请求的DescribeChangeSet状态。
对该请求的响应会向您提供请求的状态。如果状态为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": [] } ] }
您可以使用该GETDescribeEntity请求来描述 AWS Marketplace Catalog API 参考资料ResaleAuthorization中创建的报价规则和条款草案。有关更多信息,请参阅 DescribeChangeSet。
条款和规则来自 ResaleAuthorization
-
LegalTerms— 描述法律条款的条款,例如中的最终用户许可协议, ResaleAuthorization 将添加到报价草案中。您可以使用
UpdateLegalTerms变更类型添加法律条款。有关更多信息,请参阅UpdateLegalTerms。 -
PricingTerms— 制造商在报价草案中描述的所有定价条款(
ConfigurableUpfrontPricingTermFixedUpfrontPricingTermUsageBasedPricingTerm、、、PaymentScheduleTerms)都 ResaleAuthorization 将添加到报价草案中。您可以选择使用UpdateMarkup变更类型提高目标买家的定价(针对每个维度)。有关更多信息,请参阅本指南中的UpdateMarkup。 -
PaymentTerms— 如果制造商在中定义了未来付款时间表 ResaleAuthorization,那么您将能够在报价草案中看到付款条款。您可以选择使用
UpdateMarkup更改类型增加目标买家的付款计划金额。如果您想为买家设置付款时间表,则可以使用UpdatePaymentScheduleTerms。有关更多信息,请参阅UpdatePaymentScheduleTerms。 -
TargetingRule— 如果针对特定的买家,则渠道合作伙伴可以使用以下方式向一部分买家提供私人报价。 ResaleAuthorization PositiveTargeting默认情况下,该规则将包括来自的所有买家 ResaleAuthorization。您可以选择特定的买家并使用
UpdateTargeting更改类型更新草稿报价。有关更多信息,请参阅UpdateTargeting。
{ "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 |
必填 长度必须介于 1 到 150 个字符之间 |
422 |
| 说明 |
必填 长度必须介于 1 到 255 个字符之间 |
422 |
| ResaleAuthorizationId |
必填 长度必须介于 1 到 50 个字符之间 |
422 |
| ResaleAuthorizationId | ResaleAuthorization 必须以渠道合作伙伴为目标。 | 422 |
| ResaleAuthorizationId | ResaleAuthorization 必须处于活动状态 | 422 |
| 渠道合作伙伴 | 渠道合作伙伴必须向卖家付款 AWS Marketplace | 422 |
异步错误
以下错误特定于中的CreateOfferUsingResaleAuthorization操作 AWS Marketplace Catalog API。当您在处理变更集DescribeChangeSet后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集。
| 错误代码 | 错误消息 |
|---|---|
| 不兼容的转售授权 | ResaleAuthorization 在活动状态下使用。 |
| 不兼容的产品 | OfferSetId 不支持该产品的报价。 |
创建渠道合作伙伴私人替换优惠
您可以使用目录 API 在中创建渠道合作伙伴的私人替换优惠 AWS Marketplace。
您使用ResaleAuthorization针对您的和您作为提案人的协议,通过调用CreateReplacementOfferUsingResaleAuthorization变更类型,在 Catalog 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" }
变更请求将添加到队列中并进行处理。
您可以通过查看请求的状态 AWS Marketplace 管理门户,也可以使用 API 操作直接通过目录 API 来检查请求的DescribeChangeSet状态。
同步验证
以下架构验证特定于中的CreateReplacementOfferUsingResaleAuthorization AWS Marketplace Catalog API操作。这些验证是在您致电StartChangeSet时执行的。如果请求不满足以下要求,它将失败并发出 HTTP 响应。
| 输入字段 | 验证规则 |
|---|---|
| Name | 长度必须介于 1 到 150 个字符之间 |
| AgreementId |
提供的协议必须处于有效状态提供协议必须存在 提供的协议必须归渠道合作伙伴所有 |
| ResaleAuthorizationId |
必填 长度必须介于 1 到 50 个字符之间 |
| ResaleAuthorizationId | ResaleAuthorization 必须以渠道合作伙伴为目标。 |
| ResaleAuthorizationId | ResaleAuthorization 必须处于活动状态 |
| 渠道合作伙伴 | 渠道合作伙伴必须向卖家付款 AWS Marketplace |
异步错误
以下错误特定于中的CreateReplacementOfferUsingResaleAuthorization操作 AWS Marketplace Catalog API。当您在处理变更集DescribeChangeSet后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集。
| 错误代码 | 错误消息 |
|---|---|
| 不兼容的转售授权 | ResaleAuthorization 在活动状态下使用。 |
| 不兼容的转售授权 | ResaleAuthorization 必须适用于与协议关联的相同产品。 |
| 不兼容的转售授权 | 使用以协议接受者为 ResaleAuthorization 目标的。 |
更新标记
您可以使用目录 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。 -
标识符(字符串)(必填)-您的报价 ID。有关更多信息,请参阅 标识符。
-
-
DetailsDocument(对象)(必填)— 请求细节的 JSON 值。
-
百分比(字符串)(必填)-百分比值将添加到制造商定价或付款条件中。
-
响应语法
系统会为您的请求创建变更集。对该请求的响应为您提供了变更集的和,如下所示。ChangeSetId ChangeSetArn
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
变更请求将添加到队列中并进行处理。这包括向 AWS Marketplace 卖家运营团队验证信息,以确保其符合 AWS Marketplace 指南。验证过程可能需要几分钟到几小时不等。
您可以通过查看请求的状态 AWS Marketplace 管理门户,也可以使用 API 操作直接通过目录 API 来检查请求的DescribeChangeSet状态。
同步验证
以下架构验证特定于中的UpdateMarkup AWS Marketplace Catalog API操作。这些验证是在您致电StartChangeSet时执行的。如果请求不满足以下要求,它将失败并发出 HTTP 响应。
| 输入字段 | 验证规则 |
|---|---|
| 百分比 |
必填 数据类型为 “字符串” 必须为非负数 最多允许 9 位小数 |
异步错误
以下错误特定于中的UpdateMarkup操作 AWS Marketplace Catalog API。当您在处理变更集DescribeChangeSet后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集。
| 错误代码 | 错误消息 |
|---|---|
| 不兼容标记 | 优惠发布后,无法执行所请求的更改。 |
| 不兼容的转售授权 | |
| 不兼容条款 | 可以根据具体 UpdatePaymentScheduleTerms 的付款金额使用,也可以按预定日期的单一加价百分比使用。 UpdateMarkup |
| 无效的加价百分比 | UpdateMarkup 只能为使用创建的报价调用 ResaleAuthorization。 |
更新定位配置
您可以使用目录 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。 -
标识符(字符串)(必填)-您的报价 ID。有关更多信息,请参阅 标识符。
-
-
DetailsDocument(对象)(必填)— 请求细节的 JSON 值。
-
PositiveTargeting(对象)(可选)— 正向定位定义了任何买家的个人资料都应满足的标准,才能获得报价。此字段是可选字段,但如果存在此字段,则应至少提供一个定位选项。
-
CountryCodes(字符串数组)(可选)-列为允许根据国家/地区进行定位的选项。如果意图不是针对某个国家/地区提供报价,则应省略此字段。如果存在,则该列表必须包含至少一个国家/地区代码。此列表中的每个元素都应为有效的 2 个字母的国家/地区代码,采用以下格式:ISO 3166-1 alpha-2。
-
BuyerAccounts(字符串数组)(可选)-列出一个选项,允许基于以下条件进行定位 AWS 账户 (也称为私人报价)。如果不打算将报价定位到 AWS 账户,则应省略此字段。
-
-
NegativeTargeting(对象)(可选)— 否定定位定义了任何客户的个人资料都应满足的标准,只能访问该优惠。尽管此字段是可选字段,但当此字段存在时,应至少提供一个定位选项。
-
CountryCodes(字符串数组)(必填)-列出允许根据国家/地区进行定位的选项。如果意图不是针对特定国家/地区提供报价,则应省略此字段。如果存在,则该列表必须包含至少一个国家/地区代码。此列表中的每个元素都应是有效的双字母国家/地区代码,采用以下格式:ISO 3166-1 alpha-2。
-
-
响应语法
系统会为您的请求创建变更集。对该请求的响应为您提供了变更集的和,如下所示。ChangeSetId ChangeSetArn
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
变更请求将添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。
您可以通过查看请求的状态 AWS Marketplace 管理门户,也可以使用 API 操作直接通过目录 API 来检查请求的DescribeChangeSet状态。
同步验证
以下架构验证特定于中的UpdateTargeting AWS Marketplace Catalog API操作。这些验证是在您致电StartChangeSet时执行的。如果请求不满足以下要求,它将失败并发出 HTTP 响应。
| 输入字段 | 验证规则 | HTTP 代码 |
|---|---|---|
| 说明 |
必填 |
422 |
| PositiveTargeting |
可选 |
422 |
| NegativeTargeting |
可选 |
422 |
| PositiveTargeting.CountryCodes |
可选 国家/地区代码必须有效(ISO 3166-1 alpha-2) |
422 |
| PositiveTargeting.BuyerAccounts |
可选 AWS 账户 身份证必须采用有效格式(12 位数字) 不得包含超过 25 个账户 |
422 |
| NegativeTargeting.CountryCodes |
可选 国家/地区代码必须有效(ISO 3166-1 alpha-2) |
422 |
| NegativeTargeting.BuyerAccounts | 不得提供( BuyerAccounts 不支持负面定位) | 422 |
异步错误
以下错误特定于中的UpdateTargeting操作 AWS Marketplace Catalog API。当您在处理变更集DescribeChangeSet后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集。
| 错误代码 | 错误消息 |
|---|---|
| 买家账户无效 | 提供有效的买家账户。无效的账户:[x]。 |
| 无效的国家代码 | 提供支持的国家/地区代码。 |
| 无效定位 | 对同一属性使用负面或正向定向。 |
| 不兼容的产品 | Country-based 该产品不支持定位。 |
| 不兼容的转售授权 | 提供 BuyerAccounts 与兼容的产品 ResaleAuthorization。 |
| 不兼容的定位 | 优惠发布后,无法执行所请求的更改。 |
| 不兼容的定位 | 优惠到期后,无法执行所请求的更改。 |
| 不兼容的定位 | 无法在替代报价中更新定位。如果买家与提供的商品无关 AgreementId,则通过提供与买家 AgreementId关联的内容来创建新的私人报价。 |
| 买家账户太多了 | 在允许的 BuyerAccounts 范围内提供。 |
更新法律资源
您可以使用目录 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。 -
标识符(字符串)(必填)-您的报价 ID。有关更多信息,请参阅 标识符。
-
-
DetailsDocument(对象)(必填)— 请求细节的 JSON 值。
-
术语(结构数组)(必填)-要更新的法律术语列表。支持的法律条款是:
-
LegalTerm(对象)(必填)-定义向接受者提出的文本协议清单。此类协议的一个例子是最终用户许可协议 (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
-
-
-
-
系统会为您的请求创建变更集。对该请求的响应会为您提供变更集的 ID。
响应语法
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east- 1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
变更请求将添加到队列中并进行处理。这包括向 AWS Marketplace 卖家运营团队验证信息,以确保其符合 AWS Marketplace
指南。验证过程可能需要几分钟到几小时不等。您可以通过或在 Catalog API 中使用DescribeChangeSet操作检查请求的状态。 AWS Marketplace 管理门户
同步验证
以下架构验证特定于中的UpdateLegalTerms AWS Marketplace Catalog API操作。这些验证是在您致电StartChangeSet时执行的。如果请求不满足以下要求,它将失败并发出 HTTP 响应。
| 输入字段 | 验证规则 | HTTP 代码 |
|---|---|---|
| 术语 |
必填 LegalTerm 只允许在列表中 列表大小必须为 1 |
422 |
| 条款 []。LegalTerm.Documents |
必填 |
422 |
| 条款 []。LegalTerm.Documents[] .Type |
必填 允许的值:
|
422 |
| 条款 []。LegalTerm.Documents[] .Url |
当 “类型” 为以下条件之一时,必填且必须是有效的 URL
|
422 |
异步错误
以下错误特定于中的UpdateLegalTerms操作 AWS Marketplace Catalog API。当您在处理变更集DescribeChangeSet后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集。
| 错误代码 | 错误消息 |
|---|---|
| 不兼容条款 | 优惠发布后,无法执行所请求的更改。 |
| 不兼容条款 | 优惠到期后,无法执行所请求的更改。 |
| 无效的法律文件 | 为存储在可访问的 S3 存储桶中的法律文档提供网址。 |
| 无效的法律文件 | 新优惠 StandardEula 仅支持最新版本的。 |
| 无效的法律文件 | 以支持的文件格式提供法律文件。 |
| 无效的法律文件 | 使用支持的文件类型提供法律文件。 |
| 限制_超出_法定文件大小 | 在允许的大小限制内提供法律文件。 |
更新 CPPO 的可发现性
您可以使用目录 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。 -
标识符(字符串)(必填)-您的报价 ID。有关更多信息,请参阅 标识符。
-
-
DetailsDocument(对象)(必填)— 请求细节的 JSON 值。
-
AvailabilityEndDate(字符串)— 直到该优惠可在中发现和购买之前的日期。 AWS Marketplace您可以选择将来的特定日期设置为限制可用性,也可以选择将优惠设置为过去过期。日期以
YYYY-MM-DD格式表示。优惠将于提供的日期 23:59:59.999 UTC 到期。
-
响应语法
系统会为您的请求创建变更集。对该请求的响应为您提供了变更集的和,如下所示。ChangeSetId ChangeSetArn
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
变更请求将添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。
您可以通过查看请求的状态 AWS Marketplace 管理门户,也可以使用 API 操作直接通过目录 API 来检查请求的DescribeChangeSet状态。
同步验证
以下架构验证特定于中的UpdateAvailability AWS Marketplace Catalog API操作。这些验证是在您致电StartChangeSet时执行的。如果请求不满足以下要求,它将失败并发出 HTTP 响应。
| 输入字段 | 验证规则 | HTTP 代码 |
|---|---|---|
| AvailabilityEndDate |
必填 格式:“YYYY-MM-DD” |
422 |
异步错误
以下错误特定于中的UpdateAvailability操作 AWS Marketplace Catalog API。当您在处理变更集DescribeChangeSet后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集。
| 错误代码 | 错误消息 |
|---|---|
| 无效可用性结束日期 | AvailabilityEndDate 不支持公开报价。 |
| 无效可用性结束日期 | 提供未来 AvailabilityEndDate。 |
| 无效可用性结束日期 | 提供以前 AvailabilityEndDate 的内容 AgreementEndDate。 |
| 缺少可用性结束日期 | 提供 AvailabilityEndDate 协议结束日期之前的。 |
定义协议的到期日期
您可以使用目录 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。 -
标识符(字符串)(必填)-您的报价 ID。有关更多信息,请参阅 标识符。
-
-
DetailsDocument(对象)(必填)— 请求细节的 JSON 值。
-
术语(结构数组)-要更新的有效性术语列表。支持的有效期为:
-
ValidityTerm(对象)— 定义了使根据此优惠创建的协议保持有效的条件。
-
类型(字符串)-正在更新的术语的类别。
-
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 准则。验证过程可能需要几分钟到几小时不等。
您可以通过查看请求的状态 AWS Marketplace 管理门户,也可以使用 API 操作直接通过目录 API 来检查请求的DescribeChangeSet状态。
同步验证
以下架构验证特定于中的UpdateValidityTerms AWS Marketplace Catalog API操作。这些验证是在您致电StartChangeSet时执行的。如果请求不满足以下要求,它将失败并发出 HTTP 响应。
| 输入字段 | 验证规则 | HTTP 代码 |
|---|---|---|
| 术语 |
必填 列表中只允许 ValidityTerm “” 必须为空或仅包含 1 个词语 |
422 |
| 条款 []。ValidityTerm |
支持的使用案例: 1。 ValidityTerm 只有 AgreementDuration 2。 ValidityTerm 只有 AgreementStartDate 3. ValidityTerm 只有 AgreementEndDate 4。 ValidityTerm 同时使用 AgreementStartDate 和 AgreementEndDate |
422 |
| 条款 []。ValidityTerm.AgreementDuration |
可选 以 ISO_8601 格式表示。 |
422 |
| 条款 []。ValidityTerm.AgreementStartDate |
可选 格式:“YYYY-MM-DD” |
422 |
| 条款 []。ValidityTerm.AgreementEndDate |
可选 格式:“YYYY-MM-DD” |
422 |
异步错误
以下错误特定于中的UpdateValidityTerms操作 AWS Marketplace Catalog API。当您在处理变更集DescribeChangeSet后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集。
| 错误代码 | 错误消息 |
|---|---|
| 不兼容协议 | AgreementStartDate 如果要替换的当前协议不是将来的日期,则无法在将来生效。 |
| 不兼容协议结束日期 | AgreementEndDate 优惠发布后无法更新。 |
| 不兼容协议开始日期 | AgreementStartDate 优惠发布后无法更新。 |
| 不兼容的产品 | AgreementStartDate 将来不支持。 |
| 不兼容的转售授权 | 确保 AgreementStartDate 和 AgreementEndDate 之间的持续时间与... 兼容 ResaleAuthorization。 |
| 不兼容的转售授权 | 确保 AgreementStartDate 与... 兼容 ResaleAuthorization。 |
| 不兼容的转售授权 | 确保 AgreementEndDate 与... 兼容 ResaleAuthorization。 |
| 不兼容的转售授权 | 确保 AgreementStartDate 和 AgreementEndDate 之间的持续时间与... 兼容 ResaleAuthorization。 |
| 不兼容的转售授权 | 确保 AgreementDuration 比赛持续时间在中指定 ResaleAuthorization。 |
| 不兼容条款 | ValidityTerm 不支持公开报价。 |
| 不兼容条款 | 优惠到期后,无法执行所请求的更改。 |
| 无效协议期限 | 提供大 AgreementDuration 于或等于 [x] 天的值。 |
| 无效协议结束日期 | 提供未来 AgreementEndDate。 |
| 无效协议结束日期 | 提供等 AgreementEndDate 于或等于 [x] 的值。 |
| 协议起始日期无效 | 提供 AgreementStartDate 之后的 AvailabilityEndDate。 |
| 协议起始日期无效 | 提供一个 AgreementStartDate 在之前的 AgreementEndDate。 |
| 协议起始日期无效 | 提供距离 AgreementStartDate 今天 [x] 年之内的。 |
| 无效协议时间间隔 | ValidityTerm 两者兼 AgreementDuration 而有且 AgreementEndDate 不支持。 |
| 无效协议时间间隔 | ValidityTerm 两者 AgreementStartDate 兼而有之,该产品的报价中 AgreementDuration 不支持。 |
| 无效协议时间间隔 | ValidityTerm 该产品的报价 AgreementStartDate 不支持 with。 |
| 无效协议时间间隔 | ValidityTerm AgreementStartDate 不支持 only。 |
| 无效协议时间间隔 | AgreementEndDate 除非将其与未来产品 AgreementStartDate 或替代优惠结合使用,否则不支持。 |
| 无效协议时间间隔 | AgreementEndDate 如果 AgreementStartDate 差额小于或等于 [x] 年,则提供和。 |
| 缺少协议起始日期 | 与一起使用 ValidityTerm时,请确保 AgreementStartDate 存在于中 ConfigurableUpfrontPricingTerm。 |
更新定价
您可以使用目录 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。 -
标识符(字符串)(必填)-您的报价 ID。有关更多信息,请参阅 标识符。
-
-
详细信息(字符串)(必填)-请求的详细信息。此字段是一个 JSON 字符串字段。单行字符串字段的格式必须正确,包括不能出现在字符串中的转义字符(例如引号)。
-
PricingModel(字符串)(必填)-您的报价的定价模式。定价模型的可能值为:
-
合同 — Contract-based 定价模式,要么提前向买家收取产品使用费,要么为买家提供灵活的付款时间表。买家还可以在合同之外支付额外使用费。
-
条款(结构数组)(必填)-您要更新的定价条款列表。支持的定价条款是:
-
FixedUpfrontPricingTerm(对象)— 定义预付费定价模式,向客户收取固定的预付金额。
-
类型(字符串)(必填)-正在更新的术语的类型。
-
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 准则。验证过程可能需要几分钟到几小时不等。
您可以通过查看请求的状态 AWS Marketplace 管理门户,也可以使用 API 操作直接通过目录 API 来检查请求的DescribeChangeSet状态。
同步验证
以下架构验证特定于中的UpdatePricingTerms AWS Marketplace Catalog API操作。这些验证是在您致电StartChangeSet时执行的。如果请求不满足以下要求,它将失败并发出 HTTP 响应。
| 输入字段 | 验证规则 |
|---|---|
| PricingModel |
必填 允许的定价模式: 合同 |
| 术语 |
必填 允许的条款: FixedUpfrontPricingTerm |
| 条款 []。FixedUpfrontPricingTerm.CurrencyCode |
必填 允许的值:[“美元”、“澳元”、“欧元”、“英镑”、“日本”] 允许的定价模式: 合同 |
| 条款 []。FixedUpfrontPricingTerm.Price |
必填 数据类型为 “字符串” 必须为非负数 最多支持 6 位小数 不支持特殊字符 |
| 条款 []。FixedUpfrontPricingTerm.Duration |
必填 预期格式:ISO 8601 持续时间 |
| 条款 []。FixedUpfrontPricingTerm.Grants[]。DimensionKey |
必填 长度必须介于 1 到 60 之间 |
| 条款 []。FixedUpfrontPricingTerm.Grants[]。MaxQuantity |
必填 |
异步错误
以下错误特定于中的UpdatePricingTerms操作 AWS Marketplace Catalog API。当您在处理变更集DescribeChangeSet后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集。
| 错误代码 | 错误消息 |
|---|---|
| 重复的维度密钥 | 在 [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 无法更改。 |
| 不兼容速率卡约束 | MultipleDimensionSelection 优惠发布后 ConfigurableUpfrontPricingTerm 无法更改。 |
| 不兼容率 | 使用免费定价模式时,将所有费用金额和价格设置为零 (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 当 MarkupPercentage 大于零 (0) 时不支持。 |
| 不兼容条款 | 优惠发布后,无法执行所请求的更改。 |
| 不兼容条款 | 优惠到期后,无法执行所请求的更改。 |
| 无效协议期限 | 提供介于 [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] 笔补助金。 |
| 太多_RATE_CARDS | 该商品 ConfigurableUpfrontPricingTerm仅允许使用一张价目表。 |
| 太多_RATE_CARDS | 该产品最多允许 [x] 张价卡。 ConfigurableUpfrontPricingTerm |
| 太多_RATES | 在允许的限度 RateCards 内提供 ConfigurableUpfrontPricingTerm。 |
| 太多_RATES | 在允许的限度 RateCards 内提供 UsageBasedPricingTerm。 |
更新付款计划详情
您可以使用目录 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。 -
标识符(字符串)(必填)-您的报价 ID。有关更多信息,请参阅 标识符。
-
-
DetailsDocument(对象)(必填)— 请求细节的 JSON 值。
-
条款(结构数组)-您要更新的付款条件列表。支持的付款条件是:
-
PaymentScheduleTerm(对象)— 定义基于分期付款的定价模式,在该模型中,在协议有效期内的不同日期,向客户收取固定价格。
-
类型(字符串)-正在更新的术语的类型。这是对象的值:
"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 准则。验证过程可能需要几分钟到几小时不等。
您可以通过查看请求的状态 AWS Marketplace 管理门户,也可以使用 API 操作直接通过目录 API 来检查请求的DescribeChangeSet状态。
同步验证
以下架构验证特定于中的UpdatePaymentScheduleTerms AWS Marketplace Catalog API操作。这些验证是在您致电StartChangeSet时执行的。如果请求不满足以下要求,它将失败并发出 HTTP 响应。
| 输入字段 | 验证规则 | HTTP |
|---|---|---|
| 术语 |
必填 只允许 PaymentScheduleTerm “” 列表大小必须小于 2 |
422 |
| 条款 []。PaymentScheduleTerm.CurrencyCode |
必填 支持的货币:[“美元”、“澳元”、“欧元”、“英镑”、“日本”] |
422 |
| 条款 []。PaymentScheduleTerm.Schedule[] |
必填 清单大小必须介于 1 到 60 之间(含) |
422 |
| 条款 []。PaymentScheduleTerm.Schedule[]。ChargeDate |
必填 格式:“YYYY-MM-DD” |
422 |
| 条款 []。PaymentScheduleTerm.Schedule[]。ChargeAmount | 必填 数据类型为 “字符串” Non-negative支持最多 2 个小数位的小数 不允许有其他房产 |
422 |
异步错误
以下错误特定于中的UpdatePaymentScheduleTerms操作 AWS Marketplace Catalog API。当您在处理变更集DescribeChangeSet后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集。
| 错误代码 | 错误消息 |
|---|---|
| 重复的收费日期 | 在中提供唯一的收费日期 PaymentScheduleTerm. |
| 不兼容的标记百分比 | PaymentScheduleTerm 当 MarkupPercentage 大于零 (0) 时不支持。 |
| 不兼容的转售授权 | 提供与兼容的术语 ResaleAuthorization。不兼容的条款:[PaymentScheduleTerm]. |
| 不兼容的转售授权 | 确保总输入 ChargeAmounts PaymentScheduleTerm与... 兼容 ResaleAuthorization。 |
| 不兼容的转售授权 | 确保中的 PaymentScheduleTerm 充电日期与中的充电日期相同 ResaleAuthorization。 |
| 不兼容的转售授权 | 确保中的收费金额大 PaymentScheduleTerm 于或等于该日期的 ResaleAuthorization 收费金额。 |
| 不兼容条款 | 优惠发布后,无法执行所请求的更改。 |
| 不兼容条款 | 优惠到期后,无法执行所请求的更改。 |
| 不兼容条款 | 可以根据具体 UpdatePaymentScheduleTerms 的付款金额使用,也可以按预定日期的单一加价百分比使用。 UpdateMarkup |
| 无效的收费日期 | 提供之前的收费日期 AgreementEndDate。 |
| 收费太多了 | 之前最多提供 1 笔预定付款 AvailabilityEndDate。 |
| 错误代码 | 错误消息 |
|---|---|
| 重复的收费日期 | 在中提供唯一的收费日期 PaymentScheduleTerm. |
| 不兼容的货币代码 | CurrencyCode 优惠发布后无法更改。 |
| 不兼容的标记百分比 | PaymentScheduleTerm 当 MarkupPercentage 大于零 (0) 时不支持。 |
| 不兼容的付款设置 | 更新您的付款设置以使其兼容 CurrencyCode. |
| 不兼容的转售授权 | 提供与兼容的术语 ResaleAuthorization。不兼容的条款:[PaymentScheduleTerm]. |
| 不兼容的转售授权 | 确保总输入 ChargeAmounts PaymentScheduleTerm与... 兼容 ResaleAuthorization。 |
| 不兼容_卖家_验证 | 完成所有必需的卖家验证流程。 |
| 不兼容条款 | 优惠发布后,无法执行所请求的更改。 |
| 不兼容条款 | 优惠到期后,无法执行所请求的更改。 |
| 无效的收费日期 | 提供之前的收费日期 AgreementEndDate。 |
| 无效的货币代码 | 提供支持的 CurrencyCode。 |
| 无效的货币代码 | 在 CurrencyCode 所有定价和付款条款中提供相同的价格。 |
| 收费太多了 | 之前最多提供 1 笔预定付款 AvailabilityEndDate。 |
更新净付款条款
如果您用于创建渠道合作伙伴私人报价 (CPPO) 的转售授权包含净付款期限,则该期限是您可以向买家提供的最长期限。当您创建 CPPO 时,转售授权中的术语将自动应用于您的 CPPO。
要为买家提供比卖家授权的更短的付款期限,请使用报价的UpdateNetPaymentTerms更改类型调用 StartChangeSet API 操作,如以下示例所示。如果您想使用卖家授权的相同期限,则无需致电UpdateNetPaymentTerms。
注意
报价的期限类型为NetPaymentTerm,转售授权的期限类型为ResaleNetPaymentTerm。有关在转售授权上设置净付款条件的更多信息,请参阅更新净付款条款。
如果转售授权不包含净付款期限,则您无法在 CPPO 中添加净付款期限,而买家的付款条款也不能适用。 AWS 当转售授权包含净付款期限时,您也无法从 CPPO 中删除净付款期限。
请求语法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateNetPaymentTerms", "Entity": { "Type": "Offer@1.0", "Identifier": "offer-123456789" }, "DetailsDocument": { "Terms": [ { "Type": "NetPaymentTerm", "PaymentDuePeriod": "P30D" } ] } } ] }
为字段提供信息以添加UpdateNetPaymentTerms更改类型:
-
实体(对象)(必填)— 您的报价。
-
类型(字符串)(必填)-始终
Type是Offer@1.0。 -
标识符(字符串)(必填)-您的报价 ID。有关更多信息,请参阅 标识符。
-
-
DetailsDocument(对象)(必填)— 请求细节的 JSON 值。
-
条款(结构数组)(必填)-您要更新的净付款条件列表。一个报价最多可以包含一个净付款期限。支持的术语有:
-
NetPaymentTerm(对象)(必填)-定义与买方协商的净付款条件。
-
类型(字符串)(必填)-正在更新的术语的类型。这是对象的值:
"NetPaymentTerm". -
PaymentDuePeriod(字符串)(必填)-发票开具之日后到期付款的天数。此字段支持 ISO 8601 格式。支持的值有
P15D、P30D、P45D、P60D、P90D和P120D。此值不能超过转售授权PaymentDuePeriodResaleNetPaymentTerm中的值。
-
-
-
同步验证
以下架构验证特定于中的UpdateNetPaymentTerms AWS Marketplace Catalog API操作。这些验证是在您致电StartChangeSet时执行的。如果请求不满足以下要求,它将失败并发出 HTTP 响应。
| 输入字段 | 验证规则 | HTTP 代码 |
|---|---|---|
| 术语 |
必填 只 列表大小必须小于 2 |
422 |
| 条款 [] .Type |
必填 只能是 |
422 |
| 条款 []。NetPaymentTerm.PaymentDuePeriod |
必填 预期格式:ISO 8601 持续时间 允许的值:[“P15D”、“P30D”、“P45D”、“P60D”、“P90D”、“P120D”] |
422 |
异步错误
以下错误特定于在 CPPO 上UpdateNetPaymentTerms执行的操作。 AWS Marketplace Catalog API当您在处理变更集DescribeChangeSet后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集。
| 错误代码 | 错误消息 |
|---|---|
| 无效的付款到期期 | 提供支持的 PaymentDuePeriod。 |
| 不兼容的转售授权 | NetPaymentTerm 不支持,因为 ResaleAuthorization 不包含 NetPaymentTerm. |
| 不兼容的转售授权 | 确保 PaymentDuePeriod NetPaymentTerm 与兼容 ResaleAuthorization。 |
| 不兼容的转售授权 | NetPaymentTerm 无法删除,因为 ResaleAuthorization 包含 NetPaymentTerm. |
发布 CPPO
您可以使用目录 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。 -
标识符(字符串)(必填)-您的报价 ID。有关更多信息,请参阅 标识符。
-
-
DetailsDocument(对象)(必填)— 请求细节的 JSON 值。必须为空
ReleaseOffer。
响应语法
系统会为您的请求创建变更集。对该请求的响应为您提供了变更集的和,如下所示。ChangeSetId ChangeSetArn
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
变更请求将添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。
您可以通过查看请求的状态 AWS Marketplace 管理门户,也可以使用 API 操作直接通过目录 API 来检查请求的DescribeChangeSet状态。
同步验证
以下架构验证特定于中的ReleaseOffer AWS Marketplace Catalog API操作。这些验证是在您致电StartChangeSet时执行的。如果请求不满足以下要求,它将失败并发出 HTTP 响应。
| 输入字段 | 验证规则 |
|---|---|
| 说明 | 必须为空 ({}) |
异步错误
以下错误特定于中的ReleaseOffer操作 AWS Marketplace Catalog API。当您在处理变更集DescribeChangeSet后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集。
| 错误代码 | 错误消息 |
|---|---|
| 不兼容的付款设置 | 更新您的付款设置以使其兼容 CurrencyCode. |
| 不兼容的产品 | 首先为该产品创建公开报价。 |
| 不兼容_卖家_验证 | 完成所有必需的卖家验证流程。 |
| 无效的更新请求 | 优惠发布后,无法执行所请求的更改。 |
| 缺少协议结束日期 | 提供 AgreementEndDate 换货优惠。 |
| 缺少可用性结束日期 | 提供私人 AvailabilityEndDate 报价。 |
| 缺少_强制性条款 | 当报价包含 a FixedUpfrontPricingTerm 时,请提供 PaymentScheduleTerm。 |
| 缺少买家账户 | BuyersAccounts 为 PositiveTargeting 使用创建的报价提供 ResaleAuthorization。 |
| 缺少买家账户 | 该产品的所有优惠必须是私人的。 PositiveTargeting 提供 BuyersAccounts。 |
| 缺少的描述 | 在发布优惠之前设置描述。 |
| 缺少_强制性条款 | 在报价中添加 [x]。 |
| 缺少_强制性条款 | 当报价包含 a FixedUpfrontPricingTerm 时,请提供 PaymentScheduleTerm。 |
| MISSING_NAME | 在发布优惠之前设置名称。 |
| 太多_优惠了 | 每个产品只能创建一次公开报价。 |
| 太多_优惠了 | 每种产品只能创建一项公开免费试用优惠。 |
定义现有的 CPPO
您可以使用目录 API 在中定义 CPPO 详细信息。 AWS Marketplace
要定义现有 CPPO,请使用Offer@1.0实体类型调用 DescribeEntity API 操作,如以下示例所示。
请求语法
GET /DescribeEntity?catalog=<Catalog>&entityId=<EntityId> HTTP/1.1
为字段提供信息以添加DescribeEntity更改类型:
-
目录(字符串)—与请求相关的目录。固定值:
AWSMarketplace. -
EntityID(字符串)— 要描述的优惠的唯一 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更改类型中传递的百分比值。此标记已应用于条款。 -
术语(结构数组)-术语列表。
-
规则(结构数组)-规则列表。
-