View a markdown version of this page

使用解决方案 - AWS Marketplace

AWS Marketplace API 参考已重组。有关支持的 API 操作的更多信息,请参阅 AWS Marketplace API 参考

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

使用解决方案

解决方案是一系列产品和服务,它们协同工作以解决特定的客户问题。解决方案可以包括 AWS Marketplace 产品和非 AWS 市场产品。解决方案可帮助您展示多种产品如何集成以解决特定行业的用例。该解决方案描述了客户的问题、用例、集成细节和相关产品。

AWS Marketplace 和 AWS 合作伙伴中心中的解决方案

当您从合作伙伴中心 2.0 迁移到合作伙伴中心 3.0 时,系统会提示您创建 AWS 账户并注册为 AWS Marketplace 卖家。有关更多信息,请参阅注册并创建您的卖家资料。此注册必须:

  • 将您现有的合作伙伴中心解决方案迁移到 AWS Marketplace 目录(所有解决方案都将迁移到AWSMarketplace目录中)

  • 使您的 AWS Marketplace 解决方案能够与合作伙伴中心 API 配合使用,例如销售 API

了解个人资料关联和迁移

关联您的合作伙伴中心账户和 AWS Marketplace 账户有两种不同的方案:

仅限个人资料链接 — 如果您在未迁移到合作伙伴中心 3.0 的情况下关联您的 AWS 合作伙伴中心和 AWS 账户,则您的 AWS Marketplace 解决方案和合作伙伴中心解决方案将保持分开。您可以独立管理每个平台。

个人资料迁移 — 当您使用关联的 AWS Marketplace 卖家资料迁移到合作伙伴中心 3.0 时:

  • 您的合作伙伴中心 2.0 解决方案迁移到 AWS Marketplace

  • 您只能通过 AWS Marketplace 管理解决方案

  • 合作伙伴中心 API 可以访问迁移的解决方案

注意

如果您已经关联了 AWS 合作伙伴中心和 AWS 账户(请参阅关联 AWS 合作伙伴中心和 AWS 账户),则无需创建新的 AWS 账户。但是,请确认您的现有 AWS 账户已注册为 AWS Marketplace 卖家。要在 AWS Marketplace 买家网站上公开您的解决方案,您需要公开作为 AWS Marketplace 卖家的个人资料。有关 AWS Marketplace 卖家注册说明,请参阅注册并创建您的卖家资料

将预先存在的 AWS Marketplace 解决方案提供给合作伙伴中心 API

合作伙伴中心 API 不会自动识别您在合作伙伴中心 3.0 配置文件迁移之前创建的 AWS Marketplace 解决方案。即使在您完成迁移并将您的 AWS 账户与合作伙伴中心账户关联之后,这仍然适用。

要使现有的迁移前解决方案在 Partner Central API 中可见,请更新解决方案中的任何字段。您可以输入与当前相同的信息。对在 Partner Central 3.0 配置文件迁移之前创建的每个解决方案重复此过程。

例如,使用UpdateInformation更改类型将解决方案的名称更新为其当前值。在您更新一次解决方案后,Partner Central API 将自动识别该解决方案的未来任何更新。

解决方案实体

解决方案是一份营销文档,可帮助买家发现和了解您的产品。解决方案包含标题、描述、用例、AWS Marketplace 产品和非 AWS Marketplace 产品。解决方案是一种独立于产品、优惠和优惠集的实体类型。每种解决方案都有自己的发现和上架体验,买家可以将这些体验与单个产品分开浏览。

主要特性

  • 对多个产品进行分组,包括 AWS Marketplace 产品和非 AWS Marketplace 产品。

  • 为买家打造专门的发现和上市体验。

  • 将您拥有的商品与其他卖家的产品进行分组。

解决方案实体类型为Solution@1.0

实体标识符

解决方案使用标soln-*识符格式(例如,soln-abc123def456)。

实体 ARN 格式

解决方案遵循标准的 AWS ARN 格式:

arn:{aws-partition}:aws-marketplace:{region}:{account-id}:{aws-marketplace-catalog}/Solution/{solution-id}

示例:

arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/Solution/soln-abc123def456

解决方案入门

本节提供有关使用 Catalo AWS Marketplace g API 更改类型创建和管理解决方案的详细信息。

开始之前,请确保您已具备以下条件:

列出您的解决方案

要列出您账户中的所有解决方案,请调用 ListEntities API 操作并设置EntityType为 “解决方案”。

请求

POST /ListEntities HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "EntityType": "Solution" }

响应

{ "EntitySummaryList": [ { "EntityArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/Solution/soln-abc123456", "EntityId": "soln-abc123456", "EntityType": "Solution", "LastModifiedDate": "2024-10-10T19:50:43Z", "Name": "Test Solution 1", "Visibility": "Limited" } ], "NextToken": null }

按可见性筛选解决方案

您可以使用FilterList参数按可见性筛选解决方案。

请求

POST /ListEntities HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "EntityType": "Solution", "FilterList": [ { "Name": "Visibility", "ValueList": [ "Public" ] } ] }

获取解决方案详情

要获取有关特定解决方案的详细信息,请调用 DescribeEntity API 操作。

注意

DescribeEntity 响应会返回一个EntityIdentifierEntityIdRevisionId.与 For 解决方案组合在一起EntityId的,是解决方案 ID,RevisionId可用于乐观锁定。有关更多信息,请参阅标识符

请求

GET /DescribeEntity?catalog=AWSMarketplace&entityId=soln-abc123456 HTTP/1.1

响应

{ "Details": "{...}", "DetailsDocument": { "Lifecycle": { "Visibility": "Limited" }, "Identifiers": { "Id": "soln-abc123456" }, "Presentation": { "Title": "My Solution", "Name": "solution_for_customer_X", "ShortDescription": "Solution value proposition", "LongDescription": "Detailed solution description", "LogoUrl": "https://s3.amazonaws.com/logo.jpg", "UseCases": [ { "Group": "advertising_and_marketing", "SubGroup": "ad_intelligence_and_measurement", "Item": "amazon_ads_insights", "Description": "Use case description" } ] }, "RelatedProducts": { "AwsMarketplaceProducts": [ { "ProductId": "prod-123" } ], "IntegrationDescription": "How products work together", "NonAwsMarketplaceProducts": [ { "Type": "Hardware", "Title": "A hardware product", "Url": "https://example.com", "Description": "My hardware product description" } ] }, "BuyerEngagement": [ { "EngagementOption": "RequestPrivateOffer" } ] }, "EntityArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/Solution/soln-abc123456", "EntityIdentifier": "soln-abc123456@12", "EntityType": "Solution@1.0", "LastModifiedDate": "2025-04-22T01:02:48Z" }

列出解决方案的更改历史记录

要查看特定解决方案的更改历史记录,请使用实体筛选器调用 ListChangeSets API 操作。

请求语法

POST /ListChangeSets HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "FilterList": [ { "Name": "EntityId", "ValueList": [ "soln-abc123456" ] } ] }

标记解决方案和变更集

您可以在创建过程中向解决方案添加标签和更改集,也可以在以后对其进行更新。

在创建过程中添加标签

EntityTags只能添加到CreateSolution变更类型,不能添加到其他解决方案变更类型。您可以ChangeSetTags添加到任何StartChangeSet有效载荷。

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "CreateSolution", "Entity": { "Type": "Solution@1.0" }, "DetailsDocument": { "Name": "Test solution resource name" }, "EntityTags": [ { "Key": "Team", "Value": "Solutions" } ] } ], "ChangeSetTags": [ { "Key": "Environment", "Value": "Production" } ] }

管理现有资源的标签

使用TagResourceUntagResource API 操作来管理现有解决方案和变更集上的标签。ListTagsForResource用于查看当前标签。

有关更多信息,请参阅管理资源标签和在创建过程中向实体添加标签和更改集

创建解决方案

您可以使用CreateSolution更改类型来创建仅包含解决方案 ID 和名称的新解决方案文档。其他值尚未填写。

成功处理您的请求后,AWS Marketplace 会为您创建一个处于Draft状态的解决方案。在 AWS Marketplace 上,买家看不到这个不完整的解决方案。

然后,您可以使用其他更改类型来完成解决方案:UpdateInformationUpdateRelatedProductsUpdateBuyerEngagementOptions(创建Limited解决方案时可选)和ReleaseSolutionReleaseSolution更改类型会验证解决方案所需的所有必填字段是否都存在于Limited解决方案中,然后将其移至Limited可见状态。

注意

要将解决方案移至 “公开” 状态或更改解决方案的状态,请在提供所需值后使用UpdateVisibility更改类型。

请求语法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "CreateSolution", "Entity": { "Type": "Solution@1.0" }, "ChangeName": "CreateSolutionChange", "DetailsDocument": { "Name": "solution_for_customerX_en", "Title": "New Partner Solution" } } ] }

为要添加CreateSolution更改类型的字段提供信息:

  • Entity(对象)(必填)-正在创建的解决方案实体的命名类型。

    • Type(字符串)(必填)-Type 必须是Solution@1.0

  • DetailsDocument(对象)(必填)-请求的详细信息。

    • Name(字符串)(必填)— AWS 资源名称仅供卖家自己参考(买家不可见)。最大长度:100 个字符。不得包含前导或尾随空格、换行符或控制字符。您也可以通过UpdateInformation更改类型来更新解决方案图块。

    • Title(字符串)(可选)-解决方案的标题。最大长度:255 个字符。不得包含前导或尾随空格、换行符或控制字符。您也可以通过UpdateInformation更改类型来设置或更新解决方案标题。

响应语法

已根据您的请求创建更改集。回复会给你ChangeSetIdChangeSetArn

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

变更请求被添加到队列中并进行处理。您可以使用 AWS Marketplace 管理门户网站或 DescribeChangeSet API 操作查看状态。

成功完成请求后(如果StatusSUCCEEDED),则会生成一个新的解决方案 ID。

异步错误

CreateSolution除了常见的异步错误外,操作还会返回特定的错误。更改集处理完DescribeChangeSet毕后,您会收到这些错误。要了解如何获取变更请求状态,请参阅使用变更集

错误代码 错误消息
名字无效 解决方案名称长度无效。请输入一个介于 1 到 100 个字符之间的名称,然后重试。
缺少名字 “名称” 值是必填的。请指定 “名称” 值,然后重试。
无效标题 解决方案标题长度无效。请输入介于 1 到 255 个字符之间的标题,然后重试。

更新解决方案信息

如果您在 AWS Marketplace 中已有解决方案,则可以使用目录 API 来更新解决方案信息。

要更新解决方案信息,请使用UpdateInformation更改类型和更新后的详细信息调用 StartChangeSet API 操作。请参阅以下示例。

注意

UpdateInformation更改类型的行为类似于顶级属性的 HTTP 补丁操作。字段的更新方式:

  • 如果中存在顶级属性DetailsDocument,则工作流程会验证您的输入并覆盖现有值。

  • 如果中不存在顶级字段DetailsDocument,则保留现有值。

  • 要取消设置可选字段,请发送该字段的显式 J null SON。

AWS Marketplace 会验证徽标和宣传媒体资产并将其提取到 AWS Marketplace-owned 地点。 DescribeEntity 返回已收录文件的可访问网址,而不是您从中 StartChangeSet输入的原始网址。要查看您最初提交的网址,请使用 DescribeChangeSet API。

注意

当您修改Public解决方案的PromotionalMedia资产文件(通过提供新 URL)时,UpdateInformation需要 AWS Marketplace 卖家运营团队进行手动审查。这会增加执行时间。在这种情况下,请在自己的更改集中UpdateInformation单独使用。

请求语法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateInformation", "Entity": { "Identifier": "soln-1234abcd", "Type": "Solution@1.0" }, "DetailsDocument": { "Name": "project_cold_harbor", "Title": "My Awesome Solution", "ShortDescription": "Solution value proposition", "LongDescription": "Detailed solution description explaining how this addresses customer needs", "LogoUrl": "https://s3.amazonaws.com/awsmp-logos/logo.jpg", "PromotionalMedia": [ { "Type": "Image", "Url": "https://s3.amazonaws.com/awsmp-media/image.jpg", "Title": "Sample image", "Description": "Sample image description" }, { "Type": "Video", "Url": "https://s3.amazonaws.com/awsmp-media/video.mp4", "Title": "Sample video", "PreviewUrl": "https://s3.amazonaws.com/awsmp-media/preview.png", "Description": "Sample video description" } ], "AdditionalResources": [ { "Text": "Troubleshooting guide", "Url": "https://example.com/troubleshooting" } ], "UseCases": [ { "Group": "advertising_and_marketing", "SubGroup": "ad_intelligence_and_measurement", "Item": "amazon_ads_insights", "Description": "Highlight description of this use case" } ] } } ] }

为要添加UpdateInformation更改类型的字段提供信息:

  • Entity(对象)(必填)-要更新的实体的命名类型。

    • Identifier(字符串)(必填)-解决方案 ID。

    • Type(字符串)(必填)-必须是Solution@1.0

  • DetailsDocument(object)(必填)-请求的详细信息,包括您要为解决方案更新的信息。每个字段都是可选的,但必须至少包含一项更改才能更新。

    • Name(字符串)— 解决方案的资源名称,仅卖家通过目录 API 读取操作可见,买家不可见。最大长度:100 个字符。不得包含前导或尾随空格、换行符或控制字符。

    • Title(字符串)-要向买家显示的解决方案标题。最大长度:255 个字符。不得包含前导或尾随空格、换行符或控制字符。

    • ShortDescription(字符串)— 要向买家展示的解决方案关键方面的价值主张描述。这通常是 2-3 句话。最大长度:1000 个字符。不得包含前导或尾随空格或控制字符。

    • LongDescription(字符串)-要向买家显示的此解决方案的较长描述。这通常是 1-3 段。最大长度:5000 个字符。不得包含前导或尾随空格或控制字符。

    • LogoUrl(字符串)— 可公开访问的 Amazon S3 存储桶中图像的网址或预签名 S3 网址。必须是直接 S3 网址(不在后面 CloudFront 或 API Gateway)。最大长度:2048 个字符。有关徽标规格,请参阅公司和产品徽标要求

    • PromotionalMedia(对象数组)-宣传图片和视频的列表。最多 15 个项目(5 个视频和 10 个图片)。有关宣传媒体的规格,请参阅使用促销媒体增强您的 AWS Marketplace 产品

      • Type(字符串)(必填)-要Image么是Video

      • Url(字符串)(必填)-媒体文件的 URL。必须是直接 S3 网址或预签名 S3 网址。最大长度:2048 个字符。必须是 https 网址。

      • Title(字符串)(必填)-媒体的标题。最大长度:100 个字符。不得包含前导或尾随空格、换行符或控制字符。

      • Description(字符串)(必填)-媒体的描述。长度上限:200 个字符。不得包含前导或尾随空格或控制字符。

      • PreviewUrl(字符串)(可选)-仅适用于视频,指向预览图像的 URL。最大长度:2048 个字符。必须是 https 网址。

    • AdditionalResources(对象数组)-对其他资源的引用列表。最多 8 件物品。

      • Text(字符串)-资源的名称或标题。最大长度:500 个字符。不得包含前导或尾随空格、换行符或控制字符。

      • Url(字符串)-资源的 URL。最大长度:2048 个字符。必须是 https 网址。

    • UseCases(对象数组)-此解决方案解决的用例列表。最多 3 件物品。有关有效的用例类别(组 SubGroup、和项目的组合),请参阅用例类别列表,了解有效的可接受值及其介绍标签。群组 SubGroup、和项目的组合必须是用例类别列表中的有效项目。

      • Group(字符串)-行业或技术类别。必须是用例类别列表中的分组值之一。

      • SubGroup(字符串)-类别中的用例组。必须是用例类别列表中的 SubGroup 值之一。

      • Item(字符串)-特定用例。必须是用例类别列表中的项目值之一。

      • Description(字符串)-此解决方案如何解决用例的描述。最大长度:500 个字符。不得包含前导或尾随空格或控制字符。

有关预签名 URL 的信息,请参阅使用预签名 URL 共享对象

注意

调用 ch UpdateInformation ange type 时,您始终可以在DetailsDocument对象中提供要更新的字段子集。但是,在将解决方案从移动Draft到之前Limited,必须正确设置以下字段:TitleShortDescriptionLongDescription、和LogoUrl

但是,在更新解决方案中的现有字段时,只能在变更类型的DetailsDocument对象中包含需要UpdateInformation更改的属性。

响应语法

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

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

变更请求被添加到队列中并进行处理。要查看请求状态,请使用 AWS Marketplace 管理门户网站或调用 DescribeChangeSet API。

使用针对Public解决方案修改的PromotionalMedia资产触发此变更类型后,最多可能需要 37 天才能完成。这包括 AWS Marketplace 卖家运营团队需要审查、审计和批准的时间。

异步错误

除了常见的异步错误外,以下错误还特定于 AWS Marketplace Catalog API 中的UpdateInformation操作。当您在处理更改集DescribeChangeSet之后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集

错误代码 错误消息
无效_简短_描述 解决方案 ShortDescription 长度无效。请输入介于 1 ShortDescription 到 1000 个字符之间的,然后重试。
无效_LONG_描述 解决方案 LongDescription 长度无效。请输入介于 1 LongDescription 到 5000 个字符之间的,然后重试。
名字无效 解决方案名称长度无效。请输入一个介于 1 到 100 个字符之间的名称,然后重试。
无效标题 解决方案标题长度无效。请输入介于 1 到 255 个字符之间的标题,然后重试。
无效的额外资源 解决方案 AdditionalResources [%d] .文本长度无效。请输入介于 1 到 500 个字符之间的文本,然后重试。
无效的额外资源 无法访问提供的其他资源中的以下 URL:[%s]。提供有效且可访问的 URL
无效的额外资源 网址值是必需的。请指定 Url 值,然后重试。
无效的额外资源 不能缺少文本。提供文本
用例无效 解决方案 UseCases [%d] .描述长度无效。请输入介于 1 到 500 个字符之间的描述,然后重试。
用例无效 UseCases[%d] .Group:提供的组 (%s) 无效。提供有效的群组。
用例无效 UseCases[%d]。 SubGroup: 提供的组 (%s) 无效。请提供有效的 SubGroup。
用例无效 UseCases[%d]。商品:提供的商品 (%s) 无效。提供有效的物品。
用例无效 UseCases[%d] .Item:提供的用例处于非活动状态。提供一个活跃的用例
用例无效 UseCases[%d] .Group: 群组不能丢失。提供群组。
用例无效 UseCases[%d]。 SubGroup: SubGroup 不能丢失。提供一个 SubGroup.
用例无效 UseCases[%d]。商品: SubGroup 不能丢失。提供一件物品。
INVALID_MEDIA 解决方案 PromotionalMedia [%d] .标题长度无效。请输入介于 1 到 100 个字符之间的标题,然后重试。
INVALID_MEDIA 解决方案 PromotionalMedia [%d] .描述长度无效。请输入介于 1 到 200 个字符之间的描述,然后重试。
INVALID_MEDIA 无效的 URL: %s 为存储在 S3 中的媒体提供一个新的 URL。
INVALID_MEDIA 媒体位置不可访问:%s 为存储在以下位置之一的媒体提供一个新的、可访问的 URL:[S3]。
INVALID_MEDIA 图像大小超过 %s。请提供一张低于 %s 的图片。
INVALID_MEDIA 视频大小超过 %s。提供低于 %s 的视频。
INVALID_MEDIA 徽标大小超过 %s。提供低于 %s 的徽标。
INVALID_MEDIA 在 %s 中检测到恶意软件。提供没有恶意软件的媒体。
INVALID_MEDIA 不当内容:检测到 %s。向媒体提供没有不当内容的内容
INVALID_MEDIA 检测到 %s 中的显式内容:'{ExplicitContent}'。提供不含露骨内容的媒体。
INVALID_MEDIA PromotionalMedia[%s] .Url: %s 的格式不支持 (%s)。使用格式良好的图像,格式支持以下格式:[JPEG,PNG]。
INVALID_MEDIA PromotionalMedia[%s] .Url: %s 的格式不支持 (%s)。使用格式良好的视频,格式支持以下格式:[MP4,MOV]。
INVALID_MEDIA LogoUrl %s 处的纵横比无效。提供宽高比为 1:1(正方形)或 2:1(宽)的图像。
INVALID_MEDIA 徽标:%s 的尺寸无效。提供介于 120x120 和 1080x1080 像素之间的图像。
INVALID_MEDIA PromotionalMedia[%d]。不支持类型。 PromotionalMedia 以支持的类型提供:%s
复制媒体 检测到重复的媒体:[%s] 提供没有重复内容的媒体项目。
INVALID_MEDIA PromotionalMedia[%d] .Url:在 %s 中检测到恶意软件。提供没有恶意软件的媒体。
物品太多了 提供的数量不超过 %d %s。

您可以使用目录 API 来更新解决方案中包含的产品和服务,包括 AWS Marketplace 产品和非 AWS Marketplace 产品。

要更新相关产品,请使用UpdateRelatedProducts更改类型调用 StartChangeSet API 操作,如以下示例所示。

注意

UpdateRelatedProducts更改类型的行为类似于顶级属性的 HTTP PATCH 操作。您可以提供所有当前的 AWS Marketplace 产品类型,如AwsMarketplaceProducts所示UpdateRelatedProducts

请求语法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateRelatedProducts", "Entity": { "Type": "Solution@1.0", "Identifier": "soln-123456" }, "DetailsDocument": { "IntegrationDescription": "How to use the products in this solution (usage guide)", "AwsMarketplaceProducts": [ { "ProductId": "prod-123" }, { "ProductId": "prod-456" } ], "NonAwsMarketplaceProducts": [ { "Type": "Hardware", "Title": "Diamond engine", "Description": "Hardware details", "Url": "https://example.com/hardware-product-specs.html" } ] } } ] }

为要添加UpdateRelatedProducts更改类型的字段提供信息:

  • Entity(对象)(必填)-要更新的实体的命名类型。

    • Identifier(字符串)(必填)-解决方案 ID。

    • Type(字符串)(必填)-必须是Solution@1.0

  • DetailsDocument(对象)(必填)-请求的详细信息。每个字段都是可选的,但必须至少包含一项更改才能更新。

    • IntegrationDescription(字符串)— 描述产品如何在此解决方案中协同工作。最大长度:5000 个字符。不得包含前导或尾随空格或控制字符。

    • AwsMarketplaceProducts(对象数组)— 此解决方案中包含的 AWS Marketplace 产品。最多 5 件物品

      • ProductId(字符串)— AWS Marketplace 产品编号(UUID 或以开头的字符串prod-)。最大长度:50 个字符。

    • NonAwsMarketplaceProducts(对象数组)— AWS Marketplace 上不可用的产品。最多 5 件物品。

      • Type(字符串)(必填)-产品类型。可能的值:SoftwareConsultingHardwareCommunicationProfessional ServiceManaged ServiceValue-Added ResaleTraining

      • Title(字符串)(必填)-商品名称。最大长度:255 个字符。不得包含前导或尾随空格、换行符或控制字符。

      • Description(字符串)(可选)-产品描述。最大长度:220 个字符。不得包含前导或尾随空格或控制字符。

      • Url(字符串)(可选)— 指向产品更多信息的 URL。最大长度:2048 个字符。必须是 https 网址。

响应语法

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

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

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

要查看请求状态,请使用 AWS Marketplace 管理门户网站或调用 DescribeChangeSet API。

异步错误

除了常见的异步错误外,以下错误还特定于 AWS Marketplace Catalog API 中的UpdateRelatedProducts操作。当您在处理更改集DescribeChangeSet之后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集

错误代码 错误消息
不兼容_操作_更新_相关_产品_解决方案 公共解决方案不支持更新相关产品的操作。要进行此更改,请先将解决方案的可见性更改为受限,然后重试。
无效_ AWS_MARKETPLACE_PRODUCTS AWS Marketplace 产品 “%s” 不适用于您的账户。选择您有权访问许可名单的公共产品或受限产品,或者联系卖家申请访问权限。
无效_ AWS_MARKETPLACE_PRODUCTS 不支持指定的产品类型 “%s”。请提供以下有效产品类型之一:[AmiProduct、SaasProduct、 ContainerProduct、 MachineLearningProduct ProfessionalServicesProduct、 DataProduct],然后重试。
无效_ AWS_MARKETPLACE_PRODUCTS 未找到产品 “%s”。在同一目录中提供有效的商品编码。
无效_非_ AWS_MARKETPLACE_PRODUCTS 无法访问指定的 Non-AWS Marketplace 商品网址:[%s]。请验证 URL 是否有效且可公开访问,然后重试。
无效集成描述 提供介于 1 IntegrationDescription 到 5000 个字符之间的解决方案。
无效_非_ AWS_MARKETPLACE_PRODUCTS 解决方案 NonAwsMarketplaceProduct [%d] .标题长度无效。请输入介于 1 到 255 个字符之间的描述,然后重试。
无效_非_ AWS_MARKETPLACE_PRODUCTS 解决方案 NonAwsMarketplaceProduct [%d] .描述长度无效。请输入介于 1 到 220 个字符之间的描述,然后重试。
无效_非_ AWS_MARKETPLACE_PRODUCTS 解决方案 NonAwsMarketplaceProduct [%d] .Type 长度无效。请输入介于 1 到 50 个字符之间的类型,然后重试。
无效_非_ AWS_MARKETPLACE_PRODUCTS NonAwsMarketplaceProduct[%d] .Type 不是有效的非 AWS Marketplace 产品类型。提供以下非 AWS Marketplace 产品类型之一:[%s]
无效_非_ AWS_MARKETPLACE_PRODUCTS NonAwsMarketplaceProduct[%d] .Title 值为必填值。请指定标题值,然后重试。
无效_非_ AWS_MARKETPLACE_PRODUCTS 必须输入 NonAwsMarketplaceProduct [%d] .Type 值。请指定 Type 值,然后重试。
产品太多了 您可以关联的 AWS Marketplace 产品的最大数量为 %d。在添加新产品之前,请先移除现有的关联产品。
产品太多了 您可以添加的无 AWS Marketplace 产品的最大数量为 %d。在添加新产品之前,请移除现有的 AWS Marketplace 产品。
无效_ AWS_MARKETPLACE_PRODUCTS 不允许使用重复的 AWS Marketplace 产品编码。在您的解决方案中,每个产品编号都必须是唯一的。
移除操作无效 操作无效,您无法移除所有产品。

发布解决方案

您可以使用目录 API 发布Draft解决方案,使其在 AWS Marketplace 上公开。Limited

ReleaseSolution更改类型用于验证Limited解决方案的所有必填字段是否都存在。然后,它将解决方案从可见性移DraftLimited可见性。解决方案一旦可Limited见,就无法将其移回Draft可见状态。

要发布解决方案,请使用ReleaseSolution更改类型调用 StartChangeSet API 操作,如以下示例所示。

请求语法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "ReleaseSolution", "Entity": { "Type": "Solution@1.0", "Identifier": "soln-1234abcd" }, "DetailsDocument": {} } ] }

为要添加ReleaseSolution更改类型的字段提供信息:

  • Entity(对象)(必填)-要发布的实体的命名类型。

    • Identifier(字符串)(必填)-解决方案 ID。

    • Type(字符串)(必填)-必须是Solution@1.0

  • DetailsDocument(对象)(必填)-必须是空对象。变更类型ReleaseSolution不接受任何细节。

响应语法

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

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

变更请求被添加到队列中并进行处理。您可以通过 AWS Marketplace 管理门户网站查看请求的状态,也可以使用 API 操作直接通过 Catalog AP DescribeChangeSet I 查看请求的状态。

异步错误

除了常见的异步错误外,以下错误还特定于 AWS Marketplace Catalog API 中的ReleaseSolution操作。当您在处理更改集DescribeChangeSet之后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集

错误代码 错误消息
缺少必填字段 请求缺少必需的参数:[%s]。请为所有必需的参数指定值,然后重试。
不兼容操作发布解决方案 变更类型只能在处于 “草稿” 状态的解决方案上调用。将解决方案的可见性更新为 “草稿”,然后重试。

更新买家参与选项

您可以使用目录 API 来配置买家如何就您的解决方案与您互动。

注意

要使用此变更类型,您必须有效注册 APN 客户互动 (ACE) 计划。您还必须将您的 AWS 账户与已注册 ACE 的 AWS 合作伙伴中心账户关联起来。有关说明,请参阅关联 AWS 合作伙伴中心和 AWS 账户

要更新买家参与度选项,请使用UpdateBuyerEngagementOptions更改类型调用 StartChangeSet API 操作,如以下示例所示。

请求语法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateBuyerEngagementOptions", "Entity": { "Type": "Solution@1.0", "Identifier": "soln-1234abcd" }, "DetailsDocument": [ { "EngagementOption": "RequestProductDemo" }, { "EngagementOption": "RequestPrivateOffer" } ] } ] }

为要添加UpdateBuyerEngagementOptions更改类型的字段提供信息:

  • Entity(对象)(必填)-要更新的实体的命名类型。

    • Identifier(字符串)(必填)-解决方案 ID。

    • Type(字符串)(必填)-必须是Solution@1.0

  • DetailsDocument(对象数组)(必填)-要启用的买家参与选项。

    • EngagementOption(字符串)(必填)-参与选项的类型。有效值:RequestPrivateOfferRequestProductDemo

响应语法

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

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

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

要查看请求状态,请使用 AWS Marketplace 管理门户网站或调用 DescribeChangeSet API。

异步错误

除了常见的异步错误外,以下错误还特定于 AWS Marketplace Catalog API 中的UpdateBuyerEngagementOptions操作。当您在处理更改集DescribeChangeSet之后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集

错误代码 错误消息
不符合资格的卖家 ACE 资格验证尚未完成。要继续:1) 将您的 AWS Marketplace 账户关联到您的 APN 账户,2) 完成 ACE 资格要求。

更新解决方案可见性

您可以使用目录 API 来更新解决方案在 AWS Marketplace 中的可见性。

您可以将目标可见性设置为LimitedPublic、或。Restricted

  • Limited— 解决方案已完成,并且已成功完成ReleaseSolution更改类型。您可以在此可见性中预览买家网站中解决方案的详细信息。在 AWS Marketplace 买家网站上,只有拥有该解决方案的账户、解决方案中包含的每个 AWS Marketplace 产品的所有者以及 AWS Marketplace 卖家运营团队才能看到该解决方案。

  • Public— 该解决方案在 AWS Marketplace 上可见。买家可以查看解决方案并与之互动。

  • Restricted— 该解决方案已不再在 AWS Marketplace 买家网站上向公众公开。

注意

要将解决方案移至Public可见性,必须满足以下要求:

  • 您必须在 AWS Marketplace 上公开个人资料。

  • 该解决方案必须没有非Public产品。

  • 该解决方案必须至少有 2 个 Public AWS Marketplace 产品。

  • 该解决方案必须有来自同一 AWS 账户的至少 1 个 AWS Marketplace 产品。

  • 该解决方案必须启用RequestPrivateOffer买家参与选项。

  • AWS Marketplace 卖家运营团队会审查所有将解决方案Public提升到可见性的请求。要获得支持,请参阅获取 AWS Marketplace 支持

如果设置为 TargetVisibilityPublic,则UpdateVisibility更改类型需要 AWS Marketplace 卖家运营团队进行手动审查。这会增加执行时间。在自己的零钱套装中UpdateVisibility单独使用。

要更新解决方案的可见性,请使用UpdateVisibility更改类型调用 StartChangeSet API 操作,如以下示例所示。

请求语法

什么时候TargetVisibilityPublicLimited

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateVisibility", "Entity": { "Type": "Solution@1.0", "Identifier": "soln-1234abcd" }, "DetailsDocument": { "TargetVisibility": "Public" } } ] }

因为什么时候TargetVisibilityRestricted

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateVisibility", "Entity": { "Type": "Solution@1.0", "Identifier": "soln-1234abcd" }, "DetailsDocument": { "TargetVisibility": "Restricted" } } ] }

为要添加UpdateVisibility更改类型的字段提供信息:

  • Entity(对象)(必填)-要更新的实体的命名类型。

    • Identifier(字符串)(必填)-解决方案 ID。

    • Type(字符串)(必填)-必须是Solution@1.0

  • DetailsDocument(object)(必填)-运行变更集所需的详细信息。

    • TargetVisibility(字符串)(必填)-解决方案的预期新可见性。可能的值:PublicLimitedRestricted

响应语法

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

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

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

您可以通过 AWS Marketplace 管理门户网站查看请求的状态,也可以使用 API 操作直接通过 Catalog AP DescribeChangeSet I 查看请求的状态。

使用 a TargetVisibility s 触发此更改类型后Public,最多可能需要 37 天才能完成。这包括 AWS Marketplace 卖家运营团队需要审查、审计和批准的时间。

异步错误

以下错误特定于 AWS Marketplace Catalog API 中的UpdateVisibility操作。当您在处理更改集DescribeChangeSet之后调用时,会返回这些错误。有关使用DescribeChangeSet获取变更请求状态的更多信息,请参阅使用变更集

错误代码 错误消息
无效_可见性_过渡 无法将解决方案移回 “草稿” 状态。解决方案发布后,只能在 “受限”、“公开” 和 “受限” 状态之间过渡。
用例太少了 要公开解决方案,至少需要一个用例。添加用例并重试。
PUBLIC_PUBLIC_PRODUCTS 要将解决方案公开,至少需要 2 个 AWS Marketplace 公开产品。请添加所需的产品,然后重试。
不兼容的产品 该解决方案包含一个或多个非公开的 AWS Marketplace 产品。要公开该解决方案,请移除所有非公开产品并重试。
自有产品太少了 该解决方案要求解决方案所有者拥有至少一款 AWS Marketplace 产品。从您的账户中添加 AWS Marketplace 产品并重试。
不兼容_买家_参与度_选项 必须启用 RequestPrivateOffer 买家参与选项才能公开此解决方案。启用 RequestPrivateOffer 并重试。
不兼容操作更新可见性 UpdateVisibility 处于 “草稿” 状态的解决方案不支持。首先使用将解决方案从 “草稿” 发布到 “受限” ReleaseSolution,然后使用 UpdateVisibility 将其更改为 “公开” 或 “受限”。
LIMIT_EXECED_TOO_MANY_PUBLIC_SOLUTIONS 此账户已达到 5 个公共解决方案的上限。将现有公共解决方案更新为 “可见性受限” 或 “受限”,然后重试。
缺少卖家个人资料信息 公开解决方案需要公开卖家资料。在您的卖家账户中创建公开个人资料,然后重试。

常见的异步错误码

有些异步验证适用于所有解决方案更改类型,例如检查网址有效性和不支持的字符,此处列出了它们的错误代码和错误消息。

提供的每个 URL 字段都必须使用 HTTPS 协议,并且符合 RFC2396 或 RFC 2732 标准。

错误代码 错误消息
INVALID_INPUT “%s” 字段无效。删除不支持的字符 %s。
INVALID_INPUT 在 %s 字段中找到不当内容 “%s”。请不要向 %s 提供任何不当内容。
不支持的目录 此更改类型不支持请求的目录 %s。
移除操作无效 操作无效,您无法删除 %s
审计错误 (因 AWS Marketplace 卖家运营团队的审计结果而异)

解决方案生命周期

解决方案通过以下可见性值进行推进:

  • Draft-创建后的初始可见性。您可以使用其他更改类型逐步添加信息。

  • Limited-解决方案已完成,可供您和产品所有者查看以供预览。您可以通过使用来实现此目的ReleaseSolution

  • Public-所有浏览 AWS Marketplace 网站的买家都可以看到解决方案。这需要额外的验证。

  • Restricted-解决方案不再对新买家可见。

重要

解决方案从可见性移动DraftLimited可见性后,您就无法将其移回可见性DraftReleaseSolution验证Limited解决方案的所有必填字段在过渡到Limited可见性之前是否都存在。

完整解决方案的最低要求

要创建完整的解决方案并将其发布到超过 “草稿” 状态,您需要以下更改类型和属性:

  • CreateSolution: Name

  • UpdateInformation: Title, ShortDescription, LongDescription, LogoUrl

  • UpdateRelatedProducts:IntegrationDescription,至少有一件物品横跨AwsMarketplaceProductsNonAwsMarketplaceProducts

  • ReleaseSolution

以下示例向您展示了如何在单个更改集中创建具有Limited可见性的完整解决方案:

{ "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "CreateSolution", "Entity": { "Type": "Solution@1.0" }, "ChangeName": "CreateSolutionChange", "DetailsDocument": { "Name": "complete_solution_example", "Title": "Complete Solution Example" } }, { "ChangeType": "UpdateInformation", "Entity": { "Type": "Solution@1.0", "Identifier": "$CreateSolutionChange.Entity.Identifier" }, "ChangeName": "UpdateInformationChange", "DetailsDocument": { "ShortDescription": "A comprehensive solution for customer needs", "LongDescription": "This solution combines multiple products to address specific customer requirements in the advertising and marketing space.", "LogoUrl": "https://s3.amazonaws.com/awsmp-logos/solution-logo.jpg", "UseCases": [ { "Group": "advertising_and_marketing", "SubGroup": "ad_intelligence_and_measurement", "Item": "amazon_ads_insights", "Description": "Provides comprehensive advertising insights and measurement capabilities" } ] } }, { "ChangeType": "UpdateRelatedProducts", "Entity": { "Type": "Solution@1.0", "Identifier": "$CreateSolutionChange.Entity.Identifier" }, "ChangeName": "UpdateRelatedProductsChange", "DetailsDocument": { "AwsMarketplaceProducts": [ { "ProductId": "prod-123" } ], "IntegrationDescription": "These products work together to provide end-to-end advertising analytics and optimization capabilities." } }, { "ChangeType": "UpdateBuyerEngagementOptions", "Entity": { "Type": "Solution@1.0", "Identifier": "$CreateSolutionChange.Entity.Identifier" }, "ChangeName": "UpdateBuyerEngagementChange", "DetailsDocument": [ { "EngagementOption": "RequestPrivateOffer" } ] }, { "ChangeType": "ReleaseSolution", "Entity": { "Type": "Solution@1.0", "Identifier": "$CreateSolutionChange.Entity.Identifier" }, "ChangeName": "ReleaseSolutionChange", "DetailsDocument": {} } ] }

解决方案的 IAM 权限

AWS Marketplace 目录 API 使用标准的 IAM 权限。有关更多详细信息,请参阅 AWS Marketplace 目录 API 的访问控制

您可以使用AWSMarketplaceSellerProductFullAccess执行通过 AWS 管理控制台中的 Catalog API 和 Partner Central 3.0 访问解决方案所需的所有操作。

解决方案的 IAM 策略示例

以下示例 IAM 策略允许对Solution@1.0实体执行特定操作(DescribeEntityListEntities、和StartChangeSet)。您可以进一步缩小范围,限制委托人访问某些实体 ID 上的某些变更类型,也可以将其扩大到允许委托人同时对 Catalog API 支持的另一种实体类型进行操作。

{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/Solution/*", "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/*" ], "Condition": { "StringEquals": { "catalog:ChangeType": [ "CreateSolution", "UpdateInformation", "UpdateRelatedProducts", "ReleaseSolution", "UpdateBuyerEngagementOptions", "UpdateVisibility" ] } } }, { "Effect": "Allow", "Action": [ "aws-marketplace:ListEntities", "aws-marketplace:DescribeEntity" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/Solution/*" ] }, { "Effect": "Allow", "Action": [ "aws-marketplace:DescribeChangeSet", "aws-marketplace:ListChangeSets", "aws-marketplace:CancelChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/*" ] }, { "Effect": "Allow", "Action": [ "aws-marketplace:TagResource", "aws-marketplace:UntagResource", "aws-marketplace:ListTagsForResource" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/Solution/*", "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/*" ] } ] }

限制对特定解决方案的访问

您可以使用资源 ARN 中的解决方案 ID 来限制对特定解决方案的访问:

{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:DescribeEntity", "aws-marketplace:StartChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/Solution/soln-specific123" ] } ] }

限制对特定变更类型的访问权限

您可以使用条件键限制对特定更改类型的访问权限:

{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/Solution/*" ], "Condition": { "StringEquals": { "catalog:ChangeType": [ "UpdateInformation", "UpdateRelatedProducts" ] } } } ] }