Skip to content

Commit d8c7edb

Browse files
author
AWS
committed
AWS Marketplace Discovery Update: AWS Marketplace Discovery API provides an interface that enables programmatic access to the AWS Marketplace catalog, including searching and browsing listings, retrieving product details and fulfillment options, and accessing public and private offer pricing and terms.
1 parent a127e26 commit d8c7edb

File tree

7 files changed

+3568
-0
lines changed

7 files changed

+3568
-0
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"type": "feature",
3+
"category": "AWS Marketplace Discovery",
4+
"contributor": "",
5+
"description": "AWS Marketplace Discovery API provides an interface that enables programmatic access to the AWS Marketplace catalog, including searching and browsing listings, retrieving product details and fulfillment options, and accessing public and private offer pricing and terms."
6+
}
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2+
<!--
3+
~ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4+
~
5+
~ Licensed under the Apache License, Version 2.0 (the "License").
6+
~ You may not use this file except in compliance with the License.
7+
~ A copy of the License is located at
8+
~
9+
~ http://aws.amazon.com/apache2.0
10+
~
11+
~ or in the "license" file accompanying this file. This file is distributed
12+
~ on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
13+
~ express or implied. See the License for the specific language governing
14+
~ permissions and limitations under the License.
15+
--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
16+
<modelVersion>4.0.0</modelVersion>
17+
<parent>
18+
<groupId>software.amazon.awssdk</groupId>
19+
<artifactId>services</artifactId>
20+
<version>2.42.31-SNAPSHOT</version>
21+
</parent>
22+
<artifactId>marketplacediscovery</artifactId>
23+
<name>AWS Java SDK :: Services :: Marketplace Discovery</name>
24+
<description>The AWS Java SDK for Marketplace Discovery module holds the client classes that are used for
25+
communicating with Marketplace Discovery.
26+
</description>
27+
<url>https://aws.amazon.com/sdkforjava</url>
28+
<build>
29+
<plugins>
30+
<plugin>
31+
<groupId>org.apache.maven.plugins</groupId>
32+
<artifactId>maven-jar-plugin</artifactId>
33+
<configuration>
34+
<archive>
35+
<manifestEntries>
36+
<Automatic-Module-Name>software.amazon.awssdk.services.marketplacediscovery</Automatic-Module-Name>
37+
</manifestEntries>
38+
</archive>
39+
</configuration>
40+
</plugin>
41+
</plugins>
42+
</build>
43+
<dependencies>
44+
<dependency>
45+
<groupId>software.amazon.awssdk</groupId>
46+
<artifactId>protocol-core</artifactId>
47+
<version>${awsjavasdk.version}</version>
48+
</dependency>
49+
<dependency>
50+
<groupId>software.amazon.awssdk</groupId>
51+
<artifactId>aws-json-protocol</artifactId>
52+
<version>${awsjavasdk.version}</version>
53+
</dependency>
54+
<dependency>
55+
<groupId>software.amazon.awssdk</groupId>
56+
<artifactId>http-auth-aws</artifactId>
57+
<version>${awsjavasdk.version}</version>
58+
</dependency>
59+
</dependencies>
60+
</project>
Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
{
2+
"version": "1.0",
3+
"parameters": {
4+
"UseFIPS": {
5+
"builtIn": "AWS::UseFIPS",
6+
"required": true,
7+
"default": false,
8+
"documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.",
9+
"type": "boolean"
10+
},
11+
"Endpoint": {
12+
"builtIn": "SDK::Endpoint",
13+
"required": false,
14+
"documentation": "Override the endpoint used to send this request",
15+
"type": "string"
16+
},
17+
"Region": {
18+
"builtIn": "AWS::Region",
19+
"required": false,
20+
"documentation": "The AWS region used to dispatch the request.",
21+
"type": "string"
22+
}
23+
},
24+
"rules": [
25+
{
26+
"conditions": [
27+
{
28+
"fn": "isSet",
29+
"argv": [
30+
{
31+
"ref": "Endpoint"
32+
}
33+
]
34+
}
35+
],
36+
"rules": [
37+
{
38+
"conditions": [
39+
{
40+
"fn": "booleanEquals",
41+
"argv": [
42+
{
43+
"ref": "UseFIPS"
44+
},
45+
true
46+
]
47+
}
48+
],
49+
"error": "Invalid Configuration: FIPS and custom endpoint are not supported",
50+
"type": "error"
51+
},
52+
{
53+
"conditions": [],
54+
"endpoint": {
55+
"url": {
56+
"ref": "Endpoint"
57+
},
58+
"properties": {},
59+
"headers": {}
60+
},
61+
"type": "endpoint"
62+
}
63+
],
64+
"type": "tree"
65+
},
66+
{
67+
"conditions": [],
68+
"rules": [
69+
{
70+
"conditions": [
71+
{
72+
"fn": "isSet",
73+
"argv": [
74+
{
75+
"ref": "Region"
76+
}
77+
]
78+
}
79+
],
80+
"rules": [
81+
{
82+
"conditions": [
83+
{
84+
"fn": "aws.partition",
85+
"argv": [
86+
{
87+
"ref": "Region"
88+
}
89+
],
90+
"assign": "PartitionResult"
91+
}
92+
],
93+
"rules": [
94+
{
95+
"conditions": [
96+
{
97+
"fn": "booleanEquals",
98+
"argv": [
99+
{
100+
"ref": "UseFIPS"
101+
},
102+
true
103+
]
104+
}
105+
],
106+
"endpoint": {
107+
"url": "https://discovery-marketplace-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",
108+
"properties": {},
109+
"headers": {}
110+
},
111+
"type": "endpoint"
112+
},
113+
{
114+
"conditions": [],
115+
"endpoint": {
116+
"url": "https://discovery-marketplace.{Region}.{PartitionResult#dualStackDnsSuffix}",
117+
"properties": {},
118+
"headers": {}
119+
},
120+
"type": "endpoint"
121+
}
122+
],
123+
"type": "tree"
124+
}
125+
],
126+
"type": "tree"
127+
},
128+
{
129+
"conditions": [],
130+
"error": "Invalid Configuration: Missing Region",
131+
"type": "error"
132+
}
133+
],
134+
"type": "tree"
135+
}
136+
]
137+
}
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
{
2+
"testCases": [
3+
{
4+
"documentation": "For custom endpoint with region not set and fips disabled",
5+
"expect": {
6+
"endpoint": {
7+
"url": "https://example.com"
8+
}
9+
},
10+
"params": {
11+
"Endpoint": "https://example.com",
12+
"UseFIPS": false
13+
}
14+
},
15+
{
16+
"documentation": "For custom endpoint with fips enabled",
17+
"expect": {
18+
"error": "Invalid Configuration: FIPS and custom endpoint are not supported"
19+
},
20+
"params": {
21+
"Endpoint": "https://example.com",
22+
"UseFIPS": true
23+
}
24+
},
25+
{
26+
"documentation": "For region us-east-1 with FIPS enabled and DualStack enabled",
27+
"expect": {
28+
"endpoint": {
29+
"url": "https://discovery-marketplace-fips.us-east-1.api.aws"
30+
}
31+
},
32+
"params": {
33+
"Region": "us-east-1",
34+
"UseFIPS": true
35+
}
36+
},
37+
{
38+
"documentation": "For region us-east-1 with FIPS disabled and DualStack enabled",
39+
"expect": {
40+
"endpoint": {
41+
"url": "https://discovery-marketplace.us-east-1.api.aws"
42+
}
43+
},
44+
"params": {
45+
"Region": "us-east-1",
46+
"UseFIPS": false
47+
}
48+
},
49+
{
50+
"documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled",
51+
"expect": {
52+
"endpoint": {
53+
"url": "https://discovery-marketplace-fips.cn-northwest-1.api.amazonwebservices.com.cn"
54+
}
55+
},
56+
"params": {
57+
"Region": "cn-northwest-1",
58+
"UseFIPS": true
59+
}
60+
},
61+
{
62+
"documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled",
63+
"expect": {
64+
"endpoint": {
65+
"url": "https://discovery-marketplace.cn-northwest-1.api.amazonwebservices.com.cn"
66+
}
67+
},
68+
"params": {
69+
"Region": "cn-northwest-1",
70+
"UseFIPS": false
71+
}
72+
},
73+
{
74+
"documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled",
75+
"expect": {
76+
"endpoint": {
77+
"url": "https://discovery-marketplace-fips.us-gov-west-1.api.aws"
78+
}
79+
},
80+
"params": {
81+
"Region": "us-gov-west-1",
82+
"UseFIPS": true
83+
}
84+
},
85+
{
86+
"documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled",
87+
"expect": {
88+
"endpoint": {
89+
"url": "https://discovery-marketplace.us-gov-west-1.api.aws"
90+
}
91+
},
92+
"params": {
93+
"Region": "us-gov-west-1",
94+
"UseFIPS": false
95+
}
96+
},
97+
{
98+
"documentation": "Missing region",
99+
"expect": {
100+
"error": "Invalid Configuration: Missing Region"
101+
}
102+
}
103+
],
104+
"version": "1.0"
105+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
{
2+
"pagination": {
3+
"GetOfferTerms": {
4+
"input_token": "nextToken",
5+
"output_token": "nextToken",
6+
"limit_key": "maxResults",
7+
"result_key": "offerTerms"
8+
},
9+
"ListFulfillmentOptions": {
10+
"input_token": "nextToken",
11+
"output_token": "nextToken",
12+
"limit_key": "maxResults",
13+
"result_key": "fulfillmentOptions"
14+
},
15+
"ListPurchaseOptions": {
16+
"input_token": "nextToken",
17+
"output_token": "nextToken",
18+
"limit_key": "maxResults",
19+
"result_key": "purchaseOptions"
20+
},
21+
"SearchFacets": {
22+
"input_token": "nextToken",
23+
"output_token": "nextToken",
24+
"result_key": "listingFacets"
25+
},
26+
"SearchListings": {
27+
"input_token": "nextToken",
28+
"output_token": "nextToken",
29+
"limit_key": "maxResults",
30+
"result_key": "listingSummaries"
31+
}
32+
}
33+
}

0 commit comments

Comments
 (0)