View a markdown version of this page

使用 SaaS 产品 AWS Marketplace API - AWS Marketplace

对 AWS Marketplace API 参考进行了重组。有关支持的 API 操作的更多信息,请参阅 AWS 市场 API 参考

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

使用 SaaS 产品 AWS Marketplace API

您可以使用 AWS Marketplace Catalog API 来自动执行处理 SaaS-based 产品的任务。有关创建 SaaS-based 产品的信息,请参阅创建产品。以下主题介绍如何执行目录 API 操作:

为 SaaS 产品配置免费定价模型

SaaS产品可以免费定价模式提供,允许买家免费使用您的产品。在为 SaaS 产品使用免费定价模型时,必须在 UsageBasedPricingTerm 或 ConfigurableUpfrontPricingTerm中使用零美元定价来配置定价维度。

注意

SaaS 产品的免费定价模式要求是独一无二的。对于免费定价的 SaaS 产品,您必须创建至少一个使用 UsageBasedPricingTerm 或的维度 ConfigurableUpfrontPricingTerm,并且所有维度的定价必须为 0.00 美元。此要求不适用于 AMI、容器或机器学习产品。

要为 SaaS 产品配置免费定价,请执行以下操作:

  1. 使用AddDimensions更改类型为您的产品创建定价维度。有关更多信息,请参阅添加定价维度卖家产品文档。

  2. 创建PricingModel设置为 0.00 美元的报价Free,包括UsageBasedPricingTermConfigurableUpfrontPricingTerm将所有维度价格设置为 0.00 美元。有关创建优惠的更多信息,请参阅使用 “处理报价” AWS Marketplace API

配置优惠时,请确保:

  • 所有价目表中的价格UsageBasedPricingTerm都设置为 “0.00”(字符串格式)

  • 中的所有收费金额ConfigurableUpfrontPricingTerm都设置为 “0.00”(字符串格式)

  • 至少包括一个定价为 0.00 美元的维度

SaaS 快速启动选项

有关快速启动选项的信息,请参阅以下资源:

  • (买家)有关 SaaS 产品的快速启动选项,请参阅《AWS Marketplace 买家指南》中的 “使用快速启动配置和启动 Saas 产品”

  • (卖家)有关 SaaS 产品的快速启动选项,请参阅AWS Marketplace 卖家指南中的配置快速启动

  • 有关 SaaS 产品的快速启动研讨会,请参阅实验室:在AWS Marketplace 卖家研讨会中启用 SaaS 快速启动。

添加配送选项

您可以使用目录 API 为中的 SaaS 产品添加交付选项 AWS Marketplace。API 交付选项使卖家能够提供 API-based 与适用于 AI 代理工作流程的 Amazon Bedrock 等 AWS 服务集成的服务。

要添加 API 交付选项,请调用AddDeliveryOptions更改类型StartChangeSet的 API 操作以添加交付详细信息,如以下示例所示。

以下主题说明如何添加使用ApiDeliveryOptionDetailsSaaSUrlDeliveryOptionDetails选项。

ApiDeliveryOptionDetails

本节中的示例支持ApiDeliveryOptionDetails交付选项类型,允许您为 SaaS 产品指定 API 端点、身份验证方法和集成协议。

请求语法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "ChangeType": "AddDeliveryOptions", "Entity": { "Identifier": "prod-1234567890123", "Type": "SaaSProduct@1.0" }, "Details": { "DeliveryOptions": [ { "Details": { "ApiDeliveryOptionDetails": { "ApiType": "AGENT", "QuickLaunchEnabled": true, "FulfillmentUrl": "https://example.com/fulfillment", "UsageInstructions": "# Getting Started\\n\\nTo use this API:\\n1. Register for an API key\\n2. Configure your endpoint\\n3. Start making requests", "CompatibleServices": ["Bedrock-AgentCore"], "Endpoints": [ { "Name": "GenerateContent", "EndpointUrl": "https://api.example.com/v1/{tenantId}/generate", "EndpointType": "DYNAMIC", "EndpointUrlParameters": [ { "Name": "tenantId", "Description": "The unique identifier for the buyer's tenant", "DefaultValue": "default" } ], "Description": "Generate content using AI models", "AuthorizationTypes": ["API_KEY"], "Schemas": [{ "Type": "OPEN_API", "SchemaUrl": "https://example.com/schemas/example-schema.json" }], "IntegrationProtocols": [ { "Type": "MCP", "UsageInstructions": "Connect using Model Context Protocol for seamless integration" } ] } ] } } } ] } }

为字段提供信息以添加AddDeliveryOptions更改类型:

  • Entity(对象)(必填)-您的 SaaS-based产品。

    • Identifier(字符串)(必填)-您的产品 ID。有关更多信息,请参阅标识符。

    • Type(字符串)(必填)— 类型基于您的产品将使用的交付方式(产品类型):SaaSProduct@1.0

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

    • DeliveryOptions(数组)-正在添加的 API 交付选项的详细信息。

      • Details(对象)-包含要添加ApiDeliveryOptionDetails的交付选项。

        • ApiDeliveryOptionDetails(对象)-包含 SaaS 产品的 API 交付选项详细信息。

          • ApiType(字符串)(必填)-API 产品的类型。有效值:MCP_SERVERKNOWLEDGE_BASEAGENTGUARDRAILOTHER

          • QuickLaunchEnabled(布尔值)(必填)— 确定买家是否可以使用快速启动来配置和启动软件。

          • FulfillmentUrl(字符串)(必填)— 卖家软件注册登录页面的网址。

          • UsageInstructions(字符串)(必填)-使用此 API 交付选项的说明。支持降价格式。最多 30,000 个字符。

          • CompatibleServices(阵列)(可选)— 此交付选项支持的 AWS 服务。目前支持Bedrock-AgentCore

          • Endpoints(数组)(必填)— 此产品可用的 API 端点。必须仅包含一个端点。

            • Name(字符串)(可选)-API 端点的名称。必须匹配图案^[A-Za-z][a-zA-Z0-9-]+$。最多 100 个字符。

            • EndpointUrl(字符串)(必填)— API 端点的 URL。必须是有效的 HTTPS 网址。可以使用 when EndpointType is {paramName} DYNAMIC 语法包含占位符参数。

            • EndpointType(字符串)(可选)-端点类型。有效值:STATICDYNAMICDYNAMIC用于具有可解析为买家特定值的占位符参数的端点。需要EndpointUrlParametersQuickLaunchEnabled设置为true

            • EndpointUrlParameters(数组)(可选)-动态端点 URL 中的占位符参数。EndpointType为必填项DYNAMIC。仅限 1-5 个参数。

              • Name(字符串)(必填)-参数名称。必须与中的{paramName}占位符相匹配。EndpointUrl必须匹配图案^[a-zA-Z][a-zA-Z0-9_]*$。最多 100 个字符。

              • Description(字符串)(可选)-参数的描述。最多 1,000 个字符。

              • DefaultValue(字符串)(可选)— 卖方提供值之前参数的默认值。必须匹配图案^[a-zA-Z0-9._~-]+$。最多 256 个字符。

            • Description(字符串)(可选)-对 API 端点及其功能的描述。最多 4,000 个字符。

            • AuthorizationTypes(数组)(必填)-访问 API 端点所需的授权类型。有效值:API_KEYOAUTH2。必须包含 1-2 个唯一值。

            • Schemas(数组)(可选)-API 端点的架构规范。最多 1 个架构。

              • Type(字符串)(必填)-架构类型。有效值:OPEN_API

              • SchemaUrl(字符串)(必填)— 已提取到商城拥有的 S3 存储桶中的架构的 S3 网址。

            • IntegrationProtocols(数组)(可选)-端点支持的协议类型。最多 2 个协议。

              • Type(字符串)(必填)-协议标识符。有效值:MCPA2A

              • UsageInstructions(字符串)(必填)— 有关在端点上使用协议的附加说明。最多 30,000 个字符。

响应语法

系统会为您的请求创建变更集。对该请求的响应为您提供了变更集的 ID,如下所示。

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

同步验证

错误条件 Message HTTP 代码

API 类型无效

您提供的 API 类型无效。有效值为:MCP_SERVER、知识库、代理、GUARDRAIL、其他。

422

配送网址无效

提供以 “https://” 开头的有效配送网址。

422

缺少必填字段

缺少必需的参数。您必须提供 ApiType、、 QuickLaunchEnabled FulfillmentUrl UsageInstructions、和终端节点。

422

端点 URL 无效

提供以 “https://” 开头的有效端点 URL。

422

缺少授权类型

您必须提供至少一种授权类型。有效值为:API_KEY、OAUTH2。

422

授权类型无效

您提供的授权类型无效。有效值为:API_KEY、OAUTH2。

422

终端节点太多

您不能为 API 交付选项提供超过 1 个终端节点。

422

终端节点类型无效

EndpointType 必须是静态或动态。

422

端点 URL 参数为必填项

EndpointUrlParameters 如果是 “动态” EndpointType ,则为必填项。

422

禁止使用终端节点 URL 参数

EndpointUrlParameters 在 “静态” 或 EndpointType “不存在” 时不允许。

422

终端节点 URL 参数计数无效

EndpointUrlParameters 必须包含 1 到 5 个参数。

422

终端节点 URL 参数无效

EndpointUrlParameters 包含无效条目。检查名称是否以字母开头(仅限字母、数字、下划线),并且仅 DefaultValue 使用未保留的字符。

422

重复的端点 URL 参数名称

EndpointUrlParameters 不得包含重复的参数名称。

422

动态端点需要快速启动

QuickLaunchEnabled 当为 DYNAM EndpointType IC 时必须为真。

422

兼容服务无效

您提供的兼容服务无效。有效值为: Bedrock-AgentCore。

422

架构类型无效

您提供的架构类型无效。有效值为:OPEN_API。

422

架构 URL 无效

提供指向商城拥有的 S3 存储桶的有效架构网址。

422

集成协议无效

您提供的集成协议类型无效。有效值为:MCP、A2A。

422

集成协议太多

您不能提供超过 2 个集成协议。

422

使用说明无效

使用说明超过了 30,000 个字符的最大长度。

422

异步错误

错误代码 错误消息

重复配送选项

您为此商品提供了一种或多种已存在的配送选项类型。提供独特的配送选项类型,UpdateDeliveryOptions如果您打算更改现有配送选项,请使用。

INVALID_FULFILLMENT_URL

您提供的 URL 返回了 HTTP 状态码 [x]。提供一个以 200 呈现的配送网址。

无效的终端节点网址

您提供的 URL 返回了 HTTP 状态码 [x]。提供一个以 200 呈现的端点 URL。

无效的架构网址

您提供的架构 URL 无效或不可访问。提供指向所拥有的 Amazon S3 存储桶的有效架构 URL AWS Marketplace。

更新配送选项

您可以使用目录 API 在中更新 SaaS 产品的交付选项 AWS Marketplace。

要更新交付选项,请使用UpdateDeliveryOptions更改类型调用 StartChangeSet API 操作,如以下示例所示。

注意

这支持ApiDeliveryOptionDetails配送选项类型。您必须提供配送选项 ID 以确定要更新哪个选项。

请求语法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateDeliveryOptions", "Entity": { "Identifier": "example1-abcd-1234-5ef6-7890abcdef12@1", "Type": "SaaSProduct@1.0" }, "DetailsDocument": { "DeliveryOptions": [ { "Id": "do-1234567891234567891234", "Details": { "ApiDeliveryOptionDetails": { "ApiType": "AGENT", "QuickLaunchEnabled": true, "FulfillmentUrl": "https://example.com/fulfillment-updated", "UsageInstructions": "# Updated Getting Started\\n\\nTo use this updated API:\\n1. Register for an API key\\n2. Configure your endpoint\\n3. Start making requests", "CompatibleServices": ["Bedrock-AgentCore"], "Endpoints": [ { "Name": "GenerateContent", "EndpointUrl": "https://api.example.com/v2/{tenantId}/generate", "EndpointType": "DYNAMIC", "EndpointUrlParameters": [ { "Name": "tenantId", "Description": "The unique identifier for the buyer's tenant", "DefaultValue": "default" } ], "Description": "Generate content using updated AI models", "AuthorizationTypes": ["API_KEY", "OAUTH2"], "Schemas": [{ "Type": "OPEN_API", "SchemaUrl": "https://example.com/schemas/updated-schema.json" }], "IntegrationProtocols": [ { "Type": "MCP", "UsageInstructions": "Connect using Model Context Protocol for seamless integration" } ] } ] } } } ] } } ] }

为字段提供信息,以便使用 API 交付选项更新UpdateDeliveryOptions更改类型:

  • Entity(对象)(必填)-您的 SaaS-based产品。

    • Identifier(字符串)(必填)-您的产品 ID。有关更多信息,请参阅标识符。

    • Type(字符串)(必填)-类型基于您的产品将使用的交付方式(产品类型):SaaSProduct@1.0

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

    • DeliveryOptions(数组)-包含正在更新的 API 交付选项的详细信息。

      • Id(字符串)(必填)— 的唯一标识符 DeliveryOption。( DeliveryOption 通过对正在更新的产品调用DescribeEntity操作来获取的唯一标识符。)

      • Details(对象)-包含要更新的交付选项的。ApiDeliveryOptionDetails

        • ApiDeliveryOptionDetails(对象)-包含 SaaS 产品的 API 交付选项详细信息。

          • ApiType(字符串)(必填)-API 产品的类型。有效值:MCP_SERVERKNOWLEDGE_BASEAGENTGUARDRAILOTHER

          • QuickLaunchEnabled(布尔值)(必填)— 确定买家是否可以使用快速启动来配置和启动软件。

          • FulfillmentUrl(字符串)(必填)— SaaS 产品要更新的网址。

          • UsageInstructions(字符串)(必填)-使用此 API 交付选项的说明。支持降价格式。最多 30,000 个字符。

          • CompatibleServices(阵列)(可选)— 此交付选项支持的 AWS 服务。目前支持Bedrock-AgentCore

          • Endpoints(数组)(必填)— 此产品可用的 API 端点。必须仅包含一个端点。

            • Name(字符串)(可选)-API 端点的名称。

            • EndpointUrl(字符串)(必填)-要更新的 API 端点的 URL。可以使用 when EndpointType is {paramName} DYNAMIC 语法包含占位符参数。

            • EndpointType(字符串)(可选)-端点类型。有效值:STATICDYNAMICDYNAMIC用于具有可解析为买家特定值的占位符参数的端点。需要 EndpointUrlParameters

            • EndpointUrlParameters(数组)(可选)-动态端点 URL 中的占位符参数。当EndpointType是时为必填项DYNAMIC。仅限 1-5 个参数。

              • Name(字符串)(必填)-参数名称。必须匹配中的{paramName}占位符。EndpointUrl必须匹配图案^[a-zA-Z][a-zA-Z0-9_]*$。最多 100 个字符。

              • Description(字符串)(可选)-参数的描述。最多 1,000 个字符。

              • DefaultValue(字符串)(可选)— 卖方提供值之前参数的默认值。必须匹配图案^[a-zA-Z0-9._~-]+$。最多 256 个字符。如果产品已经公开,则任何新参数或以前有DefaultValue且不再使用的参数均为必填项。这可以保护现有买家免受没有默认值的必填参数的影响。

            • Description(字符串)(可选)-对 API 端点及其功能的描述。

            • AuthorizationTypes(数组)(必填)-访问 API 端点所需的授权类型。有效值:API_KEYOAUTH2

            • Schemas(数组)(可选)-API 端点的架构规范。

              • Type(字符串)(必填)-架构类型。有效值:OPEN_API

              • SchemaUrl(字符串)(必填)-更新后的架构的 S3 URL。

            • IntegrationProtocols(数组)(可选)-端点支持的协议类型。

              • Type(字符串)(必填)-协议标识符。有效值:MCPA2A

              • UsageInstructions(字符串)(必填)— 有关在端点上使用协议的附加说明。

响应语法

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

变更请求将添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。您可以通过或在 Catalog API 中使用DescribeChangeSet操作检查请求的状态。 AWS Marketplace 管理门户

同步验证

错误条件 Message HTTP 代码
配送选项编号为空 提供的详细信息无效。/处的字符串 “与所需的架构正则表达式DeliveryOptions/0/Id不匹配,'^do-[a-z] +$' A-Z0-9 422
缺少配送选项 ID 提供的详细信息无效。/处DeliveryOptions/0 的 JSON 缺少必需的属性:['Id']。 422
重复的配送选项 ID 提供唯一的配送选项 ID。 422
配送网址无效 提供以 “https://” 开头的有效配送网址。 422
配送选项 ID 无效 提供可在产品中找到的配送选项 ID。找不到 ID: [x] 422
多个 URL 传送选项 您提供了多个 URL 传送选项。提供一个 URL 传送选项。 422
缺少配送选项 ID 配送选项 ID 缺失。提供一个或多个您想要更新的有效配送选项 ID,AddDeliveryOptions如果您打算添加新的配送选项,请使用。 422
启动 URL 无效 提供以 “https://” 开头的有效启动网址。 422
缺少启动网址 缺少必需LaunchUrl的参数。您必须提供LaunchUrl. 422
缺少部署模板 部署模板缺失。提供至少一个部署模板。 422
部署模板太多 您提供的部署模板不能超过 20 个。 422
模板网址无效 快速入门 URL 无效。提供通过 AWS 发布到 Amazon S3 QuickStarts 的部署模板网址。部署模板 URL 无效:[x] 422
部署模板堆栈名称无效 部署模板堆栈名称无效。仅使用字母数字字符和连字符提供有效的堆栈名称。它必须以字母字符开头,且长度不能超过 128 个字符。 422
重复的部署模板标题 您提供了重复的部署模板标题。提供独特的部署模板标题。 422
重复的部署模板 URL 您提供了重复的部署模板网址。提供独特的部署模板网址。 422
部署模板类型无效 部署模板类型无效。提供有效的部署模板类型。支持的值为 [” CloudFormation @1 .0"]。 422
部署模板 IAM 策略无效 部署模板 IAM 策略无效。提供有效的 IAM 政策。 422
使用说明无效
  • 使用说明不支持图片。移除图像 [x]。

  • 您在使用说明中提供了指向无效 URL 的链接:[x]。提供有效的 URL。

  • 您在使用说明中提供了不支持的 URI 架构的链接。使用支持的方案:["http”、“https”、“tel”、“mailto”]。

422

异步错误

错误代码 错误消息
无效的配送选项_ID 提供可在产品中找到的配送选项 ID。找不到 ID: [x]
AUDIT_ERROR AWS MP 目录审计清单-CQ 团队
INVALID_FULFILLMENT_URL 您提供的 URL 返回了 HTTP 状态码 [x]。提供一个以 200 呈现的配送网址。
INVALID_LAUNCH_URL 您提供的 URL 返回了 HTTP 状态码 [x]。提供以 200 呈现的启动网址。
无效的模板网址 快速入门 URL 无效。提供发布到 Amazon S3 AWS QuickStarts 的部署模板 URL。部署模板 URL 无效:[x]
新参数所需的默认值 端点 '[x]' 的参数为 '[x]',但没有 DefaultValue。当产品已经公开,并且此更新要么引入了该参数,要么删除了先前拥有 DefaultValue 的参数,则必须使用 A。 DefaultValue DefaultValue 为参数提供。

更新配送选项可见性

您可以使用目录 API 来配置权限,这样只有部分用户可以在中更改 SaaS 产品的可见性 AWS Marketplace。

要配置权限以便只有部分用户可以更改 SaaS 产品的可见性,请使用UpdateDeliveryOptionsVisibility更改类型调用 StartChangeSet API 操作,如以下示例所示。

注意

仅支持一种配送选项:SaaSUrlDeliveryOptionDetails.

请求语法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateDeliveryOptionsVisibility", "Entity": { "Identifier": "prod-example12345", "Type": "SaaSProduct@1.0" }, "DetailsDocument": { "DeliveryOptions": [ { "Id": "do-1234567891234567891234", "TargetVisibility": "Public" }, { "Id": "do-43210987654321", "TargetVisibility": "Limited", "Targeting": { "PositiveTargeting": { "BuyerAccounts": [ "123456789012" ] } } } ] } } ] }

为字段提供信息以添加UpdateDeliveryOptionsVisibility更改类型:

  • Entity(对象)(必填)-您的 SaaS-based 产品。

    • Identifier(字符串)(必填)-您的产品 ID。有关更多信息,请参阅 标识符

    • Type(字符串)(必填)— 基于您的产品将使用的交付方式(产品类型):SaaSProduct@1.0Type

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

    • DeliveryOptions(数组)-待DeliveryOptions更新的列表。

      • TargetVisibility(字符串)-要更新的交付选项 ID。

      • TargetVisibility(字符串)-交付选项的预期新可见性。

        可能的值:LimitedPublicUnavailable

        注意

        始终只有一个交Public付选项,最多只有一个交Limited付选项。

      • Targeting(对象)可选 -定位交付选项,与可Limited见性状态结合使用,以便能够在将可见性更改为之前测试新的交付选项Public

        • PositiveTargeting(对象)-指定包容性定位。

          • BuyerAccounts(字符串数组)-能够使用新配送选项的买家 AWS 账户 ID 列表。

            最小尺寸:0。最大尺寸:100。

响应语法

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

变更请求将添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。您可以通过或在 Catalog API 中使用DescribeChangeSet操作检查请求的状态。 AWS Marketplace 管理门户

同步验证

错误条件 Message HTTP 代码
缺少配送选项 ID 配送选项 ID 缺失。提供一个或多个您想要更新的有效配送选项 ID,AddDeliveryOptions如果您打算添加新的配送选项,请使用。 422
可见性无效 您为提供的选项无效TargetVisibility。允许的选项有:LimitedPublicUnavailable 422
定位无效 您为提供的选项无效PositiveTargeting。您必须为提供有效的参数BuyerAccounts 422
缺少可见性和定位 您提供的配送选项可见性详细信息无效。您必须为TargetVisibility或中的至少一个提供有效参数Targeting 422
孩子太多 AWS 账户 了 您提供的目标买家账户不能超过 100 个。 422

异步错误

错误代码 错误消息
无效的配送选项_ID 您提供的配送选项详情无效。提供可在产品中找到的配送选项 ID。找不到 ID: [x]
无效_可见性 您为公共州提供了多个配送选项。仅提供一种公共交付选项。
无效_可见性 你没有提供公共配送选项。提供一种公共交付选项。
AUDIT_ERROR 因 MCO 手动审查而异。

SaaSUrlDeliveryOption

以下示例显示如何使用SaaSUrlDeliveryOptionDetails来更新FulfillmentUrl

请求语法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateDeliveryOptions", "Entity": { "Identifier": "example1-abcd-1234-5ef6-7890abcdef12@1", "Type": "SaaSProduct@1.0" }, "DetailsDocument": { "DeliveryOptions": [ { "Id": "do-1234567891234567891234", "Details": { "SaaSUrlDeliveryOptionDetails": { "FulfillmentUrl": "https://www.aws.amazon.com/marketplace/management", "LaunchUrl": "URL", "UsageInstructions": "Instructions", "DeploymentTemplates": [ { "Title": "CloudFormation Template 123", "Description": "CloudFormation description", "IamPolicy": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"s3:Get*\",\"s3:List*\"],\"Resource\":\n[\"arn:aws:s3:::amzn-s3-demo-bucket\",\"arn:aws:s3:::amzn-s3-demo-bucket/*\"]}]}" } ] } } } ] } } ] }

为字段提供信息以添加AddDeliveryOptions更改类型:

  • Entity(对象)(必填)-您的 SaaS-based 产品。

    • Identifier(字符串)(必填)-您的产品 ID。有关更多信息,请参阅 标识符

    • Type(字符串)(必填)— 基于您的产品将使用的交付方式(产品类型):SaaSProduct@1.0Type

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

    • DeliveryOptions(数组)-包含正在更新的交付选项的详细信息。

      • TargetVisibility(字符串)— 的唯一标识符DeliveryOption。(DeliveryOption通过对正在更新的产品调用DescribeEntity操作来获取的唯一标识符。)

      • Details(对象)-包含要更新的交付选项的。SaaSUrlDeliveryOptionDetails

        • SaaSUrlDeliveryOptionDetails(对象)-包含 SaaS 产品的交付选项。FulfillmentUrl

          • FulfillmentUrl(字符串)— SaaS 产品要更新的网址。

          • LaunchUrl(字符串)-您的 SaaS 产品登录页面的网址。如果 QuickLaunchEnabled 设置为 True,则此项为必填。

          • UsageInstructions(字符串)-使用此交付选项的说明。为不愿使用的客户提供有关手动步骤的文档DeploymentTemplates

          • DeploymentTemplates(阵列)— 部署模板,客户可以使用它来设置和配置 SaaS 产品和任何相关资源。 AWS

            • Title(字符串)-部署模板的显示名称。

            • Description(字符串)-对部署模板包含内容的描述。

            • IamPolicy(字符串)— 描述部署模板所需权限的 IAM 策略。买家可以使用此 IAM 政策来快速部署模板。

            • CloudFormationDetails(对象)- CloudFormation 模板的详细信息。

              • TemplateUrl(字符串)-部署模板的 URL。

              • DefaultStackName(字符串)— 客户创建模板 CloudFormation 时使用的默认名称。

响应语法

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

变更请求将添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。您可以通过或在 Catalog API 中使用DescribeChangeSet操作检查请求的状态。 AWS Marketplace 管理门户

同步验证

错误条件 Message HTTP 代码
配送选项编号为空 提供的详细信息无效。/处的字符串 “与所需的架构正则表达式DeliveryOptions/0/Id不匹配,'^do-[a-z] +$' A-Z0-9 422
缺少配送选项 ID 提供的详细信息无效。/处DeliveryOptions/0 的 JSON 缺少必需的属性:['Id']。 422
重复的配送选项 ID 提供唯一的配送选项 ID。 422
配送网址无效 提供以 “https://” 开头的有效配送网址。 422
配送选项 ID 无效 提供可在产品中找到的配送选项 ID。找不到 ID: [x] 422
多个 URL 传送选项 您提供了多个 URL 传送选项。提供一个 URL 传送选项。 422
缺少配送选项 ID 配送选项 ID 缺失。提供一个或多个您想要更新的有效配送选项 ID,AddDeliveryOptions如果您打算添加新的配送选项,请使用。 422
启动 URL 无效 提供以 “https://” 开头的有效启动网址。 422
缺少启动网址 缺少必需LaunchUrl的参数。您必须提供LaunchUrl. 422
缺少部署模板 部署模板缺失。提供至少一个部署模板。 422
部署模板太多 您提供的部署模板不能超过 20 个。 422
模板网址无效 快速入门 URL 无效。提供通过 AWS 发布到 Amazon S3 QuickStarts 的部署模板网址。部署模板 URL 无效:[x] 422
部署模板堆栈名称无效 部署模板堆栈名称无效。仅使用字母数字字符和连字符提供有效的堆栈名称。它必须以字母字符开头,且长度不能超过 128 个字符。 422
重复的部署模板标题 您提供了重复的部署模板标题。提供独特的部署模板标题。 422
重复的部署模板 URL 您提供了重复的部署模板网址。提供独特的部署模板网址。 422
部署模板类型无效 部署模板类型无效。提供有效的部署模板类型。支持的值为 [” CloudFormation @1 .0"]。 422
部署模板 IAM 策略无效 部署模板 IAM 策略无效。提供有效的 IAM 政策。 422
使用说明无效
  • 使用说明不支持图片。移除图像 [x]。

  • 您在使用说明中提供了指向无效 URL 的链接:[x]。提供有效的 URL。

  • 您在使用说明中提供了不支持的 URI 架构的链接。使用支持的方案:["http”、“https”、“tel”、“mailto”]。

422

异步错误

错误代码 错误消息
无效的配送选项_ID 提供可在产品中找到的配送选项 ID。找不到 ID: [x]
AUDIT_ERROR AWS MP 目录审计清单-CQ 团队
INVALID_FULFILLMENT_URL 您提供的 URL 返回了 HTTP 状态码 [x]。提供一个以 200 呈现的配送网址。
INVALID_LAUNCH_URL 您提供的 URL 返回了 HTTP 状态码 [x]。提供以 200 呈现的启动网址。
无效的模板网址 快速入门 URL 无效。提供发布到 Amazon S3 AWS QuickStarts 的部署模板 URL。部署模板 URL 无效:[x]

更新配送选项可见性

您可以使用目录 API 来配置权限,这样只有部分用户可以在中更改 SaaS 产品的可见性 AWS Marketplace。

为此,请使用UpdateDeliveryOptionsVisibility更改类型调用 StartChangeSet API 操作,如以下示例所示。

注意

仅支持一种配送选项:SaaSUrlDeliveryOptionDetails

请求语法

POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateDeliveryOptionsVisibility", "Entity": { "Identifier": "prod-example12345", "Type": "SaaSProduct@1.0" }, "DetailsDocument": { "DeliveryOptions": [ { "Id": "do-1234567891234567891234", "TargetVisibility": "Public" }, { "Id": "do-43210987654321", "TargetVisibility": "Limited", "Targeting": { "PositiveTargeting": { "BuyerAccounts": [ "123456789012" ] } } } ] } } ] }

为字段提供信息以添加UpdateDeliveryOptionsVisibility更改类型:

  • Entity(对象)(必填)-您的 SaaS-based 产品。

    • Identifier(字符串)(必填)-您的产品 ID。有关更多信息,请参阅 标识符

    • Type(字符串)(必填)— 基于您的产品将使用的交付方式(产品类型):SaaSProduct@1.0Type

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

    • DeliveryOptions(数组)-待DeliveryOptions更新的列表。

      • TargetVisibility(字符串)-要更新的交付选项 ID。

      • TargetVisibility(字符串)-交付选项的预期新可见性。

        可能的值:LimitedPublicUnavailable

        注意

        始终只有一个交Public付选项,最多只有一个交Limited付选项。

      • Targeting(对象)可选 -定位交付选项,与可Limited见性状态结合使用,以便能够在将可见性更改为之前测试新的交付选项Public

        • PositiveTargeting(对象)-指定包容性定位。

          • BuyerAccounts(字符串数组)-能够使用新配送选项的买家 AWS 账户 ID 列表。

            最小尺寸:0。最大尺寸:100。

响应语法

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

变更请求将添加到队列中并进行处理。这包括验证信息以确保其符合 AWS Marketplace 准则。验证过程可能需要几分钟到几小时不等。您可以通过或在 Catalog API 中使用DescribeChangeSet操作检查请求的状态。 AWS Marketplace 管理门户

同步验证

错误条件 Message HTTP 代码
缺少配送选项 ID 配送选项 ID 缺失。提供一个或多个您想要更新的有效配送选项 ID,AddDeliveryOptions如果您打算添加新的配送选项,请使用该编号。 422
可见性无效 您为提供的选项无效TargetVisibility。允许的选项有:LimitedPublicUnavailable 422
定位无效 您为提供的选项无效PositiveTargeting。您必须为提供有效的参数BuyerAccounts 422
缺少可见性和定位 您提供的配送选项可见性详细信息无效。您必须为TargetVisibility或中的至少一个提供有效参数Targeting 422
孩子太多 AWS 账户 了 您提供的目标买家账户不能超过 100 个。 422

异步错误

错误代码 错误消息
无效的配送选项_ID 您提供的配送选项详情无效。提供可在产品中找到的配送选项 ID。找不到 ID: [x]
无效_可见性 您为公共州提供了多个配送选项。仅提供一种公共交付选项。
无效_可见性 你没有提供公共配送选项。提供一种公共交付选项。
AUDIT_ERROR 因 MCO 手动审查而异。