AWS Marketplace API 參考已重組。如需支援的 API 操作的詳細資訊,請參閱 AWS Marketplace API 參考。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 AMI 型產品
您可以使用 AWS Marketplace Catalog API自動化使用 Amazon Machine Image (AMI) 型產品的任務。
如需使用目錄 API 建立 AMI 型產品的資訊,請參閱 建立產品。
下列主題說明如何使用目錄 API 對您的 AMI 型產品執行動作:
新增新版本
您可以使用目錄 API 將新版本新增至現有的 AMI 型產品AWS Marketplace。如需使用 將新 AMI 版本新增至產品的詳細資訊AWS Marketplace 管理入口網站,請參閱《 AWS Marketplace賣方指南》中的新增新版本。
當您建立包含將新 AMI 新增至 AWS Marketplace 的請求時,必須將 AMI 複製到 AWS Marketplace 系統中,然後掃描安全問題。您必須透過建立 AWS Identity and Access Management (IAM) 角色來授予 AMI 的 AWS Marketplace 存取權,該角色具有在您的 AMI 上執行動作的許可。如需所需許可的詳細資訊,請參閱 AWS Marketplace賣方指南中的授予 AWS Marktplace 存取您的 AMI。
若要新增版本,請使用 AMI 型產品的AddDeliveryOptions變更類型呼叫 StartChangeSet API 操作,如下列範例所示。若要在不實際建立新版本的情況下測試您的 API 呼叫,請將 Intent 參數設定為 VALIDATE。如需詳細資訊,請參閱意圖。
注意
對於 AMI 產品,版本由一或多個交付選項組成。相同版本中的所有交付選項都必須具有具有相同詳細資訊的相同AmiSource物件。建立版本時,必須將所有交付選項新增至版本。您無法將交付選項新增至現有版本。
請求語法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "AddDeliveryOptions", "Entity": { "Type": "AmiProduct@1.0", "Identifier": "prod-example12345" }, "DetailsDocument": { "Version": { "VersionTitle": "My new title", "ReleaseNotes": "My new Release notes" }, "DeliveryOptions": [ { "Details": { "AmiDeliveryOptionDetails": { "AmiSource": { "AmiId": "ami-1234567890abcdef", "AccessRoleArn": "arn:aws:iam::12345678901:role/AwsMarketplaceAmiIngestion", "UserName": "ec2-user", "OperatingSystemName": "AMAZONLINUX", "OperatingSystemVersion": "Amazon Linux 2 AMI 2.0.20210126.0 x86_64 HVM gp2", "AfiIds": ["afi-1234567890abcdefg", "afi-abcdefg1234567890"] //Optional (Required only for FPGA products) }, "UsageInstructions": "Easy to use AMI", "RecommendedInstanceType": "m4.xlarge", "SecurityGroups": [ { "IpProtocol": "tcp", "FromPort": 443, "ToPort": 443, "IpRanges": [ "0.0.0.0/0" ] } ] } } }, { "DeliveryOptionTitle": "My new AMI with CFTdelivery option", "Details": { "DeploymentTemplateDeliveryOptionDetails": { "ShortDescription": "My new short description", "LongDescription": "My new long description", "UsageInstructions": "My new usage instructions", "RecommendedInstanceType": "m4.xlarge", "ArchitectureDiagram": "https://my-bucket.s3.amazonaws.com/my-folder/diagram.png", "Template": "https://my-bucket.s3.amazonaws.com/my-folder/cft.template", "TemplateSources": [ { "ParameterName": "MyAmiParam", "AmiSource": { "AmiId": "ami-1234567890abcdef", "AccessRoleArn": "arn:aws:iam::12345678901:role/AwsMarketplaceAmiIngestion", "UserName": "ec2-user", "OperatingSystemName": "AMAZONLINUX", "OperatingSystemVersion": "Amazon Linux 2 AMI 2.0.20210126.0 x86_64 HVM gp2" } } ] } } } ] } } ], "Intent": "APPLY" }
下列清單提供與AddDeliveryOptions變更類型搭配使用的輸入欄位相關資訊。除非另有說明,否則所有欄位都是必要欄位。如需這些欄位的詳細資訊,請參閱《 AWS Marketplace賣方指南》中的新增版本。
-
DeliveryOptions (物件陣列) – 交付選項物件的清單,包括每個物件的詳細資訊。您必須包含至少一個。
-
針對 AMI (獨立) 交付選項,指定具有下列詳細資訊的物件。您只能有一個使用此類型的交付選項。
-
詳細資訊 (物件) – 保留此交付選項的詳細資訊。請注意,此巢狀詳細資訊物件不需要重複逸出。
-
AmiDeliveryOptionDetails (物件) – 用來提供每個 AMI 交付選項的詳細資訊。
-
AmiSource (物件) – 要用於新增版本之 AMI 的詳細資訊。
-
AmiId (字串) – 來源 AMI 的 ID,位於呼叫 API AWS 區域的 中。這一律必須是美國東部 (維吉尼亞北部),因為這是提供目錄 API 的唯一區域。必須屬於發起人帳戶。
-
AccessRoleArn (字串) – 用於AWS Marketplace存取所提供 AMI 的 IAM 角色 Amazon Resource Name (ARN)。如需建立和使用此 ARN 的詳細資訊,請參閱 AWS Marketplace賣方指南中的授予 AWS Marketplace 存取您的 AMI。
-
UserName (字串) – 登入使用者名稱以存取 AMI 中的作業系統 (OS)。通常適用於 Linux AMIs Administrator。
-
ScanningPort (整數) – 用來存取作業系統的 SSH 或 RDP 連接埠。用於掃描提供的 AMI 是否有安全漏洞。預設為 22。
-
OperatingSystemName (字串) – 向買方顯示的作業系統名稱。
-
OperatingSystemVersion (字串) – 向買方顯示的作業系統版本字串。
-
AfiIds (字串陣列) (選用) – Amazon FPGA Image (AFI) IDs以啟用此版本的 FPGA 支援。提供時,這可讓您的產品在啟用 FPGA 的 F2 執行個體類型上執行。每個版本最多可提供 15 個 AFI IDs。您提供的所有 AFI ID 都必須來自美國東部 (維吉尼亞北部) 區域,位於您的 AWS Marketplace 賣方帳戶內,且提供的 IAM 存取角色應具有在 AWS Marketplace 提供此 AFI 的許可。如需所需許可的詳細資訊,請參閱 AWS Marketplace賣方指南中的授予 AWS Marketplace 存取 FPGA 映像的權限。
-
-
UsageInstructions (字串) – 使用 AMI 的說明,或 AMI 詳細資訊的連結。
-
AccessEndpointUrl (物件) (選用) – 用來建立使用 AMI 後存取 AMI 的路徑。
-
連接埠 (字串) – 用來存取在 AMI 上執行之服務的連接埠號碼。
-
通訊協定 (字串) – 用來存取在 AMI 上執行之服務的通訊協定 (http 或 https)。
-
RelativePath (字串) – 從 Web 根目錄存取在 AMI 上執行之服務的路徑 (例如 /index.html)。
-
-
RecommendedInstanceType (字串) – 建議使用 AMI 執行服務的執行個體類型,是 服務一鍵式安裝的預設值。如需執行個體類型的清單,請參閱《Amazon Elastic Compute Cloud Linux 執行個體使用者指南》中的執行個體類型。
-
SecurityGroups (物件陣列) – 物件清單,代表版本自動建立之群組的輸入規則。
-
IpProtocol (字串) – 要使用的通訊協定 (tcp 或 udp)。
-
FromPort (整數) – 來源連接埠。
-
ToPort (整數) – 目的地連接埠。
-
IpRanges (字串陣列) – 允許的 IP 範圍,採用 CIDR 格式 (格式為 xxx.xxx.xxx.xxx/nn,例如
192.0.2.0/24)。
-
-
-
-
-
對於具有 CloudFormation 交付選項的 AMI,請指定具有下列詳細資訊的物件。您最多可以有三種此類型的交付選項。
-
DeliveryOptionTitle (字串) – 交付選項的標題。
-
詳細資訊 (物件) – 保留 AMI 交付選項的詳細資訊。請注意,此巢狀詳細資訊物件不需要重複逸出。
-
DeploymentTemplateDeliveryOptionDetails (物件) – 用來提供每個 CFT 交付選項的詳細資訊。
-
ShortDescription (字串) – CloudFormation 範本交付選項的簡短描述。
-
LongDescription (字串) – CloudFormation 範本交付選項的詳細描述。
-
UsageInstructions (字串) – 使用 AMI 的說明,或 AMI 詳細資訊的連結。
-
RecommendedInstanceType (字串) – 建議使用 AMI 執行服務的執行個體類型,是 服務一鍵式安裝的預設值。如需執行個體類型的清單,請參閱《Amazon Elastic Compute Cloud Linux 執行個體使用者指南》中的執行個體類型。
-
ArchitectureDiagram (字串) – Amazon S3 中架構圖位置的 URL。
-
範本 (字串) – Amazon S3 中 CloudFormation 範本位置的 URL。
-
TemplateSources (物件陣列)
-
ParameterName (string) – CloudFormation 範本中參數的名稱,此版本中的 AMI 應傳入其中。如需詳細資訊,請參閱 AMI 詳細資訊的要求。
-
AmiSource (物件)
-
AmiId (字串) – 來源 AMI 的 ID,位於呼叫 API AWS 區域的 中 (目前一律必須為美國東部 (維吉尼亞北部),因為這是提供目錄 API 的唯一區域)。必須屬於發起人帳戶。
-
AccessRoleArn (字串) – 用於AWS 區域存取所提供 AMI 的 IAM 角色 Amazon Resource Name (ARN)。如需建立和使用此 ARN 的詳細資訊,請參閱 AWS Marketplace賣方指南中的授予 AWS Marketplace 存取您的 AMI。
-
UserName (字串) – 登入使用者名稱以存取 AMI 中的作業系統 (OS)。通常
ec2-user適用於 Linux AMIs或AdministratorWindows。 -
OperatingSystemName (字串) – 向買方顯示的作業系統名稱。
-
OperatingSystemVersion (字串) – 向買方顯示的作業系統版本字串。
-
-
-
-
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合AWS Marketplace準則。驗證程序可能需要幾分鐘到幾個小時。
您可以透過 檢查請求的狀態AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
如需賣方產品變更集中錯誤的詳細資訊,請參閱 變更集狀態和錯誤。
請求完成時,會新增版本,而且任何現有的訂閱者都會收到電子郵件訊息,告知他們新版本的相關資訊。如需新增新版本程序的詳細資訊,請參閱《 AWS Marketplace賣方指南》中的新增新版本。
非同步錯誤
下列錯誤專屬於 中的AddDeliveryOptions動作AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet 取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INVALID_AMI_NAME | AMI 名稱中的字首 (x) 無效。使用貴公司或品牌名稱做為字首提供新名稱。 |
|
INVALID_PRODUCT |
使用現有的有限或公開產品。 |
|
DUPLICATE_VERSION_TITLE |
版本標題必須與此產品的任何其他版本標題不同。 |
|
INVALID_VERSION_TITLE |
在商標符號之前移除空格。 |
|
INVALID_VERSION_TITLE |
移除不支援的字元:【x、y、z】 |
|
INVALID_VERSION_TITLE |
從版本標題開頭移除空格。 |
|
INVALID_VERSION_TITLE |
提供少於 【x】 個字元的版本標題。 |
|
INVALID_RELEASE_NOTES |
在商標符號之前移除空格。 |
|
INVALID_RELEASE_NOTES |
移除不支援的字元:【x、y、z】 |
|
INVALID_RELEASE_NOTES |
從版本備註開頭移除空格。 |
|
INVALID_RELEASE_NOTES |
提供少於 (x) 個字元的版本備註。 |
|
INVALID_USAGE_INSTRUCTIONS |
在商標符號之前移除空格。 |
|
INVALID_USAGE_INSTRUCTIONS |
移除不支援的字元:【x、y、z】 |
|
INVALID_USAGE_INSTRUCTIONS |
從版本備註開頭移除空格。 |
|
INVALID_USAGE_INSTRUCTIONS |
提供少於 (x) 個字元的使用說明。 |
|
RECOMMENDED_INSTANCE_TYPE_NOT_AVAILABLE |
提供現有的可用執行個體類型。 |
|
INVALID_RECOMMENDED_INSTANCE_TYPE |
提供有效的執行個體類型。 |
|
INVALID_SECURITY_GROUP |
安全群組連接埠必須介於 1 和 【最大】 之間。 |
|
INVALID_SECURITY_GROUP |
提供 CIDR IP 範圍的值。 |
|
INVALID_SECURITY_GROUP |
提供不大於結束連接埠的安全群組啟動連接埠。 |
|
INVALID_SECURITY_GROUP_PROTOCOL |
安全群組通訊協定必須是 'tcp' 或 'udp'。 |
|
INVALID_CIDR_IP |
提供格式為 '0.0.0.0/0' 的標準 CIDR IP 範圍。 |
|
INVALID_ACCESS_ENDPOINT_PORT |
提供小於 【x】 的端點連接埠。 |
|
INVALID_ACCESS_ENDPOINT_PORT |
提供介於 1 和 【最大】 之間的端點連接埠。 |
|
INVALID_ACCESS_ENDPOINT_PORT |
提供端點連接埠。 |
|
INVALID_ACCESS_ENDPOINT_RELATIVE_PATH |
移除相對路徑中的空格。 |
|
INVALID_ACCESS_ENDPOINT_RELATIVE_PATH |
從相對路徑移除前面的「/」。 |
|
INCOMPATIBLE_OPERATING_SYSTEM |
提供與執行個體類型相容的作業系統名稱和版本:【x】 |
|
INCOMPATIBLE_OPERATING_SYSTEM_NAME |
提供少於 (x) 個字元的名稱。 |
|
INCOMPATIBLE_OPERATING_SYSTEM_NAME |
提供支援的作業系統名稱。 |
|
INCOMPATIBLE_OPERATING_SYSTEM_VERSION |
提供少於 (x) 個字元的版本。 |
|
INVALID_SCANNING_PORT |
提供介於 1 和 【最大】 之間的掃描連接埠。 |
|
INVALID_AMI_ID |
提供有效的 AMI ID。 |
|
EXISTING_AMI_PRODUCT_CODE |
移除連接到映像 X 的產品程式碼。 |
|
INVALID_AMI_ARCHITECTURE |
為新的 AMI 提供架構 【x】。 |
|
INVALID_AMI_VIRTUALIZATION_TYPE |
為新的 AMI 提供虛擬化類型 【x】。 |
|
INVALID_AMI_VIRTUALIZATION_TYPE |
在影像 【x】 上提供預期的 【z】 磁碟區。 |
|
INCOMPATIBLE_AMI |
提供新的 AMI,因為下列執行個體類型不支援 【y】 上的架構 【x】:【z】 |
|
INCOMPATIBLE_AMI |
提供新的 AMI,因為下列執行個體類型不支援 【y】 上的虛擬化類型 【x】:【z】 |
|
INCOMPATIBLE_AMI |
啟用映像 x 的 ENA 支援,因為下列執行個體類型需要 ENA 支援:【y】 |
|
ASSET_NOT_FOUND |
檢查 【ami-id】 是否存在於 【account-id】 的 us-east-1 區域中,AWS 帳戶且 |
|
ASSET_ACCESS_EXCEPTION |
無法將 AMI 【x】AWS Marketplace 複製到帳戶中。 |
|
SCAN_ERROR |
修正映像 【x】 上的安全漏洞 【y】。 |
|
ASSET_NOT_FOUND |
檢查 【account-id】 的 us-east-1 區域中是否存在 【afi-id】,AWS 帳戶且 |
|
ASSET_ACCESS_EXCEPTION |
無法存取 AFI。檢查 AccessARN 提供的 【ARN】 是否具有與 共用此 AFI 的許可,AWS Marketplace且存取角色 帳戶是 AFI 擁有者。 |
|
MISSING_FPGA_INSTANCE_TYPE |
找不到以 FPGA 為基礎的執行個體類型。使用 AddInstanceTypes 變更類型來新增 FPGA 型執行個體類型。 |
您也可以使用 建立 AMI 型產品AWS Marketplace 管理入口網站。如需詳細資訊,請參閱《 AWS Marketplace賣方指南》中的 AMI 產品。
如需示範如何自動更新 AMI 型產品的逐步解說,您也可以參閱影片,AWS Marketplace使用目錄 API (5:08) 自動更新 中的產品清單
更新版本資訊
您可以使用目錄 API 來更新 中現有版本 AMI 產品的詳細資訊AWS Marketplace。
注意
如需使用 更新版本資訊的詳細資訊AWS Marketplace 管理入口網站,請參閱 AWS Marketplace賣方指南中的更新版本資訊。
您無法更新 版本的 AMI。如果您需要更新 AMI,請改為建立新的版本。
若要新增新版本,請使用UpdateDeliveryOptions變更類型呼叫 StartChangeSet API 操作,如下列範例所示。
請求語法
POST /StartChangeSet HTTP/1.1
Content-type: application/json
{
"Catalog": "AWSMarketplace",
"ChangeSet":
[
{
"ChangeType": "UpdateDeliveryOptions",
"Entity":
{
"Identifier": "example1-abcd-1234-5ef6-7890abcdef12@1",
"Type": "AmiProduct@1.0"
},
"DetailsDocument":
{
"Version":
{
"ReleaseNotes": "*My new Release notes*"
},
"DeliveryOptions":
[
{
"Id": "example1-2222-cccc-2222-cccccccccccc",
"Details":
{
"AmiDeliveryOptionDetails":
{
"UsageInstructions": "Easy to use AMI"
}
}
},
{
"Id": "example1-2222-dddd-2222-dddddddddddd",
"Details":
{
"DeploymentTemplateDeliveryOptionDetails":
{work with ami
"DeliveryOptionTitle": "My updated delivery option title",
"UsageInstructions": "Updated usage instructions here."
}
}
}
]
}
}
]
}
以下是您為新增UpdateDeliveryOptions變更類型而提供的輸入欄位的相關資訊。如需這些欄位的詳細資訊,請參閱 AWS Marketplace賣方指南中的更新版本資訊。
-
實體 (物件) (必要) – 以 AMI 為基礎的產品。
-
識別符 (字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符。
-
類型 (字串) (必要) –
Type是以您的產品將使用的交付方法 (產品類型) 為基礎:AmiProduct@1.0。
-
-
DetailsDocument (物件) (必要) – 請求的詳細資訊。它包含有關您要更新之 AMI 產品版本的任何資訊。包含的欄位皆為選用,但您必須至少包含一個要更新的欄位。
-
版本 (物件) – 有關軟體版本的詳細資訊。
-
ReleaseNotes (字串) – 供買方告知他們從一個版本到下一個版本的變更的注意事項。
-
-
DeliveryOptions (物件陣列) – 交付選項物件的清單。僅包含您要更新的交付選項。
-
針對 AMI (獨立) 交付選項,指定具有下列詳細資訊的物件。僅包含您要更新的欄位。除非另有說明,否則所有欄位皆為選用。
-
ID (字串) (必要) – 交付選項的唯一識別符 (您可以透過呼叫您要更新之產品的
DescribeEntity動作,取得交付選項的唯一識別符)。 -
詳細資訊 (物件) – 保留 AMI 交付選項的詳細資訊。請注意,此巢狀詳細資訊物件不需要重複逸出。
-
AmiDeliveryOptionDetails (物件) – 一個 AMI 交付選項的詳細資訊。
-
UsageInstructions (字串) – 使用 AMI 的說明,或 AMI 詳細資訊的連結。
-
AccessEndpointUrl (物件) – 用於建立使用 AMI 後存取 AMI 的路徑。
-
連接埠 (字串) – 用來存取在 AMI 上執行之服務的連接埠號碼。
-
通訊協定 (字串) – 用來存取在 AMI 上執行之服務的通訊協定 (
http或https)。 -
RelativePath (字串) – 從 Web 根存取在 AMI 上執行之服務的路徑 (例如
/index.html)。
-
-
RecommendedInstanceType (string) – 建議使用 AMI 執行服務的執行個體類型,是 服務一鍵式安裝的預設值。
-
SecurityGroups (物件陣列) – 物件清單,代表版本自動建立之群組的輸入規則:
-
FromPort (整數) – 來源連接埠。
-
IpProtocol (字串) – 要使用的通訊協定 (
tcp或idp)。 -
IpRanges (字串陣列) – 允許的 IP 範圍,採用 CIDR 格式 (格式為 xxx.xxx.xxx.xxx/nn,例如
192.0.2.0/24)。 -
ToPort (整數) – 目的地連接埠。
-
-
-
-
-
對於具有 CloudFormation 交付選項的 AMI,請指定具有下列詳細資訊的物件。僅包含您要更新的欄位。除非另有說明,否則所有欄位皆為選用。
-
ID (字串) (必要) – 交付選項的唯一識別符 (您可以透過呼叫您要更新之產品
DescribeEntity的動作,取得交付選項的唯一識別符)。 -
詳細資訊 (物件) – 保留 AMI 交付選項的詳細資訊。請注意,此巢狀詳細資訊物件不需要重複逸出。
-
DeploymentTemplateDeliveryOptionDetails (物件) – 用來提供每個 CFT 交付選項的詳細資訊。
-
DeliveryOptionTitle (字串) – 交付選項的標題。
-
ShortDescription (字串) – CloudFormation 範本交付選項的簡短描述。
-
LongDescription (字串) – CloudFormation 範本交付選項的詳細描述。
-
UsageInstructions (字串) – 使用 AMI 的說明,或 AMI 詳細資訊的連結。
-
RecommendedInstanceType (string) – 建議使用 AMI 執行服務的執行個體類型,是 服務一鍵式安裝的預設值。如需執行個體類型的清單,請參閱《Amazon Elastic Compute Cloud Linux 執行個體使用者指南》中的執行個體類型。
-
ArchitectureDiagram (字串) – Amazon S3 中架構圖位置的 URL。
-
範本 (字串) – Amazon S3 中 CloudFormation 範本位置的 URL。
-
TemplateSources (物件陣列)
-
ParameterName (字串) – CloudFormation 範本中參數的名稱,此版本中的 AMI 應傳入其中。如需詳細資訊,請參閱 AMI 詳細資訊的要求。
-
AmiSource (物件)
-
AmiId (字串) – 來源 AMI 的 ID,位於呼叫 API AWS 區域的 中 (目前一律必須為美國東部 (維吉尼亞北部),因為這是提供目錄 API 的唯一區域)。必須屬於發起人帳戶。
-
AccessRoleArn (字串) – 用於AWS 區域存取所提供 AMI 的 IAM 角色 Amazon Resource Name (ARN)。如需建立和使用此 ARN 的詳細資訊,請參閱 AWS Marketplace賣方指南中的授予 AWS Marketplace 存取您的 AMI。
-
UserName (字串) – 登入使用者名稱以存取 AMI 中的作業系統 (OS)。通常
ec2-user適用於 Linux AMIs或AdministratorWindows。 -
OperatingSystemName (字串) – 向買方顯示的作業系統名稱。
-
OperatingSystemVersion (字串) – 向買方顯示的作業系統版本字串。
-
-
-
-
-
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合AWS Marketplace準則。驗證程序可能需要幾分鐘到幾個小時。
您可以透過 檢查請求的狀態AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
如需變更集的詳細資訊,請參閱使用變更集。如需賣方產品變更集中錯誤的詳細資訊,請參閱 變更集狀態和錯誤。
非同步錯誤
下列錯誤專屬於 中的UpdateDeliveryOptions動作AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet 取得變更請求狀態的詳細資訊,請參閱 使用變更集。
您可以在變更集開始處理後,使用 DescribeChangeSet操作來擷取UpdatePricingTerms動作。如需錯誤詳細資訊和故障診斷的詳細資訊,請參閱本指南變更集狀態和錯誤稍早的 。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INVALID_PRODUCT | 使用現有的有限或公開產品。 |
| MISSING_DELIVERY_OPTION_IDS | 提供至少一個交付選項 ID。 |
| INVALID_DELIVERY_OPTION_IDS | 提供可在產品中找到的交付選項 IDs。找不到 IDs:【x】 |
| INVALID_DELIVERY_OPTIONS | 提供屬於相同版本的交付選項 IDs。 |
限制版本
您可以使用目錄 API 來限制 AMI 型產品的版本。這可防止新買方使用該版本,但讓現有買方能夠使用該版本。從版本限制所有交付選項會限制版本。限制一或多個,但並非全部的交付選項,只會限制該版本中的交付選項。您必須擁有至少一個無限制的產品版本,因此您無法限制產品的最後一個公開版本。
注意
如需AWS Marketplace透過 在 中限制 AMI 版本的詳細資訊AWS Marketplace 管理入口網站,請參閱《 AWS Marketplace賣方指南》中的限制版本。
若要限制版本,請使用RestrictDeliveryOptions變更類型呼叫 StartChangeSet API 操作,如下列範例所示。
注意
無論限制狀態為何,所有訂閱者都可以使用目前版本。 AWS Marketplace準則會要求您在限制版本後繼續為現有買方提供支援 90 天。您的 AMI 會在版本受到限制後標示為已棄用。如需詳細資訊,請參閱《Amazon Elastic Compute Cloud Windows 執行個體使用者指南》中的棄用 AMI。
請求語法
POST /StartChangeSet HTTP/1.1
Content-type: application/json
{
"Catalog": "AWSMarketplace",
"ChangeSet":
[
{
"ChangeType": "RestrictDeliveryOptions",
"Entity":
{
"Identifier": "example1-abcd-1234-5ef6-7890abcdef12@1",
"Type": "AmiProduct@1.0"
},
"DetailsDocument":
{
"DeliveryOptionIds":
[
"example1-2222-cccc-2222-cccccccccccc"
]
}
}
]
}
以下是您為新增RestrictDeliveryOptions變更類型而提供的輸入欄位的相關資訊:
-
實體 (物件) (必要) – 以 AMI 為基礎的產品。
-
識別符 (字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符。
-
類型 (字串) (必要) –
Type是以您的產品將使用的交付方法 (產品類型) 為基礎:AmiProduct@1.0。
-
-
DetailsDocument (物件) (必要) – 請求的詳細資訊。它包含您想要限制之 AMI 產品版本的 IDs。
-
DeliveryOptionIds (物件陣列) – 您要限制之版本的
DeliveryOptionIDs 清單。您可以DeliveryOption呼叫所限制版本的DescribeEntity動作,以取得 的唯一識別符。
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合AWS Marketplace準則。驗證程序可能需要幾分鐘到幾小時。
您可以透過 檢查請求的狀態AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
非同步錯誤
下列錯誤專屬於 中的RestrictDeliveryOptions動作AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
|
INVALID_PRODUCT |
使用現有的公有產品。 |
|
MISSING_DELIVERY_OPTION_IDS |
提供至少一個交付選項 ID。 |
|
INVALID_DELIVERY_OPTION_IDS |
提供可在產品中找到的交付選項 IDs。找不到 IDs:【x】 |
|
INVALID_DELIVERY_OPTION |
提供處於公有狀態的交付選項 IDs。IDs未處於公有狀態:【x】 |
|
ALL_DELIVERY_OPTIONS_RESTRICTED |
提供較少的交付選項來限制,因為至少一個選項必須保持公有狀態。 |
更新未來AWS 區域支援
您可以使用目錄 API 來變更 AMI 型產品的未來AWS 區域支援偏好設定AWS Marketplace。
注意
如需使用 變更未來區域支援的詳細資訊AWS Marketplace 管理入口網站,請參閱《 AWS Marketplace賣方指南》中的更新未來 AWS 區域的支援。
注意
UpdateFutureRegionSupport 變更類型僅適用於 AmiProduct@1.0。
若要變更未來的AWS 區域支援偏好設定,請使用UpdateFutureRegionSupport變更類型呼叫 StartChangeSet API 操作,如下列範例所示。
請求語法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateFutureRegionSupport", "Entity": { "Identifier": "prod-example12345", "Type": "AmiProduct@1.0" }, "DetailsDocument": { "FutureRegionSupport": { "SupportedRegions": [ "All" ] } } } ] }
提供要新增UpdateFutureRegionSupport變更類型的欄位資訊:
-
Entity(物件) (必要) – 以 AMI 為基礎的產品。-
Identifier(字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符。 -
Type(字串) (必要) –Type是以您的產品將使用的交付方法 (產品類型) 為基礎:AmiProduct@1.0。
-
-
DetailsDocument(物件) (必要) – 執行 ChangeSet 所需的詳細資訊。-
FutureRegionSupport– 物件-
SupportedRegions– 字串的單一元素陣列元素支援的值: 【
"All"、"US"、"None"】 之一
-
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合AWS Marketplace準則。驗證程序可能需要幾分鐘到幾小時。
您可以透過 檢查請求的狀態AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
非同步錯誤
下列錯誤專屬於 中的UpdateFutureRegionSupport動作AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| TOO_MANY_REGIONS | FutureRegionSupport 目前僅支援 1 個值:全部、美國或無 |
| INVALID_REGIONS | 請求的區域 【a、b、c】 無效或無法使用。只有支援的值是 【x、y、z】。 |
| INVALID_INPUT | SupportedRegions 不能為空。 |
新增支援的AWS 區域
您可以使用目錄 API 在 中新增 AMI AWS 區域型產品支援的新 AWS Marketplace。
注意
如需使用 新增支援區域的詳細資訊AWS Marketplace 管理入口網站,請參閱《 AWS Marketplace賣方指南》中的新增 AWS 區域。
注意
AddRegions 變更類型僅適用於 AmiProduct@1.0。
若要新增支援的區域,請使用AddRegions變更類型呼叫 StartChangeSet API 操作,如下列範例所示。
請求語法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "AddRegions", "DetailsDocument": { "Regions": [ "us-east-1", "ap-northeast-2" ] }, "Entity": { "Identifier": "prod-123456@1", "Type": "AmiProduct@1.0" } } ] }
提供要新增AddRegions變更類型的欄位資訊。
-
Entity(物件) (必要) – 以 AMI 為基礎的產品。-
Identifier(字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符。 -
Type(字串) (必要) –Type是以您的產品將使用的交付方法 (產品類型) 為基礎:AmiProduct@1.0。
-
-
範例
DetailsDocument(object) (required) – The details required to execute the ChangeSet.-
Regions: 字串陣列元素支援的值:有效的AWS 區域程式碼字串。
例如,【
"us-east- 1"】。
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合AWS Marketplace準則。驗證程序可能需要幾分鐘到幾小時。
您可以透過 檢查請求的狀態AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
-
如果變更集執行狀態為
SUCCEEDED:會產生新的實體Identifier(或EntityId)。您可以在產品實體上使用DescribeEntityAPI 操作來檢查結果。 -
如果變更集執行狀態為
CLIENT_ERROR:DescribeChangeSet回應會提供錯誤的詳細資訊,以及修正錯誤所要採取的對應動作。
非同步錯誤
下列錯誤專屬於 中的AddRegions動作AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INVALID_REGIONS | 請求的區域 【a、b、c】 無效或無法使用。只有支援的值是 【x、y、z】。 |
| INVALID_INPUT | 區域不能為空。 |
限制AWS 區域
您可以使用目錄 API 來限制先前AWS 區域支援的 AMI 型產品AWS Marketplace。
注意
如需使用 限制先前支援區域的詳細資訊AWS Marketplace 管理入口網站,請參閱《 AWS Marketplace賣方指南》中的限制 AWS 區域。
注意
RestrictRegions 變更類型僅適用於 AmiProduct@1.0。
若要限制先前支援的 區域,請使用 RestrictRegions 變更類型呼叫 StartChangeSet API 操作,如下列範例所示。
請求語法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "RestrictRegions", "DetailsDocument": { "Regions": [ "us-east-1", "ap-northeast-2" ] }, "Entity": { "Identifier": "prod-123456@1", "Type": "AmiProduct@1.0" } } ] }
提供要新增AddRegions變更類型的欄位資訊。
-
Entity(物件) (必要) – 以 AMI 為基礎的產品。-
Identifier(字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符。 -
Type(字串) (必要) –Type是以您的產品將使用的交付方法 (產品類型) 為基礎:AmiProduct@1.0。
-
-
DetailsDocument (物件) (必要) – 執行 ChangeSet 所需的詳細資訊。
-
Regions– 字串陣列元素支援的值:有效的AWS 區域程式碼字串,例如
"us-east-1"。
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合AWS Marketplace準則。驗證程序可能需要幾分鐘到幾個小時。
您可以透過 檢查請求的狀態AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
-
如果變更集執行狀態為
SUCCEEDED– 會產生新的實體Identifier(或EntityId)。您可以在產品實體DescribeEntity上使用 來檢查結果。如需詳細資訊,請參閱DescribeEntity。 -
如果變更集執行狀態為
CLIENT_ERROR:DescribeChangeSet回應會提供錯誤的詳細資訊,以及修正錯誤所要採取的對應動作。
非同步錯誤
下列錯誤專屬於 中的AddRegions動作AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet 取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INVALID_REGIONS | 請求的區域 【a、b、c】 無效或無法使用。只有支援的值是 【x、y、z】。 |
| INVALID_INPUT | 區域不能為空。 |
新增執行個體類型
您可以使用 Catalog API 為您的 AMI 型產品新增新的執行個體類型AWS Marketplace。
注意
如需使用 新增執行個體類型的詳細資訊AWS Marketplace 管理入口網站,請參閱《 AWS Marketplace賣方指南》中的新增執行個體。
AddInstanceTypes 在建立產品時, 會將新的執行個體類型新增至現有產品和新建立的產品。變更類型會使用新的執行個體類型更新產品文件中的所有版本。
注意
AddInstanceTypes 變更類型僅適用於 AmiProduct@1.0。
新增限制執行個體類型時,可以從限制清單中移除執行個體類型,並新增至可用的執行個體類型清單。這可讓賣方有更多控制權來變更其產品限制。執行個體類型清單是可互換的,並非產品的永久限制狀態。
對於內部計量產品,賣方需要呼叫個別的變更類型UpdatePricingTerms,AddDimensions並更新執行個體類型的定價。
若要新增執行個體類型,請使用RestrictRegions變更類型呼叫 StartChangeSet API 操作,如下列範例所示。
請求語法
只有AddInstanceTypes變更類型如下所示。雖然內部計量的 AMI 賣方需要為其 AMI 呼叫AddInstanceTypes和UpdatePricingTerms變更類型。
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "AddInstanceTypes", "Entity": { "Identifier": "prod-example12345", "Type": "AmiProduct@1.0" }, "DetailsDocument": { "InstanceTypes": [ "m1.medium" ] } } ] }
提供要新增AddInstanceTypes變更類型的欄位資訊:
-
Entity(物件) (必要) – 以 AMI 為基礎的產品。-
Identifier(字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符。 -
Type(字串) (必要) –Type是以您的產品將使用的交付方法 (產品類型) 為基礎:AmiProduct@1.0。
-
-
DetailsDocument (物件) (必要) – 執行 所需的詳細資訊
ChangeSet,在此情況下為InstanceTypes。-
InstanceTypes(字串陣列) (必要) –InstanceTypes要新增至產品的 清單。這些執行個體會新增至現有的InstanceTypes。
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合AWS Marketplace準則。驗證程序可能需要幾分鐘到幾個小時。
您可以透過 檢查請求的狀態AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的AddInstanceTypes動作AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會失敗並顯示 HTTP 回應。
| 輸入欄位 | 驗證規則 | HTTP |
|---|---|---|
| InstanceTypes | 必要 | 422 |
| InstanceTypes | 不得為空白 | 422 |
| InstanceTypes | 項目長度必須介於 1 到 24 個字元之間。必須符合 ^【A-Za-z0-9_.-】+$ | 422 |
| InstanceTypes | 項目必須是唯一的 | 422 |
| InstanceTypes | 不能超過 1500 個項目 | 422 |
| 未知屬性 | 不允許其他屬性 | 422 |
非同步錯誤
下列錯誤專屬於 中的AddInstanceTypes動作AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet 取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INVALID_INSTANCE_TYPES | 下列執行個體類型無效:【x】 |
| INVALID_INSTANCE_VIRTUALIZATION | 產品的虛擬化為 【x】。下列執行個體類型不支援:【x】 |
| INVALID_AMI_ARCHITECTURE | 產品的 CPU 架構為「%s」。+「下列執行個體類型不支援:【x】 |
| INCOMPATIBLE_OPERATING_SYSTEM | 執行個體類型與 產品中定義的作業系統不相容。提供與 產品中定義的作業系統相容的執行個體類型。 |
| INVALID_PRODUCT_TYPE | 使用現有的單一 AMI 產品。 |
| INVALID_ENA_SETTING | 產品不支援 ENA。下列執行個體類型需要 ENA 支援:【x】 |
| INVALID_DIMENSIONS | 找不到執行個體類型的內部計量維度:【x】 |
| MISSING_DIMENSIONS | 找不到產品的維度。AddInstanceTypes 之前需要 AddDimensions AddInstanceTypes 。 |
| UPDATE_PRICING_REQUIRED | UpdatePricingTerms 變更類型為必要項目。 |
限制執行個體類型
您可以使用目錄 API 來限制或限制 AMI 型產品的可用執行個體類型AWS Marketplace。
注意
如需限制或限制使用 可用執行個體類型的詳細資訊AWS Marketplace 管理入口網站,請參閱《 AWS Marketplace賣方指南》中的限制執行個體。
現有的訂閱者不會受到此變更的影響,而且他們能夠使用受限制的執行個體類型。不過,任何新買方都無法使用受限制的執行個體類型。若要停止目前的執行個體類型訂閱 (執行個體類型受到限制後),您必須聯絡AWS Marketplace賣方營運團隊。
RestrictInstanctTypes 會將執行個體類型限制為產品文件中的所有版本。在AddInstanceTypes變更類型中,您要更新產品的所有版本。您將無法限制建議的執行個體類型。建議的執行個體類型位於版本層級,因此賣方可能無法限制多個執行個體類型。
對於內部計量產品,您需要在呼叫 時呼叫個別的變更類型RestrictDimensions。這可防止針對受限執行個體類型建立新的優惠。
注意
RestrictInstanceTypes 變更類型僅適用於 AmiProduct@1.0。
若要限制或以 AMI 為基礎的產品可用的執行個體類型,請使用RestrictInstanceTypes變更類型呼叫 StartChangeSet API 操作,如下列範例所示。
請求語法
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "RestrictInstanceTypes", "Entity": { "Identifier": "prod-example12345", "Type": "AmiProduct@1.0" }, "DetailsDocument": { "InstanceTypes": [ "m1.medium" ] } } ] }
提供要新增RestrictInstanceTypes變更類型的欄位資訊。
-
Entity(物件) (必要) – 以 AMI 為基礎的產品。-
Identifier(字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符。 -
Type(字串) (必要) –Type是以您的產品將使用的交付方法 (產品類型) 為基礎:AmiProduct@1.0。
-
-
DetailsDocument (物件) (必要) – 執行 所需的詳細資訊
ChangeSet,在此情況下為InstanceTypes。-
InstanceTypes(字串陣列) (必要) –InstanceTypes限制為產品的 清單。這些執行個體會新增至目前的 (如果沒有現有的執行個體類型,則會新增) 至受限制的InstanceTypes。
-
回應語法
為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
變更請求會新增至佇列並進行處理。這包括驗證資訊,以確保其符合AWS Marketplace準則。驗證程序可能需要幾分鐘到幾個小時。
您可以透過 檢查請求的狀態AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。
同步驗證
下列結構描述驗證專屬於 中的RestrictInstanceTypes動作AWS Marketplace Catalog API。這些驗證會在您呼叫 時執行StartChangeSet。如果請求不符合下列要求,它會失敗並顯示 HTTP 回應。
| 輸入欄位 | 驗證規則 | HTTP |
|---|---|---|
| InstanceTypes | 必要 | 422 |
| InstanceTypes | 不得為空白 | 422 |
| InstanceTypes | 項目長度必須介於 1 到 24 個字元之間。必須符合 ^【A-Za-z0-9_.-】+$ | 422 |
| InstanceTypes | 項目必須是唯一的 | 422 |
| InstanceTypes | 不能超過 1500 個項目 | 422 |
| 未知屬性 | 不允許其他屬性 | 422 |
非同步錯誤
下列錯誤專屬於 中的RestrictInstanceTypes動作AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet 取得變更請求狀態的詳細資訊,請參閱 使用變更集。
| 錯誤碼 | 錯誤訊息 |
|---|---|
| INVALID_ INSTANCE_TYPES | 下列執行個體類型無效:【x】 |
| INVALID_ PRODUCT_TYPE | 使用現有的單一 AMI 產品。 |
| DUPLICATE_INSTANCE_TYPE | 提供沒有重複的執行個體類型。 |
| UNAVAILABLE_INSTANCE_TYPE | 提供可用的執行個體類型。 |
| RECOMMENDED_INSTANCE_TYPE_RESTRICTED | 下列執行個體類型無法受到限制。建議的執行個體類型必須變更為不同的執行個體類型,才能受到限制。交付選項 ID 【X】 執行個體類型【X】 |
| DIMENSIONS_NOT_RESTICTED | 在限制內部計量執行個體類型之前,請限制維度:【x】 |
| REGION_NO_INSTANCES | 您的受限執行個體類型會導致區域的產品啟動失敗:X。請考慮限制較少的執行個體。 |
| INCOMPATIBLE_RESTRICTION | 您的受限執行個體類型會導致產品沒有 AFIs的 FPGA 型執行個體類型。產品需要支援至少一個以 FPGA 為基礎的執行個體類型。 |