etsy-python 1.1.5__tar.gz → 1.1.7__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. {etsy_python-1.1.5/etsy_python.egg-info → etsy_python-1.1.7}/PKG-INFO +1 -1
  2. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/_version.py +1 -1
  3. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/enums/Listing.py +1 -0
  4. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/enums/ListingInventory.py +5 -0
  5. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/Listing.py +10 -6
  6. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/Listing.py +8 -0
  7. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ListingInventory.py +9 -1
  8. {etsy_python-1.1.5 → etsy_python-1.1.7/etsy_python.egg-info}/PKG-INFO +1 -1
  9. {etsy_python-1.1.5 → etsy_python-1.1.7}/LICENSE +0 -0
  10. {etsy_python-1.1.5 → etsy_python-1.1.7}/MANIFEST.in +0 -0
  11. {etsy_python-1.1.5 → etsy_python-1.1.7}/README.md +0 -0
  12. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/__init__.py +0 -0
  13. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/__init__.py +0 -0
  14. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/auth/OAuth.py +0 -0
  15. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/auth/__init__.py +0 -0
  16. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/common/Env.py +0 -0
  17. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/common/Request.py +0 -0
  18. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/common/Utils.py +0 -0
  19. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/common/__init__.py +0 -0
  20. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/enums/HolidayPreferences.py +0 -0
  21. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/enums/Language.py +0 -0
  22. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/enums/ProcessingProfile.py +0 -0
  23. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/enums/ShippingProfile.py +0 -0
  24. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/enums/ShopReceipt.py +0 -0
  25. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/enums/__init__.py +0 -0
  26. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/exceptions/BaseAPIException.py +0 -0
  27. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/exceptions/RequestException.py +0 -0
  28. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/exceptions/__init__.py +0 -0
  29. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/FileRequest.py +0 -0
  30. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/HolidayPreferences.py +0 -0
  31. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/Miscellaneous.py +0 -0
  32. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/ProcessingProfile.py +0 -0
  33. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/Product.py +0 -0
  34. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/Receipt.py +0 -0
  35. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/Request.py +0 -0
  36. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/ShippingProfile.py +0 -0
  37. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/Shop.py +0 -0
  38. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/ShopReturnPolicy.py +0 -0
  39. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/Utils.py +0 -0
  40. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/models/__init__.py +0 -0
  41. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/HolidayPreferences.py +0 -0
  42. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ListingFile.py +0 -0
  43. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ListingImage.py +0 -0
  44. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ListingOffering.py +0 -0
  45. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ListingProduct.py +0 -0
  46. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ListingTranslation.py +0 -0
  47. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ListingVariationImages.py +0 -0
  48. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ListingVideo.py +0 -0
  49. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/Miscellaneous.py +0 -0
  50. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/Payment.py +0 -0
  51. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/PaymentLedgerEntry.py +0 -0
  52. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ProcessingProfile.py +0 -0
  53. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/Receipt.py +0 -0
  54. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ReceiptTransactions.py +0 -0
  55. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/Response.py +0 -0
  56. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/Review.py +0 -0
  57. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/Session.py +0 -0
  58. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ShippingProfile.py +0 -0
  59. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/Shop.py +0 -0
  60. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ShopProductionPartner.py +0 -0
  61. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ShopReturnPolicy.py +0 -0
  62. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/ShopSection.py +0 -0
  63. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/Taxonomy.py +0 -0
  64. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/User.py +0 -0
  65. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/UserAddress.py +0 -0
  66. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/__init__.py +0 -0
  67. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/enums/RateLimit.py +0 -0
  68. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/enums/Request.py +0 -0
  69. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python/v3/resources/enums/__init__.py +0 -0
  70. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python.egg-info/SOURCES.txt +0 -0
  71. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python.egg-info/dependency_links.txt +0 -0
  72. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python.egg-info/requires.txt +0 -0
  73. {etsy_python-1.1.5 → etsy_python-1.1.7}/etsy_python.egg-info/top_level.txt +0 -0
  74. {etsy_python-1.1.5 → etsy_python-1.1.7}/setup.cfg +0 -0
  75. {etsy_python-1.1.5 → etsy_python-1.1.7}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: etsy-python
3
- Version: 1.1.5
3
+ Version: 1.1.7
4
4
  Summary: Etsy API Client Library for Python
5
5
  Author: Amit Ray
6
6
  Author-email: mail@amitray.dev
@@ -1,3 +1,3 @@
1
1
  """Version information for etsy-python package."""
2
2
 
3
- __version__ = "1.1.5"
3
+ __version__ = "1.1.7"
@@ -93,6 +93,7 @@ class Includes(Enum):
93
93
  INVENTORY = "Inventory"
94
94
  VIDEOS = "Videos"
95
95
  PERSONALIZATION = "Personalization"
96
+ BUYER_PRICE = "BuyerPrice"
96
97
 
97
98
 
98
99
  class InventoryIncludes(Enum):
@@ -3,3 +3,8 @@ from enum import Enum
3
3
 
4
4
  class Includes(Enum):
5
5
  LISTING = "listing"
6
+
7
+
8
+ class MaxVariationsSupported(Enum):
9
+ TWO = "2"
10
+ THREE = "3"
@@ -111,9 +111,11 @@ class CreateDraftListingRequest(Request):
111
111
  ]):
112
112
  warnings.warn(
113
113
  "personalization_is_required, personalization_char_count_max, and "
114
- "personalization_instructions are deprecated and will be removed "
115
- "from the Etsy API on April 9, 2026. Use the personalization "
116
- "endpoint (update_listing_personalization) instead.",
114
+ "personalization_instructions are deprecated by the Etsy API and "
115
+ "scheduled for removal. Use the personalization endpoint "
116
+ "(update_listing_personalization) instead. See "
117
+ "https://developers.etsy.com/documentation/tutorials/personalization-migration "
118
+ "for migration details.",
117
119
  DeprecationWarning,
118
120
  stacklevel=2,
119
121
  )
@@ -212,9 +214,11 @@ class UpdateListingRequest(Request):
212
214
  ]):
213
215
  warnings.warn(
214
216
  "personalization_is_required, personalization_char_count_max, and "
215
- "personalization_instructions are deprecated and will be removed "
216
- "from the Etsy API on April 9, 2026. Use the personalization "
217
- "endpoint (update_listing_personalization) instead.",
217
+ "personalization_instructions are deprecated by the Etsy API and "
218
+ "scheduled for removal. Use the personalization endpoint "
219
+ "(update_listing_personalization) instead. See "
220
+ "https://developers.etsy.com/documentation/tutorials/personalization-migration "
221
+ "for migration details.",
218
222
  DeprecationWarning,
219
223
  stacklevel=2,
220
224
  )
@@ -92,6 +92,8 @@ class ListingResource:
92
92
  shop_location: Optional[str] = None,
93
93
  is_safe: Optional[bool] = None,
94
94
  legacy: Optional[bool] = None,
95
+ buyer_country: Optional[str] = None,
96
+ currency: Optional[str] = None,
95
97
  ) -> Union[Response, RequestException]:
96
98
  endpoint = "/listings/active"
97
99
  query_params: Dict[str, Any] = {
@@ -106,6 +108,8 @@ class ListingResource:
106
108
  "shop_location": shop_location,
107
109
  "is_safe": is_safe,
108
110
  "legacy": legacy,
111
+ "buyer_country": buyer_country,
112
+ "currency": currency,
109
113
  }
110
114
  return self.session.make_request(endpoint, query_params=query_params)
111
115
 
@@ -135,6 +139,8 @@ class ListingResource:
135
139
  listing_ids: List[int],
136
140
  includes: Optional[List[Includes]] = None,
137
141
  legacy: Optional[bool] = None,
142
+ buyer_country: Optional[str] = None,
143
+ currency: Optional[str] = None,
138
144
  ) -> Union[Response, RequestException]:
139
145
  endpoint = "/listings/batch"
140
146
  query_params: Dict[str, Any] = {
@@ -143,6 +149,8 @@ class ListingResource:
143
149
  if includes is not None
144
150
  else None,
145
151
  "legacy": legacy,
152
+ "buyer_country": buyer_country,
153
+ "currency": currency,
146
154
  }
147
155
  return self.session.make_request(endpoint, query_params=query_params)
148
156
 
@@ -3,6 +3,7 @@ from typing import Optional, Dict, Any, Union
3
3
 
4
4
  from etsy_python.v3.exceptions.RequestException import RequestException
5
5
  from etsy_python.v3.enums.Listing import InventoryIncludes
6
+ from etsy_python.v3.enums.ListingInventory import MaxVariationsSupported
6
7
  from etsy_python.v3.models.Listing import UpdateListingInventoryRequest
7
8
  from etsy_python.v3.resources.Session import EtsyClient
8
9
  from etsy_python.v3.resources.enums.Request import Method
@@ -31,9 +32,16 @@ class ListingInventoryResource:
31
32
  def update_listing_inventory(
32
33
  self, listing_id: int, listing_inventory: UpdateListingInventoryRequest,
33
34
  legacy: Optional[bool] = None,
35
+ max_variations_supported: Optional[MaxVariationsSupported] = None,
34
36
  ) -> Union[Response, RequestException]:
35
37
  endpoint = f"/listings/{listing_id}/inventory"
38
+ query_params: Dict[str, Any] = {
39
+ "legacy": legacy,
40
+ "max_variations_supported": max_variations_supported.value
41
+ if max_variations_supported is not None
42
+ else None,
43
+ }
36
44
  return self.session.make_request(
37
45
  endpoint, method=Method.PUT, payload=listing_inventory,
38
- query_params={"legacy": legacy},
46
+ query_params=query_params,
39
47
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: etsy-python
3
- Version: 1.1.5
3
+ Version: 1.1.7
4
4
  Summary: Etsy API Client Library for Python
5
5
  Author: Amit Ray
6
6
  Author-email: mail@amitray.dev
File without changes
File without changes
File without changes
File without changes
File without changes