Skip to content

Commit 0a6affe

Browse files
authoredFeb 7, 2025··
Merge pull request #828 from yzi2004/main
Catalog Items API v2022-04-01 add response property [classifications]
2 parents 3c39806 + 23722e8 commit 0a6affe

File tree

4 files changed

+186
-4
lines changed

4 files changed

+186
-4
lines changed
 

‎Source/FikaAmazonAPI.SampleCode/CatalogItemsSample.cs

+4-2
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public CatalogItemsSample(AmazonConnection amazonConnection)
1313
}
1414

1515
[Obsolete("This method deprecated in June 2022. Please use GetCatalogItem(ParameterGetCatalogItem parameterListCatalogItem) instead.", true)]
16-
public void GetCatalogItemAsync()
16+
public void GetCatalogItemAsync()
1717
{
1818
var item = amazonConnection.CatalogItem.GetCatalogItem("B00CZC5F0G");
1919

@@ -26,7 +26,7 @@ public void ListCatalogCategories()
2626
}
2727

2828
[Obsolete("This method deprecated in June 2022. Please use SearchCatalogItems202204 instead.", true)]
29-
public void ListCatalogItems()
29+
public void ListCatalogItems()
3030
{
3131
var items = amazonConnection.CatalogItem.ListCatalogItems(new Parameter.CatalogItems.ParameterListCatalogItems()
3232
{
@@ -42,6 +42,7 @@ public async Task GetCatalogItem()
4242
{
4343
ASIN = "B00JK2YANC",
4444
includedData = new[] { IncludedData.attributes,
45+
IncludedData.classifications,
4546
IncludedData.salesRanks,
4647
IncludedData.summaries,
4748
IncludedData.productTypes,
@@ -59,6 +60,7 @@ public async Task SearchCatalogItems()
5960
{
6061
keywords = new[] { "vitamin c" },
6162
includedData = new[] { IncludedData.attributes,
63+
IncludedData.classifications,
6264
IncludedData.salesRanks,
6365
IncludedData.summaries,
6466
IncludedData.productTypes,

‎Source/FikaAmazonAPI/AmazonSpApiSDK/Models/CatalogItems/V20220401/Item.cs

+16-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public Item() { }
4242
/// <param name="salesRanks">salesRanks.</param>
4343
/// <param name="summaries">summaries.</param>
4444
/// <param name="vendorDetails">vendorDetails.</param>
45-
public Item(string asin = default(string), ItemAttributes attributes = default(ItemAttributes), ItemDimensions dimensions = default(ItemDimensions), ItemIdentifiers identifiers = default(ItemIdentifiers), ItemImages images = default(ItemImages), ItemProductTypes productTypes = default(ItemProductTypes), ItemRelationships relationships = default(ItemRelationships), ItemSalesRanks salesRanks = default(ItemSalesRanks), ItemSummaries summaries = default(ItemSummaries), ItemVendorDetails vendorDetails = default(ItemVendorDetails))
45+
public Item(string asin = default(string), List<ItemBrowseClassificationsByMarketplace> classifications = default(List<ItemBrowseClassificationsByMarketplace>), ItemAttributes attributes = default(ItemAttributes), ItemDimensions dimensions = default(ItemDimensions), ItemIdentifiers identifiers = default(ItemIdentifiers), ItemImages images = default(ItemImages), ItemProductTypes productTypes = default(ItemProductTypes), ItemRelationships relationships = default(ItemRelationships), ItemSalesRanks salesRanks = default(ItemSalesRanks), ItemSummaries summaries = default(ItemSummaries), ItemVendorDetails vendorDetails = default(ItemVendorDetails))
4646
{
4747
// to ensure "asin" is required (not null)
4848
if (asin == null)
@@ -54,6 +54,7 @@ public Item() { }
5454
this.Asin = asin;
5555
}
5656
this.Attributes = attributes;
57+
this.Classifications = classifications;
5758
this.Dimensions = dimensions;
5859
this.Identifiers = identifiers;
5960
this.Images = images;
@@ -76,6 +77,12 @@ public Item() { }
7677
[DataMember(Name = "attributes", EmitDefaultValue = false)]
7778
public ItemAttributes Attributes { get; set; }
7879

80+
/// <summary>
81+
/// Gets or Sets Classifications
82+
/// </summary>
83+
[DataMember(Name = "classifications", EmitDefaultValue = false)]
84+
public List<ItemBrowseClassificationsByMarketplace> Classifications { get; set; }
85+
7986
/// <summary>
8087
/// Gets or Sets Dimensions
8188
/// </summary>
@@ -134,6 +141,7 @@ public override string ToString()
134141
sb.Append("class Item {\n");
135142
sb.Append(" Asin: ").Append(Asin).Append("\n");
136143
sb.Append(" Attributes: ").Append(Attributes).Append("\n");
144+
sb.Append(" Classifications: ").Append(Classifications).Append("\n");
137145
sb.Append(" Dimensions: ").Append(Dimensions).Append("\n");
138146
sb.Append(" Identifiers: ").Append(Identifiers).Append("\n");
139147
sb.Append(" Images: ").Append(Images).Append("\n");
@@ -186,6 +194,11 @@ public bool Equals(Item input)
186194
(this.Attributes != null &&
187195
this.Attributes.Equals(input.Attributes))
188196
) &&
197+
(
198+
this.Classifications == input.Classifications ||
199+
this.Classifications != null &&
200+
this.Classifications.Equals(input.Classifications)
201+
) &&
189202
(
190203
this.Dimensions == input.Dimensions ||
191204
(this.Dimensions != null &&
@@ -241,6 +254,8 @@ public override int GetHashCode()
241254
hashCode = hashCode * 59 + this.Asin.GetHashCode();
242255
if (this.Attributes != null)
243256
hashCode = hashCode * 59 + this.Attributes.GetHashCode();
257+
if (this.Classifications != null)
258+
hashCode = hashCode * 59 + this.Classifications.GetHashCode();
244259
if (this.Dimensions != null)
245260
hashCode = hashCode * 59 + this.Dimensions.GetHashCode();
246261
if (this.Identifiers != null)

‎Source/FikaAmazonAPI/AmazonSpApiSDK/Models/CatalogItems/V20220401/ItemBrowseClassification.cs

+18-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,8 @@ protected ItemBrowseClassification() { }
3434
/// </summary>
3535
/// <param name="displayName">Display name for the classification. (required).</param>
3636
/// <param name="classificationId">Identifier of the classification (browse node identifier). (required).</param>
37-
public ItemBrowseClassification(string displayName = default(string), string classificationId = default(string))
37+
/// <param name="parent">Parent classification (browse node) of the current classification.</param>
38+
public ItemBrowseClassification(string displayName = default(string), string classificationId = default(string), ItemBrowseClassification parent = default(ItemBrowseClassification))
3839
{
3940
// to ensure "displayName" is required (not null)
4041
if (displayName == null)
@@ -54,6 +55,8 @@ protected ItemBrowseClassification() { }
5455
{
5556
this.ClassificationId = classificationId;
5657
}
58+
59+
this.Parent = parent;
5760
}
5861

5962
/// <summary>
@@ -70,6 +73,12 @@ protected ItemBrowseClassification() { }
7073
[DataMember(Name = "classificationId", EmitDefaultValue = false)]
7174
public string ClassificationId { get; set; }
7275

76+
/// <summary>
77+
/// Parent classification (browse node) of the current classification.
78+
/// </summary>
79+
[DataMember(Name = "parent", EmitDefaultValue = false)]
80+
public ItemBrowseClassification Parent { get; set; }
81+
7382
/// <summary>
7483
/// Returns the string presentation of the object
7584
/// </summary>
@@ -80,6 +89,7 @@ public override string ToString()
8089
sb.Append("class ItemBrowseClassification {\n");
8190
sb.Append(" DisplayName: ").Append(DisplayName).Append("\n");
8291
sb.Append(" ClassificationId: ").Append(ClassificationId).Append("\n");
92+
sb.Append(" Parent: ").Append(Parent).Append("\n");
8393
sb.Append("}\n");
8494
return sb.ToString();
8595
}
@@ -123,6 +133,11 @@ public bool Equals(ItemBrowseClassification input)
123133
this.ClassificationId == input.ClassificationId ||
124134
(this.ClassificationId != null &&
125135
this.ClassificationId.Equals(input.ClassificationId))
136+
) &&
137+
(
138+
this.Parent == input.Parent ||
139+
this.Parent != null &&
140+
this.Parent.Equals(input.Parent)
126141
);
127142
}
128143

@@ -139,6 +154,8 @@ public override int GetHashCode()
139154
hashCode = hashCode * 59 + this.DisplayName.GetHashCode();
140155
if (this.ClassificationId != null)
141156
hashCode = hashCode * 59 + this.ClassificationId.GetHashCode();
157+
if (this.Parent != null)
158+
hashCode = hashCode * 59 + this.Parent.GetHashCode();
142159
return hashCode;
143160
}
144161
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
/*
2+
* Selling Partner API for Catalog Items
3+
*
4+
* The Selling Partner API for Catalog Items provides programmatic access to information about items in the Amazon catalog. For more information, refer to the [Catalog Items API Use Case Guide](doc:catalog-items-api-v2022-04-01-use-case-guide).
5+
*
6+
* OpenAPI spec version: 2022-04-01
7+
*
8+
* Generated by: https://github.com/swagger-api/swagger-codegen.git
9+
*/
10+
11+
using Newtonsoft.Json;
12+
using System;
13+
using System.Collections.Generic;
14+
using System.ComponentModel.DataAnnotations;
15+
using System.IO;
16+
using System.Runtime.Serialization;
17+
using System.Text;
18+
19+
namespace FikaAmazonAPI.AmazonSpApiSDK.Models.CatalogItems.V20220401
20+
{
21+
/// <summary>
22+
/// Classification (browse node) associated with the item in the Amazon catalog for the indicated Amazon marketplace.
23+
/// </summary>
24+
[DataContract]
25+
public partial class ItemBrowseClassificationsByMarketplace : IEquatable<ItemBrowseClassificationsByMarketplace>, IValidatableObject
26+
{
27+
/// <summary>
28+
/// Initializes a new instance of the <see cref="ItemBrowseClassificationsByMarketplace" /> class.
29+
/// </summary>
30+
[JsonConstructor]
31+
protected ItemBrowseClassificationsByMarketplace() { }
32+
/// <summary>
33+
/// Initializes a new instance of the <see cref="ItemBrowseClassificationsByMarketplace" /> class.
34+
/// </summary>
35+
/// <param name="marketplaceId">Amazon marketplace identifier. (required).</param>
36+
/// <param name="classifications">Classification (browse node) Array of an Amazon catalog item.</param>
37+
public ItemBrowseClassificationsByMarketplace(string marketplaceId = default(string), List<ItemBrowseClassification> classifications = default(List<ItemBrowseClassification>))
38+
{
39+
// to ensure "marketplaceId" is required (not null)
40+
if (marketplaceId == null)
41+
{
42+
throw new InvalidDataException("marketplaceId is a required property for ItemBrowseClassificationsByMarketplace and cannot be null");
43+
}
44+
else
45+
{
46+
MarketplaceId = marketplaceId;
47+
}
48+
Classifications = classifications;
49+
}
50+
51+
/// <summary>
52+
/// Amazon marketplace identifier.
53+
/// </summary>
54+
/// <value>Amazon marketplace identifier.</value>
55+
[DataMember(Name = "marketplaceId", EmitDefaultValue = false)]
56+
public string MarketplaceId { get; set; }
57+
58+
/// <summary>
59+
/// Classifications of an Amazon catalog item.
60+
/// </summary>
61+
/// <value>Classifications of an Amazon catalog item.</value>
62+
[DataMember(Name = "classifications", EmitDefaultValue = false)]
63+
public List<ItemBrowseClassification> Classifications { get; set; }
64+
65+
/// <summary>
66+
/// Returns the string presentation of the object
67+
/// </summary>
68+
/// <returns>String presentation of the object</returns>
69+
public override string ToString()
70+
{
71+
var sb = new StringBuilder();
72+
sb.Append("class ItemDimensionsByMarketplace {\n");
73+
sb.Append(" MarketplaceId: ").Append(this.MarketplaceId).Append("\n");
74+
sb.Append(" Classifications: ").Append(this.Classifications).Append("\n");
75+
sb.Append("}\n");
76+
return sb.ToString();
77+
}
78+
79+
/// <summary>
80+
/// Returns the JSON string presentation of the object
81+
/// </summary>
82+
/// <returns>JSON string presentation of the object</returns>
83+
public virtual string ToJson()
84+
{
85+
return JsonConvert.SerializeObject(this, Formatting.Indented);
86+
}
87+
88+
/// <summary>
89+
/// Returns true if objects are equal
90+
/// </summary>
91+
/// <param name="input">Object to be compared</param>
92+
/// <returns>Boolean</returns>
93+
public override bool Equals(object input)
94+
{
95+
return Equals(input as ItemBrowseClassificationsByMarketplace);
96+
}
97+
98+
/// <summary>
99+
/// Returns true if ItemDimensionsByMarketplace instances are equal
100+
/// </summary>
101+
/// <param name="input">Instance of ItemDimensionsByMarketplace to be compared</param>
102+
/// <returns>Boolean</returns>
103+
public bool Equals(ItemBrowseClassificationsByMarketplace input)
104+
{
105+
if (input == null)
106+
return false;
107+
108+
return
109+
(
110+
this.MarketplaceId == input.MarketplaceId ||
111+
this.MarketplaceId != null &&
112+
this.MarketplaceId.Equals(input.MarketplaceId)
113+
) &&
114+
(
115+
this.Classifications == input.Classifications ||
116+
this.Classifications != null &&
117+
this.Classifications.Equals(input.Classifications)
118+
);
119+
}
120+
121+
/// <summary>
122+
/// Gets the hash code
123+
/// </summary>
124+
/// <returns>Hash code</returns>
125+
public override int GetHashCode()
126+
{
127+
unchecked // Overflow is fine, just wrap
128+
{
129+
int hashCode = 41;
130+
if (this.MarketplaceId != null)
131+
hashCode = hashCode * 59 + this.MarketplaceId.GetHashCode();
132+
if (this.Classifications != null)
133+
hashCode = hashCode * 59 + this.Classifications.GetHashCode();
134+
return hashCode;
135+
}
136+
}
137+
138+
/// <summary>
139+
/// To validate all properties of the instance
140+
/// </summary>
141+
/// <param name="validationContext">Validation context</param>
142+
/// <returns>Validation Result</returns>
143+
IEnumerable<ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
144+
{
145+
yield break;
146+
}
147+
}
148+
}

0 commit comments

Comments
 (0)
Please sign in to comment.