对 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 产品配置免费定价,请执行以下操作:
-
使用
AddDimensions更改类型为您的产品创建定价维度。有关更多信息,请参阅添加定价维度卖家产品文档。 -
创建
PricingModel设置为 0.00 美元的报价Free,包括UsageBasedPricingTerm或ConfigurableUpfrontPricingTerm将所有维度价格设置为 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 操作以添加交付详细信息,如以下示例所示。
以下主题说明如何添加使用ApiDeliveryOptionDetails和SaaSUrlDeliveryOptionDetails选项。
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_SERVER、KNOWLEDGE_BASE、AGENT、GUARDRAIL、OTHER。 -
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 网址。可以使用 whenEndpointTypeis{paramName}DYNAMIC语法包含占位符参数。 -
EndpointType(字符串)(可选)-端点类型。有效值:STATIC、DYNAMIC。DYNAMIC用于具有可解析为买家特定值的占位符参数的端点。需要EndpointUrlParameters并QuickLaunchEnabled设置为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_KEY、OAUTH2。必须包含 1-2 个唯一值。 -
Schemas(数组)(可选)-API 端点的架构规范。最多 1 个架构。-
Type(字符串)(必填)-架构类型。有效值:OPEN_API。 -
SchemaUrl(字符串)(必填)— 已提取到商城拥有的 S3 存储桶中的架构的 S3 网址。
-
-
IntegrationProtocols(数组)(可选)-端点支持的协议类型。最多 2 个协议。-
Type(字符串)(必填)-协议标识符。有效值:MCP、A2A。 -
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 |
异步错误
| 错误代码 | 错误消息 |
|---|---|
|
重复配送选项 |
您为此商品提供了一种或多种已存在的配送选项类型。提供独特的配送选项类型, |
|
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_SERVER、KNOWLEDGE_BASE、AGENT、GUARDRAIL、OTHER。 -
QuickLaunchEnabled(布尔值)(必填)— 确定买家是否可以使用快速启动来配置和启动软件。 -
FulfillmentUrl(字符串)(必填)— SaaS 产品要更新的网址。 -
UsageInstructions(字符串)(必填)-使用此 API 交付选项的说明。支持降价格式。最多 30,000 个字符。 -
CompatibleServices(阵列)(可选)— 此交付选项支持的 AWS 服务。目前支持Bedrock-AgentCore。 -
Endpoints(数组)(必填)— 此产品可用的 API 端点。必须仅包含一个端点。-
Name(字符串)(可选)-API 端点的名称。 -
EndpointUrl(字符串)(必填)-要更新的 API 端点的 URL。可以使用 whenEndpointTypeis{paramName}DYNAMIC语法包含占位符参数。 -
EndpointType(字符串)(可选)-端点类型。有效值:STATIC、DYNAMIC。DYNAMIC用于具有可解析为买家特定值的占位符参数的端点。需要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_KEY、OAUTH2。 -
Schemas(数组)(可选)-API 端点的架构规范。-
Type(字符串)(必填)-架构类型。有效值:OPEN_API。 -
SchemaUrl(字符串)(必填)-更新后的架构的 S3 URL。
-
-
IntegrationProtocols(数组)(可选)-端点支持的协议类型。-
Type(字符串)(必填)-协议标识符。有效值:MCP、A2A。 -
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 |
| 使用说明无效 |
|
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.0。Type
-
-
DetailsDocument(对象)(必填)-请求的详细信息。-
DeliveryOptions(数组)-待DeliveryOptions更新的列表。-
TargetVisibility(字符串)-要更新的交付选项 ID。 -
TargetVisibility(字符串)-交付选项的预期新可见性。可能的值:
Limited、Public和Unavailable。注意
始终只有一个交
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。允许的选项有:Limited、Public、Unavailable。 |
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.0。Type
-
-
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 |
| 使用说明无效 |
|
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.0。Type
-
-
DetailsDocument(对象)(必填)-请求的详细信息。-
DeliveryOptions(数组)-待DeliveryOptions更新的列表。-
TargetVisibility(字符串)-要更新的交付选项 ID。 -
TargetVisibility(字符串)-交付选项的预期新可见性。可能的值:
Limited、Public和Unavailable。注意
始终只有一个交
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。允许的选项有:Limited、Public、Unavailable。 |
422 |
| 定位无效 | 您为提供的选项无效PositiveTargeting。您必须为提供有效的参数BuyerAccounts。 |
422 |
| 缺少可见性和定位 | 您提供的配送选项可见性详细信息无效。您必须为TargetVisibility或中的至少一个提供有效参数Targeting。 |
422 |
| 孩子太多 AWS 账户 了 | 您提供的目标买家账户不能超过 100 个。 | 422 |
异步错误
| 错误代码 | 错误消息 |
|---|---|
| 无效的配送选项_ID | 您提供的配送选项详情无效。提供可在产品中找到的配送选项 ID。找不到 ID: [x] |
| 无效_可见性 | 您为公共州提供了多个配送选项。仅提供一种公共交付选项。 |
| 无效_可见性 | 你没有提供公共配送选项。提供一种公共交付选项。 |
| AUDIT_ERROR | 因 MCO 手动审查而异。 |