AWS Marketplace API 參考已重組。如需支援的 API 操作的詳細資訊,請參閱 AWS Marketplace API 參考。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 AWS Marketplace APIs處理私有優惠
您可以使用 AWS Marketplace Catalog API 自動化使用 優惠的任務。
雖然產品說明銷售內容 AWS Marketplace,但優惠說明產品如何購買和使用的條款和規則。 AWS Marketplace 產品可以有多個由不同賣家銷售的優惠。不過,每個 AWS Marketplace 優惠只能針對一個產品建立。優惠包含雙方之間的一系列協議條款。接受的優惠條款會翻譯成協議,做為交易的證明。
有兩種類型的優惠:
-
私有優惠是供賣方和買方協商定價。賣方簽署最終使用者授權合約 (EULA) 以進行軟體購買 AWS Marketplace。只有指定的買方才能看見優惠。如需詳細資訊,請參閱 AWS Marketplace 賣方指南中的私有優惠。
-
公開優惠適用於全球購買計劃。賣方會根據可用的計劃和地理位置來識別客戶,這使得優惠僅供特定客戶存取。
請參閱下列資源:
-
如需工作代碼範例,請參閱 AWS Marketplace 賣方研討會中的使用 API 管理優惠
。 -
如需建立私有優惠的影片,請參閱使用 YouTube 上的 AWS Marketplace 目錄 API 建立私有優惠
。 YouTube -
如需更新 AMI 定價的影片,請參閱使用 YouTube 上的 AWS Marketplace 目錄 API 更新 AMI 產品定價
。 YouTube
下列主題說明如何使用目錄 API 來建立和更新優惠:
主題
建立優惠
您可以使用 Catalog API 在 中建立新的優惠 AWS Marketplace。如果您的請求處理成功, AWS Marketplace Catalog API 會建立 Draft,這是買方看不到的未完成優惠。若要完成優惠,請使用 Update 變更類型。優惠完成後,請使用ReleaseOffer變更類型來建立和釋放優惠。發佈優惠會對其進行驗證,並使買方可以看見 AWS Marketplace。
若要建立新的優惠,請使用CreateOffer變更類型呼叫 StartChangeSet API 操作,如下列範例所示。
請求語法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "CreateOffer", "Entity": { "Type": "Offer@1.0" }, "DetailsDocument": { "ProductId": "prod-ad8EXAMPLE51", "Name": "Test Offer", "OfferSetId": "offerset-b3f9EXAMPLE27" } } ] }
提供要新增CreateOffer變更類型的欄位資訊:
-
實體 (物件) (必要) – 您的優惠。
-
類型 (字串) (必要) – 一律
Type為Offer@1.0。
-
-
DetailsDocument (物件) (必要) – 請求特定項目的 JSON 值。
-
ProductId (字串) (必要) – 所提供產品的唯一識別符。
-
名稱 (字串) (選用) – 與優惠相關聯的名稱,可讓您和客戶更清楚閱讀。它也會顯示為協議資訊的一部分。
-
OfferSetId (字串) (選用) – 要與此優惠建立關聯的優惠集 ID。只有在建立將成為優惠集一部分的優惠時,才指定此欄位。如果未提供 OfferSetId,則會建立可獨立購買的個別優惠。請注意,在建立優惠期間指定 OfferSetId 僅表示您希望將優惠與該優惠集建立關聯。若要完成關聯,您必須在建立優惠後使用 AssociateOffers 變更類型。
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
如果 Status是 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": "CreateOffer", "Entity": { "Type": "Offer@1.0", "Identifier": "offer-123456789" }, "DetailsDocument": { "ProductId": "prod-ad8EXAMPLE51", "Name": "Test Offer" }, "ErrorDetailList": [] } ] }
同步驗證
下列結構描述驗證專屬於 中的CreateOffer動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會因 HTTP 回應而失敗。
| 輸入欄位 | 驗證規則 | HTTP 代碼 |
|---|---|---|
| ProductId |
必要 長度必須介於 1 到 50 個字元之間 不得包含非法字元 (\、<、>) |
422 |
| ProductId | 必要 使用者必須獲得授權,才能為指定的產品建立優惠 |
403 |
| ProductId | 必要 必須是目錄中的現有產品,或在相同的變更集中建立 |
404 |
| 名稱 |
選用 長度必須介於 1 到 150 個字元之間 不得包含非法字元 (\、<、>) |
422 |
非同步錯誤
下列錯誤專屬於 中的CreateOffer動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INCOMPATIBLE_PRODUCT | 使用處於 |
| INCOMPATIBLE_PRODUCT | 目前不支援管理所選產品類型的優惠 AWS Marketplace Catalog API。 |
| INCOMPATIBLE_PRODUCT | 目前不支援管理產品的優惠 AWS Marketplace Catalog API。 |
| INCOMPATIBLE_PRODUCT | 產品優惠不支援 OfferSetId。 |
| INCOMPATIBLE_PRODUCT | 無法叫用 CreateOffer 變更類型來建立產品的優惠。使用 CreateOfferUsingResaleAuthorization 變更類型。 |
建立替代優惠
您可以使用目錄 API 在 中建立替代優惠 (也稱為以協議為基礎的優惠) AWS Marketplace。
如果您的請求已成功處理, AWS Marketplace Catalog API 將會為您產生處於 Draft 狀態的優惠,這是不完整的優惠,買方看不到 AWS Marketplace。您將使用Update變更類型來完成優惠。優惠完成後,您將使用ReleaseOffer變更類型來完成優惠建立程序並釋出優惠,這會驗證整個優惠,並讓買方看到您的優惠 AWS Marketplace。從那裡,買方可以選擇接受替代優惠,或根據原始協議繼續操作。
若要建立替代優惠,請使用CreateReplacementOffer變更類型呼叫 StartChangeSet API 操作,並提供預先存在的協議 ID,如下列範例所示。
請求語法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "CreateReplacementOffer", "Entity": { "Type": "Offer@1.0" }, "DetailsDocument": { "AgreementId": "agmt-12345", "Name": "Offer name" } } ] }
提供要新增CreateReplacementOffer變更類型的欄位資訊:
-
實體 (物件) (必要) – 您的優惠。
-
類型 (字串) (必要) – 一律
Type為Offer@1.0。
-
-
DetailsDocument (物件) (必要) – 請求特定項目的 JSON 值。
-
AgreementId (字串) (必要) – 要取代之目前協議的唯一識別符。
-
名稱 (字串) (選用) – 與優惠相關聯的名稱,可讓您和客戶更清楚閱讀。它也會顯示為協議資訊的一部分。
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的CreateReplacementOffer動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會因 HTTP 回應而失敗。
| 輸入欄位 | 驗證規則 | HTTP 代碼 |
|---|---|---|
| AgreementId | 必要 長度必須介於 1 到 64 個字元之間 |
422 |
| AgreementId | 必要 使用者必須獲得授權,才能為指定的協議建立優惠 |
403 |
| 名稱 | 選用 長度必須介於 1 到 150 個字元之間 不得包含無效字元 (\、<、>) |
422 |
非同步錯誤
下列錯誤專屬於 中的CreateReplacementOffer動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INCOMPATIBLE_PRODUCT | 產品不支援替換優惠。 |
| INCOMPATIBLE_AGREEMENT | 無法叫用 CreateReplacementOffer 變更類型來建立協議的替代優惠。使用 CreateReplacementOfferUsingResaleAuthorization 變更類型。 |
更新優惠資訊
您可以使用 Catalog API 來更新 中的優惠資訊 AWS Marketplace。
若要更新優惠資訊,請使用UpdateInformation變更類型呼叫 StartChangeSet API 操作,如下列範例所示。所有其他資訊將保持不變。
請求語法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateInformation", "Entity": { "Type": "Offer@1.0", "Identifier": "offer-123456789" }, "DetailsDocument": { "Name": "New offer name", "Description": "New offer description", "PreExistingAgreement": { "AcquisitionChannel": "External", "PricingModel": "Contract" } } } ] }
提供要新增UpdateInformation變更類型的欄位資訊:
-
實體 (物件) (必要) – 您的優惠。
-
類型 (字串) (必要) – 一律
Type為Offer@1.0。 -
識別符 (字串) (必要) – 您的優惠 ID。如需詳細資訊,請參閱識別符。
-
-
DetailsDocument (物件) (必要) – 請求特定項目的 JSON 值。
-
名稱 (字串) (選用) – 與優惠相關聯的名稱,以提高可讀性。它會顯示為協議資訊的一部分。
-
描述 (字串) (選用) – 僅供您使用的任意格式文字,買方永遠不會看到。
-
PreExistingAgreement (物件) (選用) – 判斷此優惠是否為與現有客戶續約相同基礎產品的現有協議。現有協議可以在內部或外部 AWS Marketplace。 AWS 可能會稽核並確認您的優惠是否續約。如果 AWS 無法驗證您的優惠,則 AWS 可能會撤銷您客戶的優惠和權利。
-
AcquisitionChannel (字串) (必要) – 指出現有協議是在外部 AWS Marketplace 或內部簽署 AWS Marketplace。
可能的值如下:
External,AwsMarketplace -
PricingModel (字串) (必要) – 指出現有協議使用的定價模型。
可能的值如下:
Contract,Usage,Byol,Free
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合 AWS Marketplace 準則。驗證程序可能需要幾分鐘的時間。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的UpdateInformation動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會失敗並顯示 HTTP 回應。
| 輸入欄位 | 驗證規則 | HTTP 代碼 |
|---|---|---|
| Properties | 至少必須提供下列其中一個屬性 | 422 |
| 名稱 |
選用 長度必須介於 1 到 150 個字元之間 不得包含非法字元 (\、<、>) |
422 |
| 說明 |
選用 長度必須介於 1 到 255 個字元之間 |
422 |
| PreExistingAgreement | 選用 可為 null 以 |
422 |
| PreExistingAgreement.PricingModel |
必要 可以是下列其中一個值:【 |
422 |
| PreExistingAgreement.AcquisitionChannel |
必要 可以是下列其中一個值:【 |
422 |
非同步錯誤
下列錯誤專屬於 中的UpdateInformation動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INCOMPATIBLE_PRE_EXISTING_AGREEMENT | 優惠發行後,就無法變更 PreExistingAgreement。 |
更新目標組態
您可以使用 Catalog API 來更新 中優惠的目標組態 AWS Marketplace。
所有未包含在最新請求且將從優惠中移除的現有目標選項。
注意
優惠可以選擇性地包含 PositiveTargeting或 NegativeTargeting,但不能同時包含兩者。
正面目標選項:
-
僅限國家/地區代碼 – 建立可供指定國家/地區買方使用的公開優惠。
-
僅限買方帳戶 – 建立以特定 AWS 帳戶為目標的私有優惠。
-
國家/地區代碼和買方帳戶 – 建立私有優惠,目標帳戶只有在位於其中一個指定的國家/地區時,才能接受優惠。
負目標選項:
-
國家/地區代碼 – 排除來自指定國家/地區的買方。這會建立公開優惠,開放給所有列出的國家/地區。
若要更新優惠的目標組態,請使用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": [ "111122223333" ] }, "NegativeTargeting": { "CountryCodes": [ "XX" ] } } } ] }
提供要新增UpdateTargeting變更類型的欄位資訊:
-
實體 (物件) (必要) – 您的優惠。
-
類型 (字串) (必要) – 一律
Type為Offer@1.0。 -
識別符 (字串) (必要) – 您的優惠 ID。如需詳細資訊,請參閱識別符。
-
-
DetailsDocument (物件) (必要) – 請求特定項目的 JSON 值。
-
PositiveTargeting (物件) (選用) – 正面鎖定定義任何買方設定檔應滿足的條件,以允許存取優惠。此欄位是選用的,但當此欄位存在時,應至少提供一個目標選項。
-
CountryCodes (字串陣列) (選用) – 列出為選項,以允許根據國家/地區設定目標。如果意圖不是以國家/地區的優惠為目標,則應該省略此欄位。如果有的話,清單必須至少包含一個國家/地區代碼。此清單中的每個元素都應該是有效的 2 個字母國家/地區代碼,使用此格式:ISO 3166-1 alpha-2。
-
BuyerAccounts (字串陣列) (選用) – 列出為允許根據 AWS 帳戶 (也稱為私有優惠) 進行目標鎖定的選項。如果意圖不是以 的提議為目標 AWS 帳戶,則應省略此欄位。
-
-
NegativeTargeting (物件) (選用) – 負面目標定義了任何客戶設定檔應滿足才能存取優惠的條件。雖然此欄位是選用的,但當此欄位存在時,至少應提供一個目標選項。
-
CountryCodes (字串陣列) (必要) – 列出為允許根據國家/地區設定目標的選項。如果不是以特定國家/地區的優惠為目標,則應該省略此欄位。如果有的話,清單必須至少包含一個國家/地區代碼。此清單中的每個元素都應該是有效的 2 個字母國家/地區代碼,使用此格式:ISO 3166-1 alpha-2。
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合 AWS Marketplace 準則。驗證程序可能需要幾分鐘的時間。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的UpdateTargeting動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會因 HTTP 回應而失敗。
| 輸入欄位 | 驗證規則 | HTTP 代碼 |
|---|---|---|
| NegativeTargeting |
選用 可以有下列其中一項:【 |
422 |
| NegativeTargeting.CountryCodes |
選用 清單大小必須介於 1 到 244 之間 國家代碼必須是有效的 (ISO 3166-1 alpha-2) |
422 |
| PositiveTargeting |
選用 可以具有下列其中一項:【 |
422 |
| PositiveTargeting.BuyerAccounts |
選用 清單大小必須介於 1 到 26 之間 AWS 帳戶 IDs必須為有效格式 (12 位數字) |
422 |
| PositiveTargeting.CountryCodes |
選用 清單大小必須介於 1 到 244 之間 國家代碼必須是有效的 (ISO 3166-1 alpha-2) |
422 |
非同步錯誤
下列錯誤專屬於 中的UpdateTargeting動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INVALID_BUYER_ACCOUNTS | 提供有效的買方帳戶。無效的帳戶:【x】。 |
| INVALID_COUNTRY_CODES | 提供支援的國家/地區代碼。 |
| INVALID_TARGETING | 在相同的屬性上使用負或正目標。 |
| INCOMPATIBLE_PRODUCT | 產品不支援以國家/地區為基礎的目標。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 提供與 ResaleAuthorization 相容的 BuyerAccounts。 |
| INCOMPATIBLE_TARGETING | 無法在優惠發佈後執行請求的變更。 |
| INCOMPATIBLE_TARGETING | 請求的變更無法在優惠過期後執行。 |
| INCOMPATIBLE_TARGETING | 無法更新替代優惠的目標。如果買方未與提供的 AgreementId 相關聯,則提供與買方相關聯的 AgreementId,以建立新的私有優惠。 |
| TOO_MANY_BUYER_ACCOUNTS | 在允許的限制內提供 BuyerAccounts。 |
| INCOMPATIBLE_TARGETING | 優惠發行後,無法移除 BuyerAccounts。 |
| INCOMPATIBLE_TARGETING | 優惠發行後,就無法新增 BuyerAccounts。 |
| MISSING_COUNTRY_CODES | 使用 CountryCodes 提供 PositiveTargeting:【x】。 |
| INCOMPATIBLE_COUNTRY_CODES | 提供相容的 CountryCodes。 |
| INCOMPATIBLE_BUYER_ACCOUNTS | 提供與協議相容的 BuyerAccounts。 |
更新退款政策
您可以使用 Catalog API 來更新 優惠的退款政策 AWS Marketplace。
此變更不會影響現有的協議。未包含在最新請求中的支援條款將從優惠中移除。
若要更新退款政策,請使用UpdateSupportTerms變更類型呼叫 StartChangeSet API 操作,如下列範例所示。
請求語法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateSupportTerms", "Entity": { "Type": "Offer@1.0", "Identifier": "offer-123456789" }, "DetailsDocument": { "Terms": [ { "Type": "SupportTerm", "RefundPolicy": "Updated refund policy description" } ] } } ] }
提供要新增UpdateSupportTerms變更類型的欄位資訊:
-
實體 (物件) (必要) – 您的優惠。
-
類型 (字串) (必要) – 一律
Type為Offer@1.0。 -
識別符 (字串) (必要) – 您的優惠 ID。如需詳細資訊,請參閱識別符。
-
-
DetailsDocument (物件) (必要) – 請求特定項目的 JSON 值。
-
術語 (結構陣列) (必要) – 您想要更新的支援術語清單。接受的支援術語包括:
-
SupportTerm (物件) (必要) – 定義接受者在購買軟體時可用的客戶支援。
-
類型 (字串) (必要) – 要更新的詞彙類型。這是物件值:
"SupportTerm"。 -
RefundPolicy (string) (必要) – 有關退款政策描述的任意文字欄位,將如網站和主控台上所示顯示給客戶。
-
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合 AWS Marketplace 準則。驗證程序可能需要幾分鐘的時間。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的UpdateSupportTerms動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會因 HTTP 回應而失敗。
| 輸入欄位 | 驗證規則 | HTTP 代碼 |
|---|---|---|
| 條款 |
必要 |
422 |
| Terms【】。RefundPolicy |
必要 長度必須介於 1 到 500 之間 無法以空格領導或結尾 |
422 |
| Terms【】。類型 | 必要 只能為 |
422 |
非同步錯誤
下列錯誤專屬於 中的UpdateSupportTerms動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INCOMPATIBLE_PRODUCT | 該產品的私有優惠不支援 SupportTerm。 |
| INCOMPATIBLE_TERMS | SupportTerm 不支援免費試用優惠。 |
| INCOMPATIBLE_TERMS | 無法在優惠發佈後執行請求的變更。 |
| INCOMPATIBLE_TERMS | 請求的變更無法在優惠過期後執行。 |
更新法律資源
您可以使用目錄 API 取代現有的法律文件,例如最終使用者授權合約 (EULA)。未包含在最新請求中的法律條款將從優惠中移除。
若要更新優惠的法律資源,請使用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變更類型的欄位資訊:
-
實體 (物件) (必要) – 您的優惠。
-
類型 (字串) (必要) – 一律
Type為Offer@1.0。 -
識別符 (字串) (必要) – 您的優惠 ID。如需詳細資訊,請參閱識別符。
-
-
DetailsDocument (物件) (必要) – 請求特定項目的 JSON 值。
-
LegalTerm (物件) (必要) – 定義要提議給接受者的文字協議清單。這種協議的一個範例是最終使用者授權合約 (EULA)。
-
類型 (字串) (必要) – 要更新的詞彙類型。這是物件值:
"LegalTerm"。 -
文件 (結構陣列) (必要) – 要提議給買方之法律資源的參考清單。這類資源的一個範例是最終使用者授權合約 (EULA)。每個參考都由
Type和 組成URL:-
類型 (字串) (必要) – 文件類型。可用的文件類型為:
-
CustomEula – 您以賣方身分提供的自訂 EULA。此文件類型需要公有 S3 URL 或預先簽章的 URL。
-
StandardEula – 適用於 AWS Marketplace (SCMP) 的標準合約。如需 SCMP 的詳細資訊,請參閱 AWS Marketplace 賣方指南。您不提供此類型的 URL,因為它由 管理 AWS Marketplace。
-
-
Url (字串) (有條件必要) – 供買方讀取之法律文件的 URL。當
Type為下列其中一個 【CustomEula】 時為必要。 -
版本 (字串) (有條件必要) – 由 提供的標準合約版本 AWS Marketplace。當
Type為 【StandardEula】 時為必要。可用版本:-
2022-07-14 – 此版本的 標準合約可從此 Amazon S3 儲存貯 AWS Marketplace 體取得:https://https://s3.amazonaws.com/aws-mp-standard-contracts/Standard-Contact-for-AWS-Marketplace-2022-07-14.pdf
-
-
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合 AWS Marketplace 準則。驗證程序可能需要幾分鐘的時間。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的UpdateLegalTerms動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會失敗並顯示 HTTP 回應。
| 輸入欄位 | 驗證規則 | HTTP 代碼 |
|---|---|---|
| 條款 |
必要 清單中只允許 清單大小必須為 1 |
422 |
| Terms【】。類型 | 必要 只能為 |
422 |
| Terms【】。LegalTerm.Documents |
必要 |
422 |
| Terms【】。LegalTerm.Documents[].類型 |
必要 允許的值:
|
422 |
| Terms【】。LegalTerm.Documents[].Url | 當 Type為 時,必要且必須是有效的 URL CustomEula |
422 |
| Terms【】。LegalTerm.Documents[].版本 | 當 Type為 時,必要且必須是有效的版本 StandardEula有效 |
422 |
非同步錯誤
下列錯誤專屬於 中的UpdateLegalTerms動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INCOMPATIBLE_TERMS | 無法在優惠發佈後執行請求的變更。 |
| INCOMPATIBLE_TERMS | 請求的變更無法在優惠過期後執行。 |
| INVALID_LEGAL_DOCUMENTS | 為存放在可存取 S3 儲存貯體中的法律文件提供 URLs。 |
| INVALID_LEGAL_DOCUMENTS | 新優惠僅支援最新版本的 StandardEula。 |
| INVALID_LEGAL_DOCUMENTS | 以支援的檔案格式提供法律文件。 |
| INVALID_LEGAL_DOCUMENTS | 使用支援的文件類型提供法律文件。 |
| LIMIT_EXCEEDED_LEGAL_DOCUMENT_SIZE | 在允許的大小限制內提供法律文件。 |
| INVALID_LEGAL_DOCUMENTS | LegalTerm (LegalTerm) 包含受密碼保護的文件。在 LegalTerm 中提供可存取的文件。 |
| INVALID_LEGAL_DOCUMENTS | LegalTerm 包含無效的 PDF 文件 (s)。在 LegalTerm 中提供可存取的文件。 |
更新定價
您可以使用目錄 API 完整取代現有的定價條款。未包含在最新請求中的定價條款將從優惠中移除。
若要更新優惠的定價條件,請使用UpdatePricingTerms變更類型呼叫 StartChangeSet API 操作,如下列範例所示。
注意
下列請求語法結合了多個範例。此組合無法做為有效的承載。例如,Terms陣列不能同時包含術語類型 FixedUpfrontPricingTerm和術語類型 ConfigurableUpfrontPricingTerm。如需不同定價使用案例如何結合不同詞彙類型的範例,請參閱 AWS Marketplace 賣方研討會中的使用 API 管理優惠
注意
對於具有免費定價模型的 SaaS 產品,您必須包含UsageBasedPricingTerm或至少ConfigurableUpfrontPricingTerm包含一個 RateCard (維度),其中所有價格都設為 0.00 美元。此需求對 SaaS 產品而言是唯一的。
請求語法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdatePricingTerms", "Entity": { "Type": "Offer@1.0", "Identifier": "offer-123456789" }, "DetailsDocument": { "PricingModel": "Usage", "Terms": [ { "Type": "UsageBasedPricingTerm", "CurrencyCode": "USD", "RateCards": [ { "RateCard": [ { "DimensionKey": "m3.large", "Price": "0.10" }, { "DimensionKey": "m4.xlarge", "Price": "0.20" } ] } ] }, { "Type": "ConfigurableUpfrontPricingTerm", "CurrencyCode": "USD", "RateCards": [ { "Selector": { "Type": "Duration", "Value": "P365D" }, "RateCard": [ { "DimensionKey": "m3.large", "Price": "300" }, { "DimensionKey": "m4.xlarge", "Price": "400" } ], "Constraints": { "MultipleDimensionSelection": "Allowed", "QuantityConfiguration": "Allowed" } } ] }, { "Type": "ByolPricingTerm" }, { "Type": "RecurringPaymentTerm", "CurrencyCode": "USD", "BillingPeriod": "Monthly", "Price": "100.0" }, { "Type": "FixedUpfrontPricingTerm", "CurrencyCode": "USD", "Price": "200.00", "Grants": [ { "DimensionKey": "Users", "MaxQuantity": 10 } ] }, { "Type": "FreeTrialPricingTerm", "Duration": "P30D", "Grants": [ { "DimensionKey": "m3.xlarge", "MaxQuantity": 10 }, { "DimensionKey": "m4.xlarge", "MaxQuantity": 10 } ] } ] } } ] }
提供要新增UpdatePricingTerms變更類型的欄位資訊:
-
實體 (物件) (必要) – 您的優惠。
-
類型 (字串) (必要) – 一律
Type為Offer@1.0。 -
識別符 (字串) (必要) – 您的優惠 ID。如需詳細資訊,請參閱識別符。
-
-
DetailsDocument (物件) (必要) – 請求特定項目的 JSON 值。
-
PricingModel (字串) (必要) – 您優惠的定價模式。定價模型的可能值為:
-
用量 – 以用量為基礎的定價模式,其中會向買方收取其產品用量的費用。
-
合約 – 以合約為基礎的定價模式,其中買方會預先針對您的產品使用付費,或提供彈性的付款排程。買方也可以支付超出合約的額外用量。
-
免費 – 免費定價模式,買方無須支付產品使用費。使用此定價模型時,沒有任何定價條款或付款排程條款可以有非零的費率。
-
Byol – Byol 定價模式,買方會在其中擁有自己的產品使用授權。
-
-
術語 (結構陣列) (必要) – 您要更新的定價術語清單。支援的定價條款如下:
-
FreeTrialPricingTerm (物件) – 定義短期免費定價模式,其中不會向買方收取指定限制內的任何費用。
-
類型 (字串) – 要更新的詞彙類型。這是物件值:
"FreeTrialPricingTerm"。 -
持續時間 (字串) – 免費試用期間的持續時間。
-
授予 (結構陣列) – 將授予免費試用接受者作為協議執行一部分的權利。
-
DimensionKey (字串) – 產品文件中定義的唯一維度索引鍵。維度代表產品中的容量類別,並在產品列出時指定 AWS Marketplace。
-
MaxQuantity (整數) (選用) – 買方有權獲得產品指定維度的最大容量。如果
MaxQuantity未提供 ,買方將能夠使用指定維度的無限數量。
-
-
-
UsageBasedPricingTerm (物件) – 定義pay-as-you-go(PAYG) 定價模式,其中會根據產品用量向客戶收費。
-
類型 (字串) (必要) – 要更新的詞彙類別。這是物件值:
UsageBasedPricingTerm。 -
CurrencyCode (字串) – 定義此術語中所提及價格的貨幣。目前僅支援 USD。
-
RateCards (結構陣列) – 費率卡的清單。
-
RateCard (結構陣列) – 費率卡會定義產品維度的每單位費率。
-
DimensionKey (字串) – 套用指定權利的維度。維度代表產品中的容量類別,並在產品列出時指定 AWS Marketplace。
-
價格 (字串) – 用於計算要向買方收費金額之產品維度的單位價格。
-
-
-
-
ConfigurableUpfrontPricingTerm (物件) – 定義預付付款模型,允許買方設定他們想要購買的權利和權利的持續時間。您可以更新每個合約持續時間的費率清單,以及每個維度的權利。
-
類型 (字串) (必要) – 要更新的詞彙類型。這是物件值:
ConfigurableUpfrontPricingTerm。 -
CurrencyCode (字串) (必要) – 定義此術語所提及價格的貨幣。對於公開優惠,僅支援 USD。對於私有優惠,支援 USD、UD、EUR、GBP 和 ¥C。
-
RateCards (結構陣列) (必要) – 費率卡清單。
-
Selector (物件) (必要) – Selector 用於區分同一定價期內的互斥費率卡,供買方選擇。
-
類型 (字串) (必要) – Selector 的類別。目前僅支援
Duration。 -
值 (字串) (必要) – 合約持續時間。此欄位支援 ISO 8601 格式。
-
-
RateCard (結構陣列) (必要) – 費率卡會定義產品維度的每單位費率。
-
DimensionKey (字串) (必要) – 產品文件中定義的唯一維度索引鍵。維度代表產品中的容量類別,並在產品列出時指定 AWS Marketplace。
-
價格 (字串) (必要) – 產品維度的單位價格,將用於計算要向買方收取的金額。
-
-
限制條件 (物件) (必要) – 定義接受者如何設定詞彙的限制條件。
注意
目前,MultipleDimensionSelection 和 QuantityConfiguration 值必須相同。
-
MultipleDimensionSelection (字串) (必要) – 判斷是否允許買方選取費率卡中的多個維度。可能值為
Allowed和Disallowed。 -
QuantityConfiguration (字串) (必要) – 判斷是否允許接受者設定費率卡中每個維度的數量。可能值為
Allowed和Disallowed。
-
-
-
-
ByolPricingTerm (物件) – 可讓您和客戶將現有協議移至其中 AWS Marketplace。客戶無需支付 中的產品使用費, AWS Marketplace 因為他們已在 之外支付產品的費用 AWS Marketplace。
-
類型 (字串) (必要) – 要更新的詞彙類型。這是物件值:
ByolPricingTerm。
-
-
RecurringPaymentTerm (物件) – 定義定價模式,在每個計費期間結束時向客戶收取固定的經常性價格。
-
類型 (字串) (必要) – 要更新的詞彙類型。這是物件值:
RecurringPaymentTerm。 -
BillingPeriod (字串) (必要) – 定義向買方收費的週期。目前僅支援
Monthly。 -
價格 (字串) (必要) – 每個計費期間向買方收取的金額。
-
CurrencyCode (字串) (必要) – 定義此術語所提及價格的貨幣。目前僅支援
USD。
-
-
FixedUpfrontPricingTerm (物件) – 定義預付定價模式,向客戶收取固定的預付金額。
-
類型 (字串) (必要) – 要更新的詞彙類型。這是物件值:
FixedUpfrontPricingTerm。 -
CurrencyCode (字串) (必要) – 定義此術語中所提及價格的貨幣。對於公開優惠,僅支援 USD。對於私有優惠,支援 USD、UD、EUR、GBP 和 ¥C。
-
價格 (字串) (必要) – 接受此期限時向客戶收取的固定金額。
-
授予 (結構陣列) (必要) – 作為協議執行的一部分,將授予固定預付接受者的權利。
-
DimensionKey (字串) (必要) – 產品文件中定義的唯一維度索引鍵。維度代表產品中的容量類別,並在產品列出時指定 AWS Marketplace。
-
MaxQuantity (整數) (必要) – 買方有權取得產品指定維度的最大容量。如果
MaxQuantity未提供 ,買方將能夠使用指定維度的無限數量。
-
-
持續時間 (字串) (選用) – 定義字詞保持作用中的持續時間。此欄位支援 ISO 8601 格式。
-
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合 AWS Marketplace 準則。驗證程序可能需要幾分鐘的時間。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的UpdatePricingTerms動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會失敗並顯示 HTTP 回應。
| 輸入欄位 | 驗證規則 | HTTP |
|---|---|---|
| PricingModel | 必要 允許的定價模型:【"Byol"、"Free"、"Usage"、"Contract"】 |
422 |
| 條款 | 必要 允許的條款:【"ConfigurableUpfrontPricingTerm"、"ByolPricingTerm"、"FreeTrialPricingTerm"、"UsageBasedPricingTerm"、"RecurringPaymentTerm"、"FixedUpfrontPricingTerm"】 |
422 |
| Terms【】。ByolPricingTerm | 必要 | 422 |
| Terms【】。ByolPricingTerm.Type | 必要 只能是「ByolPricingTerm」 |
422 |
| Terms【】。ConfigurableUpfrontPricingTerm | 必要 | 422 |
| Terms【】。ConfigurableUpfrontPricingTerm.Type | 必要 只能是「ConfigurableUpfrontPricingTerm」 |
422 |
| Terms【】。ConfigurableUpfrontPricingTerm.CurrencyCode | 必要 支援的貨幣:【"USD"、"AUD"、"EUR"、"GBP"、"JPN"】 |
422 |
| Terms【】。ConfigurableUpfrontPricingTerm.RateCards | 必要 清單大小必須介於 1 到 5 之間 |
422 |
| Terms【】。ConfigurableUpfrontPricingTerm.RateCards[].限制條件 | 必要 | 422 |
| Terms【】。ConfigurableUpfrontPricingTerm.RateCards[].Contraints.MultipleDimensionSelection | 必要 允許的值:【「允許」、「不允許」】 |
422 |
| Terms【】。ConfigurableUpfrontPricingTerm.RateCards[].Contraints.QuantityConfiguration | 必要 允許的值:【「允許」、「不允許」】 |
422 |
| Terms【】。ConfigurableUpfrontPricingTerm.RateCards[].RateCard | 必要 清單大小必須介於 1 到 800 之間 |
422 |
| Terms【】。ConfigurableUpfrontPricingTerm.RateCards[].RateCard【】。DimensionKey | 必要 長度必須介於 1 到 100 之間 |
422 |
| Terms【】。ConfigurableUpfrontPricingTerm.RateCards[].RateCard【】。價格 | 必要 資料類型為「字串」 支援最多 3 個小數位數的非負數小數位數 |
422 |
| Terms【】。ConfigurableUpfrontPricingTerm.RateCards[].選擇器 | 必要 | 422 |
| Terms【】。ConfigurableUpfrontPricingTerm.RateCards[].Selector.Type | 必要 允許的值:【「持續時間」】 |
422 |
| Terms【】。ConfigurableUpfrontPricingTerm.RateCards[].Selector.Value | 必要 每個選取器類型的預期格式:ISO 8601 持續時間 |
422 |
| Terms【】。FixedUpfrontPricingTerm | 必要 | 422 |
| Terms【】。FixedUpfrontPricingTerm.Type | 必要 只能是「FixedUpfrontPricingTerm」 |
422 |
| Terms【】。FixedUpfrontPricingTerm.CurrencyCode | 必要 支援的貨幣:【"USD"、"AUD"、"EUR"、"GBP"、"JPN"】 |
422 |
| Terms【】。FixedUpfrontPricingTerm.Duration | 必要 每個選取器類型的預期格式:ISO 8601 持續時間 |
422 |
| Terms【】。FixedUpfrontPricingTerm.Grants | 必要 清單大小必須介於 1 到 200 之間 |
422 |
| Terms【】。FixedUpfrontPricingTerm.Grants[].DimensionKey | 必要 長度必須介於 1 到 100 之間 |
422 |
| Terms【】。FixedUpfrontPricingTerm.Grants[].MaxQuantity | RequiredValue 必須大於 0 | 422 |
| Terms【】。FixedUpfrontPricingTerm.Price | 必要 資料類型為「字串」 支援最多 3 個小數位數的非負數小數位數 |
422 |
| Terms【】。FreeTrialPricingTerm | 必要 | 422 |
| Terms【】。FreeTrialPricingTerm.Type | 必要 只能是「FreeTrialPricingTerm」 |
422 |
| Terms【】。FreeTrialPricingTerm.Duration | 必要 預期的格式:ISO 8601 持續時間 |
422 |
| Terms【】。FreeTrialPricingTerm.Grants | 必要 清單大小必須介於 1 到 800 之間 |
422 |
| Terms【】。FreeTrialPricingTerm.Grants[].DimensionKey | 必要 長度必須介於 1 到 100 之間 |
422 |
| Terms【】。FreeTrialPricingTerm.Grants[].MaxQuantity | 選用 值必須大於 0 |
422 |
| Terms【】。RecurringPaymentTerm | 必要 | 422 |
| Terms【】。RecurringPaymentTerm.Type | 必要 只能是「RecurringPaymentTerm」 |
422 |
| Terms【】。RecurringPaymentTerm.BillingPeriod | 必要 允許的值:【"Monthly"】 |
422 |
| Terms【】。RecurringPaymentTerm.CurrencyCode | 必要 支援的貨幣:【"USD"】 |
422 |
| Terms【】。RecurringPaymentTerm.Price | 必要 資料類型為「字串」 支援最多 3 個小數位數的非負數小數位數 |
422 |
| Terms【】。UsageBasedPricingTerm | 必要 | 422 |
| Terms【】。UsageBasedPricingTerm.Type | 必要 只能是「UsagedBasedPricingTerm」 |
422 |
| Terms【】。UsageBasedPricingTerm.CurrencyCode | 必要 支援的貨幣:【"USD"】 |
422 |
| Terms【】。UsageBasedPricingTerm.RateCards | 必要 大小必須為 1 |
422 |
| Terms【】。UsageBasedPricingTerm.RateCards[].RateCard | 必要 清單大小必須介於 1 到 800 之間 |
422 |
| Terms【】。UsageBasedPricingTerm.RateCards[].RateCard【】。DimensionKey | 必要 長度必須介於 1 到 100 之間 |
422 |
| Terms【】。UsageBasedPricingTerm.RateCards[].RateCard【】。價格 | 必要 資料類型為「字串」 支援最多 8 個小數位數的非負數小數位數 |
422 |
非同步錯誤
以下是 中UpdatePricingTerms動作特有的錯誤 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| DUPLICATE_DIMENSION_KEYS | 在 【x】 中提供授予唯一的維度索引鍵清單。 |
| DUPLICATE_DIMENSION_KEYS | 在 【x】 中提供 RateCard 唯一的維度索引鍵清單。 |
| DUPLICATE_SELECTORS | 在 ConfigurableUpfrontPricingTerm 中提供唯一的選取器清單。 |
| DUPLICATE_TERM_TYPES | 提供唯一的詞彙類型清單。 |
| INCOMPATIBLE_AGREEMENT | 下列術語無法從替代優惠中移除:【x, y, z】。 |
| INCOMPATIBLE_AGREEMENT | 下列術語無法新增至替代優惠:【x, y, z】。 |
| INCOMPATIBLE_CURRENCY_CODE | 優惠發行後,無法變更 CurrencyCode。 |
| INCOMPATIBLE_PAYMENT_SETTINGS | 更新您的付款設定,使其與 CurrencyCode 相容。 |
| INCOMPATIBLE_PRODUCT | 產品不支援用量定價模型。 |
| INCOMPATIBLE_PRODUCT | 產品不支援合約定價模式。 |
| INCOMPATIBLE_PRODUCT | 產品不支援 Byol 定價模型。 |
| INCOMPATIBLE_PRODUCT | 產品不支援免費定價模式。 |
| INCOMPATIBLE_PRODUCT | 產品的 優惠不支援 【x】。 |
| INCOMPATIBLE_PRODUCT | 提供的付款和定價條款不相容。 |
| INCOMPATIBLE_PRODUCT | 在 【x】 的產品中使用現有的可用維度。 |
| INCOMPATIBLE_PRODUCT | 產品不支援 FreeTrialPricingTerm 作為優惠的唯一定價期限。 |
| INCOMPATIBLE_PRODUCT | 產品不支援下列術語:【x,y,z】。 |
| INCOMPATIBLE_PRODUCT | 取代優惠僅支援合約定價模式。 |
| INCOMPATIBLE_PRODUCT | 提供與產品維度相容的定價術語 (s)。不相容的定價條款:【x,y,z】。 |
| INCOMPATIBLE_RATE_CARD_CONSTRAINTS | 針對用量定價模型,將 MultipleDimensionSelection 和 QuantityConfiguration 設定為 ConfigurableUpfrontPricingTerm 允許。 |
| INCOMPATIBLE_RATE_CARD_CONSTRAINTS | 在用量定價模型的 ConfigurableUpfrontPricingTerm 中將 MultipleDimensionSelection 和 QuantityConfiguration 設定為不允許。 |
| INCOMPATIBLE_RATE_CARD_CONSTRAINTS | 優惠發行後,無法變更 ConfigurableUpfrontPricingTerm 中的 QuantityConfiguration。 |
| INCOMPATIBLE_RATE_CARD_CONSTRAINTS | 優惠發行後,無法變更 ConfigurableUpfrontPricingTerm 中的 MultipleDimensionSelection。 |
| INCOMPATIBLE_RATES | 使用免費定價模型時,將所有費用金額和價格設定為零 (0)。 |
| INCOMPATIBLE_RATES | UsageBasedPricingTerm 只允許零 (0) 價格以取得產品的免費試用優惠。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 提供與 ResaleAuthorization 中指定的相同 CurrencyCode。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 確保 FixedUpfrontPricingTerm 中的持續時間與 ResaleAuthorization 中指定的持續時間相符。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 提供與 ResaleAuthorization 相容的 term(s)。不相容的術語:【x、y、z】。 |
| INCOMPATIBLE_SELECTOR_DURATION | 優惠發行後,不允許從 ConfigurableUpfrontPricingTerm 中的費率卡中移除持續時間。 |
| INCOMPATIBLE_SELLER_VERIFICATION | 完成所有必要的賣方驗證程序。 |
| INCOMPATIBLE_TERMS | 【x】 與下列術語不支援:【y,z】。 |
| INCOMPATIBLE_TERMS | 優惠發行後,無法新增下列術語:【x,y,z】。 |
| INCOMPATIBLE_TERMS | 優惠發行後,無法移除下列術語:【x,y,z】。 |
| INCOMPATIBLE_TERMS | 私有優惠不支援 【x】。 |
| INCOMPATIBLE_TERMS | FreeTrialPricingTerm 授予無限用量時,不支援下列術語:【x,y,z】。 |
| INCOMPATIBLE_TERMS | FreeTrialPricingTerm 不支援產品的下列術語:【x,y,z】。 |
| INCOMPATIBLE_TERMS | 當優惠包含 PaymentScheduleTerm 時,為 FixedUpfrontPricingTerm 提供零 (0) 價格。 |
| INCOMPATIBLE_TERMS | 下列術語與 PricingModel 不相容:【x,y,z】。 |
| INCOMPATIBLE_TERMS | 當 MarkupPercentage 大於零 (0) 時,不支援 FixedUpfrontPricingTerm。 |
| INCOMPATIBLE_TERMS | 無法在優惠發佈後執行請求的變更。 |
| INCOMPATIBLE_TERMS | 請求的變更無法在優惠過期後執行。 |
| INVALID_AGREEMENT_DURATION | 提供介於 【x】 和 【y】 個月的持續時間。 |
| INVALID_AGREEMENT_DURATION | 確保測量維度的持續時間精細程度處於天層級。 |
| INVALID_CURRENCY_CODE | 提供支援的 CurrencyCode。 |
| INVALID_CURRENCY_CODE | 在所有定價和付款條件中提供相同的 CurrencyCode。 |
| INVALID_CURRENCY_CODE | 提供支援的 CurrencyCode。 |
| INVALID_CURRENCY_CODE | 在所有定價和付款條件中提供相同的 CurrencyCode。 |
| INVALID_DURATION | 確保 FreeTrialPricingTerm 中的持續時間在允許的範圍內。 |
| INVALID_DURATION | 在 FixedUpfrontPricingTerm 中提供符合 AgreementStartDate 和 AgreementEndDate 之間持續時間的持續時間。 |
| INVALID_DURATION | 提供介於 【x】 和 【y】 個月的持續時間。 |
| INVALID_DURATION | 確保測量維度的持續時間精細程度位於天層級。 |
| INVALID_GRANTS | 為 FreeTrialPricingTerm 中的所有授權提供相同的 MaxQuantity。 |
| INVALID_GRANTS | 在 FreeTrialPricingTerm 中提供所有可用計量維度的授予。 |
| INVALID_GRANTS | The combination of Dimensions in grants is invalid in
FixedUpfrontPricingTerm for the product. |
| INVALID_GRANTS | The combination of Dimensions in grants is invalid in
FreeTrialPricingTerm for the product. |
| INVALID_GRANTS | FixedUpfrontPricingTerm with MaxQuantity is not supported
for this product. |
| INVALID_PRICE_CHANGE | 【x】 無法在 【y】 之前更新,因為您在過去 120 天內請求提高價格。若要取消先前的提高價格請求或取得詳細資訊,請聯絡 AWS Marketplace Managed Catalog Operations 團隊。 |
| INVALID_PRICE_CHANGE | 相同的請求不支援在 【x】 中增加價格和增加維度。先新增維度。 |
| INVALID_PRICE_CHANGE | 同一請求不支援 UsageBasedPricingTerm 的價格提高和降低。首先降低價格。 |
| INVALID_PRICE_CHANGE | 相同請求不支援 RecurringPaymentTerm 的價格增加和 UsageBasedPricingTerm 的價格降低。首先降低價格。 |
| INVALID_PRICE_CHANGE | 相同請求不支援 RecurringPaymentTerm 的價格降低和 UsageBasedPricingTerm 的價格提高。首先降低價格。 |
| INVALID_RATE_CARD | ConfigurableUpfrontPricingTerm 在持續時間 【x】 內缺少一或多個維度索引鍵。提供所有持續時間內同一組維度索引鍵的價格。 |
| INVALID_RATE_CARD | 在 UsageBasedPricingTerm 中提供僅計量維度的費率卡。 |
| INVALID_RATE_CARD | 無法從 【x】 移除費率。提供現有費率卡中所有維度的價格。 |
| INVALID_RATE_CARD | 在 【x】 中提供單位相同的維度。 |
| INVALID_RATE_CARD | 以 【x】 提供所有計量維度或所有授權維度。 |
| INVALID_RATE_CARD | 僅提供 【x】 中具備權限的維度。 |
| INVALID_RATE_CARD | 提供 UsageBasedPricingTerm 中所有可用計量維度的用量型費率。 |
| INVALID_RATE_CARD | 提供所有免費試用維度的用量型費率。 |
| INVALID_RATE_CARD | 在 UsageBasedPricingTerm 中提供最多 8 個小數位的價格。 |
| INVALID_RATE_CARD | The combination of Dimensions in rate card is invalid in
UsageBasedPricingTerm for the product. |
| INVALID_SELECTOR_DURATION_VALUE | 提供介於 【x】 和 【y】 個月的持續時間。 |
| INVALID_SELECTOR_DURATION_VALUE | 確保測量維度的持續時間精細程度處於天層級。 |
| INVALID_SELECTOR_DURATION_VALUE | 確保 ConfigurableUpfrontPricingTerm 中的持續時間在允許的範圍內。 |
| INVALID_SELECTOR_DURATION_VALUE | 提供一或多個支援的合約持續時間。 |
| INVALID_SELECTOR_DURATION_VALUE | 提供一或多個支援的合約持續時間或單一自訂持續時間。 |
| INVALID_SELECTOR_DURATION_VALUE | 在符合 AgreementStartDate 和 AgreementEndDate 之間持續時間的 ConfigurableUpfrontPricingTerm 中提供持續時間。 |
| MISSING_DURATION | 在 FixedUpfrontPricingTerm 中提供持續時間。 |
| MISSING_MANDATORY_TERMS | 只有在與 ByolPricingTerm 或 PaymentScheduleTerm 配對時,才支援 FixedUpfrontPricingTerm PaymentScheduleTerm 。 ByolPricingTerm |
| MISSING_MANDATORY_TERMS | 至少提供其中一個 【x,y,z】。 |
| MISSING_MANDATORY_TERMS | 使用 Byol 定價模型時提供 ByolPricingTerm。 |
| TOO_MANY_GRANTS | 在 【y】 中提供最多 【x】 個授與。 |
| TOO_MANY_RATE_CARDS | 產品只允許使用 ConfigurableUpfrontPricingTerm 中的一張費率卡。 |
| TOO_MANY_RATE_CARDS | 產品在 ConfigurableUpfrontPricingTerm 中最多允許 【x】 張費率卡。 |
| TOO_MANY_RATES | 在 ConfigurableUpfrontPricingTerm 中允許的限制內提供 RateCards。 |
| TOO_MANY_RATES | 在 UsageBasedPricingTerm 中允許的限制內提供 RateCards。 |
| INCOMPATIBLE_RATE_CARD_CONSTRAINTS | 在 ConfigurableUpfrontPricingTerm 中將 MultipleDimensionSelection 和 QuantityConfiguration 設定為相同的值 (允許或不允許)。 |
| INCOMPATIBLE_RATE_CARD_CONSTRAINTS | 為 ConfigurableUpfrontPricingTerm 中的所有費率卡提供相同的限制條件。 |
| INVALID_UPDATE_REQUEST | 【x】 無法更新。若要請求定價變更或取得詳細資訊,請聯絡 AWS Marketplace Managed Catalog Operations 團隊。 |
| INCOMPATIBLE_PRICING_MODEL | PricingModel 無法從 【x】 變更為 【y】。 |
| INVALID_GRANTS | FreeTrialPricingTerm 的 MaxQuantity 受限於產品。提供小於或等於 【x】 的 MaxQuantity。如需詳細資訊,請聯絡 AWS Marketplace Managed Catalog Operations 團隊。 |
| INVALID_GRANTS | 為 FixedUpfrontPricingTerm 中的所有授權提供 MaxQuantity。 |
| INVALID_GRANTS | FixedUpfrontPricingTerm 不支援產品的 MaxQuantity。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 確保 FixedUpfrontPricingTerm 中的授與符合 ResaleAuthorization 中指定的 RateCards。 |
更新優惠的可探索性
您可以使用目錄 API 來控制優惠的可探索性 AWS Marketplace。
您可以選擇在未來設定特定日期,以限制優惠的可探索性,或過去會使優惠過期。UpdateAvailability 變更類型不會影響現有的協議。
注意
-
您可以在已發佈 (也稱為已發行) 的私有優惠上使用
UpdateAvailability變更類型。如果買方已接受私有優惠,則這些現有協議不會受到影響。 -
修改現有私有優惠
AvailabilityEndDate的 時,必須遵循協議持續時間的限制。如果不是,請在此UpdateValidityTerms變更集中包含其他變更類型,以修改協議持續時間,以遵守新的過期。UpdateValidityTerms變更類型可用於已發行或尚未發行的私有優惠。 -
修改現有私有優惠
AvailabilityEndDate的 時,必須遵循付款排程的限制。如果尚未發佈,且私有優惠尚未發佈,請在此UpdatePaymentScheduleTerms變更集中包含其他變更類型,以修改付款排程以符合新的過期時間。如果私有優惠已發行,AvailabilityEndDate您只能在新日期符合付款排程限制的情況下,對 進行變更。
若要控制優惠的可探索性,請使用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變更類型的欄位資訊:
-
實體 (物件) (必要) – 您的優惠。
-
類型 (字串) (必要) – 一律
Type為Offer@1.0。 -
識別符 (字串) (必要) – 您的優惠 ID。如需詳細資訊,請參閱識別符。
-
-
DetailsDocument (物件) (必要) – 請求特定項目的 JSON 值。
-
AvailabilityEndDate (字串) (必要) – 這是優惠可探索且可購買的日期 AWS Marketplace。您可以選擇在未來設定特定日期以限制可用性,或選擇過去將優惠過期。日期會以
YYYY-MM-DD格式表示。
-
為您的請求建立變更集。對此請求的回應會為您提供變更集的 ID 和 ARN,如下所示。
回應語法
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。它包含驗證資訊,以確保其符合 AWS Marketplace 準則。驗證程序可能需要幾分鐘的時間。您可以透過 AWS Marketplace 管理入口網站或在目錄 API 中使用 DescribeChangeSet動作來檢查請求的狀態。
同步驗證
下列結構描述驗證專屬於 中的UpdateAvailability動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會因 HTTP 回應而失敗。
| 輸入欄位 | 驗證規則 | HTTP 代碼 |
|---|---|---|
| AvailabilityEndDate |
必要 格式:"YYYY-MM-DD" |
422 |
非同步錯誤
下列錯誤專屬於 中的UpdateAvailability動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INVALID_AVAILABILITY_END_DATE | 公有優惠不支援 AvailabilityEndDate。 |
| INVALID_AVAILABILITY_END_DATE | 提供未來的 AvailabilityEndDate。 |
| INVALID_AVAILABILITY_END_DATE | 提供在 AgreementEndDate 之前的 AvailabilityEndDate。 AgreementEndDate |
| MISSING_AVAILABILITY_END_DATE | 提供在協議結束日期之前的 AvailabilityEndDate。 |
定義使用優惠建立之協議的過期日期
您可以使用 Catalog API 來定義使用 優惠建立之協議的過期日期詳細資訊 AWS Marketplace。
此變更類型不會影響現有的協議。
注意
您可以在已發佈 (也稱為已發行) 的私有優惠上使用UpdateValidityTerms變更類型。如果買方已接受私有優惠,則這些現有協議不會受到影響。
對於 AMI 型和容器型產品,如果您的私有優惠定價條款包含具有 的術語類型 Duration(例如,術語類型 FixedUpfrontPricingTerm或 ConfigurableUpfrontPricingTerm),則您在此變更類型中AgreementDuration設定的天數必須大於以下內容:從今天到私有優惠到期的天數,加上這些術語類型的 Duration 中設定的天數。這是因為在買方接受私有優惠並建立協議之後,他們可以選擇性地購買這些期限類型中指定的其他權利,直到私有優惠到期為止。此外,所有其他權利都必須在協議之前結束。例如,如果買方在第一個可用日接受私有優惠,然後在最後一個可用日購買權利,則這些權利不得在協議結束日期之後終止。
若要定義使用優惠建立之協議的過期日期詳細資訊,請呼叫具有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變更類型的欄位資訊:
-
實體 (物件) (必要) – 您的優惠。
-
類型 (字串) (必要) – 一律
Type為Offer@1.0。 -
識別符 (字串) (必要) – 您的優惠 ID。如需詳細資訊,請參閱識別符。
-
-
DetailsDocument (物件) (必要) – 請求特定項目的 JSON 值。
-
術語 (結構陣列) – 您要更新的有效術語清單。支援的有效性術語為:
-
ValidityTerm (物件) – 定義將保留從本優惠建立的協議、有效的條件。
-
類型 (字串) – 要更新的詞彙類別。
ValidityTerm -
AgreementDuration (字串) – 定義協議保持作用中的持續時間。如果
AgreementStartDate未提供 ,則協議持續時間與協議簽署時間相關。持續時間會以 ISO_8601 格式表示。 -
AgreementStartDate (字串) – 定義協議開始的日期。
AgreementStartDate以YYYY-MM-DD格式表示。協議於 UTC 提供的日期起 00:00:00.000。如果AgreementStartDate未提供 ,則根據協議簽署時間來決定協議開始日期。 -
AgreementEndDate (字串) – 定義協議終止的日期。會以
YYYY-MM-DD格式AgreementEndDate表示。協議於 UTC 提供的日期 23:59:59.999 結束。如果AgreementEndDate未提供 ,則協議結束日期取決於個別條款的有效性。
-
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合 AWS Marketplace 準則。驗證程序可能需要幾分鐘的時間。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的UpdateValidityTerms動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會因 HTTP 回應而失敗。
| 輸入欄位 | 驗證規則 | HTTP 代碼 |
|---|---|---|
| 條款 |
必要 |
422 |
| Terms【】。類型 |
必要 只能為 |
422 |
| Terms【】。AgreementDuration |
選用 每個選取器類型的預期格式:ISO 8601 持續時間 可以獨立或與 配對 |
422 |
| Terms【】。AgreementEndDate |
選用 日期的格式必須為 |
422 |
| Terms【】。AgreementStartDate |
選用 日期的格式必須為 只能與 |
422 |
非同步錯誤
下列錯誤專屬於 中的UpdateValidityTerms動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INCOMPATIBLE_AGREEMENT | 如果目前要取代的協議不是未來的日期,則 AgreementStartDate 不能在未來。 |
| INCOMPATIBLE_AGREEMENT_END_DATE | 優惠發行後,就無法更新 AgreementEndDate。 |
| INCOMPATIBLE_AGREEMENT_START_DATE | 優惠發行後,就無法更新 AgreementStartDate。 |
| INCOMPATIBLE_PRODUCT | 未來不支援 AgreementStartDate。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 確保 AgreementStartDate 和 AgreementEndDate 之間的持續時間與 ResaleAuthorization 相容。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 確保 AgreementStartDate 與 ResaleAuthorization 相容。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 確保 AgreementEndDate 與 ResaleAuthorization 相容。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 確保 AgreementStartDate 和 AgreementEndDate 之間的持續時間與 ResaleAuthorization 相容。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 確保 AgreementDuration 符合 ResaleAuthorization 中指定的持續時間。 |
| INCOMPATIBLE_TERMS | 公開優惠不支援 ValidityTerm。 |
| INCOMPATIBLE_TERMS | 請求的變更無法在優惠過期後執行。 |
| INVALID_AGREEMENT_DURATION | 提供大於或等於 【x】 天的 AgreementDuration。 |
| INVALID_AGREEMENT_END_DATE | 提供未來的 AgreementEndDate。 |
| INVALID_AGREEMENT_END_DATE | 提供晚於或等於 【x】 的 AgreementEndDate。 |
| INVALID_AGREEMENT_START_DATE | 提供在 AvailabilityEndDate 之後的 AgreementStartDate。 AvailabilityEndDate |
| INVALID_AGREEMENT_START_DATE | 提供在 AgreementStartDate 之前的 AgreementEndDate。 |
| INVALID_AGREEMENT_START_DATE | 提供距今天 【x】 年的 AgreementStartDate。 |
| INVALID_AGREEMENT_TIME_INTERVAL | 不支援同時具有 AgreementDuration 和 AgreementEndDate 的 ValidityTerm。 |
| INVALID_AGREEMENT_TIME_INTERVAL | 產品優惠不支援同時具有 AgreementStartDate 和 AgreementDuration 的 ValidityTerm。 |
| INVALID_AGREEMENT_TIME_INTERVAL | 產品優惠不支援 ValidityTerm with AgreementStartDate。 |
| INVALID_AGREEMENT_TIME_INTERVAL | 不支援僅含 AgreementStartDate 的 ValidityTerm。 |
| INVALID_AGREEMENT_TIME_INTERVAL | 除非與未來的 AgreementEndDate 或替代優惠搭配使用,否則不支援 AgreementStartDate。 |
| INVALID_AGREEMENT_TIME_INTERVAL | 提供 AgreementStartDate 和 AgreementEndDate,其中差異小於或等於 【x】 年。 |
| MISSING_AGREEMENT_START_DATE | 與 ConfigurableUpfrontPricingTerm 搭配使用時,確保 AgreementStartDate 存在於 ValidityTerm 中。 ConfigurableUpfrontPricingTerm |
| INVALID_AGREEMENT_END_DATE | 提供距今天 【x】 年的 AgreementEndDate。 |
| INCOMPATIBLE_AGREEMENT_START_DATE | 當協議有未來的開始日期時,提供與協議中定義的相同 AgreementStartDate。 |
| INCOMPATIBLE_AGREEMENT | 當協議不是未來的日期時, AgreementStartDate 不能是未來的日期。 |
更新付款排程詳細資訊
您可以使用目錄 API 來更新優惠的付款排程詳細資訊,例如彈性付款排程 AWS Marketplace。
注意
若要更新優惠的付款排程詳細資訊,請使用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變更類型的欄位資訊:
-
實體 (物件) (必要) – 您的優惠。
-
類型 (字串) (必要) – 一律
Type為Offer@1.0。 -
識別符 (字串) (必要) – 您的優惠 ID。如需詳細資訊,請參閱識別符。
-
-
DetailsDocument (物件) (必要) – 請求特定項目的 JSON 值。
-
條件 (結構陣列) – 您要更新的付款條件清單。支援的付款條件為:
-
PaymentScheduleTerm (物件) – 定義以分期付款為基礎的定價模式,其中客戶會在協議有效期間的不同日期支付固定價格的費用。
-
類型 (字串) – 要更新的詞彙類型。這是物件值:
"PaymentScheduleTerm"。 -
排程 (結構陣列) – 付款排程清單,其中每個元素定義一個付款分期。它包含計算要支付的價格以及向客戶收費的日期所需的資訊。
-
ChargeDate (字串) – 客戶支付此付款排程期間所定義價格的日期。
ChargeDate以 YYYY-MM-DD 格式表示。發票會在提供的日期產生。 -
ChargeAmount (字串) – 客戶在排程日期 () 支付的價格
ChargeDate。
-
-
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合 AWS Marketplace 準則。驗證程序可能需要幾分鐘的時間。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的UpdatePaymentScheduleTerms動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會失敗並顯示 HTTP 回應。
| 輸入欄位 | 驗證規則 | HTTP |
|---|---|---|
| 條款 |
必要 只 清單大小必須小於 2 |
422 |
| Terms【】。類型 |
必要 只能為 |
422 |
| Terms【】。PaymentScheduleTerm.CurrencyCode |
必要 支援的貨幣:【"USD"、"AUD"、"EUR"、"GBP"、" 日元"】 |
422 |
| Terms【】。PaymentScheduleTerm.Schedule[] |
必要 |
422 |
| Terms【】。PaymentScheduleTerm.Schedule[].ChargeAmount | 必要 日期類型為「字串」 支援最多 2 個小數位數的非負數小數位數 |
422 |
| Terms【】。PaymentScheduleTerm.Schedule[].ChargeDate |
必要 日期格式必須為 "YYYY-MM-DD" |
422 |
非同步錯誤
下列錯誤專屬於 中的UpdatePaymentScheduleTerms動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| DUPLICATE_charge_DATES | 在 PaymentScheduleTerm 中提供唯一的收費日期。 |
| INCOMPATIBLE_CURRENCY_CODE | 優惠發行後,無法變更 CurrencyCode。 |
| INCOMPATIBLE_MARKUP_PERCENTAGE | 當 MarkupPercentage 大於零 (0) 時,不支援 PaymentScheduleTerm。 |
| INCOMPATIBLE_PAYMENT_SETTINGS | 更新您的付款設定,使其與 CurrencyCode 相容。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 提供與 ResaleAuthorization 相容的 term(s)。不相容的術語:【PaymentScheduleTerm】。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 確保 PaymentScheduleTerm 中的 ChargeAmounts 總數與 ResaleAuthorization 相容。 |
| INCOMPATIBLE_SELLER_VERIFICATION | 完成所有必要的賣方驗證程序。 |
| INCOMPATIBLE_TERMS | 無法在優惠發佈後執行請求的變更。 |
| INCOMPATIBLE_TERMS | 請求的變更無法在優惠過期後執行。 |
| INVALID_charge_DATES | 提供 AgreementEndDate 之前的收費日期。 |
| INVALID_CURRENCY_CODE | 提供支援的 CurrencyCode。 |
| INVALID_CURRENCY_CODE | 在所有定價和付款條件中提供相同的 CurrencyCode。 |
| TOO_MANY_BACKDATED_CHARGES | 在 AvailabilityEndDate 之前提供最多 1 個排程付款。 |
| INVALID_charge_DATES | 提供 AgreementEndDate 之前的最後一個收費日期。 |
| INVALID_charge_DATES | 提供不是過去的第一個收費日期。 |
| TOO_MANY_chargeS | 在 PaymentScheduleTerm 中提供最多 【x】 個排程付款。 |
更新淨付款條件
您可以使用目錄 API 來設定優惠的淨付款條件 AWS Marketplace。淨付款期限是您指定發票發行到期後天數的期限。
注意
淨額付款條件僅支援私有優惠,且僅適用於具有pay-by-invoice方法的買方 AWS。如果您未設定淨付款條件,則 AWS 適用買方的付款條件。
若要設定優惠的淨付款期限,請使用UpdateNetPaymentTerms變更類型呼叫 StartChangeSet API 操作,如下列範例所示。
請求語法
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。
-
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合 AWS Marketplace 準則。驗證程序可能需要幾分鐘的時間。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的UpdateNetPaymentTerms動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會失敗並顯示 HTTP 回應。
| 輸入欄位 | 驗證規則 | HTTP |
|---|---|---|
| 條款 |
必要 只 清單大小必須小於 2 |
422 |
| Terms【】。類型 |
必要 只能為 |
422 |
| Terms【】。NetPaymentTerm.PaymentDuePeriod |
必要 預期格式:ISO 8601 持續時間 允許的值:【"P15D"、"P30D"、"P45D"、"P60D"、"P90D"、"P120D"】 |
422 |
非同步錯誤
下列錯誤專屬於 中的UpdateNetPaymentTerms動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INVALID_PAYMENT_DUE_PERIOD | 提供支援的 PaymentDuePeriod。 |
| INCOMPATIBLE_PRODUCT | 產品不支援下列術語:【x,y,z】。 |
| INCOMPATIBLE_TERMS | NetPaymentTerm 不支援公有優惠。 |
| INCOMPATIBLE_TERMS | 請求的變更無法在優惠發佈後執行。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 不支援 NetPaymentTerm,因為 ResaleAuthorization 不包含 NetPaymentTerm。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 無法移除 NetPaymentTerm,因為 ResaleAuthorization 包含 NetPaymentTerm。 |
| INCOMPATIBLE_RESALE_AUTHORIZATION | 確保 NetPaymentTerm 中的 PaymentDuePeriod 與 ResaleAuthorization 相容。 |
| DUPLICATE_TERM_TYPES | 提供唯一的詞彙類型清單。 |
修改續約選項
您可以使用目錄 API 來控制使用此優惠建立之協議的續約選項 AWS Marketplace。
對於透過目錄 API 建立的優惠,自動續約預設為停用,直到您呼叫UpdateRenewalTerms變更類型以允許自動續約為止。此變更不會影響現有的協議。
若要控制使用此優惠建立之協議的續約選項,請呼叫具有UpdateRenewalTerms變更類型的 StartChangeSet API 操作,如下列範例所示。
請求語法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateRenewalTerms", "Entity": { "Type": "Offer@1.0", "Identifier": "offer-123456789" }, "DetailsDocument": { "Terms": [ { "Type": "RenewalTerm" } ] } } ] }
提供要新增UpdateRenewalTerms變更類型的欄位資訊:
-
實體 (物件) (必要) – 您的優惠。
-
類型 (字串) (必要) – 一律
Type為Offer@1.0。 -
識別符 (字串) (必要) – 您的優惠 ID。如需詳細資訊,請參閱識別符。
-
-
DetailsDocument (物件) (必要) – 請求特定項目的 JSON 值。
-
術語 (結構陣列) – 您要更新的續約術語清單。支援的續約期限為:
-
RenewalTerm (物件) – 定義在協議的正常終止 (過期,
ValidityTerm而非買方 AWS Marketplace 或取消) 時,將使用現有協議上接受的條款建立新協議。換句話說,協議將會續約。優惠RenewalTerm中存在 表示允許自動續約。在建立優惠接受/協議時,買方可以選擇接受或拒絕自動續約。-
類型 (字串) – 要更新的詞彙類型。
RenewalTerm
-
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合 AWS Marketplace 準則。驗證程序可能需要幾分鐘的時間。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的UpdateRenewalTerms動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會失敗並顯示 HTTP 回應。
| 輸入欄位 | 驗證規則 | HTTP 代碼 |
|---|---|---|
| 條款 | 必要 | 422 |
| Terms【】。類型 | 必要 只能是「RenewalTerm」 |
422 |
非同步錯誤
下列錯誤專屬於 中的UpdateRenewalTerms動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INCOMPATIBLE_PRODUCT | 該產品的私有優惠不支援 RenewalTerm。 |
| INCOMPATIBLE_TERMS | PaymentScheduleTerm 不支援 RenewalTerm。 PaymentScheduleTerm |
| INCOMPATIBLE_TERMS | PricingModel不支援 RenewalTerm。 |
| INCOMPATIBLE_TERMS | 請求的變更無法在優惠發佈後執行。 |
| INCOMPATIBLE_TERMS | 請求的變更無法在優惠過期後執行。 |
發佈優惠
您可以使用目錄 API 合併從所有更新變更類型收集的資訊,然後發佈優惠。
在ReleaseOffer呼叫 之前,優惠會保持 Draft 狀態。優惠發佈後,即可探索 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變更類型的欄位資訊:
-
實體 (物件) – 正在建立的實體的命名類型。
Identifier是您的優惠 ID, 一律Type是Offer@1.0。如需詳細資訊,請參閱識別符。 -
DetailsDocument (物件) – 請求特定項目的 JSON 值。其對於 必須是空的
ReleaseOffer。
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合 AWS Marketplace 準則。驗證程序可能需要幾分鐘的時間。
您可以透過 檢查請求的狀態 AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的ReleaseOffer動作 AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會失敗並顯示 HTTP 回應。
| 輸入欄位 | 驗證規則 |
|---|---|
| DetailsDocument | 必須為空白 ({}) |
非同步錯誤
下列錯誤專屬於 中的ReleaseOffer動作 AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INCOMPATIBLE_PAYMENT_SETTINGS | 更新您的付款設定,使其與 CurrencyCode 相容。 |
| INCOMPATIBLE_PRODUCT | 首先建立產品的公開優惠。 |
| INCOMPATIBLE_SELLER_VERIFICATION | 完成所有必要的賣方驗證程序。 |
| INCOMPATIBLE_TARGETING | PreExistingAgreement 僅支援以買方為目標的優惠。 |
| INCOMPATIBLE_TARGETING | OfferSetId 僅支援以買方為目標的優惠。 |
| INVALID_TAX_INFORMATION | 您的稅務資訊不完整。若要銷售專業服務 AWS Marketplace,您必須完成 DAC7 稅務問卷。導覽至付款資訊區段,然後選取 DAC7 稅務表單。最多可能需要兩個小時才會更新您的稅務資訊。 |
| INVALID_UPDATE_REQUEST | 無法在優惠發佈後執行請求的變更。 |
| MISSING_AGREEMENT_END_DATE | 提供替換優惠的 AgreementEndDate。 |
| MISSING_AVAILABILITY_END_DATE | 為私有優惠提供 AvailabilityEndDate。 |
| MISSING_BUYER_ACCOUNTS | 針對使用 ResaleAuthorization 建立的優惠,使用 BuyersAccounts 提供 PositiveTargeting。 |
| MISSING_BUYER_ACCOUNTS | 產品的所有優惠都必須是私有的。使用BuyersAccounts提供 PositiveTargeting。 |
| MISSING_DESCRIPTION | 在發佈優惠之前設定描述。 |
| MISSING_MANDATORY_TERMS | 將 【x】 新增至優惠。 |
| MISSING_MANDATORY_TERMS | 當優惠包含 PaymentScheduleTerm 時,提供 FixedUpfrontPricingTerm。 PaymentScheduleTerm |
| MISSING_NAME | 在釋出優惠之前設定名稱。 |
| TOO_MANY_OFFERS | 每個產品只能建立一個公開免費試用優惠。 |
| TOO_MANY_OFFERS | 每個產品只能建立一個公開優惠。 |
| MISSING_MANDATORY_TERMS | 為公開優惠提供RenewalTerm,其中包含產品的合約定價。 |
| MISSING_AGREEMENT_END_DATE | 提供替換優惠的 AgreementEndDate。 |
描述現有的優惠詳細資訊
您可以使用目錄 API 來描述 中的現有優惠詳細資訊 AWS Marketplace。
若要描述現有的優惠詳細資訊,請使用 Offer@1.0實體類型呼叫 DescribeEntity API 操作,如下列範例所示。
請求語法
GET /DescribeEntity?catalog=<Catalog>&entityId=<EntityId> HTTP/1.1
提供要新增DescribeEntity變更類型的欄位資訊:
-
目錄 (字串) – 與請求相關的目錄。固定值:
AWSMarketplace。 -
entityId (字串) – 要描述的提議的唯一 ID。
回應語法
對此請求的回應會為您提供優惠詳細資訊,如下所示。
{ "EntityType": "Offer@1.0", "EntityIdentifier": "offer-ad8EXAMPLE51@1", "EntityArn": "arn:aws:aws-marketplace:us-east-1:111122223333:AWSMarketplace/Offer/offer-ad8EXAMPLE51", "LastModifiedDate": "2021-03-10T21:57:16Z", "DetailsDocument": { "Id": "offer-3rEXAMPLErn", "State": "Released", "Name": "Test Offer", "Description": "Worldwide offer for Test Product", "PreExistingAgreement": { "AcquisitionChannel": "External", "PricingModel": "Contract" }, "ProductId": "prod-ad8EXAMPLE51", "OfferSetId": "offerset-b3f9EXAMPLE27", "Terms": [ { "Type": "SupportTerm", "RefundPolicy": "If you need to request a refund for software sold by Amazon Web Services, LLC, please contact AWS Customer Service." }, { "Type": "LegalTerm", "Documents": [ { "Type": "CustomEula", "Url": "https://s3.amazonaws.com/EULA/custom-eula-1234.txt" } ] }, { "Type": "FreeTrialPricingTerm", "Duration": "P30D", "Grants": [ { "DimensionKey": "m3.xlarge", "MaxQuantity": 10 }, { "DimensionKey": "m4.xlarge", "MaxQuantity": 10 } ] }, { "Type": "ConfigurableUpfrontPricingTerm", "CurrencyCode": "USD", "RateCards": [ { "Selector": { "Type": "Duration", "Value": "P365D" }, "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": "FixedUpfrontPricingTerm", "CurrencyCode": "USD", "Price": "200.00", "Grants": [ { "DimensionKey": "Users", "MaxQuantity": 10 } ] }, { "Type": "RecurringPaymentTerm", "CurrencyCode": "USD", "BillingPeriod": "Monthly", "Price": "100.0" }, { "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" } ] }, { "Type": "ByolPricingTerm" }, { "Type": "RenewalTerm" }, { "Type": "NetPaymentTerm", "PaymentDuePeriod": "P30D" } ], "Rules": [ { "Type": "TargetingRule", "PositiveTargeting": { "CountryCodes": [ "US", "CA" ], "BuyerAccounts": [ "444455556666" ] }, "NegativeTargeting": { "CountryCodes": [ "XX" ] } }, { "Type": "AvailabilityRule", "AvailabilityEndDate": "2024-08-30T01:56:03.000Z" } ] } }
以下是您在DescribeEntity回應中看到的欄位的相關資訊。
-
EntityType (字串) – 實體的命名類型,即
Offer@1.0。 -
EntityIdentifier (字串) – 實體的識別符,格式為
EntityId@RevisionId。 -
EntityArn (字串) – 與此請求中參考之變更集的唯一識別符相關聯的 ARN。
-
LastModifiedDate (字串) – 實體的上次修改日期,採用 ISO 8601 格式 (例如:
2018-02-27T13:45:22Z)。 -
詳細資訊 (字串) – 此字串化 JSON 物件包含實體的下列詳細資訊:
-
ID (字串) – 中優惠實體的唯一識別符, AWS Marketplace 會在建立優惠期間產生。
-
狀態 (字串) – 優惠的狀態。
-
名稱 (字串) – 與優惠相關聯的名稱,可讓您和客戶更清楚閱讀。它也會顯示為協議資訊的一部分。
-
描述 (字串) – 描述是一種自由格式文字,僅供您使用,絕不會向買方公開。
-
PreExistingAgreement (字串) – 判斷此優惠是否為與現有客戶續約相同基礎產品的現有協議。現有協議可以在內部或外部 AWS Marketplace。 AWS 您可以稽核並確認您的優惠是否續約。如果 AWS 無法驗證您的優惠,則 AWS 可能會撤銷您客戶的優惠和權利。
-
AcquisitionChannel (字串) – 指出現有協議是在外部 AWS Marketplace 還是內部簽署 AWS Marketplace。可能的值:
External、AwsMarketplace。 -
PricingModel (字串) – 指出現有協議使用的定價模式。可能的值:
Contract、Usage、Byol、Free。
-
-
ProductId (字串) – 所提供產品的唯一識別符。
-
OfferSetId (字串) – 要與此優惠建立關聯之優惠集的唯一識別符。
-
術語 (結構陣列) – 術語清單。
-
規則 (結構陣列) – 規則清單。
-