apinoa 0.1.0__py3-none-any.whl

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 (258) hide show
  1. apinoa/__init__.py +613 -0
  2. apinoa/_default_clients.py +30 -0
  3. apinoa/aliexpress/__init__.py +38 -0
  4. apinoa/aliexpress/client.py +801 -0
  5. apinoa/aliexpress/raw_client.py +2233 -0
  6. apinoa/aliexpress/types/__init__.py +40 -0
  7. apinoa/aliexpress/types/browse_aliexpress_request_sort.py +5 -0
  8. apinoa/aliexpress/types/product_aliexpress_request_include.py +5 -0
  9. apinoa/aliexpress/types/search_aliexpress_request_sort.py +5 -0
  10. apinoa/amazon/__init__.py +64 -0
  11. apinoa/amazon/client.py +764 -0
  12. apinoa/amazon/raw_client.py +1941 -0
  13. apinoa/amazon/types/__init__.py +62 -0
  14. apinoa/amazon/types/browse_amazon_request_region.py +8 -0
  15. apinoa/amazon/types/browse_amazon_request_sort.py +7 -0
  16. apinoa/amazon/types/categories_amazon_request_region.py +8 -0
  17. apinoa/amazon/types/image_search_amazon_request_image.py +41 -0
  18. apinoa/amazon/types/image_search_amazon_request_region.py +8 -0
  19. apinoa/amazon/types/image_search_amazon_request_sort.py +7 -0
  20. apinoa/amazon/types/product_amazon_request_region.py +8 -0
  21. apinoa/amazon/types/search_amazon_request_region.py +8 -0
  22. apinoa/amazon/types/search_amazon_request_sort.py +7 -0
  23. apinoa/client.py +487 -0
  24. apinoa/core/__init__.py +134 -0
  25. apinoa/core/api_error.py +23 -0
  26. apinoa/core/client_wrapper.py +138 -0
  27. apinoa/core/datetime_utils.py +70 -0
  28. apinoa/core/file.py +67 -0
  29. apinoa/core/force_multipart.py +18 -0
  30. apinoa/core/http_client.py +1021 -0
  31. apinoa/core/http_response.py +63 -0
  32. apinoa/core/http_sse/__init__.py +42 -0
  33. apinoa/core/http_sse/_api.py +455 -0
  34. apinoa/core/http_sse/_decoders.py +74 -0
  35. apinoa/core/http_sse/_exceptions.py +7 -0
  36. apinoa/core/http_sse/_models.py +17 -0
  37. apinoa/core/jsonable_encoder.py +145 -0
  38. apinoa/core/logging.py +107 -0
  39. apinoa/core/parse_error.py +36 -0
  40. apinoa/core/pydantic_utilities.py +540 -0
  41. apinoa/core/query_encoder.py +58 -0
  42. apinoa/core/remove_none_from_dict.py +11 -0
  43. apinoa/core/request_options.py +43 -0
  44. apinoa/core/serialization.py +347 -0
  45. apinoa/core/unchecked_base_model.py +505 -0
  46. apinoa/environment.py +7 -0
  47. apinoa/errors/__init__.py +65 -0
  48. apinoa/errors/bad_gateway_error.py +11 -0
  49. apinoa/errors/bad_request_error.py +11 -0
  50. apinoa/errors/forbidden_error.py +11 -0
  51. apinoa/errors/internal_server_error.py +11 -0
  52. apinoa/errors/not_found_error.py +11 -0
  53. apinoa/errors/not_implemented_error.py +11 -0
  54. apinoa/errors/payment_required_error.py +11 -0
  55. apinoa/errors/service_unavailable_error.py +11 -0
  56. apinoa/errors/too_many_requests_error.py +11 -0
  57. apinoa/errors/unauthorized_error.py +11 -0
  58. apinoa/image_translate/__init__.py +46 -0
  59. apinoa/image_translate/client.py +274 -0
  60. apinoa/image_translate/raw_client.py +1065 -0
  61. apinoa/image_translate/types/__init__.py +44 -0
  62. apinoa/image_translate/types/ocr_image_translate_request_source_language.py +7 -0
  63. apinoa/image_translate/types/translate_image_translate_request_font_weight.py +7 -0
  64. apinoa/image_translate/types/translate_image_translate_request_source_language.py +7 -0
  65. apinoa/instagram/__init__.py +38 -0
  66. apinoa/instagram/client.py +612 -0
  67. apinoa/instagram/raw_client.py +2060 -0
  68. apinoa/instagram/types/__init__.py +40 -0
  69. apinoa/instagram/types/comments_instagram_request_sort.py +5 -0
  70. apinoa/instagram/types/groups_instagram_request_type.py +5 -0
  71. apinoa/instagram/types/posts_instagram_request_type.py +5 -0
  72. apinoa/linkedin/__init__.py +4 -0
  73. apinoa/linkedin/client.py +602 -0
  74. apinoa/linkedin/raw_client.py +2292 -0
  75. apinoa/marketplaces/__init__.py +4 -0
  76. apinoa/marketplaces/client.py +100 -0
  77. apinoa/marketplaces/raw_client.py +148 -0
  78. apinoa/py.typed +0 -0
  79. apinoa/reddit/__init__.py +49 -0
  80. apinoa/reddit/client.py +818 -0
  81. apinoa/reddit/raw_client.py +2494 -0
  82. apinoa/reddit/types/__init__.py +47 -0
  83. apinoa/reddit/types/comments_reddit_request_period.py +5 -0
  84. apinoa/reddit/types/comments_reddit_request_sort.py +7 -0
  85. apinoa/reddit/types/posts_reddit_request_period.py +5 -0
  86. apinoa/reddit/types/posts_reddit_request_sort.py +7 -0
  87. apinoa/shopify/__init__.py +52 -0
  88. apinoa/shopify/client.py +739 -0
  89. apinoa/shopify/raw_client.py +1920 -0
  90. apinoa/shopify/types/__init__.py +50 -0
  91. apinoa/shopify/types/image_search_shopify_request_condition.py +5 -0
  92. apinoa/shopify/types/image_search_shopify_request_image.py +29 -0
  93. apinoa/shopify/types/image_search_shopify_request_in_stock.py +7 -0
  94. apinoa/shopify/types/image_search_shopify_request_in_stock_one.py +5 -0
  95. apinoa/shopify/types/search_shopify_request_condition.py +5 -0
  96. apinoa/threads/__init__.py +38 -0
  97. apinoa/threads/client.py +426 -0
  98. apinoa/threads/raw_client.py +1386 -0
  99. apinoa/threads/types/__init__.py +40 -0
  100. apinoa/threads/types/comments_threads_request_sort.py +5 -0
  101. apinoa/threads/types/posts_threads_request_sort.py +5 -0
  102. apinoa/threads/types/posts_threads_request_type.py +5 -0
  103. apinoa/tiktok/__init__.py +38 -0
  104. apinoa/tiktok/client.py +848 -0
  105. apinoa/tiktok/raw_client.py +2786 -0
  106. apinoa/tiktok/types/__init__.py +40 -0
  107. apinoa/tiktok/types/groups_tiktok_request_type.py +5 -0
  108. apinoa/tiktok/types/posts_tiktok_request_type.py +5 -0
  109. apinoa/tiktok/types/profiles_tiktok_request_type.py +5 -0
  110. apinoa/tiktokshop/__init__.py +4 -0
  111. apinoa/tiktokshop/client.py +553 -0
  112. apinoa/tiktokshop/raw_client.py +1991 -0
  113. apinoa/types/__init__.py +413 -0
  114. apinoa/types/account.py +48 -0
  115. apinoa/types/account_counts.py +22 -0
  116. apinoa/types/account_page.py +26 -0
  117. apinoa/types/account_page_platform.py +7 -0
  118. apinoa/types/account_page_response.py +34 -0
  119. apinoa/types/account_platform.py +7 -0
  120. apinoa/types/account_ref.py +36 -0
  121. apinoa/types/account_ref_counts.py +22 -0
  122. apinoa/types/account_ref_platform.py +7 -0
  123. apinoa/types/account_response.py +34 -0
  124. apinoa/types/attribute.py +21 -0
  125. apinoa/types/audio.py +23 -0
  126. apinoa/types/broadcast.py +33 -0
  127. apinoa/types/broadcast_status.py +5 -0
  128. apinoa/types/catalog.py +22 -0
  129. apinoa/types/catalog_marketplaces_item.py +30 -0
  130. apinoa/types/catalog_marketplaces_item_cost_value.py +21 -0
  131. apinoa/types/catalog_marketplaces_item_kind.py +5 -0
  132. apinoa/types/catalog_response.py +34 -0
  133. apinoa/types/category_list.py +24 -0
  134. apinoa/types/category_list_response.py +34 -0
  135. apinoa/types/category_node.py +35 -0
  136. apinoa/types/category_step.py +21 -0
  137. apinoa/types/comment.py +62 -0
  138. apinoa/types/comment_metrics.py +21 -0
  139. apinoa/types/comment_more_replies.py +23 -0
  140. apinoa/types/comment_page.py +32 -0
  141. apinoa/types/comment_page_platform.py +7 -0
  142. apinoa/types/comment_page_response.py +39 -0
  143. apinoa/types/comment_platform.py +7 -0
  144. apinoa/types/delivery_option.py +50 -0
  145. apinoa/types/entities.py +24 -0
  146. apinoa/types/error_response.py +27 -0
  147. apinoa/types/error_response_error.py +25 -0
  148. apinoa/types/ext.py +5 -0
  149. apinoa/types/facet.py +28 -0
  150. apinoa/types/facet_kind.py +5 -0
  151. apinoa/types/facet_value.py +23 -0
  152. apinoa/types/group.py +43 -0
  153. apinoa/types/group_counts.py +21 -0
  154. apinoa/types/group_kind.py +7 -0
  155. apinoa/types/group_page.py +26 -0
  156. apinoa/types/group_page_platform.py +7 -0
  157. apinoa/types/group_page_response.py +34 -0
  158. apinoa/types/group_platform.py +7 -0
  159. apinoa/types/group_response.py +34 -0
  160. apinoa/types/identifiers.py +22 -0
  161. apinoa/types/in_reply_to.py +23 -0
  162. apinoa/types/job.py +48 -0
  163. apinoa/types/job_company.py +27 -0
  164. apinoa/types/job_page.py +24 -0
  165. apinoa/types/job_page_items_item.py +36 -0
  166. apinoa/types/job_page_items_item_company.py +21 -0
  167. apinoa/types/job_page_items_item_platform.py +5 -0
  168. apinoa/types/job_page_platform.py +5 -0
  169. apinoa/types/job_page_response.py +34 -0
  170. apinoa/types/job_platform.py +5 -0
  171. apinoa/types/job_response.py +34 -0
  172. apinoa/types/link.py +21 -0
  173. apinoa/types/link_preview.py +28 -0
  174. apinoa/types/media.py +22 -0
  175. apinoa/types/media_file.py +53 -0
  176. apinoa/types/media_file_encoding.py +5 -0
  177. apinoa/types/media_file_response.py +34 -0
  178. apinoa/types/media_variant.py +28 -0
  179. apinoa/types/media_video.py +28 -0
  180. apinoa/types/mention.py +26 -0
  181. apinoa/types/money.py +21 -0
  182. apinoa/types/ocr_result.py +24 -0
  183. apinoa/types/ocr_result_response.py +34 -0
  184. apinoa/types/offer.py +43 -0
  185. apinoa/types/option.py +23 -0
  186. apinoa/types/option_value.py +26 -0
  187. apinoa/types/page.py +22 -0
  188. apinoa/types/place.py +32 -0
  189. apinoa/types/poll.py +30 -0
  190. apinoa/types/poll_options_item.py +21 -0
  191. apinoa/types/post.py +78 -0
  192. apinoa/types/post_metrics.py +31 -0
  193. apinoa/types/post_page.py +32 -0
  194. apinoa/types/post_page_platform.py +7 -0
  195. apinoa/types/post_page_response.py +39 -0
  196. apinoa/types/post_platform.py +7 -0
  197. apinoa/types/post_response.py +40 -0
  198. apinoa/types/product.py +146 -0
  199. apinoa/types/product_delivery_to.py +26 -0
  200. apinoa/types/product_offers_summary.py +27 -0
  201. apinoa/types/product_package.py +36 -0
  202. apinoa/types/product_price_range.py +22 -0
  203. apinoa/types/product_response.py +34 -0
  204. apinoa/types/product_review_aspects_item.py +23 -0
  205. apinoa/types/product_unit_price.py +22 -0
  206. apinoa/types/rating.py +23 -0
  207. apinoa/types/review.py +39 -0
  208. apinoa/types/review_page.py +33 -0
  209. apinoa/types/review_page_response.py +34 -0
  210. apinoa/types/review_reply.py +22 -0
  211. apinoa/types/search_item.py +116 -0
  212. apinoa/types/search_item_delivery_to.py +26 -0
  213. apinoa/types/search_item_offers_summary.py +27 -0
  214. apinoa/types/search_item_price_range.py +22 -0
  215. apinoa/types/search_item_unit_price.py +22 -0
  216. apinoa/types/search_result.py +28 -0
  217. apinoa/types/search_result_response.py +34 -0
  218. apinoa/types/seller.py +38 -0
  219. apinoa/types/seller_detailed_ratings.py +28 -0
  220. apinoa/types/shipping_option.py +50 -0
  221. apinoa/types/shipping_quote.py +31 -0
  222. apinoa/types/shipping_quote_response.py +34 -0
  223. apinoa/types/social_media.py +39 -0
  224. apinoa/types/social_media_type.py +5 -0
  225. apinoa/types/supported_fonts.py +47 -0
  226. apinoa/types/supported_fonts_response.py +34 -0
  227. apinoa/types/text_region.py +55 -0
  228. apinoa/types/text_region_bbox.py +23 -0
  229. apinoa/types/text_region_bg_color.py +22 -0
  230. apinoa/types/text_region_text_color.py +22 -0
  231. apinoa/types/translated_region.py +60 -0
  232. apinoa/types/translated_region_bbox.py +23 -0
  233. apinoa/types/translated_region_bg_color.py +22 -0
  234. apinoa/types/translated_region_text_color.py +22 -0
  235. apinoa/types/translated_regions.py +27 -0
  236. apinoa/types/translated_regions_response.py +34 -0
  237. apinoa/types/url.py +25 -0
  238. apinoa/types/variant.py +53 -0
  239. apinoa/types/variant_selection.py +25 -0
  240. apinoa/walmart/__init__.py +34 -0
  241. apinoa/walmart/client.py +633 -0
  242. apinoa/walmart/raw_client.py +1813 -0
  243. apinoa/walmart/types/__init__.py +38 -0
  244. apinoa/walmart/types/browse_walmart_request_sort.py +7 -0
  245. apinoa/walmart/types/search_walmart_request_sort.py +7 -0
  246. apinoa/x/__init__.py +4 -0
  247. apinoa/x/client.py +357 -0
  248. apinoa/x/raw_client.py +1321 -0
  249. apinoa/youtube/__init__.py +34 -0
  250. apinoa/youtube/client.py +649 -0
  251. apinoa/youtube/raw_client.py +2093 -0
  252. apinoa/youtube/types/__init__.py +38 -0
  253. apinoa/youtube/types/groups_youtube_request_type.py +5 -0
  254. apinoa/youtube/types/posts_youtube_request_type.py +5 -0
  255. apinoa-0.1.0.dist-info/METADATA +146 -0
  256. apinoa-0.1.0.dist-info/RECORD +258 -0
  257. apinoa-0.1.0.dist-info/WHEEL +4 -0
  258. apinoa-0.1.0.dist-info/licenses/LICENSE +21 -0
apinoa/__init__.py ADDED
@@ -0,0 +1,613 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ # isort: skip_file
4
+
5
+ import typing
6
+ from importlib import import_module
7
+
8
+ if typing.TYPE_CHECKING:
9
+ from .types import (
10
+ Account,
11
+ AccountCounts,
12
+ AccountPage,
13
+ AccountPagePlatform,
14
+ AccountPageResponse,
15
+ AccountPlatform,
16
+ AccountRef,
17
+ AccountRefCounts,
18
+ AccountRefPlatform,
19
+ AccountResponse,
20
+ Attribute,
21
+ Audio,
22
+ Broadcast,
23
+ BroadcastStatus,
24
+ Catalog,
25
+ CatalogMarketplacesItem,
26
+ CatalogMarketplacesItemCostValue,
27
+ CatalogMarketplacesItemKind,
28
+ CatalogResponse,
29
+ CategoryList,
30
+ CategoryListResponse,
31
+ CategoryNode,
32
+ CategoryStep,
33
+ Comment,
34
+ CommentMetrics,
35
+ CommentMoreReplies,
36
+ CommentPage,
37
+ CommentPagePlatform,
38
+ CommentPageResponse,
39
+ CommentPlatform,
40
+ DeliveryOption,
41
+ Entities,
42
+ ErrorResponse,
43
+ ErrorResponseError,
44
+ Ext,
45
+ Facet,
46
+ FacetKind,
47
+ FacetValue,
48
+ Group,
49
+ GroupCounts,
50
+ GroupKind,
51
+ GroupPage,
52
+ GroupPagePlatform,
53
+ GroupPageResponse,
54
+ GroupPlatform,
55
+ GroupResponse,
56
+ Identifiers,
57
+ InReplyTo,
58
+ Job,
59
+ JobCompany,
60
+ JobPage,
61
+ JobPageItemsItem,
62
+ JobPageItemsItemCompany,
63
+ JobPageItemsItemPlatform,
64
+ JobPagePlatform,
65
+ JobPageResponse,
66
+ JobPlatform,
67
+ JobResponse,
68
+ Link,
69
+ LinkPreview,
70
+ Media,
71
+ MediaFile,
72
+ MediaFileEncoding,
73
+ MediaFileResponse,
74
+ MediaVariant,
75
+ MediaVideo,
76
+ Mention,
77
+ Money,
78
+ OcrResult,
79
+ OcrResultResponse,
80
+ Offer,
81
+ Option,
82
+ OptionValue,
83
+ Page,
84
+ Place,
85
+ Poll,
86
+ PollOptionsItem,
87
+ Post,
88
+ PostMetrics,
89
+ PostPage,
90
+ PostPagePlatform,
91
+ PostPageResponse,
92
+ PostPlatform,
93
+ PostResponse,
94
+ Product,
95
+ ProductDeliveryTo,
96
+ ProductOffersSummary,
97
+ ProductPackage,
98
+ ProductPriceRange,
99
+ ProductResponse,
100
+ ProductReviewAspectsItem,
101
+ ProductUnitPrice,
102
+ Rating,
103
+ Review,
104
+ ReviewPage,
105
+ ReviewPageResponse,
106
+ ReviewReply,
107
+ SearchItem,
108
+ SearchItemDeliveryTo,
109
+ SearchItemOffersSummary,
110
+ SearchItemPriceRange,
111
+ SearchItemUnitPrice,
112
+ SearchResult,
113
+ SearchResultResponse,
114
+ Seller,
115
+ SellerDetailedRatings,
116
+ ShippingOption,
117
+ ShippingQuote,
118
+ ShippingQuoteResponse,
119
+ SocialMedia,
120
+ SocialMediaType,
121
+ SupportedFonts,
122
+ SupportedFontsResponse,
123
+ TextRegion,
124
+ TextRegionBbox,
125
+ TextRegionBgColor,
126
+ TextRegionTextColor,
127
+ TranslatedRegion,
128
+ TranslatedRegionBbox,
129
+ TranslatedRegionBgColor,
130
+ TranslatedRegionTextColor,
131
+ TranslatedRegions,
132
+ TranslatedRegionsResponse,
133
+ Url,
134
+ Variant,
135
+ VariantSelection,
136
+ )
137
+ from .errors import (
138
+ BadGatewayError,
139
+ BadRequestError,
140
+ ForbiddenError,
141
+ InternalServerError,
142
+ NotFoundError,
143
+ NotImplementedError,
144
+ PaymentRequiredError,
145
+ ServiceUnavailableError,
146
+ TooManyRequestsError,
147
+ UnauthorizedError,
148
+ )
149
+ from . import (
150
+ aliexpress,
151
+ amazon,
152
+ image_translate,
153
+ instagram,
154
+ linkedin,
155
+ marketplaces,
156
+ reddit,
157
+ shopify,
158
+ threads,
159
+ tiktok,
160
+ tiktokshop,
161
+ walmart,
162
+ x,
163
+ youtube,
164
+ )
165
+ from ._default_clients import DefaultAioHttpClient, DefaultAsyncHttpxClient
166
+ from .aliexpress import BrowseAliexpressRequestSort, ProductAliexpressRequestInclude, SearchAliexpressRequestSort
167
+ from .amazon import (
168
+ BrowseAmazonRequestRegion,
169
+ BrowseAmazonRequestSort,
170
+ CategoriesAmazonRequestRegion,
171
+ ImageSearchAmazonRequestImage,
172
+ ImageSearchAmazonRequestRegion,
173
+ ImageSearchAmazonRequestSort,
174
+ ProductAmazonRequestRegion,
175
+ SearchAmazonRequestRegion,
176
+ SearchAmazonRequestSort,
177
+ )
178
+ from .client import Apinoa, AsyncApinoa
179
+ from .environment import ApinoaEnvironment
180
+ from .image_translate import (
181
+ OcrImageTranslateRequestSourceLanguage,
182
+ TranslateImageTranslateRequestFontWeight,
183
+ TranslateImageTranslateRequestSourceLanguage,
184
+ )
185
+ from .instagram import CommentsInstagramRequestSort, GroupsInstagramRequestType, PostsInstagramRequestType
186
+ from .reddit import (
187
+ CommentsRedditRequestPeriod,
188
+ CommentsRedditRequestSort,
189
+ PostsRedditRequestPeriod,
190
+ PostsRedditRequestSort,
191
+ )
192
+ from .shopify import (
193
+ ImageSearchShopifyRequestCondition,
194
+ ImageSearchShopifyRequestImage,
195
+ ImageSearchShopifyRequestInStock,
196
+ ImageSearchShopifyRequestInStockOne,
197
+ SearchShopifyRequestCondition,
198
+ )
199
+ from .threads import CommentsThreadsRequestSort, PostsThreadsRequestSort, PostsThreadsRequestType
200
+ from .tiktok import GroupsTiktokRequestType, PostsTiktokRequestType, ProfilesTiktokRequestType
201
+ from .walmart import BrowseWalmartRequestSort, SearchWalmartRequestSort
202
+ from .youtube import GroupsYoutubeRequestType, PostsYoutubeRequestType
203
+ _dynamic_imports: typing.Dict[str, str] = {
204
+ "Account": ".types",
205
+ "AccountCounts": ".types",
206
+ "AccountPage": ".types",
207
+ "AccountPagePlatform": ".types",
208
+ "AccountPageResponse": ".types",
209
+ "AccountPlatform": ".types",
210
+ "AccountRef": ".types",
211
+ "AccountRefCounts": ".types",
212
+ "AccountRefPlatform": ".types",
213
+ "AccountResponse": ".types",
214
+ "Apinoa": ".client",
215
+ "ApinoaEnvironment": ".environment",
216
+ "AsyncApinoa": ".client",
217
+ "Attribute": ".types",
218
+ "Audio": ".types",
219
+ "BadGatewayError": ".errors",
220
+ "BadRequestError": ".errors",
221
+ "Broadcast": ".types",
222
+ "BroadcastStatus": ".types",
223
+ "BrowseAliexpressRequestSort": ".aliexpress",
224
+ "BrowseAmazonRequestRegion": ".amazon",
225
+ "BrowseAmazonRequestSort": ".amazon",
226
+ "BrowseWalmartRequestSort": ".walmart",
227
+ "Catalog": ".types",
228
+ "CatalogMarketplacesItem": ".types",
229
+ "CatalogMarketplacesItemCostValue": ".types",
230
+ "CatalogMarketplacesItemKind": ".types",
231
+ "CatalogResponse": ".types",
232
+ "CategoriesAmazonRequestRegion": ".amazon",
233
+ "CategoryList": ".types",
234
+ "CategoryListResponse": ".types",
235
+ "CategoryNode": ".types",
236
+ "CategoryStep": ".types",
237
+ "Comment": ".types",
238
+ "CommentMetrics": ".types",
239
+ "CommentMoreReplies": ".types",
240
+ "CommentPage": ".types",
241
+ "CommentPagePlatform": ".types",
242
+ "CommentPageResponse": ".types",
243
+ "CommentPlatform": ".types",
244
+ "CommentsInstagramRequestSort": ".instagram",
245
+ "CommentsRedditRequestPeriod": ".reddit",
246
+ "CommentsRedditRequestSort": ".reddit",
247
+ "CommentsThreadsRequestSort": ".threads",
248
+ "DefaultAioHttpClient": "._default_clients",
249
+ "DefaultAsyncHttpxClient": "._default_clients",
250
+ "DeliveryOption": ".types",
251
+ "Entities": ".types",
252
+ "ErrorResponse": ".types",
253
+ "ErrorResponseError": ".types",
254
+ "Ext": ".types",
255
+ "Facet": ".types",
256
+ "FacetKind": ".types",
257
+ "FacetValue": ".types",
258
+ "ForbiddenError": ".errors",
259
+ "Group": ".types",
260
+ "GroupCounts": ".types",
261
+ "GroupKind": ".types",
262
+ "GroupPage": ".types",
263
+ "GroupPagePlatform": ".types",
264
+ "GroupPageResponse": ".types",
265
+ "GroupPlatform": ".types",
266
+ "GroupResponse": ".types",
267
+ "GroupsInstagramRequestType": ".instagram",
268
+ "GroupsTiktokRequestType": ".tiktok",
269
+ "GroupsYoutubeRequestType": ".youtube",
270
+ "Identifiers": ".types",
271
+ "ImageSearchAmazonRequestImage": ".amazon",
272
+ "ImageSearchAmazonRequestRegion": ".amazon",
273
+ "ImageSearchAmazonRequestSort": ".amazon",
274
+ "ImageSearchShopifyRequestCondition": ".shopify",
275
+ "ImageSearchShopifyRequestImage": ".shopify",
276
+ "ImageSearchShopifyRequestInStock": ".shopify",
277
+ "ImageSearchShopifyRequestInStockOne": ".shopify",
278
+ "InReplyTo": ".types",
279
+ "InternalServerError": ".errors",
280
+ "Job": ".types",
281
+ "JobCompany": ".types",
282
+ "JobPage": ".types",
283
+ "JobPageItemsItem": ".types",
284
+ "JobPageItemsItemCompany": ".types",
285
+ "JobPageItemsItemPlatform": ".types",
286
+ "JobPagePlatform": ".types",
287
+ "JobPageResponse": ".types",
288
+ "JobPlatform": ".types",
289
+ "JobResponse": ".types",
290
+ "Link": ".types",
291
+ "LinkPreview": ".types",
292
+ "Media": ".types",
293
+ "MediaFile": ".types",
294
+ "MediaFileEncoding": ".types",
295
+ "MediaFileResponse": ".types",
296
+ "MediaVariant": ".types",
297
+ "MediaVideo": ".types",
298
+ "Mention": ".types",
299
+ "Money": ".types",
300
+ "NotFoundError": ".errors",
301
+ "NotImplementedError": ".errors",
302
+ "OcrImageTranslateRequestSourceLanguage": ".image_translate",
303
+ "OcrResult": ".types",
304
+ "OcrResultResponse": ".types",
305
+ "Offer": ".types",
306
+ "Option": ".types",
307
+ "OptionValue": ".types",
308
+ "Page": ".types",
309
+ "PaymentRequiredError": ".errors",
310
+ "Place": ".types",
311
+ "Poll": ".types",
312
+ "PollOptionsItem": ".types",
313
+ "Post": ".types",
314
+ "PostMetrics": ".types",
315
+ "PostPage": ".types",
316
+ "PostPagePlatform": ".types",
317
+ "PostPageResponse": ".types",
318
+ "PostPlatform": ".types",
319
+ "PostResponse": ".types",
320
+ "PostsInstagramRequestType": ".instagram",
321
+ "PostsRedditRequestPeriod": ".reddit",
322
+ "PostsRedditRequestSort": ".reddit",
323
+ "PostsThreadsRequestSort": ".threads",
324
+ "PostsThreadsRequestType": ".threads",
325
+ "PostsTiktokRequestType": ".tiktok",
326
+ "PostsYoutubeRequestType": ".youtube",
327
+ "Product": ".types",
328
+ "ProductAliexpressRequestInclude": ".aliexpress",
329
+ "ProductAmazonRequestRegion": ".amazon",
330
+ "ProductDeliveryTo": ".types",
331
+ "ProductOffersSummary": ".types",
332
+ "ProductPackage": ".types",
333
+ "ProductPriceRange": ".types",
334
+ "ProductResponse": ".types",
335
+ "ProductReviewAspectsItem": ".types",
336
+ "ProductUnitPrice": ".types",
337
+ "ProfilesTiktokRequestType": ".tiktok",
338
+ "Rating": ".types",
339
+ "Review": ".types",
340
+ "ReviewPage": ".types",
341
+ "ReviewPageResponse": ".types",
342
+ "ReviewReply": ".types",
343
+ "SearchAliexpressRequestSort": ".aliexpress",
344
+ "SearchAmazonRequestRegion": ".amazon",
345
+ "SearchAmazonRequestSort": ".amazon",
346
+ "SearchItem": ".types",
347
+ "SearchItemDeliveryTo": ".types",
348
+ "SearchItemOffersSummary": ".types",
349
+ "SearchItemPriceRange": ".types",
350
+ "SearchItemUnitPrice": ".types",
351
+ "SearchResult": ".types",
352
+ "SearchResultResponse": ".types",
353
+ "SearchShopifyRequestCondition": ".shopify",
354
+ "SearchWalmartRequestSort": ".walmart",
355
+ "Seller": ".types",
356
+ "SellerDetailedRatings": ".types",
357
+ "ServiceUnavailableError": ".errors",
358
+ "ShippingOption": ".types",
359
+ "ShippingQuote": ".types",
360
+ "ShippingQuoteResponse": ".types",
361
+ "SocialMedia": ".types",
362
+ "SocialMediaType": ".types",
363
+ "SupportedFonts": ".types",
364
+ "SupportedFontsResponse": ".types",
365
+ "TextRegion": ".types",
366
+ "TextRegionBbox": ".types",
367
+ "TextRegionBgColor": ".types",
368
+ "TextRegionTextColor": ".types",
369
+ "TooManyRequestsError": ".errors",
370
+ "TranslateImageTranslateRequestFontWeight": ".image_translate",
371
+ "TranslateImageTranslateRequestSourceLanguage": ".image_translate",
372
+ "TranslatedRegion": ".types",
373
+ "TranslatedRegionBbox": ".types",
374
+ "TranslatedRegionBgColor": ".types",
375
+ "TranslatedRegionTextColor": ".types",
376
+ "TranslatedRegions": ".types",
377
+ "TranslatedRegionsResponse": ".types",
378
+ "UnauthorizedError": ".errors",
379
+ "Url": ".types",
380
+ "Variant": ".types",
381
+ "VariantSelection": ".types",
382
+ "aliexpress": ".aliexpress",
383
+ "amazon": ".amazon",
384
+ "image_translate": ".image_translate",
385
+ "instagram": ".instagram",
386
+ "linkedin": ".linkedin",
387
+ "marketplaces": ".marketplaces",
388
+ "reddit": ".reddit",
389
+ "shopify": ".shopify",
390
+ "threads": ".threads",
391
+ "tiktok": ".tiktok",
392
+ "tiktokshop": ".tiktokshop",
393
+ "walmart": ".walmart",
394
+ "x": ".x",
395
+ "youtube": ".youtube",
396
+ }
397
+
398
+
399
+ def __getattr__(attr_name: str) -> typing.Any:
400
+ module_name = _dynamic_imports.get(attr_name)
401
+ if module_name is None:
402
+ raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
403
+ try:
404
+ module = import_module(module_name, __package__)
405
+ if module_name == f".{attr_name}":
406
+ return module
407
+ else:
408
+ return getattr(module, attr_name)
409
+ except ImportError as e:
410
+ raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
411
+ except AttributeError as e:
412
+ raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
413
+
414
+
415
+ def __dir__():
416
+ lazy_attrs = list(_dynamic_imports.keys())
417
+ return sorted(lazy_attrs)
418
+
419
+
420
+ __all__ = [
421
+ "Account",
422
+ "AccountCounts",
423
+ "AccountPage",
424
+ "AccountPagePlatform",
425
+ "AccountPageResponse",
426
+ "AccountPlatform",
427
+ "AccountRef",
428
+ "AccountRefCounts",
429
+ "AccountRefPlatform",
430
+ "AccountResponse",
431
+ "Apinoa",
432
+ "ApinoaEnvironment",
433
+ "AsyncApinoa",
434
+ "Attribute",
435
+ "Audio",
436
+ "BadGatewayError",
437
+ "BadRequestError",
438
+ "Broadcast",
439
+ "BroadcastStatus",
440
+ "BrowseAliexpressRequestSort",
441
+ "BrowseAmazonRequestRegion",
442
+ "BrowseAmazonRequestSort",
443
+ "BrowseWalmartRequestSort",
444
+ "Catalog",
445
+ "CatalogMarketplacesItem",
446
+ "CatalogMarketplacesItemCostValue",
447
+ "CatalogMarketplacesItemKind",
448
+ "CatalogResponse",
449
+ "CategoriesAmazonRequestRegion",
450
+ "CategoryList",
451
+ "CategoryListResponse",
452
+ "CategoryNode",
453
+ "CategoryStep",
454
+ "Comment",
455
+ "CommentMetrics",
456
+ "CommentMoreReplies",
457
+ "CommentPage",
458
+ "CommentPagePlatform",
459
+ "CommentPageResponse",
460
+ "CommentPlatform",
461
+ "CommentsInstagramRequestSort",
462
+ "CommentsRedditRequestPeriod",
463
+ "CommentsRedditRequestSort",
464
+ "CommentsThreadsRequestSort",
465
+ "DefaultAioHttpClient",
466
+ "DefaultAsyncHttpxClient",
467
+ "DeliveryOption",
468
+ "Entities",
469
+ "ErrorResponse",
470
+ "ErrorResponseError",
471
+ "Ext",
472
+ "Facet",
473
+ "FacetKind",
474
+ "FacetValue",
475
+ "ForbiddenError",
476
+ "Group",
477
+ "GroupCounts",
478
+ "GroupKind",
479
+ "GroupPage",
480
+ "GroupPagePlatform",
481
+ "GroupPageResponse",
482
+ "GroupPlatform",
483
+ "GroupResponse",
484
+ "GroupsInstagramRequestType",
485
+ "GroupsTiktokRequestType",
486
+ "GroupsYoutubeRequestType",
487
+ "Identifiers",
488
+ "ImageSearchAmazonRequestImage",
489
+ "ImageSearchAmazonRequestRegion",
490
+ "ImageSearchAmazonRequestSort",
491
+ "ImageSearchShopifyRequestCondition",
492
+ "ImageSearchShopifyRequestImage",
493
+ "ImageSearchShopifyRequestInStock",
494
+ "ImageSearchShopifyRequestInStockOne",
495
+ "InReplyTo",
496
+ "InternalServerError",
497
+ "Job",
498
+ "JobCompany",
499
+ "JobPage",
500
+ "JobPageItemsItem",
501
+ "JobPageItemsItemCompany",
502
+ "JobPageItemsItemPlatform",
503
+ "JobPagePlatform",
504
+ "JobPageResponse",
505
+ "JobPlatform",
506
+ "JobResponse",
507
+ "Link",
508
+ "LinkPreview",
509
+ "Media",
510
+ "MediaFile",
511
+ "MediaFileEncoding",
512
+ "MediaFileResponse",
513
+ "MediaVariant",
514
+ "MediaVideo",
515
+ "Mention",
516
+ "Money",
517
+ "NotFoundError",
518
+ "NotImplementedError",
519
+ "OcrImageTranslateRequestSourceLanguage",
520
+ "OcrResult",
521
+ "OcrResultResponse",
522
+ "Offer",
523
+ "Option",
524
+ "OptionValue",
525
+ "Page",
526
+ "PaymentRequiredError",
527
+ "Place",
528
+ "Poll",
529
+ "PollOptionsItem",
530
+ "Post",
531
+ "PostMetrics",
532
+ "PostPage",
533
+ "PostPagePlatform",
534
+ "PostPageResponse",
535
+ "PostPlatform",
536
+ "PostResponse",
537
+ "PostsInstagramRequestType",
538
+ "PostsRedditRequestPeriod",
539
+ "PostsRedditRequestSort",
540
+ "PostsThreadsRequestSort",
541
+ "PostsThreadsRequestType",
542
+ "PostsTiktokRequestType",
543
+ "PostsYoutubeRequestType",
544
+ "Product",
545
+ "ProductAliexpressRequestInclude",
546
+ "ProductAmazonRequestRegion",
547
+ "ProductDeliveryTo",
548
+ "ProductOffersSummary",
549
+ "ProductPackage",
550
+ "ProductPriceRange",
551
+ "ProductResponse",
552
+ "ProductReviewAspectsItem",
553
+ "ProductUnitPrice",
554
+ "ProfilesTiktokRequestType",
555
+ "Rating",
556
+ "Review",
557
+ "ReviewPage",
558
+ "ReviewPageResponse",
559
+ "ReviewReply",
560
+ "SearchAliexpressRequestSort",
561
+ "SearchAmazonRequestRegion",
562
+ "SearchAmazonRequestSort",
563
+ "SearchItem",
564
+ "SearchItemDeliveryTo",
565
+ "SearchItemOffersSummary",
566
+ "SearchItemPriceRange",
567
+ "SearchItemUnitPrice",
568
+ "SearchResult",
569
+ "SearchResultResponse",
570
+ "SearchShopifyRequestCondition",
571
+ "SearchWalmartRequestSort",
572
+ "Seller",
573
+ "SellerDetailedRatings",
574
+ "ServiceUnavailableError",
575
+ "ShippingOption",
576
+ "ShippingQuote",
577
+ "ShippingQuoteResponse",
578
+ "SocialMedia",
579
+ "SocialMediaType",
580
+ "SupportedFonts",
581
+ "SupportedFontsResponse",
582
+ "TextRegion",
583
+ "TextRegionBbox",
584
+ "TextRegionBgColor",
585
+ "TextRegionTextColor",
586
+ "TooManyRequestsError",
587
+ "TranslateImageTranslateRequestFontWeight",
588
+ "TranslateImageTranslateRequestSourceLanguage",
589
+ "TranslatedRegion",
590
+ "TranslatedRegionBbox",
591
+ "TranslatedRegionBgColor",
592
+ "TranslatedRegionTextColor",
593
+ "TranslatedRegions",
594
+ "TranslatedRegionsResponse",
595
+ "UnauthorizedError",
596
+ "Url",
597
+ "Variant",
598
+ "VariantSelection",
599
+ "aliexpress",
600
+ "amazon",
601
+ "image_translate",
602
+ "instagram",
603
+ "linkedin",
604
+ "marketplaces",
605
+ "reddit",
606
+ "shopify",
607
+ "threads",
608
+ "tiktok",
609
+ "tiktokshop",
610
+ "walmart",
611
+ "x",
612
+ "youtube",
613
+ ]
@@ -0,0 +1,30 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import httpx
6
+
7
+ SDK_DEFAULT_TIMEOUT = 60
8
+
9
+ try:
10
+ import httpx_aiohttp # type: ignore[import-not-found]
11
+ except ImportError:
12
+
13
+ class DefaultAioHttpClient(httpx.AsyncClient): # type: ignore
14
+ def __init__(self, **kwargs: typing.Any) -> None:
15
+ raise RuntimeError("To use the aiohttp client, install the aiohttp extra: pip install apinoa[aiohttp]")
16
+
17
+ else:
18
+
19
+ class DefaultAioHttpClient(httpx_aiohttp.HttpxAiohttpClient): # type: ignore
20
+ def __init__(self, **kwargs: typing.Any) -> None:
21
+ kwargs.setdefault("timeout", SDK_DEFAULT_TIMEOUT)
22
+ kwargs.setdefault("follow_redirects", True)
23
+ super().__init__(**kwargs)
24
+
25
+
26
+ class DefaultAsyncHttpxClient(httpx.AsyncClient):
27
+ def __init__(self, **kwargs: typing.Any) -> None:
28
+ kwargs.setdefault("timeout", SDK_DEFAULT_TIMEOUT)
29
+ kwargs.setdefault("follow_redirects", True)
30
+ super().__init__(**kwargs)
@@ -0,0 +1,38 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ # isort: skip_file
4
+
5
+ import typing
6
+ from importlib import import_module
7
+
8
+ if typing.TYPE_CHECKING:
9
+ from .types import BrowseAliexpressRequestSort, ProductAliexpressRequestInclude, SearchAliexpressRequestSort
10
+ _dynamic_imports: typing.Dict[str, str] = {
11
+ "BrowseAliexpressRequestSort": ".types",
12
+ "ProductAliexpressRequestInclude": ".types",
13
+ "SearchAliexpressRequestSort": ".types",
14
+ }
15
+
16
+
17
+ def __getattr__(attr_name: str) -> typing.Any:
18
+ module_name = _dynamic_imports.get(attr_name)
19
+ if module_name is None:
20
+ raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
21
+ try:
22
+ module = import_module(module_name, __package__)
23
+ if module_name == f".{attr_name}":
24
+ return module
25
+ else:
26
+ return getattr(module, attr_name)
27
+ except ImportError as e:
28
+ raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
29
+ except AttributeError as e:
30
+ raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
31
+
32
+
33
+ def __dir__():
34
+ lazy_attrs = list(_dynamic_imports.keys())
35
+ return sorted(lazy_attrs)
36
+
37
+
38
+ __all__ = ["BrowseAliexpressRequestSort", "ProductAliexpressRequestInclude", "SearchAliexpressRequestSort"]