View a markdown version of this page

使用 AWS MarketplaceAPIs 使用容器型產品 - AWS Marketplace

AWS Marketplace API 參考已重組。如需支援的 API 操作的詳細資訊,請參閱 AWS Marketplace API 參考

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 AWS MarketplaceAPIs 使用容器型產品

您可以使用AWS Marketplace目錄 API 自動化使用容器型產品的任務。

如需使用目錄 API 建立容器型產品的資訊,請參閱 建立產品

下列主題說明如何使用目錄 API 對容器型產品執行動作:

新增新版本

如果您已在 中使用容器型產品AWS Marketplace,您可以使用 AWS Marketplace Catalog API來新增新版本。這需要您已AWS Marketplace為產品中的每個容器映像或成品在 中建立儲存庫,而且您可以從本機Docker和Helm檔案複製這些儲存庫。

注意

如需使用 建立容器型產品的詳細資訊AWS Marketplace 管理入口網站,請參閱《 AWS Marketplace賣方指南》中的容器產品入門

如需新增版本的詳細資訊,包括使用 建立儲存庫,以及將 Docker 和 Helm 檔案建置到這些儲存庫AWS Marketplace 管理入口網站,請參閱 AWS Marketplace賣方指南中的新增產品版本

如果您尚未建立新的儲存庫,您可以使用目錄 API 建立它們,請參閱 建立儲存庫和資源

若要新增新版本,請使用AddDeliveryOptions變更類型呼叫 StartChangeSet API 操作,如下列範例所示。

注意

容器型產品的版本是由一或多個交付選項組成。例如,您可能有兩個交付選項,一個用於 noSQL 資料庫,另一個用於 MySQL,以便您的使用者可以選擇他們想要如何使用您的產品。您可以使用 建立產品的版本,並在單一請求中新增多個交付選項AddDeliveryOptions

容器映像交付請求語法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "AddDeliveryOptions", "Entity": { "Identifier": "example1-abcd-1234-5ef6-7890abcdef12", "Type": "ContainerProduct@1.0" }, "DetailsDocument": { "Version": { "VersionTitle": "1.1", "ReleaseNotes": "Minor bug fix" }, "DeliveryOptions": [ { "DeliveryOptionTitle": "EKS Container image only delivery option", "Details": { "EcrDeliveryOptionDetails": { "ContainerImages": [ "111122223333.dkr.ecr.us-east-1.amazonaws.com/sellername/reponame1:1.1" ], "DeploymentResources": [ { "Name": "HelmDeploymentTemplate", "Url": "111122223333.dkr.ecr.us-east-1.amazonaws.com/sellername/reponame2:mychart1.1" } ], "CompatibleServices": [ "EKS" ], "Description": "Sample Description", "UsageInstructions": "helm pull 111122223333.dkr.ecr.us-east-1.amazonaws.com/sellername/reponame2:mychart1.1" } } } ] } } ] }

Amazon Bedrock AgentCore 執行期交付請求語法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "AddDeliveryOptions", "Entity": { "Identifier": "example1-abcd-1234-5ef6-7890abcdef12", "Type": "ContainerProduct@1.0" }, "DetailsDocument": { "Version": { "VersionTitle": "1.1", "ReleaseNotes": "Minor bug fix" }, "DeliveryOptions": [ { "DeliveryOptionTitle": "Amazon Bedrock AgentCore Runtime Delivery Option", "Details": { "EcrDeliveryOptionDetails": { "ContainerImages": [ "111122223333.dkr.ecr.us-east-1.amazonaws.com/sellername/reponame1:1.1" ], "CompatibleServices": [ "Bedrock-AgentCore" ], "AgenticType": [ "AGENT" ], "Description": "Sample Description", "UsageInstructions": "To launch and invoke this agent on Amazon Bedrock AgentCore Runtime", "EnvironmentVariables": [ { "Name": "HTTP_PORT", "Description": "Port of the server", "DefaultValue": "8080" }, { "Name": "API_KEY", "Description": "Provide your unique API key here." } ] } } } ] } } ] }

Helm 圖表交付請求語法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "AddDeliveryOptions", "Entity": { "Identifier": "example1-abcd-1234-5ef6-7890abcdef12", "Type": "ContainerProduct@1.0" }, "DetailsDocument": { "Version": { "VersionTitle": "1.1", "ReleaseNotes": "Minor bug fix" }, "DeliveryOptions": [ { "DeliveryOptionTitle": "HelmChartDeliveryOption", "Details": { "HelmDeliveryOptionDetails": { "CompatibleServices": [ "EKS", "EKS-Anywhere" ], "ContainerImages": [ "111122223333.dkr.ecr.us-east-1.amazonaws.com/sellername/reponame1:1.1" ], "HelmChartUri": "111122223333.dkr.ecr.us-east-1.amazonaws.com/sellername/reponame1:helmchart1.1", "Description": "Helm chart description", "UsageInstructions": "Usage instructions", "MarketplaceServiceAccountName": "Service account name", "ReleaseName": "Optional release name", "Namespace": "Optional Kubernetes namespace", "OverrideParameters": [ { "Key": "HelmKeyName1", "DefaultValue": "${AWSMP_LICENSE_SECRET}" }, { "Key": "HelmKeyName2", "DefaultValue": "${AWSMP_SERVICE_ACCOUNT}" } ] } } } ] } } ] }

Amazon EKS 附加元件交付請求語法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "AddDeliveryOptions", "Entity": { "Type": "ContainerProduct@1.0", "Identifier": "$CreateProductChange.Entity.Identifier" }, "DetailsDocument": { "Version": { "VersionTitle": "1.1", "ReleaseNotes": "New Add-on Release" }, "DeliveryOptions": [ { "DeliveryOptionTitle": "AWS Marketplace Test AddOn from CAPI 1", "Visibility": "Limited", "Details": { "EksAddOnDeliveryOptionDetails": { "ContainerImages": [ "111122223333.dkr.ecr.us-east-1.amazonaws.com/test-seller/canary-test-repo-product-6:mongo" ], "HelmChartUri": "111122223333.dkr.ecr.us-east-1.amazonaws.com/rocket/rocket-product-helm:1.0", "Description": "Description for delivery option provided by ISV", "UsageInstructions": "Usage instructions with launch instructions", "AddOnName": "aws-mp-test", "AddOnVersion": "1.2.1", "AddOnType": "networking", "CompatibleKubernetesVersions": [ "1.25", "1.26" ], "SupportedArchitectures": [ "amd64", "arm64" ], "Namespace": "my-test-namespace", "EnvironmentOverrideParameters": [ { "Key": "cluster-name", "Value": "${AWS_EKS_CLUSTER_NAME}" }, { "Key": "region-name", "Value": "${AWS_REGION}" } ] } } } ] }, "ChangeName": "PublishAddonNew" } ] }

提供要新增AddDeliveryOptions變更類型的欄位資訊:

  • Entity (物件) (必要) – 您的容器型產品。

    • Identifier (字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符

    • Type (字串) (必要) – Type是以您的產品將使用的交付方法 (產品類型) 為基礎:ContainerProduct@1.0

  • DetailsDocument (物件) (必要) – 請求的詳細資訊。它包含您正在新增之版本的所有資訊。此欄位是字串欄位。

    • Version (物件) – 有關您要新增至產品的版本的詳細資訊。

      • VersionTitle (字串) – 您正在建立之版本的標題。這通常是 版本的描述,例如 Version 1.1或只是 1.1。您的買方將能夠從版本標題清單中選擇要部署的版本。

      • ReleaseNotes (字串) – 此版本的詳細備註。必須少於 30,000 個字元。

    • DeliveryOptions (物件陣列) – 交付選項的陣列,其中每個選項都是您產品版本的交付方法。例如,如果您有一個用於 Amazon Elastic Container Service (Amazon ECS) 的交付選項,另一個用於 Amazon Elastic Kubernetes Service (Amazon EKS),則必須有兩個交付選項。

      • DeliveryOptionTitle (字串) – 簡短描述,可協助您的買方在交付選項之間進行選擇。

      • Details (物件) – 用於此交付選項的資源。這是詳細資訊欄位中的詳細資訊欄位。您不需要在此欄位中加倍逸出字元。

        • AddOnName – 買方會在 Amazon EKS 目錄中看到的唯一附加元件名稱。此名稱稍後會使用 新增字首SellerAlias。例如,其中 isv-alias_是 ISV 提供的附加元件名稱。

        • AddOnType – 從 Amazon EKS 支援的 值清單中選擇的附加元件類型:Gitops | 監控 | 記錄 | cert-management | 政策管理 | 成本管理 | autoscaling | storage | kubernetes-management | service-mesh | etcd-backup | ingress-service-type | load-balancer | local-registry| networking | Security | backup | 輸入控制器 | 可觀測性

        • AddOnVersion – 語意版本,讓買方可以選擇需要安裝或升級的特定 AddOn 版本。

        • CompatibleKubernetesVersions – 此軟體相容的 Amazon EKS Kubernetes 版本。

        • CompatibleServices (字串陣列) – 發行版本相容的服務陣列。有效選項:ECSEKSEKS-AnywhereECS-AnywhereBedrock-AgentCore

        • ContainerImages (字串陣列) – 此版本使用的容器映像 URLs陣列。路徑將是您上傳映像的儲存庫,其中包含此版本所用映像的標籤。該清單必須包含所有必要的影像,即使是未與先前版本變更的影像也一樣。如需使用目錄 API 建立儲存庫的相關資訊,請參閱下一節。

        • Description (字串) – 交付選項的較長描述,可向您的買方提供詳細資訊。您也可以包含連結到其他位置提供的更多指示。

        • EcrDeliveryOptionDetailsAgenticType – 執行時間代理程式的類型。有效選項:AGENTMCP_SERVERA2A_SERVER

        • EcrDeliveryOptionDetailsEnvironmentVariables 列出 AgentCore 執行期容器所需的環境變數,並在部署時預先填入給買方。對於每個變數,請為您的物件提供容器預期的名稱描述和選用的 defaultValue。對於唯一的變數,例如登入資料或 API 金鑰,請勿提供預設值。您可以使用描述來指定變數的詳細資訊以及可能的值。買方啟動您的產品時,所有提供的變數及其預設值都會預先填入。

        • EcrDeliveryOptionDetails – DeploymentResources (array of objects) – 版本所需的其他資源陣列,例如Helm圖表。每個資源都包含Name描述它的 ,以及URL指向資源的 。

        • EnvironmentOverrideParameters – 附加元件要使用的系統參數清單。有些 ISV 提供的 AddOn (HelmChart) 可能需要具有衍生自 Amazon EKS 執行環境狀態 (/系統資訊) 資訊的組態。例如,EksClusterRegionEKSClusterName和其他 。您可以在 Amazon EKS AddOn 啟動時動態取代這些值,以避免買方執行其他動作。Amazon EKS 系統已支援自動替換附加元件的系統參數。AWS MarketplaceISV 體驗可以擴展以收集需要替換的此參數。

          要取代的一般系統資訊可以透過提供與Helm取代類似的AWS Marketplace指定常數慣例來表示。支援的值為 ${AWS_REGION}${AWS_EKS_CLUSTER_NAME}

          "EnvironmentOverrideParameters" : [ { "Key" : "my-field.region" "Value" : "${AWS_REGION}" }, { "Key" : "my-second-field" "Value" : "${AWS_EKS_CLUSTER_NAME}" },
        • HelmDeliveryOptionDetails HelmChartUri (string) – 買方將安裝以啟動軟體的 Amazon ECR 中託管的Helm圖表 URL。

        • HelmDeliveryOptionDetails – MarketplaceServiceAccountName (string)選用 – Kubernetes 服務帳戶的名稱。服務帳戶將用於連線至 AWS Identity and Access Management(IAM),以取得呼叫 的許可AWS 服務。

        • HelmDeliveryOptionDetails – ReleaseName (string)選用 – 提供給買方用來啟動軟體之helm install命令的Helm發行版本名稱。如果未包含 , Helm會為您提供自動產生的版本名稱。

        • HelmDeliveryOptionDetails – Namespace (string)選用 – 要安裝Helm圖表的Kubernetes命名空間。

        • HelmDeliveryOptionDetails – OverrideParameters (array of objects) – 將用於啟動應用程式的Helm命令的參數。買方可以覆寫預設值。

          注意

          對於 Amazon EKS Anywhere 產品,請為授權秘密提供至少一個覆寫參數。提供 DefaultValue "${AWSMP_LICENSE_SECRET}"

          針對付費產品,請為服務帳戶組態提供至少 1 個覆寫參數。提供 DefaultValue "${AWSMP_SERVICE_ACCOUNT}"

          • Key (字串) – 以點表示法表示參數的索引鍵 (override.example.key)。

          • DefaultValue (字串) – 此覆寫參數的預設值。

        • Namespace – ISV 提供用於附加元件安裝的命名空間。

        • SupportedArchitectures – 支援的架構清單,例如 amd64 和 arm64。

        • UsageInstructions (字串) – 提供此交付選項使用方式的相關指示。最多可達 4,000 個字元。

回應語法

為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。

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

變更請求會新增至佇列並進行處理,包括掃描容器映像和其他資訊,以確保符合AWS Marketplace容器產品的準則。視容器的數量和大小而定,此程序可能需要幾分鐘到數小時的時間。

您可以透過 檢查請求的狀態AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。

如需變更集的詳細資訊,請參閱使用變更集。如需賣方產品變更集中錯誤的詳細資訊,請參閱 變更集狀態和錯誤

非同步錯誤

下列錯誤專屬於 中的AddDeliveryOptions動作AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet 取得變更請求狀態的詳細資訊,請參閱 使用變更集

錯誤碼 錯誤訊息

INCOMPATIBLE_PRODUCT_STATUS

使用現有的有限或公開產品。

INCOMPATIBLE_SERVICES

服務清單包含不相容的服務。【incompatible_services】 提供相容服務的有效清單。

NO_SERVICE_SPECIFIED

提供至少 1 個相容的服務。

DUPLICATE_COMPATIBLE_AWS_SERVICES

服務清單包含重複的項目。移除它們。每個項目必須是唯一的。

INVALID_VERSION_TITLE

移除商標符號前面的空格。

INVALID_VERSION_TITLE

移除下列不支援的字元:【x、y、z】

INVALID_VERSION_TITLE

從版本標題開頭移除空格。

INVALID_VERSION_TITLE

提供少於 【x】 個字元的版本標題。

DUPLICATE_VERSION_TITLE

版本標題 【duplicate_version_title】 重複。移除或變更標題。

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

提供少於 (x) 個字元的使用說明。

INVALID_USAGE_INSTRUCTIONS

提供使用說明。

MISSING_CONTAINER_IMAGES

提供至少 1 個容器映像。

NO_LICENSE_SECRET_KEYS

對於 Amazon EKS Anywhere 產品,請為授權秘密提供 1 個覆寫參數。的需求DefaultValue"${AWSMP_LICENSE_SECRET}",請參閱章節中的範例。

TOO_MANY_CONTAINER_IMAGES

提供少於 50 個容器映像。

DUPLICATE_CONTAINER_IMAGES

容器映像清單包含重複映像:【duplicate_images】。提供具有唯一映像的清單。

INVALID_CONTAINER_IMAGES

提供容器映像的有效 URI。

INVALID_CONTAINER_IMAGE_URI

映像 【invalid_image_uri】 無法存取此產品。將映像上傳至其對應的產品儲存庫。如需上傳的相關資訊,請參閱容器產品的入門

INVALID_CONTAINER_IMAGE_TAG

避免使用「最新」標籤。

DUPLICATE_DELIVERY_OPTION_TITLES

重複的交付選項標題:【duplicate_titles】。移除重複項目

INVALID_DELIVERY_OPTION_TITLES

交付選項標題 【existing_titles】 已存在。提供不同的標題。

INVALID_FULFILLMENT_OPTION_TITLE

提供少於 (x) 個字元的交付選項標題。

NO_SERVICE_ACCOUNT_CONFIGURATION

對於付費產品,請為服務帳戶組態提供 1 個覆寫參數。的需求DefaultValue"${AWSMP_SERVICE_ACCOUNT}",請參閱章節中的範例。

INVALID_DETAILS

提供的詳細資訊無效。

EMPTY_RESOURCE_NAME

提供資源名稱。

EMPTY_RESOURCE_URL

提供資源 URL。

INVALID_RESOURCE_NAME

提供少於 256 個字元的資源名稱。

INVALID_RESOURCE_URL

提供少於 256 個字元的資源 URL。

INVALID_SHORT_DESCRIPTION

提供少於 1,000 個字元的簡短描述。

INVALID_SHORT_DESCRIPTION

提供簡短描述。

SCAN_ERROR

修正映像 ""【x】"" 上的安全漏洞 ""【y】""。

IMAGE_NOT_FOUND

公有映像 URI 【invalid_image_uri】 無效。請提供有效的 URI。

INVALID_ARN

為映像存取提供有效的 ARN。

IMAGE_INACCESSIBLE

為映像存取提供有效的 ARN。

DUPLICATE_ADDON_NAME

您提供的 AddOn 名稱已由不同的產品使用。提供不同的名稱。

DUPLICATE_ADDON_VERSION

附加元件版本標題 【duplicate_version_title】 已在使用中。提供不同的標題。

INVALID_ADDON_TYPE

附加元件類型 【invalid_types】 無效。從支援的清單中提供類型:【eks_addon_do_supported_types】。

INVALID_KUBERNETES_VERSION

Kubernetes 版本 【invalid_versions】 無效。從支援的清單中提供版本:【eks_addon_do_supported_kubernetes_versions】。

DUPLICATE_KUBERNETES_VERSIONS

重複的 Kubernetes 版本:【duplicate_versions】。提供具有唯一版本的清單。

INVALID_ARCHITECTURE

架構 【invalid_architectures】 無效。從 Amazon EKS 支援的架構提供架構:【eks_addon_do_supported_architectures】。

DUPLICATE_SUPPORTED_ARCHITECTURES

重複的架構:【duplicate_architectures】。提供唯一、支援的架構清單。

INVALID_VISIBILITY_STATE

狀態 【invalid_states】 對於 {EKS_DO} 交付選項無效。從下列允許的值提供有效的可見性狀態:有限。

INVALID_ENVIRONMENT_OVERRIDE_PARAMETER_VALUE

覆寫參數值 【invalid_values】 無效。提供下列清單中的有效值:【eks_addon_do_environment_override_parameter_values】。

DUPLICATE_ENVIRONMENT_OVERRIDE_PARAMETER_KEY

環境覆寫參數包含重複的金鑰:【duplicate_keys】。移除它們。

TOO_MANY_EKS_ADDON_DELIVERY_OPTIONS

僅提供 版本的一個 Amazon EKS 附加元件交付選項。

INCOMPATIBLE_ADDON_NAME

附加元件名稱 【provided_name】 與現有名稱不相符。重複使用此附加元件公有版本或先前版本的現有名稱。每個產品只能使用一個附加元件名稱。

INCOMPATIBLE_ADDON_TYPE

附加元件類型 【provided_type】 與現有類型不相符。重複使用此附加元件公有版本或先前版本的現有類型。每個產品只能使用一種附加元件 類型。

INCOMPATIBLE_ADDON_NAMESPACE

附加元件命名空間 【provided_namespace】 不符合現有的命名空間 。重複使用此附加元件公有版本或先前版本的現有 命名空間。每個產品只能使用一個附加元件 命名空間。

INVALID_HELM_CHART_URI

Helm Chart URI 【invalid_uri】 無效。提供 SemVer 2 格式的 URI。

INCOMPATIBLE_HELM_OBJECTS(INVALID_HELM_OBJECTS)

提供Helm圖表而不使用以下不支援的Helm物件:<unsupported-objects>。

INVALID_DEPENDENT_HELM_CHARTS

提供 Helm Chart,其中包含直接在父圖表目錄中而非外部來源的下列相依圖表:<invalid-subcharts>。

INVALID_HELM_SENSITIVE_CONFIG

提供不含敏感資訊或秘密的進階組態結構描述。關鍵字:<sensitive-parameters-identified>

INVALID_HELM_UNDECLARED_IMAGES

在請求的交付選項中提供下列 Helm Chart 影像:<list-of-images>。

INVALID_HELM_CHART_IMAGES

提供 Helm Chart,其中包含透過 AddRepositories 變更類型建立之儲存庫內的映像。外部影像:<images-identified>。

INVALID_HELM_LINT

提供成功通過 Helm lint 的 Helm Chart。

INVALID_HELM_TEMPLATE

提供成功傳遞 Helm 範本的 Helm Chart。

INVALID_HELM_CHART

提供 Helm Chart,遵守 AWS Marketplace賣方指南Helm Charts 項目清單中識別AWS Marketplace的指引。

INVALID_ADDON_NAME

提供遵循下列規則運算式模式的 AddOn 名稱:xx

INVALID_ADDON_NAMESPACE

命名空間值 【invalid_namespaces】 無效。命名空間必須遵循 {EKS_ADD_ON_NAMESPACE_REGEX} 規則運算式。例如,命名空間、命名空間測試。

INVALID_ADDON_NAME_PATTERN

提供以字母或數字開頭的附加元件名稱,然後是字母、數字和連字號的組合。例如 test-addon、eksaddon

INVALID_ADDON_VERSION_PATTERN

使用以下模式提供附加元件版本:「<major>.<minor>.<patch>」(例如 1.2.3、0.1.2、0.1.1)

EMPTY_DELIVERY_OPTION_IDS

提供交付選項 IDs的清單。

INVALID_DELIVERY_OPTIONS_INPUT

清單包含一或多個無效的交付選項。提供有效的清單,並確保每個選項都有單一交付方法。

OVERRIDE_PARAMETER_KEYS_CONTAINS_SPECIAL_CHARS

覆寫參數索引鍵 【invalid_keys】 包含無效的字元。您的金鑰只能使用字母、數字、雙引號 (" ") 和加號 (+)。

INVALID_CONTAINER_IMAGE_REPOSITORY

儲存庫 【invalid_repositories】 無效。提供透過 AddRepositories 變更類型建立的儲存庫。

INVALID_CONTAINER_IMAGE_TAG_FORMAT

容器映像標籤 【invalid_image_tag】 無效。提供符合 {CONTAINER_IMAGE_TAG_REGEX} 規則表達式的標籤。

DUPLICATE_OVERRIDE_PARAMETER_KEYS

覆寫參數包含重複的金鑰 【duplicate_keys】。移除重複項目。

UNSUPPORTED_CONTAINER_IMAGE_URI

不支援容器映像 【unsupported_image】。提供遵循映像資訊清單 V 2 結構描述 1 的映像

DUPLICATE_REPOSITORY_NAMES

重複的儲存庫名稱:【duplicate_repo_names】。提供唯一的名稱。

INVALID_NAMESPACE

命名空間值 【invalid_namespaces】 無效。提供符合 {HELM_RELEASE_PARAM_REGEX} 規則表達式的值。

INVALID_RELEASE_NAME

releaseName 值 【invalid_release_names】 無效。提供符合 {HELM_RELEASE_PARAM_REGEX} 規則表達式的值。

OVERRIDE_PARAMETER_KEYS_CONTAINS_RESERVED_PARAMETER_KEYS

交付選項標題 【invalid_keys】 的覆寫參數金鑰已保留。預留金鑰:【reserved_param_keys】。提供不同的金鑰。

更新 Amazon EKS 附加元件的可見性

您可以使用目錄 API 來更新產品版本 Amazon EKS 附加元件交付選項的可見性AWS Marketplace。容器產品的容器和Helm交付選項會自動建立為「公開」可見狀態。

注意

只有來自所列版本的 Amazon EKS 附加元件交付選項才支援更新產品版本可見性的功能。如果您的產品尚未「公開」,請使用 提交發佈具有「公開」可見狀態之產品的請求AWS Marketplace 管理入口網站。

根據預設,當您使用 Amazon EKS 附加元件交付選項建立版本時,會以「有限」狀態發佈。「有限」狀態表示產品並未在所有區域中公開提供,可供您的買方在 Amazon EKS 叢集中使用和部署。您可以透過呼叫具有UpdateDeliveryOptionsVisibility變更類型的 StartChangeSet API 操作,將交付選項的可見性從 'Limited' 更新為 'Public'。DeliveryOptions Id 從對應至 Amazon EKS 附加元件交付選項的產品版本中指定 。

請求語法

{ "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateDeliveryOptionsVisibility", "Entity": { "Identifier": "prod-example12345", "Type": "ContainerProduct@1.0" }, "DetailsDocument": { "DeliveryOptions": [ { "Id": "do-1234567891234567891234", "TargetVisibility": "Public" } ] } } ] }

若要新增UpdateDeliveryOptionsVisibility變更類型,請提供下列欄位 的資訊:

  • Entity (物件) (必要) – 您的容器型產品。

    • Identifier (字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符

    • Type (字串) (必要) – Type是以您的產品使用的交付方法 (產品類型) 為基礎:ContainerProduct@1.0

  • DetailsDocument (物件) (必要) – 請求的詳細資訊,包括您要建立之儲存庫的相關資訊。下列欄位皆為必要欄位。

    • DeliveryOptions (物件清單) – DeliveryOption 物件清單,包括每個物件的詳細資訊:

      • Id (字串) – 的唯一識別符DeliveryOption。(若要取得 的唯一識別符DeliveryOption,請在您要更新的產品上呼叫 DescribeEntity動作。

      • TargetVisibility – 產品的預期新可見性。

回應語法

為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetArnChangeSetId和 。

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

變更請求會新增至佇列並進行處理,包括掃描容器映像和其他資訊,以確保符合AWS Marketplace容器產品的準則。視容器的數量和大小而定,此程序可能需要幾分鐘到數小時的時間。

您可以使用 DescribeChangeSet API 操作,透過 AWS Marketplace 管理入口網站或透過 AWS Marketplace Catalog API檢查請求的狀態。

如需變更集的詳細資訊,請參閱使用變更集。如需賣方產品變更集中錯誤的詳細資訊,請參閱 變更集狀態和錯誤

非同步錯誤

下表顯示 中AddDeliveryOptions動作特有的錯誤AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet 取得變更請求狀態的詳細資訊,請參閱 使用變更集

錯誤碼 錯誤訊息

EMPTY_DELIVERY_OPTION_IDS

提供交付選項 IDs的清單。

INVALID_VISIBILITY_STATE

不支援您提供的TargetVisibility選項。請使用允許的選項再試一次。允許的 (選項) 為: Public

INVALID_DELIVERY_OPTION_IDS

您提供了無效的交付選項詳細資訊。提供可在產品中找到的交付選項 IDs。找不到 IDs:【x】

DUPLICATE_DELIVERY_OPTION_IDS

重複的交付選項 IDs:【duplicate_ids】。提供唯一的交付選項 IDs。

AUDIT_ERROR

您尚未針對 Amazon EKS 附加元件版本 (Amazon EKS) 的所有相容 Amazon EKS 叢集版本完成獨立軟體廠商 (ISV) 測試。您必須先完成測試,才能釋出 (交付選項)。

INVALID_DELIVERY_OPTION_TYPE

您提供的交付選項類型無效。請確定您的交付選項為 類型:EksAddOn,然後再試一次。

INCOMPATIBLE_HELM_OBJECTS

提供沒有不支援Helm物件的Helm圖表:不支援的Helm物件如下:所有發行物件 (.Name 和 .Namespace 除外)、Helm勾點和查詢函數。

INCOMPATIBLE_ADDON_NAME

附加元件名稱 【provided_name】 與公有版本名稱不相符。在發佈之前更新公有名稱。

NCOMPATIBLE_ADDON_TYPE

附加元件類型不相符。重複使用此產品公有附加元件版本或先前附加元件版本的現有附加元件類型。每個產品僅支援一個附加元件。

INCOMPATIBLE_ADDON_NAMESPACE

提供的附加元件命名空間 【provided_namespace】 與公有版本命名空間不相符。在釋出之前更新附加元件命名空間。

建立儲存庫和資源

若要建立新的容器型產品版本,您必須擁有 AWS Marketplace儲存庫中可用版本的資源。您可以建立儲存庫,然後將 (和) 資源推送 Docker(上傳Helm) 至儲存庫。若要了解如何透過 建立儲存庫AWS Marketplace 管理入口網站,請參閱《 AWS Marketplace賣方指南》中的新增產品版本

若要建立新的儲存庫,StartChangeSet請使用AddRepositories變更類型呼叫 ,如下列範例所示。

請求語法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "AddRepositories", "Entity": { "Identifier": "example1-abcd-1234-5ef6-7890abcdef12", "Type": "ContainerProduct@1.0" }, "DetailsDocument": { "Repositories": [ { "RepositoryName": "new-repo-1", "RepositoryType": "ECR" }, { "RepositoryName": "new-repo-2", "RepositoryType": "ECR" } ] } } ] }

提供要新增AddRepositories變更類型的欄位資訊:

如需建立儲存庫的詳細資訊,請參閱《 AWS Marketplace賣方指南》中的新增版本

  • Entity (物件) (必要) – 您的容器型產品。

    • 識別符 (字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符

    • Type (字串) (必要) – Type是以您的產品將使用的交付方法 (產品類型) 為基礎:ContainerProduct@1.0

  • DetailsDocument (物件) (必要) – 請求的詳細資訊。它包含您要建立之儲存庫的相關資訊。包含的欄位都是必要欄位。

    • Repositories (結構陣列) – 儲存庫物件的清單。每個儲存庫物件都包含名稱和類型。

      • RepositoryName (字串) – 要建立的儲存庫名稱。

      • RepositoryType (字串) – 要建立的儲存庫類型。唯一允許的值為:ECR

注意

每個產品最多可以有 70 個儲存庫,但您可以在推送時提供不同的標籤,將多個資源和版本的資源新增至單一儲存庫。

建立一或多個儲存庫之後,您可以將資源新增至儲存庫。如需有關如何將資源推送至儲存庫的資訊,請參閱《Amazon Elastic Container Registry 使用者指南》中的推送映像。如需其中一個儲存庫所需的特定推送命令資訊,請參閱《 AWS Marketplace賣方指南》中的新增新版本

非同步錯誤

下列錯誤專屬於 中的AddRepositories動作AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet 取得變更請求狀態的詳細資訊,請參閱 使用變更集

錯誤碼 錯誤訊息

INVALID_ECR_REPOSITORY_NAME

以下列格式提供儲存庫名稱:'nginx-web-app'

DUPLICATE_ECR_REPOSITORY_NAME

儲存庫 【duplicate_repo_names】 已存在。選擇不同的名稱。

MISSING_REPOSITORY_INFORMATION

提供至少 1 個儲存庫名稱。

INVALID_ECR_REPOSITORY_NAME

已達到字元長度上限 256。字元長度計數包含賣方命名空間。

更新版本資訊

您可以使用目錄 API 來更新 中現有版本容器型產品的詳細資訊AWS Marketplace。

注意

當產品可公開取得時,您無法更新版本的版本標題、容器映像、交付選項標題或部署資源。如果您需要更新產品的這些層面,請改為建立新的版本。

若要更新容器型產品的現有版本,請使用UpdateDeliveryOptions變更類型呼叫 StartChangeSet API 操作,如下列範例所示。這會更新您指定的交付選項的詳細資訊,以及相關聯的版本。您必須包含至少一個交付選項。

容器映像交付請求語法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog":"AWSMarketplace", "ChangeSet":[ { "ChangeType":"UpdateDeliveryOptions", "Entity":{ "Identifier":"example1-abcd-1234-5ef6-7890abcdef12", "Type":"ContainerProduct@1.0" }, "DetailsDocument":{ "Version":{ "ReleaseNotes":"New release notes", "VersionTitle":"Version 1.2" }, "DeliveryOptions":[ { "Id":"example4-2222-cccc-2222-cccccccccccc", "Details":{ "EcrDeliveryOptionDetails":{ "DeliveryOptionTitle":"New Delivery Option Title", "Description":"New description", "UsageInstructions":"New usage instructions", "CompatibleServices":[ "EKS" ] } } } ] } } ] }

Helm 圖表交付請求語法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog":"AWSMarketplace", "ChangeSet":[ { "ChangeType":"UpdateDeliveryOptions", "Entity":{ "Identifier":"example1-abcd-1234-5ef6-7890abcdef12", "Type":"ContainerProduct@1.0" }, "DetailsDocument":{ "Version":{ "ReleaseNotes":"New release notes", "VersionTitle":"Version 1.2" }, "DeliveryOptions":[ { "Id":"example5-2222-cccc-2222-cccccccccccc", "Details":{ "HelmDeliveryOptionDetails":{ "DeliveryOptionTitle":"New Delivery Option Title", "ContainerImages":[ "111122223333.dkr.ecr.us-east-1.amazonaws.com/sellername/imagename:1.0" ], "HelmChartUri":"111122223333.dkr.ecr.us-east-1.amazonaws.com/sellername/helmname:1.0", "CompatibleServices":[ "EKS-Anywhere" ], "Description":"New description", "UsageInstructions":"New usage instructions", "MarketplaceServiceAccountName":"new-service-account-name", "ReleaseName":"new-release-name", "Namespace":"new-cluster-namespace", "OverrideParameters":[ { "Key":"new.parameter.key", "DefaultValue":"New parameter default value" } ] } } } ] } } ] }

Amazon EKS 附加元件交付請求語法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog":"AWSMarketplace", "ChangeSet":[ { "ChangeType":"UpdateDeliveryOptions", "Entity":{ "Identifier":"example1-abcd-1234-5ef6-7890abcdef12", "Type":"ContainerProduct@1.0" }, "DetailsDocument":{ "Version":{ "ReleaseNotes":"New release notes", "VersionTitle":"Version 1.2" }, "DeliveryOptions":[ { "Id":"example4-2222-cccc-2222-cccccccccccc", "Details":{ "EksAddOnDeliveryOptionDetails":{ "ContainerImages":[ "709825985650.dkr.ecr.us-east-1.amazonaws.com/test-seller/canary-test-repo-product-6:mongo" ], "Description":"Description for delivery option provided by ISV", "UsageInstructions":"Usage instructions with launch instructions", "HelmChartUri":"709825985650.dkr.ecr.us-east-1.amazonaws.com/rocket/rocket-product-helm:1.0", "AddOnName":"aws-mp-test", "AddOnVersion":"1.2.1", "AddOnType":"networking", "CompatibleKubernetesVersions":[ "1.19", "1.20" ], "SupportedArchitectures":[ "amd64", "arm64" ], "Namespace":"my-test-namespace", "EnvironmentOverrideParameters":[ { "Key":"my-field", "Value":"${AWS_EKS_CLUSTER_NAME}" } ] } } } ] } } ] }

提供要新增UpdateDeliveryOptions變更類型的欄位資訊:

如需這些欄位的詳細資訊,請參閱《 AWS Marketplace賣方指南》中的新增版本

  • Entity (物件) (必要) – 您的容器型產品。

    • Identifier (字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符

    • Type (字串) (必要) – Type是以您的產品將使用的交付方法 (產品類型) 為基礎:ContainerProduct@1.0

  • DetailsDocument (物件) (必要) – 請求的詳細資訊。它包含有關您要更新之容器型產品版本的任何資訊。包含的欄位皆為選用,但您必須至少包含一個要更新的欄位。

    • Version (物件) – 軟體版本的詳細資訊。

      • VersionTitle (字串) – 您正在建立之版本的標題。這通常是 版本的描述,例如 Version 1.1或 。 1.1您的買方將能夠從所有版本標題清單中選擇要部署的版本。

        如果產品已公開發佈,則無法更新此屬性。

      • ReleaseNotes (字串) – 供買方告知他們從一個版本到下一個版本的變更的注意事項。

    • DeliveryOptions (物件清單) – DeliveryOption 物件清單,包括每個物件的詳細資訊:

      • Id (字串) – 的唯一識別符 DeliveryOption(您可以透過呼叫您正在更新之產品的 DescribeEntity動作DeliveryOption,取得 的唯一識別符)。

      • Details (物件) – 保留交付選項的詳細資訊。請注意,此巢狀詳細資訊物件不需要重複逸出。

        • EcrDeliveryOptionDetails (物件) – 容器映像交付選項的詳細資訊。

          • DeliveryOptionTitle (字串) – 允許買方在交付選項之間進行選擇的簡短描述。

            如果產品已公開發佈,則無法更新此屬性。

          • ContainerImages (字串陣列) – 此版本使用的容器映像 URLs陣列。路徑將是您上傳映像的儲存庫,其中包含此版本所用映像的標籤。如果包含此欄位,則清單必須包含所有必要的影像,即使是未變更的影像也一樣。

            如果產品已公開發佈,則無法更新此屬性。

          • DeploymentResources (物件陣列) – 版本所需的其他部署資源陣列,例如Helm圖表或其他文件的連結。每個資源都包含一個名稱來描述它,以及指向資源的 URL。在 版本的啟動頁面上,這會顯示為連結清單。

            如果產品已公開發佈,則無法更新此屬性。

            • Name (字串) – 向買方顯示的超連結文字。

            • Url (字串) – 向買方顯示的超連結 URL。

          • CompatibleServices (字串陣列) – 發行版本相容的服務陣列。有效選項:ECSEKSEKS-AnywhereECS-AnywhereBedrock-AgentCore

          • AgenticType 執行時間代理程式的類型。有效選項:AGENTMCP_SERVERA2A_SERVER

          • Description (字串) – 交付選項的較長描述,可向您的買方提供詳細資訊。您也可以包含指向其他位置託管之更多指示的連結。

          • UsageInstructions (字串) – 提供如何部署和使用產品的指示。您也可以將連結新增至其他位置託管的使用說明。最多可達 4,000 個字元。

          • EnvironmentVariables – AgentCore 執行期容器所需的環境變數清單,以及將在部署時預先填入給買方的環境變數清單。對於每個變數,請為您的物件提供容器預期的名稱描述和選用的 defaultValue。對於唯一的變數,例如登入資料或 API 金鑰,請勿提供預設值。您可以使用描述來指定變數的詳細資訊以及可能的值。買方啟動您的產品時,所有提供的變數及其預設值都會預先填入。

      • Id (字串) – 的唯一識別符 DeliveryOption(您可以透過呼叫您正在更新之產品的 DescribeEntity動作DeliveryOption,取得 的唯一識別符)。

      • Details (物件) – 保留交付選項的詳細資訊。請注意,此巢狀詳細資訊物件不需要重複逸出。

        • HelmDeliveryOptionDetails (物件) – Helm圖表交付選項的詳細資訊。

          • DeliveryOptionTitle (字串) – 允許買方在交付選項之間進行選擇的簡短描述。

            如果產品已公開發佈,則無法更新此屬性。

          • ContainerImages (字串陣列) – 此版本使用的容器映像 URLs陣列。路徑將是您上傳映像的儲存庫,其中包含此版本所用映像的標籤。該清單必須包含所有必要的影像,即使是未與先前版本變更的影像也一樣。如需使用目錄 API 建立儲存庫的相關資訊,請參閱下一節。

          • HelmChartUri (字串) – 買方將安裝以啟動軟體的 Amazon ECR 中託管的Helm圖表 URL。

          • CompatibleServices (字串陣列) – 發行版本相容的服務陣列。有效選項為 ECSEKS

          • Description (字串) – 交付選項的較長描述,可向您的買方提供詳細資訊。您也可以包含連結到其他位置提供的更多指示。

          • UsageInstructions (字串) – 提供此交付選項使用方式的相關指示。最多可達 4,000 個字元。

          • MarketplaceServiceAccountName (字串) – Kubernetes服務帳戶的名稱。服務帳戶將用於連線至 ,AWS Identity and Access Management以取得呼叫AWS 服務的許可。

          • ReleaseName (字串) – 提供給買方用來啟動軟體之helm install命令的Helm發行版本名稱。

          • Namespace (字串) – 要安裝Helm圖表的Kubernetes命名空間。

          • OverrideParameters (物件陣列) – 將用於啟動應用程式的Helm命令的參數。買方可以覆寫預設值。

            • Key (字串) – 以點表示法表示參數的索引鍵 (override.example.key)。

            • DefaultValue (字串) – 此覆寫參數的預設值。

回應語法

為您的請求建立變更集。對此請求的回應為您提供變更集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 取得變更請求狀態的詳細資訊,請參閱 使用變更集

錯誤碼 錯誤訊息

INCOMPATIBLE_PRODUCT_STATUS

使用現有的有限或公開產品。

INCOMPATIBLE_SERVICES

服務清單包含不相容的服務。【incompatible_services】 提供相容服務的有效清單。

NO_SERVICE_SPECIFIED

提供至少 1 個相容的服務。

DUPLICATE_COMPATIBLE_AWS_SERVICES

服務清單包含重複的項目。移除它們。每個項目必須是唯一的。

INVALID_VERSION_TITLE

移除商標符號前面的空格。

INVALID_VERSION_TITLE

移除下列不支援的字元:【x、y、z】

INVALID_VERSION_TITLE

從版本標題開頭移除空格。

INVALID_VERSION_TITLE

提供少於 【x】 個字元的版本標題。

DUPLICATE_VERSION_TITLE

版本標題 【duplicate_version_title】 重複。移除或變更標題。

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

提供少於 (x) 個字元的使用說明。

INVALID_USAGE_INSTRUCTIONS

提供使用說明。

MISSING_CONTAINER_IMAGES

提供至少 1 個容器映像。

TOO_MANY_CONTAINER_IMAGES

提供少於 50 個容器映像。

DUPLICATE_CONTAINER_IMAGES

容器映像清單包含重複映像:【duplicate_images】。提供具有唯一映像的清單。

INVALID_CONTAINER_IMAGES

提供容器映像的有效 URI。

INVALID_CONTAINER_IMAGE_URI

映像 【invalid_image_uri】 無法存取此產品。將映像上傳至其對應的產品儲存庫。如需上傳的資訊,請參閱容器產品的入門

INVALID_CONTAINER_IMAGE_TAG

避免使用「最新」標籤。

MISSING_DELIVERY_OPTION_IDS

從現有的 ID 清單中提供交付選項。

EMPTY_DELIVERY_OPTION_IDS

提供非空白的交付選項 IDs清單。

DUPLICATE_DELIVERY_OPTION_IDS

重複的交付選項 IDs:【duplicate_ids】。提供唯一的交付選項 IDs。

DUPLICATE_DELIVERY_OPTION_TITLES

重複的交付選項標題:【duplicate_titles】。移除重複項目

INVALID_DELIVERY_OPTION_TITLES

交付選項標題 【existing_titles】 已存在。提供不同的標題。

INVALID_FULFILLMENT_OPTION_TITLE

提供少於 (x) 個字元的交付選項標題。

EMPTY_RESOURCE_NAME

提供資源名稱。

EMPTY_RESOURCE_URL

提供資源 URL。

INVALID_RESOURCE_NAME

提供少於 256 個字元的資源名稱。

INVALID_RESOURCE_URL

提供少於 256 個字元的資源 URL。

INVALID_SHORT_DESCRIPTION

提供少於 1,000 個字元的簡短描述。

INVALID_SHORT_DESCRIPTION

提供簡短描述。

NO_LICENSE_SECRET_KEYS

對於 Amazon EKS Anywhere 產品,請為授權秘密提供 1 個覆寫參數。的需求 DefaultValue"${AWSMP_LICENSE_SECRET}",請參閱章節中的範例。

NO_SERVICE_ACCOUNT_CONFIGURATION

對於付費產品,請為服務帳戶組態提供 1 個覆寫參數。的需求DefaultValue"${AWSMP_SERVICE_ACCOUNT}",請參閱章節中的範例。

SCAN_ERROR

修正映像 ""【x】"" 上的安全漏洞 ""【y】""。

FIELD_NOT_ALLOWED_TO_CHANGE

欄位 【x】 無法變更。

INVALID_DELIVERY_OPTIONS_STATUS

交付選項 IDs 【invalid_ids】 無效。在有限或公有狀態下提供交付選項。

NO_CHANGE_FOUND

提供至少 1 個變更。

MULTIPLE_VERSION_UPDATE

提供相同版本的交付選項 IDs。

OVERRIDE_PARAMETER_KEYS_CONTAINS_SPECIAL_CHARS

覆寫參數索引鍵 【invalid_keys】 包含無效的字元。您的金鑰只能使用字母、數字、雙引號 (" ") 和加號 (+)。

INVALID_CONTAINER_IMAGE_REPOSITORY

儲存庫 【invalid_repositories】 無效。提供透過 AddRepositories 變更類型建立的儲存庫。

INVALID_CONTAINER_IMAGE_TAG_FORMAT

容器映像標籤 【invalid_image_tag】 無效。提供符合 {CONTAINER_IMAGE_TAG_REGEX} 規則表達式的標籤。

DUPLICATE_OVERRIDE_PARAMETER_KEYS

覆寫參數包含重複的金鑰 【duplicate_keys】。移除重複項目。

UNSUPPORTED_CONTAINER_IMAGE_URI

不支援容器映像 【unsupported_image】。提供遵循映像資訊清單 V 2 結構描述 1 的映像

INVALID_NAMESPACE

命名空間值 【invalid_namespaces】 無效。提供符合 {HELM_RELEASE_PARAM_REGEX} 規則表達式的值。

INVALID_RELEASE_NAME

releaseName 值 【invalid_release_names】 無效。提供符合 {HELM_RELEASE_PARAM_REGEX} 規則表達式的值。

OVERRIDE_PARAMETER_KEYS_CONTAINS_RESERVED_PARAMETER_KEYS

交付選項標題 【invalid_keys】 的覆寫參數金鑰已保留。預留金鑰:【reserved_param_keys】。提供不同的金鑰。

INCOMPATIBLE_ADDON_NAME

附加元件名稱 【provided_name】 與現有名稱不相符。重複使用此附加元件公有版本或先前版本的現有名稱。每個產品只能使用一個附加元件名稱。

INCOMPATIBLE_ADDON_NAMESPACE

附加元件命名空間 【provided_namespace】 不符合現有的命名空間 。重複使用此附加元件公有版本或先前版本的現有 命名空間。每個產品只能使用一個附加元件 命名空間。

限制版本

您可以使用目錄 API 來限制 中容器型產品的版本AWS Marketplace。這可防止新買方使用該版本。產品中必須至少有一個公開可用的版本。您無法限制產品唯一剩餘的公開可用版本。

若要限制版本,請使用RestrictDeliveryOptions變更類型呼叫 StartChangeSet API 操作,如下列範例所示。

注意

限制版本中的一或多個交付選項,但並非所有選項都會移除這些選項,使您的買方無法使用。限制版本的所有交付選項會從目錄中移除該版本AWS Marketplace。

目錄 API 目前不支援限制 Amazon EKS 附加元件。

限制版本仍然可供現有客戶使用。

請求語法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "RestrictDeliveryOptions", "Entity": { "Identifier": "example1-abcd-1234-5ef6-7890abcdef12", "Type": "ContainerProduct@1.0" }, "DetailsDocument": { "DeliveryOptionIds": [ "example1-2222-cccc-2222-cccccccccccc" ] } } ] }

提供要新增RestrictDeliveryOptions變更類型的欄位資訊:

  • Entity (物件) (必要) – 您的容器型產品。

    • Identifier (字串) (必要) – 您的產品 ID。如需詳細資訊,請參閱識別符

    • Type (字串) (必要) – Type是以您的產品將使用的交付方法 (產品類型) 為基礎:ContainerProduct@1.0

  • DetailsDocument (物件) (必要) – 請求的詳細資訊。它包含您要限制之容器型產品的交付選項 IDs。

    • DeliveryOptionIds (字串陣列) – 您要限制之版本的 DeliveryOption IDs 清單。您可以呼叫您要限制之產品的 DescribeEntity動作DeliveryOption,以取得 的唯一識別符。

回應語法

為您的請求建立變更集。對此請求的回應為您提供變更集ChangeSetIdChangeSetArn的 和 ,如下所示。

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

變更請求會新增至佇列並進行處理。此程序可能需要幾分鐘到幾小時的時間。

您可以透過 檢查請求的狀態AWS Marketplace 管理入口網站,或使用 API 操作直接透過目錄 DescribeChangeSet API。

如需變更集的詳細資訊,請參閱使用變更集。如需賣方產品變更集中錯誤的詳細資訊,請參閱 變更集狀態和錯誤

非同步錯誤

下列錯誤專屬於 中的RestrictDeliveryOptions動作AWS Marketplace Catalog API。當您在處理變更集DescribeChangeSet之後呼叫 時,會傳回這些錯誤。如需使用 DescribeChangeSet 取得變更請求狀態的詳細資訊,請參閱 使用變更集

錯誤碼 錯誤訊息

INCOMPATIBLE_PRODUCT_STATUS

使用公有產品。

MISSING_DELIVERY_OPTION_IDS

從現有 IDs 清單中提供交付選項。

INVALID_DELIVERY_OPTIONS_STATUS

交付選項 IDs 【invalid_ids】 無效。在公有狀態下提供交付選項。

EMPTY_DELIVERY_OPTION_IDS

提供非空白的交付選項 IDs清單。

INVALID_MINIMUM_PUBLIC_DELIVERY_OPTIONS

無法限制所有交付選項 IDs。

DUPLICATE_DELIVERY_OPTION_IDS

重複的交付選項 IDs:【duplicate_ids】。提供唯一的交付選項 IDs。