AWS Marketplace API リファレンスが再構築されました。サポートされている API オペレーションの詳細については、AWS Marketplace API リファレンスを参照してください。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
販売者製品を操作する
を使用してAWS Marketplace Catalog API、販売者製品を操作するタスクを自動化できます。これには、製品を作成、更新、表示、一覧表示、ソートする機能が含まれます。これにより、製品管理を自動化できます。たとえば、 でセルフサービス発行機能を提供できますAWS Marketplace 管理ポータル。
製品は、販売する予定のユニットまたはリソースでありAWS Marketplace、ベース製品とも呼ばれます。購入者は、製品情報、デプロイ属性、請求情報を追加するまで、ベース製品を使用できません。
製品は、販売する出品の製品情報、ソフトウェアデプロイ属性、請求メカニズムを記述します。販売可能で購入者が使用できる取引可能なユニットになるには、製品をオファーと組み合わせる必要がありますAWS Marketplace。
を使用して以下を行うこともできますAWS Marketplace Catalog API。
各製品タイプには、異なる製品エンティティがあります。エンティティは、製品でもオファーでもかまいませんAWS Marketplace。以下の製品タイプとエンティティがサポートされています。
| 製品タイプ | エンティティ |
|---|---|
| Amazon マシンイメージ (AMI) 製品 | AmiProduct@1.0 |
| コンテナ製品 | ContainerProduct@1.0 |
| Software as a service (SaaS) 製品 | SaaSProduct@1.0 |
| 機械学習 (ML) 製品 | MachineLearningProduct@1.0 |
注記
CloudFormation製品タイプ、AWS Data Exchangeデータ製品、プロフェッショナルサービス製品を含むシングル AMI はサポートされていません。
以下のトピックでは、 API へのアクセス権があり、「」で説明されているように、販売者の前提条件を満たしていることを前提としていますAWS MarketplaceCatalog API のアクセスコントロール。
以下のリソースを参照してください。
-
AWS MarketplaceCatalog API の使用の基本については、「」を参照してくださいAWS Marketplace Catalog API の使用。
-
コード例を使用するend-to-endのラボについては、AWS Marketplace販売者ワークショップの「API を使用した製品の管理
」を参照してください。 -
API リクエストのコード例については、GitHub のAWS「サンプル」の「Python
と Java の例」を参照してください。
以下のトピックでは、 Catalog API を使用して、単一 AMI 製品、コンテナベースの製品、または SaaS 製品に対してアクションを実行する方法について説明します。
トピック
製品を作成する
注記
この変更タイプは、AWS Marketplaceカタログに新しい製品エンティティを作成する場合にのみ必要です。既存の製品を更新するときには必要ありません。
Catalog API を使用して、識別子 (製品コードと製品 ID) を含む AMI、コンテナ、機械学習、または SaaS 製品ドキュメントを作成できますAWS Marketplace。
変更CreateProductタイプを使用して StartChangeSet API オペレーションを呼び出すことで、 Draft状態の製品を作成します。
リクエストが正常に処理されると、 は Draft状態の製品AWS Marketplace Catalog APIを生成します。これは不完全な製品であり、購入者には表示されませんAWS Marketplace。
次に、Update変更タイプを使用して、UpdateInformation、UpdateDimensions、UpdateTargeting、UpdateVisibility という製品作成プロセスを完了します。
製品が完了したら、ReleaseProduct 変更タイプを使用して製品作成プロセスを完了し、オファーをリリースできます。このプロセスでは、製品全体を検証し、製品を Limited状態に移行します。
注記
を使用して製品を作成する方法の詳細についてはAWS Marketplace 管理ポータル、 AWS Marketplace販売者ガイドの以下のトピックを参照してください。
-
バージョンの AMI を更新することはできません。AMI を更新する必要がある場合は、代わりに新しいバージョンを作成します。
を使用して製品AWS Marketplace 管理ポータルを作成すると、その製品は Staging状態になります。
Draft 状態で製品を作成するには、次の例に示すように、 CreateProduct変更タイプで StartChangeSet API オペレーションを呼び出します。
リクエストの構文
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType":"CreateProduct", "Entity":{ "Type": "SaaSProduct@1.0" // choose from ["AmiProduct@1.0", "ContainerProduct@1.0", "SaaSProduct@1.0", "MachineLearningProduct@1.0"] }, "DetailsDocument": { "ProductTitle": "Test product title set in CreateProduct" } } ] }
CreateProduct 変更タイプを追加するフィールドの情報を入力します。この変更タイプは、 がUpdateInformation変更タイプに送信されるのと同じ制限に従い、 ProductTitle 属性に含めることができます。
-
Entity(オブジェクト) (必須) – 作成されるオブジェクトの名前付きタイプ。-
Type(文字列) (必須) –Typeは、製品が使用する配信方法 (製品タイプ) に基づいています。AmiProduct@1.0、ContainerProduct@1.0、MachineLearningProduct@1.0またはSaaSProduct@1.0。詳細については、「識別子」を参照してください。
-
-
DetailsDocument(オブジェクト) (必須) – 空である可能性があります。-
ProductTitle(オプション) – 製品のタイトル。最大長は 72 文字です。後でUpdateInformation変更タイプを使用して製品タイトルを設定または更新することもできます。
-
レスポンスの構文
リクエストの変更セットが作成されます。このリクエストに対するレスポンスは、変更セットChangeSetArnの ChangeSetIdと を提供し、次のようになります。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
変更リクエストがキューに追加され、処理されます。
リクエストのステータスは、 を通じてAWS Marketplace 管理ポータル、または API オペレーションを使用して Catalog DescribeChangeSet API から直接確認できます。
リクエストが完了すると ( Statusが の場合SUCCEEDED)、新しい ProductId が生成されます。
同期検証
以下のスキーマ検証は、 のCreateProductアクションに固有ですAWS Marketplace Catalog API。これらの検証は、 を呼び出すときに実行されますStartChangeSet。リクエストが次の要件を満たしていない場合、HTTP レスポンスで失敗します。
| 入力フィールド | 検証ルール | HTTP コード |
|---|---|---|
| ProductTitle (文字列) | 最大長: 72 | 400 |
非同期エラー
以下のエラーは、 のCreateProductアクションに固有のものですAWS Marketplace Catalog API。これらのエラーは、変更セットの処理DescribeChangeSet後に を呼び出すと返されます。DescribeChangeSet を使用して変更リクエストのステータスを取得する方法の詳細については、「」を参照してください変更セットの使用。
| エラーコード | エラーメッセージ |
|---|---|
| INVALID_INPUT | ProductTitle フィールドに不適切なコンテンツ '{InappropriateContent}' が見つかりました。ProductTitle に不適切なコンテンツを提供しない。 |
製品の詳細を更新する
にすでに製品がある場合はAWS Marketplace、 Catalog API を使用して、AMI、コンテナ、ML、または SaaS 製品の製品の詳細を更新できます。
注記
を使用して製品の詳細を更新する方法の詳細についてはAWS Marketplace 管理ポータル、 AWS Marketplace販売者ガイドの以下のトピックを参照してください。
-
AMI ベースの製品: 製品情報を更新する
-
コンテナベースの製品: コンテナ製品の製品情報を作成または更新する
-
SaaS ベースの製品: 製品情報の更新
-
機械学習製品: 製品情報の更新
製品の詳細を更新するには、次の例に示すように、UpdateInformation変更タイプと変更する詳細を使用して StartChangeSet API オペレーションを呼び出します。
リクエストの構文
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateInformation", "Entity": { "Identifier": "prod-example12345", "Type": "AmiProduct@1.0" }, "DetailsDocument": { "ProductTitle": "My Product Title", "ShortDescription": "My product short description.", "LongDescription": "My product longer description.", "Sku": "123example456", "LogoUrl": "https://awsmp-logos.s3.amazonaws.com/ca60b754fe05a24257176cdbf31c4e0d", "VideoUrls": [ "https://example.com/my-video" ], "Highlights": [ "123example45" ], "AdditionalResources": [ { "Text": "123example456", "Url": "https://example.com/some-link" } ], "SupportDescription": "Need help? Contact our experts at support@example.com \n\nYour purchase includes 24x7 support.", "Categories": [ "Operating Systems", "Network Infrastructure", "Application Development" ], "SearchKeywords": [ "123example456" ] } } ] }
UpdateInformation 変更タイプを追加するフィールドの情報を入力します。
-
Entity(オブジェクト) (必須) – 作成されるエンティティの名前付きタイプ。-
Identifier(文字列) (必須) – 製品 ID。詳細については、「識別子」を参照してください。 -
Type(文字列) (必須) –Typeは、製品が使用する配信方法 (製品タイプ) に基づいています:AmiProduct@1.0、ContainerProduct@1.0、MachineLearningProduct@1.0、またはSaaSProduct@1.0。
-
-
DetailsDocument(オブジェクト) (必須) – 製品の更新情報を含むリクエストの詳細。各フィールドはオプションですが、更新するには少なくとも 1 つの変更を含める必要があります。-
ProductTitle(文字列) – 購入者に表示される製品の名前。 -
ShortDescription(文字列) – 購入者に表示される製品の主要な側面の説明。これは通常 2~3 文です。 -
LongDescription(文字列) – 購入者に表示される製品の長い説明。これは通常、1~3 段落です。 -
Sku(文字列または null) – 独自の使用のためのリファレンスとして定義する自由形式の文字列。nullを使用してこのフィールドの設定を解除します。 -
LogoUrl(文字列) – パブリックにアクセス可能な Amazon Simple Storage Service (Amazon S3) バケット内のイメージへの URL。詳細については、「会社と製品のロゴ要件」を参照してください。 -
VideoUrls(文字列の配列) – 製品情報で購入者への参照として提供される、公開されている外部でホストされている動画の URLs のリスト。注記
現在、 は配列で 1 つの URL AWS Marketplaceをサポートしています。
-
Highlights(文字列の配列) – 主要な製品機能のショートコールアウトのリスト。 -
AdditionalResources(構造の配列) – 製品について学習するための追加のリソースへの参照のリスト。各リファレンスは、テキスト名と URL で構成されます。-
Text(文字列) – リソースの名前またはタイトル。 -
Url(文字列) – 購入者が製品を理解するのに役立つリソースへの URL。
-
-
SupportDescription(文字列) – 製品のサポートサービスに関する詳細。 -
Categories(文字列の配列) – 製品を説明する定義済みの製品カテゴリのリストAWS Marketplace。詳細については、「 AWS Marketplace購入者ガイド」の「製品カテゴリ」を参照してください。 -
SearchKeywords(文字列の配列) – 検索エクスペリエンスを向上させるための製品のキーワードのリスト。販売者名、製品名、製品カテゴリは検索キーワードに自動的に含まれるため、ここで繰り返す必要はありません。
-
注記
Draft 製品の製品情報 (メタデータ) を最初に入力するときは、UpdateInformation変更タイプのDetailsDocumentオブジェクトで、ProductTitle、、ShortDescription、、LongDescription、LogoUrlHighlightsAdditionalResourcesSupportDescription、Categories、、および をすべて指定する必要がありますSearchKeywords。
CreateProduct 変更タイプ中に が既に提供されている場合は、 を省略ProductTitleできます。ただし、製品の既存のフィールドを更新する場合は、変更UpdateInformationタイプのDetailsDocumentオブジェクトに変更が必要な属性のみを含めることができます。
レスポンスの構文
リクエストの変更セットが作成されます。このリクエストに対するレスポンスは、変更セットChangeSetArnの ChangeSetIdと を提供し、次のようになります。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
変更リクエストがキューに追加され、処理されます。
リクエストのステータスを確認するには、 を使用するAWS Marketplace 管理ポータルか、 DescribeChangeSet API を呼び出します。
同期検証
以下のスキーマ検証は、 のUpdateInformationアクションに固有ですAWS Marketplace Catalog API。これらの検証は、 を呼び出すときに実行されますStartChangeSet。リクエストが次の要件を満たしていない場合、HTTP レスポンスで失敗します。
| 入力フィールド | 検証ルール | HTTP コード |
|---|---|---|
| 文字列 (一般) | コントロール文字なし「\\x00-\\x08\\x0B-\\x1F」 | 400 |
| ProductTitle (文字列) | 最大長: 72 必須 |
400 |
| ShortDescription (文字列) | 最大長: 1000 必須 |
400 |
| LongDescription (文字列) | 最大長: 5000 必須 |
400 |
| Sku (文字列) | 最大長: 100 オプションです。 |
400 |
| LogoUrl (文字列) |
URL パターン: ^https://(www\.)?[-a-zA-Z0- 9@.]{1,256}\.[a-zA-Z0-9()]{2,63}\b([-a-zA- Z0-9@+./]*) 必須 |
400 |
| VideoUrls (文字列の配列) |
URL パターン: https://(www\\.)?[-a-zA-Z0- 9@._]{1,256}\\.[a-zA-Z0-9()]{2,63}\\b([-a-zA-Z0-9@_+.\/] オプションです。 |
400 |
| ハイライト (文字列の配列) | 必須: 最小 1~最大 3 | 400 |
| AdditionalResources (構造の配列) | 最大長: 500 オプションです。 |
400 |
| SupportDescription (文字列) | 最大長: 2000 必須 |
400 |
| カテゴリ (文字列の配列) | 最小 1 - 最大 3 必須 |
400 |
| SearchKeywords (文字列の配列) | 最小 1 - 最大 15 項目ごとに最大 50 文字 必須 |
400 |
非同期エラー
以下のエラーは、 のUpdateInformationアクションに固有のものですAWS Marketplace Catalog API。これらのエラーは、変更セットの処理DescribeChangeSet後に を呼び出すと返されます。DescribeChangeSet を使用して変更リクエストのステータスを取得する方法の詳細については、「」を参照してください変更セットの使用。
| エラーコード | エラーメッセージ |
|---|---|
| 欠落データ | 更新を実行するためのデータが提供されていません。製品の少なくとも 1 つのフィールドのデータを指定します。 |
| INVALID_INPUT | LogoUrl を指定します。 |
| INVALID_INPUT | ProductTitle を指定します。 |
| INVALID_INPUT | ShortDescription を指定します。 |
| INVALID_INPUT | LongDescription を指定します。 |
| INVALID_INPUT | SupportDescription を指定します。 |
| INVALID_INPUT | 少なくとも 1 つの検索キーワードを指定します。 |
| INVALID_INPUT | 少なくとも 1 つのハイライトを入力します。 |
| INVALID_INPUT | 1~3 つの製品カテゴリを指定します。 |
| INVALID_INPUT | ProductTitle フィールドに不適切なコンテンツ '{InappropriateContent}' が見つかりました。ProductTitle に不適切なコンテンツを提供しない。 |
| INVALID_INPUT | ShortDescription フィールドに不適切なコンテンツ '{InappropriateContent}' が見つかりました。不適切なコンテンツなしで ShortDescription を指定します。 |
| INVALID_INPUT | LongDescription フィールドに不適切なコンテンツ '{InappropriateContent}' が見つかりました。LongDescription に不適切なコンテンツを含めないでください。 |
| INVALID_INPUT | SupportDescription フィールドに不適切なコンテンツ '{InappropriateContent}' が見つかりました。不適切なコンテンツなしで SupportDescription を提供します。 |
| INVALID_INPUT | ProductTitle フィールドが無効です。商標記号の前にスペースを削除します。 |
| INVALID_INPUT | ShortDescription フィールドが無効です。商標記号の前にスペースを削除します。 |
| INVALID_INPUT | LongDescription フィールドが無効です。商標記号の前にスペースを削除します。 |
| INVALID_INPUT | SupportDescription フィールドが無効です。商標記号の前にスペースを削除します。 |
| INVALID_INPUT | ProductTitle フィールドが無効です。サポートされていない文字 [UnsupportedCharacters] を削除します。 |
| INVALID_INPUT | ShortDescription フィールドが無効です。サポートされていない文字 [UnsupportedCharacters] を削除します。 |
| INVALID_INPUT | LongDescription フィールドが無効です。サポートされていない文字 [UnsupportedCharacters] を削除します。 |
| INVALID_INPUT | SupportDescription フィールドが無効です。サポートされていない文字 [UnsupportedCharacters] を削除します。 |
| INVALID_INPUT | 検索キーワードは 250 文字以下にする必要があります。 |
| INVALID_INPUT | この変更タイプの入力を読み取ることができませんでした。正しくフォーマットされた入力を送信します。 |
| INVALID_ADDITIONAL_RESOURCES | AdditionalResources の無効な URLs: [InvalidAdditionalResourcesUrls] 有効な URLs。 |
| INVALID_CATEGORY_NAMES | でサポートされている有効なカテゴリ名を指定しますAWS Marketplace。 |
| InvalidImageProperties | 検証エラーが見つかりました: ファイルはイメージタイプではありません。サポートされているイメージタイプ: [png|jpg|gif]。 |
| EXPLICIT_CONTENT | 明示的なコンテンツ: '{ExplicitContent}' が検出されました。明示的なコンテンツなしでメディアを提供します。 |
| INVALID_MEDIA | 無効な URL: {MediaUrl} S3 に保存されているメディアの新しい URL を指定します。 |
| INVALID_MEDIA | 無効な URL: {MediaUrl} 2048 文字を超えない有効な URL を指定してください。 |
| INVALID_MEDIA | 提供された場所にアクセスできない: {MediaUrl} S3 に保存されているメディアにアクセス可能な URL を提供します。 |
| INVALID_MEDIA | S3 からメディアをコピーする際に問題が発生しました。イメージサイズが 5 MB を超えています。5 MB 未満のイメージを指定します。 |
| INVALID_MEDIA | メディアでマルウェアが検出されました。マルウェアなしでメディアを再送信してください。 |
| TOO_MANY_MEDIA | メディア項目は 15 個以下にしてください。 |
| DUPLICATE_MEDIA | 製品に重複するメディアは使用できません。重複しないメディアを指定してください。 |
料金設定ディメンションを追加する
AWS Marketplace Catalog Service Actions を使用して、AMI、コンテナ、または SaaS 製品の料金をユーザーに請求できる請求可能な料金ディメンションを追加できます。
料金ディメンションは、販売者が購入者に請求するために定義する測定単位です。販売者は、使用量ベースまたは契約ベースの料金モデルを問わず、製品の使用について購入者に請求するためにこの情報を設定する必要があります。ディメンションのタイプは、製品の料金モデルによって異なります。
注記
無料料金モデルを使用する SaaS 製品の場合、UsageBasedPricingTerm または ConfigurableUpfrontPricingTerm で少なくとも 1 つのディメンションを作成し、すべてのディメンションの料金が 0.00 USD である必要があります。この要件は SaaS 製品に固有のものであり、AMI、コンテナ、機械学習製品には適用されません。
注記
新しい料金ディメンションは、SaaS 購入者に次の影響を与えます。
-
パブリックオファーから作成された契約を持つ購入者の場合、契約の作成時にオファーに存在していなくても、新しいディメンションの消費をレポートできます。
-
プライベートオファーから作成された契約を持つ購入者の場合、契約の作成時にプライベートオファーに存在しなかったため、新しいディメンションの消費をレポートすることはできません。BatchMeterUsage API の呼び出しは成功しますが、購入者には請求されないため、新しいディメンションに対して請求できる購入者と請求できない購入者を追跡する必要があります。GetAgreementTerms API を使用して、各購入者契約に含まれるディメンションを確認することもできます。
新しいディメンションの消費を報告し、購入者に請求するには、ディメンションを含む代替オファーを拡張し、購入者はオファーを受け入れる必要があります。
製品の料金の詳細については、 AWS Marketplace販売者ガイドの以下のトピックを参照してください。
を使用して料金ディメンションを追加する方法の詳細についてはAWS Marketplace 管理ポータル、 AWS Marketplace販売者ガイドの以下のトピックを参照してください。
-
AMI ベースの製品: 料金を更新します。
-
コンテナベースの製品: 料金ディメンションを追加します。
-
SaaS ベースの製品: 料金ディメンションを追加します。
-
ML 製品: サポートされていません。機械学習製品には固定料金ディメンションがあります。ただし、料金を更新することはできます。
料金ディメンションを追加するには、次の例に示すように、AddDimensions変更タイプを使用して StartChangeSet API を呼び出します。
注記
使用量、契約、消費との契約など、料金モデルのタイプを指定するディメンションを含む最初のAddDimensions変更タイプを送信したら、 AWS MarketplaceSeller Operations チームに連絡する必要があります。これらは、元の料金モデル外のタイプのディメンションを追加するのに役立ちます。
リクエストの構文
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "AddDimensions", "DetailsDocument": [ { "Description": "Description of the dimension", "Key": "UniqueApiKey", "Unit": "HostHrs", "Name": "First Dimension", "Types": [ "ExternallyMetered" ] } ], "Entity": { "Identifier": "prod-example12345", "Type": "SaaSProduct@1.0" } } ] }
AddDimensions 変更タイプに次のフィールドを指定します。
-
DetailsDocument(オブジェクトの配列) (必須) – リクエストの詳細。-
Description(文字列) (必須) – 購入者の表示ページでの長い説明となるディメンションの完全な詳細。 -
Key(文字列) (必須) – オファーのレートを定義するために使用されるファセットに を入力します。また、ディメンションを外部で計測できない場合は、 AWS Marketplace Metering Service(MMS) に発行されたディメンションを入力します。ディメンションの作成後は、これを変更することはできません。 -
Units(文字列) (必須) – ディメンションの単位タイプ。可能な単位は、ユーザー、ホスト、GB、MB、TB、Gbps、Mbps、リクエスト、ユニット、UserHrs、UnitHrs、ユニット、HostHrs、TierHrs、TaskHrs です。 -
Name(文字列) (必須) – ウェブサイト上のディメンションの表示名とお客様の請求書。-
Types(文字列の配列) (必須) (タグとも呼ばれます) – ディメンションが外部計測の計測、使用権限、またはサポートの対象であるかどうかを示します。これは、ディメンションの作成後に変更することはできません。 -
-
Metered– このディメンションで計測を実行できるように Commerce Platform の使用タイプを作成する必要があることを示します。 -
ExternallyMetered– 販売者が AWSSDK を計測できるように、公開中に AWS MarketplaceMetering Service (MMS) ディメンションを作成する必要があることを示します。 -
Entitled– 製品またはオファーの公開中にディメンションの使用権限を付与できることを示します。次の表に、サポートされている料金ディメンションと製品の組み合わせを示します。
料金ディメンションタイプ 製品のタイプ [ Metered]AMI [ Metered, ExternallyMetered]SaaS、AMI/Flexible Consumption Pricing (FCP) ExternallyMeteredが表示されると、Meteredはマスク/推測されます。[ Entitled]SaaS 契約、ProServ 製品 Entitledタグは、ソフトウェア/サービスの開始日と終了日を使用する権限を付与します。また、AMI 年間製品の使用割引を受ける権利を付与します。各使用権限は、使用権限を作成または更新AWS Marketplace Entitlement ServiceするためにDimension Keyの によって識別されます。[ Metered, ExternallyMetered, Entitled]ディメンションを前払いまたは計測できる従量制料金の契約は、[ ExternallyMetered] と [] の両方の組み合わせですEntitled。
-
-
-
-
Entity(オブジェクト) (必須) – 作成されるエンティティの名前付きタイプ。-
Identifier(文字列) (必須) – 製品 ID。詳細については、「識別子」を参照してください。 -
Type(文字列) (必須) –Typeは、製品が使用する配信方法 (製品タイプ) またはAmiProduct@1.0に基づいていますSaaSProduct@1.0。
-
レスポンスの構文
リクエストの変更セットが作成されます。このリクエストに対するレスポンスは、変更セットChangeSetArnの ChangeSetIdと を提供し、次のようになります。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
変更リクエストがキューに追加され、処理されます。これには、AWS Marketplaceガイドラインを満たしていることを確認するための情報の検証が含まれます。検証プロセスには数分から数時間かかる場合があります。
リクエストのステータスは、 を通じてAWS Marketplace 管理ポータル、または API オペレーションを使用して Catalog DescribeChangeSet API から直接確認できます。
同期検証
以下のスキーマ検証は、 のAddDimensionsアクションに固有ですAWS Marketplace Catalog API。これらの検証は、 を呼び出すときに実行されますStartChangeSet。リクエストが次の要件を満たしていない場合、HTTP レスポンスで失敗します。
| 入力フィールド | 検証ルール | HTTP コード |
|---|---|---|
| 説明 | 最大長: 1000 必須 |
400 |
| キー | 最大長: 100 パターン: [A-Za-z0-9_.-]+$ 必須 |
400 |
| ディメンションユニット | 最大長: 20 必須 |
400 |
| 名前 | 最大長: 500 必須 |
400 |
| タイプ (タグ) |
必須: 最小 1~最大 3 入力: Entitled、Metered、ExternallyMetered 必須 |
400 |
非同期エラー
以下のエラーは、 のAddDimensionsアクションに固有のものですAWS Marketplace Catalog API。これらのエラーは、変更セットの処理DescribeChangeSet後に を呼び出すと返されます。DescribeChangeSet を使用して変更リクエストのステータスを取得する方法の詳細については、「」を参照してください変更セットの使用。
| エラーコード | エラーメッセージ |
|---|---|
| 欠落データ | 更新を実行するためのデータが提供されていません。少なくとも 1 つのディメンションのデータを指定します。 |
| INVALID_DImenSION | ディメンションは 200 個以下にしてください。 |
| INVALID_DImenSION | 重複するディメンションを追加することはできません。 |
| INVALID_DImenSION | ディメンションを現在の状態 '%s' で追加することはできません。ディメンションの更新をサポートする状態は %s です。 |
| INVALID_DImenSION | ディメンションを追加できません。フィールド '%s' には、他のディメンションに重複した値 '%s' があります。 |
| INVALID_DImenSION | 各ディメンションに空でないフィールド (キー、単位、名前、タイプ) を指定します。 |
| IINVALID_TYPE | 無効なタイプ '%s' を削除します。有効なタイプは、["Metered"、"Entitled"、"ExternallyMetered"] です。 |
| INVALID_UNIT | 無効なユニット '%s' を削除します。有効な単位は、["GB"、"Gbps"、"HostHrs"、"Hosts"、"MB"、"Mbps"、"Requests"、"TaskHrs"、"TB"、"TierHrs"、"UnitHrs"、"Units"、"UserHrs"、"Users" です。 |
| INVALID_INPUT | %s フィールドに不適切なコンテンツ '%s' が見つかりました。不適切なコンテンツなしで %s を指定します。 |
| INVALID_INPUT | 無効な '%s' フィールド。商標記号の前にスペースを削除します。 |
| INVALID_INPUT | 無効な '%s' フィールド。サポートされていない文字 %s を削除します。 |
| INVALID_DImenSION | 無効なディメンションタイプの組み合わせ %s を削除します。使用できる値は %s です。 |
| INVALID_DImenSION | Metered ディメンションの無効なディメンションキー '%s' を削除します。 |
| INVALID_DImenSION | productCode '%s' の '%s' という名前のディメンションは AWS MarketplaceMetering Service の検証 %s に合格しませんでした。 |
| INVALID_DImenSION | productCode '%s' の '%s' という名前のディメンションには、 Metering Service に計測レコードがありません。製品がテストのために起動されたことがないか、設定が間違っており、 AWS MarketplaceMetering Service への適切な呼び出しが行われていない。 |
料金設定ディメンションを更新する
Catalog API を使用して、 の AMI、コンテナ、または SaaS 製品の既存の料金ディメンションを更新できますAWS Marketplace。
各ディメンションは、更新を実行するディメンションキーとディメンションタイプによって一意に識別されます。ディメンションを更新しても、元のディメンションが作成したアクティブなオファーや顧客には影響しません。
注記
を使用して料金ディメンションを更新する方法の詳細についてはAWS Marketplace 管理ポータル、 AWS Marketplace販売者ガイドの以下のトピックを参照してください。
-
AMI ベースの製品: 料金の更新
-
コンテナベースの製品: ディメンション情報の更新
-
SaaS ベースの製品: 料金ディメンションを更新する
-
機械学習製品: 製品の料金を更新する
料金ディメンションを更新するには、次の例に示すように、UpdateDimensions変更タイプを使用して StartChangeSet API オペレーションを呼び出します。
リクエストの構文
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateDimensions", "DetailsDocument": [ { "Key": "UniqueApiKey", "Types": [ "ExternallyMetered" ], "Name": "First Dimension", "Description": "Description of the dimension" } ], "Entity": { "Identifier": "prod-example12345", "Type": "SaaSProduct@1.0" } } ] }
UpdateDimensions 変更タイプで次のフィールドを使用します。
-
DetailsDocument(オブジェクトの配列) (必須) – リクエストの詳細。-
Key(文字列) (必須) – 説明と名前を変更する製品から既存のディメンションのキーを指定します。の場合UpdateDimension、このフィールドは変更するディメンションを識別するためのものです。 -
Types(文字列の配列) (必須) (タグとも呼ばれます) – ディメンションが外部計測の計測、使用権限、またはサポートをカバーしているかどうかを示します。これは、ディメンションの作成後に変更することはできません。-
Metered– このディメンションで計測を実行できるように Commerce Platform の使用タイプを作成する必要があることを示します。 -
ExternallyMetered– 販売者が AWSSDK を計測できるように、公開中に AWS Marketplace Metering Service(MMS) ディメンションを作成する必要があることを示します。 -
Entitled– 製品/オファーの公開中にディメンションの使用権限を付与できることを示します。有効な料金ディメンションタイプの組み合わせ 料金ディメンションタイプ 製品 [ Metered]AMI [ ExternallyMetered]SaaS、AMI/Flexible Consumption Pricing (FCP) ExternallyMetered表示されると、Metered はマスク/推測されます。[ Entitled]SaaS 契約、ProServe 製品 Entitledタグは、ソフトウェア/サービスセットの使用開始日と終了日を使用する権限を付与します。また、AMI 年間製品の使用割引を受ける権利を付与します。各使用権限は、使用権限を作成または更新AWS Marketplace Entitlement Serviceするための のディメンションキーによって識別されます。[ ExternallyMetered, Entitled]ディメンションを前払いまたは計測できる従量制料金の契約は、[ ExternallyMetered] と [] の両方の組み合わせですEntitled。
-
-
Description(文字列) (オプション – 購入者の表示ページの長い説明となるディメンションの完全な説明。 -
Name(文字列) オプション – ウェブサイトのディメンションの DIsplay 名とお客様の請求書。
-
-
Entity(オブジェクト) (必須) – 作成されるエンティティの名前付きタイプ。-
Identifier(文字列) (必須) – 製品 ID。詳細については、「識別子」を参照してください。 -
Type(文字列) (必須) –Typeは、製品が使用する配信方法 (製品タイプ) またはAmiProduct@1.0に基づいていますSaaSProduct@1.0。
-
レスポンスの構文
リクエストの変更セットが作成されます。このリクエストに対するレスポンスは、変更セットChangeSetArnの ChangeSetIdと を提供し、次のようになります。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
変更リクエストがキューに追加され、処理されます。これには、AWS Marketplaceガイドラインを満たしていることを確認するための情報の検証が含まれていました。検証プロセスには数分から数時間かかる場合があります。
リクエストのステータスは、 を通じてAWS Marketplace 管理ポータル、または API オペレーションを使用して Catalog DescribeChangeSet API から直接確認できます。
同期検証
以下のスキーマ検証は、 のUpdateDimensionsアクションに固有ですAWS Marketplace Catalog API。これらの検証は、 を呼び出すときに実行されますStartChangeSet。リクエストが次の要件を満たしていない場合、HTTP レスポンスで失敗します。
| 入力フィールド | 検証ルール | HTTP コード |
|---|---|---|
| 説明 |
最大長: 1000 必須 |
400 |
| キー |
最大長: 100 パターン: [A-Za-z0-9_.-]+$ 必須 |
400 |
| 名前 |
最大長: 5 必須 |
400 |
| タイプ (タグ) |
必須: 最小 1~最大 3 入力: 必須 |
422 |
非同期エラー
以下のエラーは、 のUpdateDimensionsアクションに固有のものですAWS Marketplace Catalog API。これらのエラーは、変更セットの処理DescribeChangeSet後に を呼び出すと返されます。DescribeChangeSet を使用して変更リクエストのステータスを取得する方法の詳細については、「」を参照してください変更セットの使用。
| エラーコード | エラーメッセージ |
|---|---|
| INVALID_INPUT | 無効な '%s' フィールド。商標記号の前にスペースを削除します。 |
| INVALID_INPUT | 無効な '%s' フィールド。サポートされていない文字 %s を削除します。 |
| INVALID_DImenSION | ディメンションごとに空でないフィールド ( |
| INVALID_DImenSION | ディメンションを更新できません。フィールド |
| INVALID_DImenSION | 同じリクエストでキー '%s' とタイプ '%s' を使用して同じディメンションを複数回更新することはできません。 |
| INVALID_DImenSION | ディメンションを制限することはできません。タイプ '%s' のディメンションキー '%s' は存在しません。 |
| INVALID_DImenSION | ディメンションを更新できません。ディメンションキー '%s' は です |
| INVALID_DImenSION | すでに制限されているディメンションのディメンションは更新できません。 |
料金ディメンションを制限する
Catalog API を使用して、 の AMI または SaaS 製品の既存の料金ディメンションを制限できますAWS Marketplace。
各ディメンションは、更新を実行するディメンションキーとディメンションタイプによって一意に識別されます。ディメンションを制限しても、元のディメンションが作成したアクティブなオファーや顧客には影響しません。
料金ディメンションを制限するには、 RestrictDimensions変更タイプを使用して StartChangeSet API を呼び出します。
注記
料金ディメンションの制限は、製品がドラフト状態にある場合にのみ使用できます。製品が制限付きまたはパブリック状態に移行した後は、変更は許可されません。
次の例は、SaaS 製品のEntitledディメンションを制限する方法を示しています。
リクエストの構文
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "RestrictDimensions", "DetailsDocument": [ { "Key": "UniqueApiKey", "Types": ["Entitled"] } ], "Entity": { "Identifier": "prod-example12345", "Type": "SaaSProduct@1.0" } } ] }
RestrictDimensions 変更タイプで次のフィールドを使用します。
-
DetailsDocument(オブジェクトの配列) (必須) – リクエストの詳細。-
Key(文字列) (必須) – 説明と名前を変更する製品から既存のディメンションのキーを指定します。の場合RestrictDimensions、このフィールドは変更するディメンションを識別するためのものです。 -
Types(文字列の配列) (必須) (タグとも呼ばれます) – ディメンションが外部計測の計測、使用権限、またはサポートをカバーしているかどうかを示します。これは、ディメンションの作成後に変更することはできません。-
["ExternallyMetered", "Entitled"]– SaaS 契約では、ディメンションを前払いまたは計測できる従量制料金でのみ、これらのタイプを組み合わせることができます。 -
["Metered"]– AMI 製品の時間単位の料金ディメンションの場合。このディメンションで計測を実行できるように Commerce Platform の使用タイプを作成する必要があることを示します。 -
["ExternallyMetered"]– AMI、コンテナ、SaaS 製品の柔軟な消費料金ディメンション (カスタム計測とも呼ばれます) 用。販売者が SDK をAWS計測できるように、 Marketplace Metering Service (MMS) ディメンションを公開中に作成する必要があることを示しますAWS。 -
["Entitled"]– SaaS 契約とプロフェッショナルサービス製品の契約料金ディメンション用。このタグは、ソフトウェアまたはサービスを使用する権限を付与し、使用の開始日と終了日を設定し、AMI 年間製品の使用割引権限を付与します。各使用権限は、使用権限を作成および更新AWS Marketplace Entitlement Serviceするための のディメンションキーによって識別されます。キーは、製品およびオファーの公開中にディメンションの使用権限を付与できることを示します。
-
-
-
Entity(オブジェクト) (必須) – 作成されるエンティティの名前付きタイプ。-
Identifier(文字列) (必須) – 製品 ID。詳細については、「識別子」を参照してください。 -
Type(文字列) (必須) –Typeは、製品の配信方法 (製品タイプ):AmiProduct@1.0または に基づいていますSaaSProduct@1.0。
-
レスポンスの構文
リクエストの変更セットが作成されます。このリクエストに対するレスポンスは、変更セットChangeSetArnの ChangeSetIdと を提供し、次のようになります。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
変更リクエストがキューに追加され、処理されます。これには、AWS Marketplaceガイドラインを満たしていることを確認するための情報の検証が含まれていました。検証プロセスには数分から数時間かかる場合があります。
リクエストのステータスを確認するには、 を使用するかAWS Marketplace 管理ポータル、 DescribeChangeSet API を呼び出します。
同期検証
以下のスキーマ検証は、 のRestrictDimensionsアクションに固有ですAWS Marketplace Catalog API。これらの検証は、 を呼び出すときに実行されますStartChangeSet。リクエストが次の要件を満たしていない場合、HTTP レスポンスで失敗します。
| 入力フィールド | 検証ルール | HTTP コード |
|---|---|---|
| 説明 |
最大長: 1000 必須 |
400 |
| キー |
最大長: 100 パターン: [A-Za-z0-9_.-]+$ 必須 |
400 |
| 名前 |
最大長: 5 必須 |
400 |
| タイプ (タグ) |
必須: 最小 1~最大 3 入力: 必須 |
400 |
非同期エラー
以下のエラーは、 のRestrictDimensionsアクションに固有のものですAWS Marketplace Catalog API。これらのエラーは、変更セットの処理DescribeChangeSet中に を呼び出すと返されます。DescribeChangeSet を使用して変更リクエストのステータスを取得する方法の詳細については、「」を参照してください変更セットの使用。
| エラーコード | エラーメッセージ |
|---|---|
| INVALID_INPUT | 無効な '%s' フィールド。商標記号の前にスペースを削除します。 |
| INVALID_INPUT | '%s' フィールドが無効です。サポートされていない文字 %s を削除します。 |
| INVALID_DImenSION | タイプ '%s' のディメンションキー '%s' は既に制限されています |
| INVALID_DImenSION | ディメンションを制限することはできません。タイプ '%s' のディメンションキー '%s' は存在しません |
| INVALID_DImenSION | 重複するディメンションを制限することはできません。 |
| INVALID_DImenSION | すべての使用権限のあるディメンションを制限することはできません。少なくとも 1 つのアクティブな使用権限のあるディメンションが必要です。 |
| INVALID_DImenSION | タイプ '%s' のディメンションキー '%s' は、異なるタイプ '%s' の別のディメンションに関連付けられます。有効になるには、同じキーの両方のディメンションを同時に制限する必要があります。 |
ターゲット設定を更新する
Catalog API を使用して、UpdateTargeting変更タイプを呼び出すことで、PublicAMI、コンテナ、ML、または SaaS 製品が表示されるAWS Marketplace前に で表示できる AWS アカウントIDs を追加できます。
マネージドカタログオペレーション (MCO) アカウントは、新しい製品の作成時に、許可されたアカウントリストに自動的に追加されます。これらの MCO アカウントは、許可されたアカウントを表示するときにAWS Marketplace管理ポータル (AMMP) で販売者に表示され、DescribeEntityAPI レスポンスの Targetingセクションに表示されます。
注記
を使用した AWS アカウントIDs の追加の詳細についてはAWS Marketplace 管理ポータル、 AWS Marketplace販売者ガイドの以下のトピックを参照してください。
-
AMI ベースの製品: 許可リストを更新する (プレビューアカウント)
-
コンテナベースの製品: AWS アカウント IDs の許可リストの更新
-
SaaS ベースの製品: AWS アカウント IDs の許可リストの更新
-
機械学習製品: 許可リストの更新
AMI、コンテナ、ML、または SaaS 製品を表示できる AWS アカウントIDs を表示するには、次の例に示すように、UpdateTargeting変更タイプを使用して StartChangeSet API オペレーションを呼び出します。
リクエストの構文
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateTargeting", "Entity": { "Type": "SaaSProduct@1.0", "Identifier": "prod-example12345" }, "DetailsDocument": { "PositiveTargeting": { "BuyerAccounts": [ "1112223334444" ] } } } ] }
UpdateTargeting 変更タイプで次のフィールドを使用します。
-
Entity(オブジェクト) (必須) – 作成されるエンティティの名前付きタイプ。-
Identifier(文字列) (必須) – 製品 ID。詳細については、「識別子」を参照してください。 -
Type(文字列) (必須) –Typeは、製品が使用する配信方法 (製品タイプ) に基づいています。AmiProduct@1.0、MachineLearningProduct@1.0、またはSaaSProduct@1.0。
-
-
DetailsDocument(オブジェクト) (必須) – ChangeSet の実行に必要な詳細。-
PositiveTargeting(オブジェクト) (オプション) – ポジティブターゲティングは、オファーへのアクセスを許可するために購入者のプロファイルが満たす必要がある基準を定義します。このフィールドはオプションですが、このフィールドが存在する場合は少なくとも 1 つのターゲティングオプションを指定する必要があります。-
BuyerAccounts(文字列の配列) (オプション) – AWS アカウント (プライベートオファーとも呼ばれます) に基づくターゲティングを許可するオプションとして一覧表示します。オファーを AWS アカウントにターゲットにしない場合、このフィールドは省略する必要があります。
-
-
レスポンスの構文
リクエストの変更セットが作成されます。このリクエストに対するレスポンスは、変更セットChangeSetArnの ChangeSetIdと を提供し、次のようになります。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
変更リクエストがキューに追加され、処理されます。これには、AWS Marketplaceガイドラインを満たしていることを確認するための情報の検証が含まれていました。検証プロセスには数分から数時間かかる場合があります。
リクエストのステータスを確認するには、 を使用するAWS Marketplace 管理ポータルか、 DescribeChangeSet API を呼び出します。
リクエストが完了すると ( Statusが の場合SUCCEEDED)、新しい ProductId が生成されます。
同期検証
以下のスキーマ検証は、 のUpdateTargetingアクションに固有ですAWS Marketplace Catalog API。これらの検証は、 を呼び出すときに実行されますStartChangeSet。リクエストが次の要件を満たしていない場合、HTTP レスポンスで失敗します。
| ターゲティングのタイプ | 有効な現在の可視性状態 | BuyerAccounts (入力) | チェック |
|---|---|---|---|
| 肯定的 | パブリック、Limited、または Draft |
12 桁の AWS アカウントID 文字列の配列。 最小サイズ: 0。 最大サイズ: 5000。 |
入力は、現在のドキュメントターゲットアカウントとは異なる必要があります。 入力は有効である必要がありますAWS アカウント。 |
非同期エラー
以下のエラーは、 のDescribeChangeSetアクションに固有のものですAWS Marketplace Catalog API。これらのエラーは、変更セットの処理DescribeChangeSet後に を呼び出すと返されます。DescribeChangeSet を使用して変更リクエストのステータスを取得する方法の詳細については、「」を参照してください変更セットの使用。
| エラーコード | エラーメッセージ |
|---|---|
| INVALID_PRODUCT_VISIBILITY | 既存のパブリック |
| INVALID_AWS_ACCOUNT_IDS | validAWS アカウントIDs.AWS アカウントnot found: [x, y, z] を指定します。 |
| ValidationException | プロフェッショナルサービス製品には許可リストがありません。他の製品タイプとは異なり、限定された状態のプロフェッショナルサービス製品は、許可リストを必要とせずに任意の購入者に拡張できます。 |
製品の可視性を更新する
Catalog API を使用して、 の AMI、コンテナ、ML、または SaaS 製品の可視性 (ライフサイクル状態とも呼ばれます) を更新できますAWS Marketplace。
注記
を使用した製品の可視性の更新の詳細についてはAWS Marketplace 管理ポータル、 AWS Marketplace販売者ガイドの以下のトピックを参照してください。
-
AMI ベースの製品: 製品の可視性を更新する
-
コンテナベースの製品: 製品の可視性の更新
-
SaaS ベースの製品: 製品の可視性を更新する
-
機械学習製品: 製品の可視性の更新
許可されるターゲットライフサイクルの状態は、Limited、Public、または ですRestricted。
Limited-
製品は完了し、
ReleaseProductは正常に完了しましたChangeType。販売者は、この状態の製品の詳細を表示できます。製品は公開されていません。ただし、販売者は特定の購入者をターゲットにして、 が製品をプレビューすることを許可できます。 Public-
製品は に表示されますAWS Marketplace。購入者は製品を表示してサブスクライブできます。
Restricted-
製品は一般公開されなくなり、新しいサブスクライバーを受け入れません。既存のサブスクライバーは、サブスクリプションの有効期限が切れるまでこの製品を引き続き使用できます。
注記
UpdateVisibility 変更タイプには AWS MarketplaceSeller Operations チームによる手動レビューが必要であり、実行時間が長くなります。独自の変更セットでUpdateVisibility個別に を使用します。
製品の可視性を更新するには、次の例に示すように、UpdateVisibility変更タイプを使用して StartChangeSet API オペレーションを呼び出します。
リクエストの構文
TargetVisibility が Publicまたは の場合Limited。
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateVisibility", "Entity": { "Type": "SaaSProduct@1.0", "Identifier": "prod-example12345" }, "DetailsDocument": { "TargetVisibility": "Public" } } ] }
TargetVisibility が の場合Restricted。
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "UpdateVisibility", "Entity": { "Type": "SaaSProduct@1.0", "Identifier": "prod-example12345" }, "DetailsDocument": { "TargetVisibility": "Restricted", "ReplacementProductId": "prod-example54321" } } ] }
UpdateVisibility 変更タイプを追加するフィールドの情報を入力します。
-
Entity(オブジェクト) (必須) – 作成されるエンティティの名前付きタイプ。 -
DetailsDocument(オブジェクト) (必須) – を実行するために必要な詳細ChangeSet。-
-
TargetVisibility– 製品の意図した新しい可視性。想定される値:
Public、Limited、Restricted。 -
ReplacementProductId(文字列) (オプション) – 製品の代替製品 IDRestricted。現在のサブスクライバーに製品制限を通知するために使用されます。は
Restrictedに対してのみ使用できますTargetVisibility。
-
-
同期検証
以下のスキーマ検証は、 のUpdateVisibilityアクションに固有ですAWS Marketplace Catalog API。これらの検証は、 を呼び出すときに実行されますStartChangeSet。リクエストが次の要件を満たしていない場合、HTTP レスポンスで失敗します。
| ターゲティングのタイプ | 有効な現在の状態 | ReplacementProductId (入力) | 検証チェック |
|---|---|---|---|
| Public | Limited および Restricted |
許可されていません | 有効な現在の状態 |
Limited |
パブリック および Restricted |
許可されていません | 有効な現在の状態 |
Restricted |
パブリック および Limited |
文字列 (オプション) | ReplacementProductId は、既存の製品Limitedまたはパブリック製品に属している必要があります。 |
この変更タイプをトリガーした後、完了までに最大 37 日かかる場合があります。これには、 AWS MarketplaceSeller Operations Team がレビュー、監査、承認する必要がある時間が含まれます。製品を制限する場合、 AWS MarketplaceSeller Operations Team が監査を開始する前に、 を呼び出しCancelChangeSetて 24 時間変更する必要があります。詳細については、「CancelChangeSet」を参照してください。
レスポンスの構文
リクエストの変更セットが作成されます。このリクエストに対するレスポンスは、変更セットChangeSetArnの ChangeSetIdと を提供し、次のようになります。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
変更リクエストがキューに追加され、処理されます。これには、AWS Marketplaceガイドラインを満たしていることを確認するための情報の検証が含まれていました。検証プロセスには数分から数時間かかる場合があります。
リクエストのステータスは、 を通じてAWS Marketplace 管理ポータル、または API オペレーションを使用して Catalog DescribeChangeSet API から直接確認できます。
リクエストが完了すると ( Statusが の場合SUCCEEDED)、新しい ProductId が生成されます。
非同期エラー
以下のエラーは、 のUpdateVisibilityアクションに固有のものですAWS Marketplace Catalog API。これらのエラーは、変更セットの処理DescribeChangeSet後に を呼び出すと返されます。DescribeChangeSet を使用して変更リクエストのステータスを取得する方法の詳細については、「」を参照してください変更セットの使用。
| エラーコード | エラーメッセージ |
|---|---|
| INVALID_PRODUCT_STATE | 既存の |
| INVALID_TARGET_VISIBILITY | 有効なターゲットの可視性状態を指定します: |
| EMPTY_TARGET_VISIBILITY | 有効なターゲットの可視性状態を指定します: |
| INVALID_REPLACEMENT_PRODUCT_ID | 既存の |
| INVALID_REPLACEMENT_PRODUCT_ID | 代替製品 ID は、製品を制限する場合にのみ有効です。 |
| AUDIT_ERROR | MCO 手動レビューによって異なります。 |
| MISSING_SELLER_PROFILE_INFORMATION | 製品を Public に更新する前に、販売者アカウントにパブリックプロファイルを追加する必要があります。 |
製品を公開する
Catalog API を使用して、DraftAMI、コンテナ、ML、または SaaS 製品を Limited状態に公開できますAWS Marketplace。
注記
AmiProduct@1.0 および の場合SaaSProduct@1.0、ReleaseProduct変更タイプには、この製品用に作成された対応するドラフトパブリックOffer@1.0エンティティReleaseOfferの変更タイプが伴う必要があります。
製品を公開するには、次の例に示すように、ReleaseProduct変更タイプを使用して StartChangeSet API オペレーションを呼び出します。
リクエストの構文
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "ReleaseProduct", "Entity": { "Type": "SaaSProduct@1.0", "Identifier": "prod-example12345" }, "DetailsDocument": {} } ] }
ReleaseProduct 変更タイプに追加するフィールドの情報を入力します。この変更タイプはパラメータペイロードを受け取りません。
-
Entity(オブジェクト) (必須) – 作成されるエンティティの名前付きタイプ。 -
DetailsDocument(オブジェクト) (必須) - 空のオブジェクトである必要があります。変更タイプReleaseProductは詳細を受け入れません。
レスポンスの構文
リクエストの変更セットが作成されます。このリクエストに対するレスポンスは、変更セットChangeSetArnの ChangeSetIdと を提供し、次のようになります。
{ "ChangeSetId": "example123456789012abcdef", "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef" }
変更リクエストがキューに追加され、処理されます。これには、AWS Marketplaceガイドラインを満たしていることを確認するための情報の検証が含まれていました。検証プロセスには数分から数時間かかる場合があります。
リクエストのステータスは、 を通じてAWS Marketplace 管理ポータル、または API オペレーションを使用して Catalog DescribeChangeSet API から直接確認できます。
リクエストが完了すると ( Statusが の場合SUCCEEDED)、新しい ProductId が生成されます。
非同期エラー
以下のエラーは、 のReleaseProductアクションに固有のものですAWS Marketplace Catalog API。これらのエラーは、変更セットの処理DescribeChangeSet後に を呼び出すと返されます。DescribeChangeSet を使用して変更リクエストのステータスを取得する方法の詳細については、「」を参照してください変更セットの使用。
| エラーコード | エラーメッセージ |
|---|---|
| VALIDATION_FAILED | 説明情報を入力します。 |
| VALIDATION_FAILED | バージョン情報を入力します。 |
| VALIDATION_FAILED | ディメンション情報を入力します。 |
| VALIDATION_FAILED | Description|PromotionalResources|SupportInformation 情報を入力します。 |
製品 ID を検索する
Catalog API でAWS Marketplace変更する前に、製品の製品 ID を取得する必要があります。サーバー製品の製品 ID を検索するには、次の 2 つの方法があります。
-
を開きAWS Marketplace 管理ポータル、販売者アカウントでサインインします。製品メニューからサーバー製品を選択し、関心のある製品を選択します。製品 ID は製品概要セクションに表示されます。
-
EntityTypeAmiProductまたはContainerProduct、、MachineLearningProduct、またはSaaSProductでListEntitiesアクションを使用して、製品 IDs を含む製品のリストを Catalog API 経由でDataProduct取得します。ListEntitiesでは、エンティティタイプのバージョン ( など) を含めない必要がありますAmiProduct@1.0。
注記
製品 ID は、製品が公開された後にのみ使用でき、少なくとも自分自身に表示されますAWS Marketplace。最初に製品を作成すると、確認されて完全に作成されるまでに数日かかることがあります。この間、製品 ID は利用できません。
以下のトピックでは、エンティティ ID、製品タイトル、最終更新日、または可視性をフィルタリングして製品を検索する方法について説明します。
トピック
製品タイトルに基づいて製品を検索する
リクエスト
POST /ListEntities HTTP/1.1 Content-Type: application/json { "Catalog": "AWSMarketplace", "EntityType": "AmiProduct", "MaxResults": 10, "EntityTypeFilters": { "AmiProductFilters": { "ProductTitle": { "WildCardValue": "XYZ" } } } }
レスポンス
HTTP/1.1 200 Content-type: application/json { "EntitySummaryList": [ { "EntityArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example-abcd-1234", "EntityId": "example1-abcd-1234-5ef6-7890abcdef12@1", "EntityType": "AmiProduct", "LastModifiedDate": "2018-02-27T13:45:22Z", "AmiProductSummary": { "ProductTitle": "ABC-XYZ-123", "Visibility": "Public" } } ], "NextToken": "" }
最終変更日に基づいて製品を検索する
リクエスト
POST /ListEntities HTTP/1.1 Content-Type: application/json { "Catalog": "AWSMarketplace", "EntityType": "AmiProduct", "MaxResults": 10, "EntityTypeFilters": { "AmiProductFilters": { "LastModifiedDate": { "DateRange": { "BeforeValue": "2018-03-27T13:45:22Z", "AfterValue": "2018-01-27T13:45:22Z" } } } } }
レスポンス
HTTP/1.1 200 Content-type: application/json { "EntitySummaryList": [ { "EntityArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example-abcd-1234", "EntityId": "example1-abcd-1234-5ef6-7890abcdef12@1", "EntityType": "AmiProduct", "LastModifiedDate": "2018-02-27T13:45:22Z", "AmiProductSummary": { "ProductTitle": "ABC-XYZ-123", "Visibility": "Public" } } ], "NextToken": "" }
製品の可視性に基づいて製品を検索する
リクエスト
POST /ListEntities HTTP/1.1 Content-Type: application/json { "Catalog": "AWSMarketplace", "EntityType": "AmiProduct", "MaxResults": 10, "EntityTypeFilters": { "AmiProductFilters": { "Visibility": { "ValueList": [ "Public" ] } } } }
レスポンス
HTTP/1.1 200 Content-type: application/json { "EntitySummaryList": [ { "EntityArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example-abcd-1234", "EntityId": "example1-abcd-1234-5ef6-7890abcdef12@1", "EntityType": "AmiProduct", "LastModifiedDate": "2018-02-27T13:45:22Z", "AmiProductSummary": { "ProductTitle": "ABC-XYZ-123", "Visibility": "Public" } } ], "NextToken": "" }
製品のタイトル、最終更新日、製品の可視性に基づいて製品を検索する
リクエスト
POST /ListEntities HTTP/1.1 Content-Type: application/json { "Catalog": "AWSMarketplace", "EntityType": "AmiProduct", "MaxResults": 10, "EntityTypeFilters": { "AmiProductFilters": { "LastModifiedDate": { "DateRange": { "BeforeValue": "2018-03-27T13:45:22Z", "AfterValue": "2018-01-27T13:45:22Z" } }, "Visibility": { "ValueList": [ "Public" ] }, "ProductTitle": { "ValueList": [ "ABC-XYZ-123" ] } } } }
レスポンス
HTTP/1.1 200 Content-type: application/json { "EntitySummaryList": [ { "EntityArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example-abcd-1234", "EntityId": "example1-abcd-1234-5ef6-7890abcdef12@1", "EntityType": "AmiProduct", "LastModifiedDate": "2018-02-27T13:45:22Z", "AmiProductSummary": { "ProductTitle": "ABC-XYZ-123", "Visibility": "Public" } } ], "NextToken": "" }
製品に関する追加の詳細を取得する
エンティティ ID と DescribeEntityアクションを使用して、製品に関する追加の詳細を取得できます。
リクエスト
GET /DescribeEntity?catalog=AWSMarketplace&entityId=example-abcd-1234HTTP/1.1
レスポンス
HTTP/1.1 200 Content-type: application/json { "DetailsDocument": { "ProductTitle": "ABC-XYZ-123", "ShortDescription": "My product short description.", "LongDescription": "My product longer description.", "Sku": "123example456", "SupportDescription": "Need help? Contact our experts at support@example.com \n\nYour purchase includes 24x7 support.", "Categories": [ "Operating Systems", "Network Infrastructure", "Application Development" ] } "EntityArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example-abcd-1234", "EntityId": "example1-abcd-1234-5ef6-7890abcdef12@1", "EntityType": "AmiProduct", "LastModifiedDate": "2018-02-27T13:45:22Z", }
変更セットのステータスとエラー
AWS MarketplaceCatalog API で販売者製品に変更を加えるには、実行する変更を記述する変更セットを作成し、 StartChangeSetアクションを使用して変更を開始します。リクエストからの変更の完了には、リクエストに応じて数分から数時間以上かかる場合があります。このリクエストに対するレスポンスは次のようになります。
{
"ChangeSetId": "example123456789012abcdef",
"ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
変更リクエストはキューに追加され、製品のAWS Marketplaceガイドラインを満たしていることを確認するためにファイルと情報をスキャンするなど、処理されます。変更リクエストによっては、このプロセスに数分から数日かかる場合があります。リクエストのステータスは、 を通じてAWS Marketplace 管理ポータル、または DescribeChangeSetアクションを使用して Catalog API で確認できます。変更セットに関する詳細については、「変更セットの使用」を参照してください。
リクエストのステータスを確認するには、 DescribeChangeSetアクションを使用します。
POST /DescribeChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSetID": "" }example123456789012abcdef
この呼び出しの結果は次のようになります (この場合は、コンテナ製品に新しいバージョンを追加する場合)。
{
"ChangeSetId": "example123456789012abcdef",
"ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef",
"ChangeSetName": "Submitted by 123456789012",
"StartTime": "2020-10-27T22:21:26Z",
"EndTime": "2020-10-27T22:32:19Z",
"Status": "SUCCEEDED",
"ChangeSet":
[
{
"ChangeType": "AddDeliveryOptions",
"Entity":
{
"Type": "ContainerProduct@1.0",
"Identifier": "example-1234-abcd-56ef-abcdef12345678@4"
},
"Details": "{\"Version\": {\"VersionTitle\": \"1.1\",\"ReleaseNotes\": \"Minor bug fix\"},\"DeliveryOptions\": [{\"DeliveryOptionTitle\": \"EKSDelivery\",\"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\"}}},{\"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}\"}]}}}]}",
"DetailsDocument":
{
"Version":
{
"VersionTitle": "1.1",
"ReleaseNotes": "Minor bug fix"
},
"DeliveryOptions":
[
{
"DeliveryOptionTitle": "EKSDelivery",
"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"
}
}
},
{
"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}"
}
]
}
}
}
]
},
"ErrorDetailList":
[]
}
]
}
Status フィールドには、リクエストの現在のステータスが表示されます。この場合は、 ですSUCCEEDED。
失敗した場合、結果には 2 種類のエラーが含まれる可能性があります。ほとんどのエラーの場合、エラーメッセージは直接含まれます。ただし、製品のセキュリティ脆弱性のスキャン中に見つかったエラーには、 ErrorMessageフィールドで見つかったすべてのエラーを一覧表示するファイルへの URL が含まれます。スキャン中に見つかったエラーにはErrorCodeSCAN_ERROR「」があります。
{
"ChangeSetId": "example123456789012abcdef",
"ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef",
"ChangeSetName": "Submitted by 123456789012",
"StartTime": "2020-10-27T22:21:26Z",
"EndTime": "2020-10-27T22:32:19Z",
"Status": "FAILED",
"FailureDescription": "Change set preparation has failed. For details see 'ErrorDetailList'.",
"ChangeSet":
[
{
"ChangeType": "AddDeliveryOptions",
"Entity":
{
"Type": "ContainerProduct@1.0",
"Identifier": "example-1234-abcd-56ef-abcdef12345678@4"
},
"Details": "{\"Version\": {\"VersionTitle\": \"1.1\",\"ReleaseNotes\": \"Minor bug fix\"},\"DeliveryOptions\": [{\"DeliveryOptionTitle\": \"EKSDelivery\",\"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\"}}},{\"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}\"}]}}}]}",
"DetailsDocument":
{
"Version":
{
"VersionTitle": "1.1",
"ReleaseNotes": "Minor bug fix"
},
"DeliveryOptions":
[
{
"DeliveryOptionTitle": "EKSDelivery",
"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"
}
}
},
{
"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}"
}
]
}
}
}
]
},
"ErrorDetailList":
[
{
"ErrorCode": "DUPLICATE_VERSION_TITLE",
"ErrorMessage": "The version title must be different from any other version titles of this product."
},
{
"ErrorCode": "SCAN_ERROR",
"ErrorMessage": "https://123sample456.cloudfront.net/example-1234-abcd-5678-abcdef12345678/1234abcdef567890"
}
]
}
]
}
この例では、1 つのエラーが直接報告されています (DUPLICATE_VERSION_TITLE)。もう 1 つのエラーには、エラーメッセージを含むファイルがあります (1 つの は、リンクされているファイルで複数のエラーを検出SCAN_ERRORできます)。
注記
で返されたリンクErrorMessageは 60 日間有効です。