context.dev 0.0.3__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 (77) hide show
  1. context/__init__.py +1 -0
  2. context/dev/__init__.py +102 -0
  3. context/dev/_base_client.py +2127 -0
  4. context/dev/_client.py +451 -0
  5. context/dev/_compat.py +219 -0
  6. context/dev/_constants.py +14 -0
  7. context/dev/_exceptions.py +108 -0
  8. context/dev/_files.py +123 -0
  9. context/dev/_models.py +872 -0
  10. context/dev/_qs.py +150 -0
  11. context/dev/_resource.py +43 -0
  12. context/dev/_response.py +835 -0
  13. context/dev/_streaming.py +338 -0
  14. context/dev/_types.py +270 -0
  15. context/dev/_utils/__init__.py +64 -0
  16. context/dev/_utils/_compat.py +45 -0
  17. context/dev/_utils/_datetime_parse.py +136 -0
  18. context/dev/_utils/_json.py +35 -0
  19. context/dev/_utils/_logs.py +25 -0
  20. context/dev/_utils/_proxy.py +65 -0
  21. context/dev/_utils/_reflection.py +42 -0
  22. context/dev/_utils/_resources_proxy.py +24 -0
  23. context/dev/_utils/_streams.py +12 -0
  24. context/dev/_utils/_sync.py +58 -0
  25. context/dev/_utils/_transform.py +457 -0
  26. context/dev/_utils/_typing.py +156 -0
  27. context/dev/_utils/_utils.py +421 -0
  28. context/dev/_version.py +4 -0
  29. context/dev/lib/.keep +4 -0
  30. context/dev/py.typed +0 -0
  31. context/dev/resources/__init__.py +19 -0
  32. context/dev/resources/brand.py +3994 -0
  33. context/dev/types/__init__.py +48 -0
  34. context/dev/types/brand_ai_product_params.py +20 -0
  35. context/dev/types/brand_ai_product_response.py +62 -0
  36. context/dev/types/brand_ai_products_params.py +44 -0
  37. context/dev/types/brand_ai_products_response.py +54 -0
  38. context/dev/types/brand_ai_query_params.py +86 -0
  39. context/dev/types/brand_ai_query_response.py +33 -0
  40. context/dev/types/brand_fonts_params.py +24 -0
  41. context/dev/types/brand_fonts_response.py +44 -0
  42. context/dev/types/brand_identify_from_transaction_params.py +349 -0
  43. context/dev/types/brand_identify_from_transaction_response.py +497 -0
  44. context/dev/types/brand_prefetch_by_email_params.py +25 -0
  45. context/dev/types/brand_prefetch_by_email_response.py +18 -0
  46. context/dev/types/brand_prefetch_params.py +21 -0
  47. context/dev/types/brand_prefetch_response.py +18 -0
  48. context/dev/types/brand_retrieve_by_email_params.py +88 -0
  49. context/dev/types/brand_retrieve_by_email_response.py +497 -0
  50. context/dev/types/brand_retrieve_by_isin_params.py +88 -0
  51. context/dev/types/brand_retrieve_by_isin_response.py +497 -0
  52. context/dev/types/brand_retrieve_by_name_params.py +87 -0
  53. context/dev/types/brand_retrieve_by_name_response.py +497 -0
  54. context/dev/types/brand_retrieve_by_ticker_params.py +163 -0
  55. context/dev/types/brand_retrieve_by_ticker_response.py +497 -0
  56. context/dev/types/brand_retrieve_naics_params.py +34 -0
  57. context/dev/types/brand_retrieve_naics_response.py +33 -0
  58. context/dev/types/brand_retrieve_params.py +91 -0
  59. context/dev/types/brand_retrieve_response.py +497 -0
  60. context/dev/types/brand_retrieve_simplified_params.py +21 -0
  61. context/dev/types/brand_retrieve_simplified_response.py +130 -0
  62. context/dev/types/brand_screenshot_params.py +40 -0
  63. context/dev/types/brand_screenshot_response.py +27 -0
  64. context/dev/types/brand_styleguide_params.py +38 -0
  65. context/dev/types/brand_styleguide_response.py +321 -0
  66. context/dev/types/brand_web_scrape_html_params.py +12 -0
  67. context/dev/types/brand_web_scrape_html_response.py +18 -0
  68. context/dev/types/brand_web_scrape_images_params.py +12 -0
  69. context/dev/types/brand_web_scrape_images_response.py +33 -0
  70. context/dev/types/brand_web_scrape_md_params.py +26 -0
  71. context/dev/types/brand_web_scrape_md_response.py +18 -0
  72. context/dev/types/brand_web_scrape_sitemap_params.py +15 -0
  73. context/dev/types/brand_web_scrape_sitemap_response.py +40 -0
  74. context_dev-0.0.3.dist-info/METADATA +448 -0
  75. context_dev-0.0.3.dist-info/RECORD +77 -0
  76. context_dev-0.0.3.dist-info/WHEEL +4 -0
  77. context_dev-0.0.3.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,3994 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Iterable
6
+ from typing_extensions import Literal, overload
7
+
8
+ import httpx
9
+
10
+ from ..types import (
11
+ brand_fonts_params,
12
+ brand_ai_query_params,
13
+ brand_prefetch_params,
14
+ brand_retrieve_params,
15
+ brand_ai_product_params,
16
+ brand_screenshot_params,
17
+ brand_styleguide_params,
18
+ brand_ai_products_params,
19
+ brand_web_scrape_md_params,
20
+ brand_retrieve_naics_params,
21
+ brand_web_scrape_html_params,
22
+ brand_retrieve_by_isin_params,
23
+ brand_retrieve_by_name_params,
24
+ brand_prefetch_by_email_params,
25
+ brand_retrieve_by_email_params,
26
+ brand_web_scrape_images_params,
27
+ brand_retrieve_by_ticker_params,
28
+ brand_web_scrape_sitemap_params,
29
+ brand_retrieve_simplified_params,
30
+ brand_identify_from_transaction_params,
31
+ )
32
+ from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
33
+ from .._utils import required_args, maybe_transform, async_maybe_transform
34
+ from .._compat import cached_property
35
+ from .._resource import SyncAPIResource, AsyncAPIResource
36
+ from .._response import (
37
+ to_raw_response_wrapper,
38
+ to_streamed_response_wrapper,
39
+ async_to_raw_response_wrapper,
40
+ async_to_streamed_response_wrapper,
41
+ )
42
+ from .._base_client import make_request_options
43
+ from ..types.brand_fonts_response import BrandFontsResponse
44
+ from ..types.brand_ai_query_response import BrandAIQueryResponse
45
+ from ..types.brand_prefetch_response import BrandPrefetchResponse
46
+ from ..types.brand_retrieve_response import BrandRetrieveResponse
47
+ from ..types.brand_ai_product_response import BrandAIProductResponse
48
+ from ..types.brand_screenshot_response import BrandScreenshotResponse
49
+ from ..types.brand_styleguide_response import BrandStyleguideResponse
50
+ from ..types.brand_ai_products_response import BrandAIProductsResponse
51
+ from ..types.brand_web_scrape_md_response import BrandWebScrapeMdResponse
52
+ from ..types.brand_retrieve_naics_response import BrandRetrieveNaicsResponse
53
+ from ..types.brand_web_scrape_html_response import BrandWebScrapeHTMLResponse
54
+ from ..types.brand_retrieve_by_isin_response import BrandRetrieveByIsinResponse
55
+ from ..types.brand_retrieve_by_name_response import BrandRetrieveByNameResponse
56
+ from ..types.brand_prefetch_by_email_response import BrandPrefetchByEmailResponse
57
+ from ..types.brand_retrieve_by_email_response import BrandRetrieveByEmailResponse
58
+ from ..types.brand_web_scrape_images_response import BrandWebScrapeImagesResponse
59
+ from ..types.brand_retrieve_by_ticker_response import BrandRetrieveByTickerResponse
60
+ from ..types.brand_web_scrape_sitemap_response import BrandWebScrapeSitemapResponse
61
+ from ..types.brand_retrieve_simplified_response import BrandRetrieveSimplifiedResponse
62
+ from ..types.brand_identify_from_transaction_response import BrandIdentifyFromTransactionResponse
63
+
64
+ __all__ = ["BrandResource", "AsyncBrandResource"]
65
+
66
+
67
+ class BrandResource(SyncAPIResource):
68
+ @cached_property
69
+ def with_raw_response(self) -> BrandResourceWithRawResponse:
70
+ """
71
+ This property can be used as a prefix for any HTTP method call to return
72
+ the raw response object instead of the parsed content.
73
+
74
+ For more information, see https://www.github.com/brand-dot-dev/context-python-sdk#accessing-raw-response-data-eg-headers
75
+ """
76
+ return BrandResourceWithRawResponse(self)
77
+
78
+ @cached_property
79
+ def with_streaming_response(self) -> BrandResourceWithStreamingResponse:
80
+ """
81
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
82
+
83
+ For more information, see https://www.github.com/brand-dot-dev/context-python-sdk#with_streaming_response
84
+ """
85
+ return BrandResourceWithStreamingResponse(self)
86
+
87
+ def retrieve(
88
+ self,
89
+ *,
90
+ domain: str,
91
+ force_language: Literal[
92
+ "albanian",
93
+ "arabic",
94
+ "azeri",
95
+ "bengali",
96
+ "bulgarian",
97
+ "cebuano",
98
+ "croatian",
99
+ "czech",
100
+ "danish",
101
+ "dutch",
102
+ "english",
103
+ "estonian",
104
+ "farsi",
105
+ "finnish",
106
+ "french",
107
+ "german",
108
+ "hausa",
109
+ "hawaiian",
110
+ "hindi",
111
+ "hungarian",
112
+ "icelandic",
113
+ "indonesian",
114
+ "italian",
115
+ "kazakh",
116
+ "kyrgyz",
117
+ "latin",
118
+ "latvian",
119
+ "lithuanian",
120
+ "macedonian",
121
+ "mongolian",
122
+ "nepali",
123
+ "norwegian",
124
+ "pashto",
125
+ "pidgin",
126
+ "polish",
127
+ "portuguese",
128
+ "romanian",
129
+ "russian",
130
+ "serbian",
131
+ "slovak",
132
+ "slovene",
133
+ "somali",
134
+ "spanish",
135
+ "swahili",
136
+ "swedish",
137
+ "tagalog",
138
+ "turkish",
139
+ "ukrainian",
140
+ "urdu",
141
+ "uzbek",
142
+ "vietnamese",
143
+ "welsh",
144
+ ]
145
+ | Omit = omit,
146
+ max_speed: bool | Omit = omit,
147
+ timeout_ms: int | Omit = omit,
148
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
149
+ # The extra values given here take precedence over values defined on the client or passed to this method.
150
+ extra_headers: Headers | None = None,
151
+ extra_query: Query | None = None,
152
+ extra_body: Body | None = None,
153
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
154
+ ) -> BrandRetrieveResponse:
155
+ """
156
+ Retrieve logos, backdrops, colors, industry, description, and more from any
157
+ domain
158
+
159
+ Args:
160
+ domain: Domain name to retrieve brand data for (e.g., 'example.com', 'google.com').
161
+ Cannot be used with name or ticker parameters.
162
+
163
+ force_language: Optional parameter to force the language of the retrieved brand data. Works with
164
+ all three lookup methods.
165
+
166
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
167
+ the API will skip time-consuming operations for faster response at the cost of
168
+ less comprehensive data. Works with all three lookup methods.
169
+
170
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
171
+ than this value, it will be aborted with a 408 status code. Maximum allowed
172
+ value is 300000ms (5 minutes).
173
+
174
+ extra_headers: Send extra headers
175
+
176
+ extra_query: Add additional query parameters to the request
177
+
178
+ extra_body: Add additional JSON properties to the request
179
+
180
+ timeout: Override the client-level default timeout for this request, in seconds
181
+ """
182
+ return self._get(
183
+ "/brand/retrieve",
184
+ options=make_request_options(
185
+ extra_headers=extra_headers,
186
+ extra_query=extra_query,
187
+ extra_body=extra_body,
188
+ timeout=timeout,
189
+ query=maybe_transform(
190
+ {
191
+ "domain": domain,
192
+ "force_language": force_language,
193
+ "max_speed": max_speed,
194
+ "timeout_ms": timeout_ms,
195
+ },
196
+ brand_retrieve_params.BrandRetrieveParams,
197
+ ),
198
+ ),
199
+ cast_to=BrandRetrieveResponse,
200
+ )
201
+
202
+ def ai_product(
203
+ self,
204
+ *,
205
+ url: str,
206
+ timeout_ms: int | Omit = omit,
207
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
208
+ # The extra values given here take precedence over values defined on the client or passed to this method.
209
+ extra_headers: Headers | None = None,
210
+ extra_query: Query | None = None,
211
+ extra_body: Body | None = None,
212
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
213
+ ) -> BrandAIProductResponse:
214
+ """
215
+ Beta feature: Given a single URL, determines if it is a product detail page,
216
+ classifies the platform/product type, and extracts the product information.
217
+ Supports Amazon, TikTok Shop, Etsy, and generic ecommerce sites.
218
+
219
+ Args:
220
+ url: The product page URL to extract product data from.
221
+
222
+ timeout_ms: Optional timeout in milliseconds for the request. Maximum allowed value is
223
+ 300000ms (5 minutes).
224
+
225
+ extra_headers: Send extra headers
226
+
227
+ extra_query: Add additional query parameters to the request
228
+
229
+ extra_body: Add additional JSON properties to the request
230
+
231
+ timeout: Override the client-level default timeout for this request, in seconds
232
+ """
233
+ return self._post(
234
+ "/brand/ai/product",
235
+ body=maybe_transform(
236
+ {
237
+ "url": url,
238
+ "timeout_ms": timeout_ms,
239
+ },
240
+ brand_ai_product_params.BrandAIProductParams,
241
+ ),
242
+ options=make_request_options(
243
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
244
+ ),
245
+ cast_to=BrandAIProductResponse,
246
+ )
247
+
248
+ @overload
249
+ def ai_products(
250
+ self,
251
+ *,
252
+ domain: str,
253
+ max_products: int | Omit = omit,
254
+ timeout_ms: int | Omit = omit,
255
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
256
+ # The extra values given here take precedence over values defined on the client or passed to this method.
257
+ extra_headers: Headers | None = None,
258
+ extra_query: Query | None = None,
259
+ extra_body: Body | None = None,
260
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
261
+ ) -> BrandAIProductsResponse:
262
+ """Beta feature: Extract product information from a brand's website.
263
+
264
+ Brand.dev will
265
+ analyze the website and return a list of products with details such as name,
266
+ description, image, pricing, features, and more.
267
+
268
+ Args:
269
+ domain: The domain name to analyze.
270
+
271
+ max_products: Maximum number of products to extract.
272
+
273
+ timeout_ms: Optional timeout in milliseconds for the request. Maximum allowed value is
274
+ 300000ms (5 minutes).
275
+
276
+ extra_headers: Send extra headers
277
+
278
+ extra_query: Add additional query parameters to the request
279
+
280
+ extra_body: Add additional JSON properties to the request
281
+
282
+ timeout: Override the client-level default timeout for this request, in seconds
283
+ """
284
+ ...
285
+
286
+ @overload
287
+ def ai_products(
288
+ self,
289
+ *,
290
+ direct_url: str,
291
+ max_products: int | Omit = omit,
292
+ timeout_ms: int | Omit = omit,
293
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
294
+ # The extra values given here take precedence over values defined on the client or passed to this method.
295
+ extra_headers: Headers | None = None,
296
+ extra_query: Query | None = None,
297
+ extra_body: Body | None = None,
298
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
299
+ ) -> BrandAIProductsResponse:
300
+ """Beta feature: Extract product information from a brand's website.
301
+
302
+ Brand.dev will
303
+ analyze the website and return a list of products with details such as name,
304
+ description, image, pricing, features, and more.
305
+
306
+ Args:
307
+ direct_url: A specific URL to use directly as the starting point for extraction without
308
+ domain resolution.
309
+
310
+ max_products: Maximum number of products to extract.
311
+
312
+ timeout_ms: Optional timeout in milliseconds for the request. Maximum allowed value is
313
+ 300000ms (5 minutes).
314
+
315
+ extra_headers: Send extra headers
316
+
317
+ extra_query: Add additional query parameters to the request
318
+
319
+ extra_body: Add additional JSON properties to the request
320
+
321
+ timeout: Override the client-level default timeout for this request, in seconds
322
+ """
323
+ ...
324
+
325
+ @required_args(["domain"], ["direct_url"])
326
+ def ai_products(
327
+ self,
328
+ *,
329
+ domain: str | Omit = omit,
330
+ max_products: int | Omit = omit,
331
+ timeout_ms: int | Omit = omit,
332
+ direct_url: str | Omit = omit,
333
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
334
+ # The extra values given here take precedence over values defined on the client or passed to this method.
335
+ extra_headers: Headers | None = None,
336
+ extra_query: Query | None = None,
337
+ extra_body: Body | None = None,
338
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
339
+ ) -> BrandAIProductsResponse:
340
+ return self._post(
341
+ "/brand/ai/products",
342
+ body=maybe_transform(
343
+ {
344
+ "domain": domain,
345
+ "max_products": max_products,
346
+ "timeout_ms": timeout_ms,
347
+ "direct_url": direct_url,
348
+ },
349
+ brand_ai_products_params.BrandAIProductsParams,
350
+ ),
351
+ options=make_request_options(
352
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
353
+ ),
354
+ cast_to=BrandAIProductsResponse,
355
+ )
356
+
357
+ def ai_query(
358
+ self,
359
+ *,
360
+ data_to_extract: Iterable[brand_ai_query_params.DataToExtract],
361
+ domain: str,
362
+ specific_pages: brand_ai_query_params.SpecificPages | Omit = omit,
363
+ timeout_ms: int | Omit = omit,
364
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
365
+ # The extra values given here take precedence over values defined on the client or passed to this method.
366
+ extra_headers: Headers | None = None,
367
+ extra_query: Query | None = None,
368
+ extra_body: Body | None = None,
369
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
370
+ ) -> BrandAIQueryResponse:
371
+ """Use AI to extract specific data points from a brand's website.
372
+
373
+ The AI will crawl
374
+ the website and extract the requested information based on the provided data
375
+ points.
376
+
377
+ Args:
378
+ data_to_extract: Array of data points to extract from the website
379
+
380
+ domain: The domain name to analyze
381
+
382
+ specific_pages: Optional object specifying which pages to analyze
383
+
384
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
385
+ than this value, it will be aborted with a 408 status code. Maximum allowed
386
+ value is 300000ms (5 minutes).
387
+
388
+ extra_headers: Send extra headers
389
+
390
+ extra_query: Add additional query parameters to the request
391
+
392
+ extra_body: Add additional JSON properties to the request
393
+
394
+ timeout: Override the client-level default timeout for this request, in seconds
395
+ """
396
+ return self._post(
397
+ "/brand/ai/query",
398
+ body=maybe_transform(
399
+ {
400
+ "data_to_extract": data_to_extract,
401
+ "domain": domain,
402
+ "specific_pages": specific_pages,
403
+ "timeout_ms": timeout_ms,
404
+ },
405
+ brand_ai_query_params.BrandAIQueryParams,
406
+ ),
407
+ options=make_request_options(
408
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
409
+ ),
410
+ cast_to=BrandAIQueryResponse,
411
+ )
412
+
413
+ def fonts(
414
+ self,
415
+ *,
416
+ domain: str,
417
+ timeout_ms: int | Omit = omit,
418
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
419
+ # The extra values given here take precedence over values defined on the client or passed to this method.
420
+ extra_headers: Headers | None = None,
421
+ extra_query: Query | None = None,
422
+ extra_body: Body | None = None,
423
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
424
+ ) -> BrandFontsResponse:
425
+ """
426
+ Extract font information from a brand's website including font families, usage
427
+ statistics, fallbacks, and element/word counts.
428
+
429
+ Args:
430
+ domain: Domain name to extract fonts from (e.g., 'example.com', 'google.com'). The
431
+ domain will be automatically normalized and validated.
432
+
433
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
434
+ than this value, it will be aborted with a 408 status code. Maximum allowed
435
+ value is 300000ms (5 minutes).
436
+
437
+ extra_headers: Send extra headers
438
+
439
+ extra_query: Add additional query parameters to the request
440
+
441
+ extra_body: Add additional JSON properties to the request
442
+
443
+ timeout: Override the client-level default timeout for this request, in seconds
444
+ """
445
+ return self._get(
446
+ "/brand/fonts",
447
+ options=make_request_options(
448
+ extra_headers=extra_headers,
449
+ extra_query=extra_query,
450
+ extra_body=extra_body,
451
+ timeout=timeout,
452
+ query=maybe_transform(
453
+ {
454
+ "domain": domain,
455
+ "timeout_ms": timeout_ms,
456
+ },
457
+ brand_fonts_params.BrandFontsParams,
458
+ ),
459
+ ),
460
+ cast_to=BrandFontsResponse,
461
+ )
462
+
463
+ def identify_from_transaction(
464
+ self,
465
+ *,
466
+ transaction_info: str,
467
+ city: str | Omit = omit,
468
+ country_gl: Literal[
469
+ "ad",
470
+ "ae",
471
+ "af",
472
+ "ag",
473
+ "ai",
474
+ "al",
475
+ "am",
476
+ "an",
477
+ "ao",
478
+ "aq",
479
+ "ar",
480
+ "as",
481
+ "at",
482
+ "au",
483
+ "aw",
484
+ "az",
485
+ "ba",
486
+ "bb",
487
+ "bd",
488
+ "be",
489
+ "bf",
490
+ "bg",
491
+ "bh",
492
+ "bi",
493
+ "bj",
494
+ "bm",
495
+ "bn",
496
+ "bo",
497
+ "br",
498
+ "bs",
499
+ "bt",
500
+ "bv",
501
+ "bw",
502
+ "by",
503
+ "bz",
504
+ "ca",
505
+ "cc",
506
+ "cd",
507
+ "cf",
508
+ "cg",
509
+ "ch",
510
+ "ci",
511
+ "ck",
512
+ "cl",
513
+ "cm",
514
+ "cn",
515
+ "co",
516
+ "cr",
517
+ "cu",
518
+ "cv",
519
+ "cx",
520
+ "cy",
521
+ "cz",
522
+ "de",
523
+ "dj",
524
+ "dk",
525
+ "dm",
526
+ "do",
527
+ "dz",
528
+ "ec",
529
+ "ee",
530
+ "eg",
531
+ "eh",
532
+ "er",
533
+ "es",
534
+ "et",
535
+ "fi",
536
+ "fj",
537
+ "fk",
538
+ "fm",
539
+ "fo",
540
+ "fr",
541
+ "ga",
542
+ "gb",
543
+ "gd",
544
+ "ge",
545
+ "gf",
546
+ "gh",
547
+ "gi",
548
+ "gl",
549
+ "gm",
550
+ "gn",
551
+ "gp",
552
+ "gq",
553
+ "gr",
554
+ "gs",
555
+ "gt",
556
+ "gu",
557
+ "gw",
558
+ "gy",
559
+ "hk",
560
+ "hm",
561
+ "hn",
562
+ "hr",
563
+ "ht",
564
+ "hu",
565
+ "id",
566
+ "ie",
567
+ "il",
568
+ "in",
569
+ "io",
570
+ "iq",
571
+ "ir",
572
+ "is",
573
+ "it",
574
+ "jm",
575
+ "jo",
576
+ "jp",
577
+ "ke",
578
+ "kg",
579
+ "kh",
580
+ "ki",
581
+ "km",
582
+ "kn",
583
+ "kp",
584
+ "kr",
585
+ "kw",
586
+ "ky",
587
+ "kz",
588
+ "la",
589
+ "lb",
590
+ "lc",
591
+ "li",
592
+ "lk",
593
+ "lr",
594
+ "ls",
595
+ "lt",
596
+ "lu",
597
+ "lv",
598
+ "ly",
599
+ "ma",
600
+ "mc",
601
+ "md",
602
+ "mg",
603
+ "mh",
604
+ "mk",
605
+ "ml",
606
+ "mm",
607
+ "mn",
608
+ "mo",
609
+ "mp",
610
+ "mq",
611
+ "mr",
612
+ "ms",
613
+ "mt",
614
+ "mu",
615
+ "mv",
616
+ "mw",
617
+ "mx",
618
+ "my",
619
+ "mz",
620
+ "na",
621
+ "nc",
622
+ "ne",
623
+ "nf",
624
+ "ng",
625
+ "ni",
626
+ "nl",
627
+ "no",
628
+ "np",
629
+ "nr",
630
+ "nu",
631
+ "nz",
632
+ "om",
633
+ "pa",
634
+ "pe",
635
+ "pf",
636
+ "pg",
637
+ "ph",
638
+ "pk",
639
+ "pl",
640
+ "pm",
641
+ "pn",
642
+ "pr",
643
+ "ps",
644
+ "pt",
645
+ "pw",
646
+ "py",
647
+ "qa",
648
+ "re",
649
+ "ro",
650
+ "rs",
651
+ "ru",
652
+ "rw",
653
+ "sa",
654
+ "sb",
655
+ "sc",
656
+ "sd",
657
+ "se",
658
+ "sg",
659
+ "sh",
660
+ "si",
661
+ "sj",
662
+ "sk",
663
+ "sl",
664
+ "sm",
665
+ "sn",
666
+ "so",
667
+ "sr",
668
+ "st",
669
+ "sv",
670
+ "sy",
671
+ "sz",
672
+ "tc",
673
+ "td",
674
+ "tf",
675
+ "tg",
676
+ "th",
677
+ "tj",
678
+ "tk",
679
+ "tl",
680
+ "tm",
681
+ "tn",
682
+ "to",
683
+ "tr",
684
+ "tt",
685
+ "tv",
686
+ "tw",
687
+ "tz",
688
+ "ua",
689
+ "ug",
690
+ "um",
691
+ "us",
692
+ "uy",
693
+ "uz",
694
+ "va",
695
+ "vc",
696
+ "ve",
697
+ "vg",
698
+ "vi",
699
+ "vn",
700
+ "vu",
701
+ "wf",
702
+ "ws",
703
+ "ye",
704
+ "yt",
705
+ "za",
706
+ "zm",
707
+ "zw",
708
+ ]
709
+ | Omit = omit,
710
+ force_language: Literal[
711
+ "albanian",
712
+ "arabic",
713
+ "azeri",
714
+ "bengali",
715
+ "bulgarian",
716
+ "cebuano",
717
+ "croatian",
718
+ "czech",
719
+ "danish",
720
+ "dutch",
721
+ "english",
722
+ "estonian",
723
+ "farsi",
724
+ "finnish",
725
+ "french",
726
+ "german",
727
+ "hausa",
728
+ "hawaiian",
729
+ "hindi",
730
+ "hungarian",
731
+ "icelandic",
732
+ "indonesian",
733
+ "italian",
734
+ "kazakh",
735
+ "kyrgyz",
736
+ "latin",
737
+ "latvian",
738
+ "lithuanian",
739
+ "macedonian",
740
+ "mongolian",
741
+ "nepali",
742
+ "norwegian",
743
+ "pashto",
744
+ "pidgin",
745
+ "polish",
746
+ "portuguese",
747
+ "romanian",
748
+ "russian",
749
+ "serbian",
750
+ "slovak",
751
+ "slovene",
752
+ "somali",
753
+ "spanish",
754
+ "swahili",
755
+ "swedish",
756
+ "tagalog",
757
+ "turkish",
758
+ "ukrainian",
759
+ "urdu",
760
+ "uzbek",
761
+ "vietnamese",
762
+ "welsh",
763
+ ]
764
+ | Omit = omit,
765
+ high_confidence_only: bool | Omit = omit,
766
+ max_speed: bool | Omit = omit,
767
+ mcc: str | Omit = omit,
768
+ phone: float | Omit = omit,
769
+ timeout_ms: int | Omit = omit,
770
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
771
+ # The extra values given here take precedence over values defined on the client or passed to this method.
772
+ extra_headers: Headers | None = None,
773
+ extra_query: Query | None = None,
774
+ extra_body: Body | None = None,
775
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
776
+ ) -> BrandIdentifyFromTransactionResponse:
777
+ """
778
+ Endpoint specially designed for platforms that want to identify transaction data
779
+ by the transaction title.
780
+
781
+ Args:
782
+ transaction_info: Transaction information to identify the brand
783
+
784
+ city: Optional city name to prioritize when searching for the brand.
785
+
786
+ country_gl: Optional country code (GL parameter) to specify the country. This affects the
787
+ geographic location used for search queries.
788
+
789
+ force_language: Optional parameter to force the language of the retrieved brand data.
790
+
791
+ high_confidence_only: When set to true, the API will perform an additional verification steps to
792
+ ensure the identified brand matches the transaction with high confidence.
793
+ Defaults to false.
794
+
795
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
796
+ the API will skip time-consuming operations for faster response at the cost of
797
+ less comprehensive data.
798
+
799
+ mcc: Optional Merchant Category Code (MCC) to help identify the business
800
+ category/industry.
801
+
802
+ phone: Optional phone number from the transaction to help verify brand match.
803
+
804
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
805
+ than this value, it will be aborted with a 408 status code. Maximum allowed
806
+ value is 300000ms (5 minutes).
807
+
808
+ extra_headers: Send extra headers
809
+
810
+ extra_query: Add additional query parameters to the request
811
+
812
+ extra_body: Add additional JSON properties to the request
813
+
814
+ timeout: Override the client-level default timeout for this request, in seconds
815
+ """
816
+ return self._get(
817
+ "/brand/transaction_identifier",
818
+ options=make_request_options(
819
+ extra_headers=extra_headers,
820
+ extra_query=extra_query,
821
+ extra_body=extra_body,
822
+ timeout=timeout,
823
+ query=maybe_transform(
824
+ {
825
+ "transaction_info": transaction_info,
826
+ "city": city,
827
+ "country_gl": country_gl,
828
+ "force_language": force_language,
829
+ "high_confidence_only": high_confidence_only,
830
+ "max_speed": max_speed,
831
+ "mcc": mcc,
832
+ "phone": phone,
833
+ "timeout_ms": timeout_ms,
834
+ },
835
+ brand_identify_from_transaction_params.BrandIdentifyFromTransactionParams,
836
+ ),
837
+ ),
838
+ cast_to=BrandIdentifyFromTransactionResponse,
839
+ )
840
+
841
+ def prefetch(
842
+ self,
843
+ *,
844
+ domain: str,
845
+ timeout_ms: int | Omit = omit,
846
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
847
+ # The extra values given here take precedence over values defined on the client or passed to this method.
848
+ extra_headers: Headers | None = None,
849
+ extra_query: Query | None = None,
850
+ extra_body: Body | None = None,
851
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
852
+ ) -> BrandPrefetchResponse:
853
+ """
854
+ Signal that you may fetch brand data for a particular domain soon to improve
855
+ latency. This endpoint does not charge credits and is available for paid
856
+ customers to optimize future requests. [You must be on a paid plan to use this
857
+ endpoint]
858
+
859
+ Args:
860
+ domain: Domain name to prefetch brand data for
861
+
862
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
863
+ than this value, it will be aborted with a 408 status code. Maximum allowed
864
+ value is 300000ms (5 minutes).
865
+
866
+ extra_headers: Send extra headers
867
+
868
+ extra_query: Add additional query parameters to the request
869
+
870
+ extra_body: Add additional JSON properties to the request
871
+
872
+ timeout: Override the client-level default timeout for this request, in seconds
873
+ """
874
+ return self._post(
875
+ "/brand/prefetch",
876
+ body=maybe_transform(
877
+ {
878
+ "domain": domain,
879
+ "timeout_ms": timeout_ms,
880
+ },
881
+ brand_prefetch_params.BrandPrefetchParams,
882
+ ),
883
+ options=make_request_options(
884
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
885
+ ),
886
+ cast_to=BrandPrefetchResponse,
887
+ )
888
+
889
+ def prefetch_by_email(
890
+ self,
891
+ *,
892
+ email: str,
893
+ timeout_ms: int | Omit = omit,
894
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
895
+ # The extra values given here take precedence over values defined on the client or passed to this method.
896
+ extra_headers: Headers | None = None,
897
+ extra_query: Query | None = None,
898
+ extra_body: Body | None = None,
899
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
900
+ ) -> BrandPrefetchByEmailResponse:
901
+ """
902
+ Signal that you may fetch brand data for a particular domain soon to improve
903
+ latency. This endpoint accepts an email address, extracts the domain from it,
904
+ validates that it's not a disposable or free email provider, and queues the
905
+ domain for prefetching. This endpoint does not charge credits and is available
906
+ for paid customers to optimize future requests. [You must be on a paid plan to
907
+ use this endpoint]
908
+
909
+ Args:
910
+ email: Email address to prefetch brand data for. The domain will be extracted from the
911
+ email. Free email providers (gmail.com, yahoo.com, etc.) and disposable email
912
+ addresses are not allowed.
913
+
914
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
915
+ than this value, it will be aborted with a 408 status code. Maximum allowed
916
+ value is 300000ms (5 minutes).
917
+
918
+ extra_headers: Send extra headers
919
+
920
+ extra_query: Add additional query parameters to the request
921
+
922
+ extra_body: Add additional JSON properties to the request
923
+
924
+ timeout: Override the client-level default timeout for this request, in seconds
925
+ """
926
+ return self._post(
927
+ "/brand/prefetch-by-email",
928
+ body=maybe_transform(
929
+ {
930
+ "email": email,
931
+ "timeout_ms": timeout_ms,
932
+ },
933
+ brand_prefetch_by_email_params.BrandPrefetchByEmailParams,
934
+ ),
935
+ options=make_request_options(
936
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
937
+ ),
938
+ cast_to=BrandPrefetchByEmailResponse,
939
+ )
940
+
941
+ def retrieve_by_email(
942
+ self,
943
+ *,
944
+ email: str,
945
+ force_language: Literal[
946
+ "albanian",
947
+ "arabic",
948
+ "azeri",
949
+ "bengali",
950
+ "bulgarian",
951
+ "cebuano",
952
+ "croatian",
953
+ "czech",
954
+ "danish",
955
+ "dutch",
956
+ "english",
957
+ "estonian",
958
+ "farsi",
959
+ "finnish",
960
+ "french",
961
+ "german",
962
+ "hausa",
963
+ "hawaiian",
964
+ "hindi",
965
+ "hungarian",
966
+ "icelandic",
967
+ "indonesian",
968
+ "italian",
969
+ "kazakh",
970
+ "kyrgyz",
971
+ "latin",
972
+ "latvian",
973
+ "lithuanian",
974
+ "macedonian",
975
+ "mongolian",
976
+ "nepali",
977
+ "norwegian",
978
+ "pashto",
979
+ "pidgin",
980
+ "polish",
981
+ "portuguese",
982
+ "romanian",
983
+ "russian",
984
+ "serbian",
985
+ "slovak",
986
+ "slovene",
987
+ "somali",
988
+ "spanish",
989
+ "swahili",
990
+ "swedish",
991
+ "tagalog",
992
+ "turkish",
993
+ "ukrainian",
994
+ "urdu",
995
+ "uzbek",
996
+ "vietnamese",
997
+ "welsh",
998
+ ]
999
+ | Omit = omit,
1000
+ max_speed: bool | Omit = omit,
1001
+ timeout_ms: int | Omit = omit,
1002
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1003
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1004
+ extra_headers: Headers | None = None,
1005
+ extra_query: Query | None = None,
1006
+ extra_body: Body | None = None,
1007
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1008
+ ) -> BrandRetrieveByEmailResponse:
1009
+ """
1010
+ Retrieve brand information using an email address while detecting disposable and
1011
+ free email addresses. This endpoint extracts the domain from the email address
1012
+ and returns brand data for that domain. Disposable and free email addresses
1013
+ (like gmail.com, yahoo.com) will throw a 422 error.
1014
+
1015
+ Args:
1016
+ email: Email address to retrieve brand data for (e.g., 'contact@example.com'). The
1017
+ domain will be extracted from the email. Free email providers (gmail.com,
1018
+ yahoo.com, etc.) and disposable email addresses are not allowed.
1019
+
1020
+ force_language: Optional parameter to force the language of the retrieved brand data.
1021
+
1022
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
1023
+ the API will skip time-consuming operations for faster response at the cost of
1024
+ less comprehensive data.
1025
+
1026
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
1027
+ than this value, it will be aborted with a 408 status code. Maximum allowed
1028
+ value is 300000ms (5 minutes).
1029
+
1030
+ extra_headers: Send extra headers
1031
+
1032
+ extra_query: Add additional query parameters to the request
1033
+
1034
+ extra_body: Add additional JSON properties to the request
1035
+
1036
+ timeout: Override the client-level default timeout for this request, in seconds
1037
+ """
1038
+ return self._get(
1039
+ "/brand/retrieve-by-email",
1040
+ options=make_request_options(
1041
+ extra_headers=extra_headers,
1042
+ extra_query=extra_query,
1043
+ extra_body=extra_body,
1044
+ timeout=timeout,
1045
+ query=maybe_transform(
1046
+ {
1047
+ "email": email,
1048
+ "force_language": force_language,
1049
+ "max_speed": max_speed,
1050
+ "timeout_ms": timeout_ms,
1051
+ },
1052
+ brand_retrieve_by_email_params.BrandRetrieveByEmailParams,
1053
+ ),
1054
+ ),
1055
+ cast_to=BrandRetrieveByEmailResponse,
1056
+ )
1057
+
1058
+ def retrieve_by_isin(
1059
+ self,
1060
+ *,
1061
+ isin: str,
1062
+ force_language: Literal[
1063
+ "albanian",
1064
+ "arabic",
1065
+ "azeri",
1066
+ "bengali",
1067
+ "bulgarian",
1068
+ "cebuano",
1069
+ "croatian",
1070
+ "czech",
1071
+ "danish",
1072
+ "dutch",
1073
+ "english",
1074
+ "estonian",
1075
+ "farsi",
1076
+ "finnish",
1077
+ "french",
1078
+ "german",
1079
+ "hausa",
1080
+ "hawaiian",
1081
+ "hindi",
1082
+ "hungarian",
1083
+ "icelandic",
1084
+ "indonesian",
1085
+ "italian",
1086
+ "kazakh",
1087
+ "kyrgyz",
1088
+ "latin",
1089
+ "latvian",
1090
+ "lithuanian",
1091
+ "macedonian",
1092
+ "mongolian",
1093
+ "nepali",
1094
+ "norwegian",
1095
+ "pashto",
1096
+ "pidgin",
1097
+ "polish",
1098
+ "portuguese",
1099
+ "romanian",
1100
+ "russian",
1101
+ "serbian",
1102
+ "slovak",
1103
+ "slovene",
1104
+ "somali",
1105
+ "spanish",
1106
+ "swahili",
1107
+ "swedish",
1108
+ "tagalog",
1109
+ "turkish",
1110
+ "ukrainian",
1111
+ "urdu",
1112
+ "uzbek",
1113
+ "vietnamese",
1114
+ "welsh",
1115
+ ]
1116
+ | Omit = omit,
1117
+ max_speed: bool | Omit = omit,
1118
+ timeout_ms: int | Omit = omit,
1119
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1120
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1121
+ extra_headers: Headers | None = None,
1122
+ extra_query: Query | None = None,
1123
+ extra_body: Body | None = None,
1124
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1125
+ ) -> BrandRetrieveByIsinResponse:
1126
+ """
1127
+ Retrieve brand information using an ISIN (International Securities
1128
+ Identification Number). This endpoint looks up the company associated with the
1129
+ ISIN and returns its brand data.
1130
+
1131
+ Args:
1132
+ isin: ISIN (International Securities Identification Number) to retrieve brand data for
1133
+ (e.g., 'AU000000IMD5', 'US0378331005'). Must be exactly 12 characters: 2 letters
1134
+ followed by 9 alphanumeric characters and ending with a digit.
1135
+
1136
+ force_language: Optional parameter to force the language of the retrieved brand data.
1137
+
1138
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
1139
+ the API will skip time-consuming operations for faster response at the cost of
1140
+ less comprehensive data.
1141
+
1142
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
1143
+ than this value, it will be aborted with a 408 status code. Maximum allowed
1144
+ value is 300000ms (5 minutes).
1145
+
1146
+ extra_headers: Send extra headers
1147
+
1148
+ extra_query: Add additional query parameters to the request
1149
+
1150
+ extra_body: Add additional JSON properties to the request
1151
+
1152
+ timeout: Override the client-level default timeout for this request, in seconds
1153
+ """
1154
+ return self._get(
1155
+ "/brand/retrieve-by-isin",
1156
+ options=make_request_options(
1157
+ extra_headers=extra_headers,
1158
+ extra_query=extra_query,
1159
+ extra_body=extra_body,
1160
+ timeout=timeout,
1161
+ query=maybe_transform(
1162
+ {
1163
+ "isin": isin,
1164
+ "force_language": force_language,
1165
+ "max_speed": max_speed,
1166
+ "timeout_ms": timeout_ms,
1167
+ },
1168
+ brand_retrieve_by_isin_params.BrandRetrieveByIsinParams,
1169
+ ),
1170
+ ),
1171
+ cast_to=BrandRetrieveByIsinResponse,
1172
+ )
1173
+
1174
+ def retrieve_by_name(
1175
+ self,
1176
+ *,
1177
+ name: str,
1178
+ force_language: Literal[
1179
+ "albanian",
1180
+ "arabic",
1181
+ "azeri",
1182
+ "bengali",
1183
+ "bulgarian",
1184
+ "cebuano",
1185
+ "croatian",
1186
+ "czech",
1187
+ "danish",
1188
+ "dutch",
1189
+ "english",
1190
+ "estonian",
1191
+ "farsi",
1192
+ "finnish",
1193
+ "french",
1194
+ "german",
1195
+ "hausa",
1196
+ "hawaiian",
1197
+ "hindi",
1198
+ "hungarian",
1199
+ "icelandic",
1200
+ "indonesian",
1201
+ "italian",
1202
+ "kazakh",
1203
+ "kyrgyz",
1204
+ "latin",
1205
+ "latvian",
1206
+ "lithuanian",
1207
+ "macedonian",
1208
+ "mongolian",
1209
+ "nepali",
1210
+ "norwegian",
1211
+ "pashto",
1212
+ "pidgin",
1213
+ "polish",
1214
+ "portuguese",
1215
+ "romanian",
1216
+ "russian",
1217
+ "serbian",
1218
+ "slovak",
1219
+ "slovene",
1220
+ "somali",
1221
+ "spanish",
1222
+ "swahili",
1223
+ "swedish",
1224
+ "tagalog",
1225
+ "turkish",
1226
+ "ukrainian",
1227
+ "urdu",
1228
+ "uzbek",
1229
+ "vietnamese",
1230
+ "welsh",
1231
+ ]
1232
+ | Omit = omit,
1233
+ max_speed: bool | Omit = omit,
1234
+ timeout_ms: int | Omit = omit,
1235
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1236
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1237
+ extra_headers: Headers | None = None,
1238
+ extra_query: Query | None = None,
1239
+ extra_body: Body | None = None,
1240
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1241
+ ) -> BrandRetrieveByNameResponse:
1242
+ """Retrieve brand information using a company name.
1243
+
1244
+ This endpoint searches for the
1245
+ company by name and returns its brand data.
1246
+
1247
+ Args:
1248
+ name: Company name to retrieve brand data for (e.g., 'Apple Inc', 'Microsoft
1249
+ Corporation'). Must be 3-30 characters.
1250
+
1251
+ force_language: Optional parameter to force the language of the retrieved brand data.
1252
+
1253
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
1254
+ the API will skip time-consuming operations for faster response at the cost of
1255
+ less comprehensive data.
1256
+
1257
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
1258
+ than this value, it will be aborted with a 408 status code. Maximum allowed
1259
+ value is 300000ms (5 minutes).
1260
+
1261
+ extra_headers: Send extra headers
1262
+
1263
+ extra_query: Add additional query parameters to the request
1264
+
1265
+ extra_body: Add additional JSON properties to the request
1266
+
1267
+ timeout: Override the client-level default timeout for this request, in seconds
1268
+ """
1269
+ return self._get(
1270
+ "/brand/retrieve-by-name",
1271
+ options=make_request_options(
1272
+ extra_headers=extra_headers,
1273
+ extra_query=extra_query,
1274
+ extra_body=extra_body,
1275
+ timeout=timeout,
1276
+ query=maybe_transform(
1277
+ {
1278
+ "name": name,
1279
+ "force_language": force_language,
1280
+ "max_speed": max_speed,
1281
+ "timeout_ms": timeout_ms,
1282
+ },
1283
+ brand_retrieve_by_name_params.BrandRetrieveByNameParams,
1284
+ ),
1285
+ ),
1286
+ cast_to=BrandRetrieveByNameResponse,
1287
+ )
1288
+
1289
+ def retrieve_by_ticker(
1290
+ self,
1291
+ *,
1292
+ ticker: str,
1293
+ force_language: Literal[
1294
+ "albanian",
1295
+ "arabic",
1296
+ "azeri",
1297
+ "bengali",
1298
+ "bulgarian",
1299
+ "cebuano",
1300
+ "croatian",
1301
+ "czech",
1302
+ "danish",
1303
+ "dutch",
1304
+ "english",
1305
+ "estonian",
1306
+ "farsi",
1307
+ "finnish",
1308
+ "french",
1309
+ "german",
1310
+ "hausa",
1311
+ "hawaiian",
1312
+ "hindi",
1313
+ "hungarian",
1314
+ "icelandic",
1315
+ "indonesian",
1316
+ "italian",
1317
+ "kazakh",
1318
+ "kyrgyz",
1319
+ "latin",
1320
+ "latvian",
1321
+ "lithuanian",
1322
+ "macedonian",
1323
+ "mongolian",
1324
+ "nepali",
1325
+ "norwegian",
1326
+ "pashto",
1327
+ "pidgin",
1328
+ "polish",
1329
+ "portuguese",
1330
+ "romanian",
1331
+ "russian",
1332
+ "serbian",
1333
+ "slovak",
1334
+ "slovene",
1335
+ "somali",
1336
+ "spanish",
1337
+ "swahili",
1338
+ "swedish",
1339
+ "tagalog",
1340
+ "turkish",
1341
+ "ukrainian",
1342
+ "urdu",
1343
+ "uzbek",
1344
+ "vietnamese",
1345
+ "welsh",
1346
+ ]
1347
+ | Omit = omit,
1348
+ max_speed: bool | Omit = omit,
1349
+ ticker_exchange: Literal[
1350
+ "AMEX",
1351
+ "AMS",
1352
+ "AQS",
1353
+ "ASX",
1354
+ "ATH",
1355
+ "BER",
1356
+ "BME",
1357
+ "BRU",
1358
+ "BSE",
1359
+ "BUD",
1360
+ "BUE",
1361
+ "BVC",
1362
+ "CBOE",
1363
+ "CNQ",
1364
+ "CPH",
1365
+ "DFM",
1366
+ "DOH",
1367
+ "DUB",
1368
+ "DUS",
1369
+ "DXE",
1370
+ "EGX",
1371
+ "FSX",
1372
+ "HAM",
1373
+ "HEL",
1374
+ "HKSE",
1375
+ "HOSE",
1376
+ "ICE",
1377
+ "IOB",
1378
+ "IST",
1379
+ "JKT",
1380
+ "JNB",
1381
+ "JPX",
1382
+ "KLS",
1383
+ "KOE",
1384
+ "KSC",
1385
+ "KUW",
1386
+ "LIS",
1387
+ "LSE",
1388
+ "MCX",
1389
+ "MEX",
1390
+ "MIL",
1391
+ "MUN",
1392
+ "NASDAQ",
1393
+ "NEO",
1394
+ "NSE",
1395
+ "NYSE",
1396
+ "NZE",
1397
+ "OSL",
1398
+ "OTC",
1399
+ "PAR",
1400
+ "PNK",
1401
+ "PRA",
1402
+ "RIS",
1403
+ "SAO",
1404
+ "SAU",
1405
+ "SES",
1406
+ "SET",
1407
+ "SGO",
1408
+ "SHH",
1409
+ "SHZ",
1410
+ "SIX",
1411
+ "STO",
1412
+ "STU",
1413
+ "TAI",
1414
+ "TAL",
1415
+ "TLV",
1416
+ "TSX",
1417
+ "TSXV",
1418
+ "TWO",
1419
+ "VIE",
1420
+ "WSE",
1421
+ "XETRA",
1422
+ ]
1423
+ | Omit = omit,
1424
+ timeout_ms: int | Omit = omit,
1425
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1426
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1427
+ extra_headers: Headers | None = None,
1428
+ extra_query: Query | None = None,
1429
+ extra_body: Body | None = None,
1430
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1431
+ ) -> BrandRetrieveByTickerResponse:
1432
+ """Retrieve brand information using a stock ticker symbol.
1433
+
1434
+ This endpoint looks up
1435
+ the company associated with the ticker and returns its brand data.
1436
+
1437
+ Args:
1438
+ ticker: Stock ticker symbol to retrieve brand data for (e.g., 'AAPL', 'GOOGL', 'BRK.A').
1439
+ Must be 1-15 characters, letters/numbers/dots only.
1440
+
1441
+ force_language: Optional parameter to force the language of the retrieved brand data.
1442
+
1443
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
1444
+ the API will skip time-consuming operations for faster response at the cost of
1445
+ less comprehensive data.
1446
+
1447
+ ticker_exchange: Optional stock exchange for the ticker. Defaults to NASDAQ if not specified.
1448
+
1449
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
1450
+ than this value, it will be aborted with a 408 status code. Maximum allowed
1451
+ value is 300000ms (5 minutes).
1452
+
1453
+ extra_headers: Send extra headers
1454
+
1455
+ extra_query: Add additional query parameters to the request
1456
+
1457
+ extra_body: Add additional JSON properties to the request
1458
+
1459
+ timeout: Override the client-level default timeout for this request, in seconds
1460
+ """
1461
+ return self._get(
1462
+ "/brand/retrieve-by-ticker",
1463
+ options=make_request_options(
1464
+ extra_headers=extra_headers,
1465
+ extra_query=extra_query,
1466
+ extra_body=extra_body,
1467
+ timeout=timeout,
1468
+ query=maybe_transform(
1469
+ {
1470
+ "ticker": ticker,
1471
+ "force_language": force_language,
1472
+ "max_speed": max_speed,
1473
+ "ticker_exchange": ticker_exchange,
1474
+ "timeout_ms": timeout_ms,
1475
+ },
1476
+ brand_retrieve_by_ticker_params.BrandRetrieveByTickerParams,
1477
+ ),
1478
+ ),
1479
+ cast_to=BrandRetrieveByTickerResponse,
1480
+ )
1481
+
1482
+ def retrieve_naics(
1483
+ self,
1484
+ *,
1485
+ input: str,
1486
+ max_results: int | Omit = omit,
1487
+ min_results: int | Omit = omit,
1488
+ timeout_ms: int | Omit = omit,
1489
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1490
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1491
+ extra_headers: Headers | None = None,
1492
+ extra_query: Query | None = None,
1493
+ extra_body: Body | None = None,
1494
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1495
+ ) -> BrandRetrieveNaicsResponse:
1496
+ """
1497
+ Endpoint to classify any brand into a 2022 NAICS code.
1498
+
1499
+ Args:
1500
+ input: Brand domain or title to retrieve NAICS code for. If a valid domain is provided
1501
+ in `input`, it will be used for classification, otherwise, we will search for
1502
+ the brand using the provided title.
1503
+
1504
+ max_results: Maximum number of NAICS codes to return. Must be between 1 and 10. Defaults
1505
+ to 5.
1506
+
1507
+ min_results: Minimum number of NAICS codes to return. Must be at least 1. Defaults to 1.
1508
+
1509
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
1510
+ than this value, it will be aborted with a 408 status code. Maximum allowed
1511
+ value is 300000ms (5 minutes).
1512
+
1513
+ extra_headers: Send extra headers
1514
+
1515
+ extra_query: Add additional query parameters to the request
1516
+
1517
+ extra_body: Add additional JSON properties to the request
1518
+
1519
+ timeout: Override the client-level default timeout for this request, in seconds
1520
+ """
1521
+ return self._get(
1522
+ "/brand/naics",
1523
+ options=make_request_options(
1524
+ extra_headers=extra_headers,
1525
+ extra_query=extra_query,
1526
+ extra_body=extra_body,
1527
+ timeout=timeout,
1528
+ query=maybe_transform(
1529
+ {
1530
+ "input": input,
1531
+ "max_results": max_results,
1532
+ "min_results": min_results,
1533
+ "timeout_ms": timeout_ms,
1534
+ },
1535
+ brand_retrieve_naics_params.BrandRetrieveNaicsParams,
1536
+ ),
1537
+ ),
1538
+ cast_to=BrandRetrieveNaicsResponse,
1539
+ )
1540
+
1541
+ def retrieve_simplified(
1542
+ self,
1543
+ *,
1544
+ domain: str,
1545
+ timeout_ms: int | Omit = omit,
1546
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1547
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1548
+ extra_headers: Headers | None = None,
1549
+ extra_query: Query | None = None,
1550
+ extra_body: Body | None = None,
1551
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1552
+ ) -> BrandRetrieveSimplifiedResponse:
1553
+ """
1554
+ Returns a simplified version of brand data containing only essential
1555
+ information: domain, title, colors, logos, and backdrops. This endpoint is
1556
+ optimized for faster responses and reduced data transfer.
1557
+
1558
+ Args:
1559
+ domain: Domain name to retrieve simplified brand data for
1560
+
1561
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
1562
+ than this value, it will be aborted with a 408 status code. Maximum allowed
1563
+ value is 300000ms (5 minutes).
1564
+
1565
+ extra_headers: Send extra headers
1566
+
1567
+ extra_query: Add additional query parameters to the request
1568
+
1569
+ extra_body: Add additional JSON properties to the request
1570
+
1571
+ timeout: Override the client-level default timeout for this request, in seconds
1572
+ """
1573
+ return self._get(
1574
+ "/brand/retrieve-simplified",
1575
+ options=make_request_options(
1576
+ extra_headers=extra_headers,
1577
+ extra_query=extra_query,
1578
+ extra_body=extra_body,
1579
+ timeout=timeout,
1580
+ query=maybe_transform(
1581
+ {
1582
+ "domain": domain,
1583
+ "timeout_ms": timeout_ms,
1584
+ },
1585
+ brand_retrieve_simplified_params.BrandRetrieveSimplifiedParams,
1586
+ ),
1587
+ ),
1588
+ cast_to=BrandRetrieveSimplifiedResponse,
1589
+ )
1590
+
1591
+ def screenshot(
1592
+ self,
1593
+ *,
1594
+ domain: str,
1595
+ full_screenshot: Literal["true", "false"] | Omit = omit,
1596
+ page: Literal["login", "signup", "blog", "careers", "pricing", "terms", "privacy", "contact"] | Omit = omit,
1597
+ prioritize: Literal["speed", "quality"] | Omit = omit,
1598
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1599
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1600
+ extra_headers: Headers | None = None,
1601
+ extra_query: Query | None = None,
1602
+ extra_body: Body | None = None,
1603
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1604
+ ) -> BrandScreenshotResponse:
1605
+ """Capture a screenshot of a website.
1606
+
1607
+ Supports both viewport (standard browser
1608
+ view) and full-page screenshots. Can also screenshot specific page types (login,
1609
+ pricing, etc.) by using heuristics to find the appropriate URL. Returns a URL to
1610
+ the uploaded screenshot image hosted on our CDN.
1611
+
1612
+ Args:
1613
+ domain: Domain name to take screenshot of (e.g., 'example.com', 'google.com'). The
1614
+ domain will be automatically normalized and validated.
1615
+
1616
+ full_screenshot: Optional parameter to determine screenshot type. If 'true', takes a full page
1617
+ screenshot capturing all content. If 'false' or not provided, takes a viewport
1618
+ screenshot (standard browser view).
1619
+
1620
+ page: Optional parameter to specify which page type to screenshot. If provided, the
1621
+ system will scrape the domain's links and use heuristics to find the most
1622
+ appropriate URL for the specified page type (30 supported languages). If not
1623
+ provided, screenshots the main domain landing page.
1624
+
1625
+ prioritize: Optional parameter to prioritize screenshot capture. If 'speed', optimizes for
1626
+ faster capture with basic quality. If 'quality', optimizes for higher quality
1627
+ with longer wait times. Defaults to 'quality' if not provided.
1628
+
1629
+ extra_headers: Send extra headers
1630
+
1631
+ extra_query: Add additional query parameters to the request
1632
+
1633
+ extra_body: Add additional JSON properties to the request
1634
+
1635
+ timeout: Override the client-level default timeout for this request, in seconds
1636
+ """
1637
+ return self._get(
1638
+ "/brand/screenshot",
1639
+ options=make_request_options(
1640
+ extra_headers=extra_headers,
1641
+ extra_query=extra_query,
1642
+ extra_body=extra_body,
1643
+ timeout=timeout,
1644
+ query=maybe_transform(
1645
+ {
1646
+ "domain": domain,
1647
+ "full_screenshot": full_screenshot,
1648
+ "page": page,
1649
+ "prioritize": prioritize,
1650
+ },
1651
+ brand_screenshot_params.BrandScreenshotParams,
1652
+ ),
1653
+ ),
1654
+ cast_to=BrandScreenshotResponse,
1655
+ )
1656
+
1657
+ def styleguide(
1658
+ self,
1659
+ *,
1660
+ direct_url: str | Omit = omit,
1661
+ domain: str | Omit = omit,
1662
+ prioritize: Literal["speed", "quality"] | Omit = omit,
1663
+ timeout_ms: int | Omit = omit,
1664
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1665
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1666
+ extra_headers: Headers | None = None,
1667
+ extra_query: Query | None = None,
1668
+ extra_body: Body | None = None,
1669
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1670
+ ) -> BrandStyleguideResponse:
1671
+ """
1672
+ Automatically extract comprehensive design system information from a brand's
1673
+ website including colors, typography, spacing, shadows, and UI components.
1674
+ Either 'domain' or 'directUrl' must be provided as a query parameter, but not
1675
+ both.
1676
+
1677
+ Args:
1678
+ direct_url: A specific URL to fetch the styleguide from directly, bypassing domain
1679
+ resolution (e.g., 'https://example.com/design-system').
1680
+
1681
+ domain: Domain name to extract styleguide from (e.g., 'example.com', 'google.com'). The
1682
+ domain will be automatically normalized and validated.
1683
+
1684
+ prioritize: Optional parameter to prioritize screenshot capture for styleguide extraction.
1685
+ If 'speed', optimizes for faster capture with basic quality. If 'quality',
1686
+ optimizes for higher quality with longer wait times. Defaults to 'quality' if
1687
+ not provided.
1688
+
1689
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
1690
+ than this value, it will be aborted with a 408 status code. Maximum allowed
1691
+ value is 300000ms (5 minutes).
1692
+
1693
+ extra_headers: Send extra headers
1694
+
1695
+ extra_query: Add additional query parameters to the request
1696
+
1697
+ extra_body: Add additional JSON properties to the request
1698
+
1699
+ timeout: Override the client-level default timeout for this request, in seconds
1700
+ """
1701
+ return self._get(
1702
+ "/brand/styleguide",
1703
+ options=make_request_options(
1704
+ extra_headers=extra_headers,
1705
+ extra_query=extra_query,
1706
+ extra_body=extra_body,
1707
+ timeout=timeout,
1708
+ query=maybe_transform(
1709
+ {
1710
+ "direct_url": direct_url,
1711
+ "domain": domain,
1712
+ "prioritize": prioritize,
1713
+ "timeout_ms": timeout_ms,
1714
+ },
1715
+ brand_styleguide_params.BrandStyleguideParams,
1716
+ ),
1717
+ ),
1718
+ cast_to=BrandStyleguideResponse,
1719
+ )
1720
+
1721
+ def web_scrape_html(
1722
+ self,
1723
+ *,
1724
+ url: str,
1725
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1726
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1727
+ extra_headers: Headers | None = None,
1728
+ extra_query: Query | None = None,
1729
+ extra_body: Body | None = None,
1730
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1731
+ ) -> BrandWebScrapeHTMLResponse:
1732
+ """Scrapes the given URL and returns the raw HTML content of the page.
1733
+
1734
+ Uses
1735
+ automatic proxy escalation to handle blocked sites.
1736
+
1737
+ Args:
1738
+ url: Full URL to scrape (must include http:// or https:// protocol)
1739
+
1740
+ extra_headers: Send extra headers
1741
+
1742
+ extra_query: Add additional query parameters to the request
1743
+
1744
+ extra_body: Add additional JSON properties to the request
1745
+
1746
+ timeout: Override the client-level default timeout for this request, in seconds
1747
+ """
1748
+ return self._get(
1749
+ "/web/scrape/html",
1750
+ options=make_request_options(
1751
+ extra_headers=extra_headers,
1752
+ extra_query=extra_query,
1753
+ extra_body=extra_body,
1754
+ timeout=timeout,
1755
+ query=maybe_transform({"url": url}, brand_web_scrape_html_params.BrandWebScrapeHTMLParams),
1756
+ ),
1757
+ cast_to=BrandWebScrapeHTMLResponse,
1758
+ )
1759
+
1760
+ def web_scrape_images(
1761
+ self,
1762
+ *,
1763
+ url: str,
1764
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1765
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1766
+ extra_headers: Headers | None = None,
1767
+ extra_query: Query | None = None,
1768
+ extra_body: Body | None = None,
1769
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1770
+ ) -> BrandWebScrapeImagesResponse:
1771
+ """Scrapes all images from the given URL.
1772
+
1773
+ Extracts images from img, svg,
1774
+ picture/source, link, and video elements including inline SVGs, base64 data
1775
+ URIs, and standard URLs.
1776
+
1777
+ Args:
1778
+ url: Full URL to scrape images from (must include http:// or https:// protocol)
1779
+
1780
+ extra_headers: Send extra headers
1781
+
1782
+ extra_query: Add additional query parameters to the request
1783
+
1784
+ extra_body: Add additional JSON properties to the request
1785
+
1786
+ timeout: Override the client-level default timeout for this request, in seconds
1787
+ """
1788
+ return self._get(
1789
+ "/web/scrape/images",
1790
+ options=make_request_options(
1791
+ extra_headers=extra_headers,
1792
+ extra_query=extra_query,
1793
+ extra_body=extra_body,
1794
+ timeout=timeout,
1795
+ query=maybe_transform({"url": url}, brand_web_scrape_images_params.BrandWebScrapeImagesParams),
1796
+ ),
1797
+ cast_to=BrandWebScrapeImagesResponse,
1798
+ )
1799
+
1800
+ def web_scrape_md(
1801
+ self,
1802
+ *,
1803
+ url: str,
1804
+ include_images: bool | Omit = omit,
1805
+ include_links: bool | Omit = omit,
1806
+ shorten_base64_images: bool | Omit = omit,
1807
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1808
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1809
+ extra_headers: Headers | None = None,
1810
+ extra_query: Query | None = None,
1811
+ extra_body: Body | None = None,
1812
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1813
+ ) -> BrandWebScrapeMdResponse:
1814
+ """
1815
+ Scrapes the given URL, converts the HTML content to GitHub Flavored Markdown
1816
+ (GFM), and returns the result. Uses automatic proxy escalation to handle blocked
1817
+ sites.
1818
+
1819
+ Args:
1820
+ url: Full URL to scrape and convert to markdown (must include http:// or https://
1821
+ protocol)
1822
+
1823
+ include_images: Include image references in Markdown output
1824
+
1825
+ include_links: Preserve hyperlinks in Markdown output
1826
+
1827
+ shorten_base64_images: Shorten base64-encoded image data in the Markdown output
1828
+
1829
+ extra_headers: Send extra headers
1830
+
1831
+ extra_query: Add additional query parameters to the request
1832
+
1833
+ extra_body: Add additional JSON properties to the request
1834
+
1835
+ timeout: Override the client-level default timeout for this request, in seconds
1836
+ """
1837
+ return self._get(
1838
+ "/web/scrape/markdown",
1839
+ options=make_request_options(
1840
+ extra_headers=extra_headers,
1841
+ extra_query=extra_query,
1842
+ extra_body=extra_body,
1843
+ timeout=timeout,
1844
+ query=maybe_transform(
1845
+ {
1846
+ "url": url,
1847
+ "include_images": include_images,
1848
+ "include_links": include_links,
1849
+ "shorten_base64_images": shorten_base64_images,
1850
+ },
1851
+ brand_web_scrape_md_params.BrandWebScrapeMdParams,
1852
+ ),
1853
+ ),
1854
+ cast_to=BrandWebScrapeMdResponse,
1855
+ )
1856
+
1857
+ def web_scrape_sitemap(
1858
+ self,
1859
+ *,
1860
+ domain: str,
1861
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1862
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1863
+ extra_headers: Headers | None = None,
1864
+ extra_query: Query | None = None,
1865
+ extra_body: Body | None = None,
1866
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1867
+ ) -> BrandWebScrapeSitemapResponse:
1868
+ """
1869
+ Crawls the sitemap of the given domain and returns all discovered page URLs.
1870
+ Supports sitemap index files (recursive), parallel fetching with concurrency
1871
+ control, deduplication, and filters out non-page resources (images, PDFs, etc.).
1872
+
1873
+ Args:
1874
+ domain: Domain name to crawl sitemaps for (e.g., 'example.com'). The domain will be
1875
+ automatically normalized and validated.
1876
+
1877
+ extra_headers: Send extra headers
1878
+
1879
+ extra_query: Add additional query parameters to the request
1880
+
1881
+ extra_body: Add additional JSON properties to the request
1882
+
1883
+ timeout: Override the client-level default timeout for this request, in seconds
1884
+ """
1885
+ return self._get(
1886
+ "/web/scrape/sitemap",
1887
+ options=make_request_options(
1888
+ extra_headers=extra_headers,
1889
+ extra_query=extra_query,
1890
+ extra_body=extra_body,
1891
+ timeout=timeout,
1892
+ query=maybe_transform({"domain": domain}, brand_web_scrape_sitemap_params.BrandWebScrapeSitemapParams),
1893
+ ),
1894
+ cast_to=BrandWebScrapeSitemapResponse,
1895
+ )
1896
+
1897
+
1898
+ class AsyncBrandResource(AsyncAPIResource):
1899
+ @cached_property
1900
+ def with_raw_response(self) -> AsyncBrandResourceWithRawResponse:
1901
+ """
1902
+ This property can be used as a prefix for any HTTP method call to return
1903
+ the raw response object instead of the parsed content.
1904
+
1905
+ For more information, see https://www.github.com/brand-dot-dev/context-python-sdk#accessing-raw-response-data-eg-headers
1906
+ """
1907
+ return AsyncBrandResourceWithRawResponse(self)
1908
+
1909
+ @cached_property
1910
+ def with_streaming_response(self) -> AsyncBrandResourceWithStreamingResponse:
1911
+ """
1912
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
1913
+
1914
+ For more information, see https://www.github.com/brand-dot-dev/context-python-sdk#with_streaming_response
1915
+ """
1916
+ return AsyncBrandResourceWithStreamingResponse(self)
1917
+
1918
+ async def retrieve(
1919
+ self,
1920
+ *,
1921
+ domain: str,
1922
+ force_language: Literal[
1923
+ "albanian",
1924
+ "arabic",
1925
+ "azeri",
1926
+ "bengali",
1927
+ "bulgarian",
1928
+ "cebuano",
1929
+ "croatian",
1930
+ "czech",
1931
+ "danish",
1932
+ "dutch",
1933
+ "english",
1934
+ "estonian",
1935
+ "farsi",
1936
+ "finnish",
1937
+ "french",
1938
+ "german",
1939
+ "hausa",
1940
+ "hawaiian",
1941
+ "hindi",
1942
+ "hungarian",
1943
+ "icelandic",
1944
+ "indonesian",
1945
+ "italian",
1946
+ "kazakh",
1947
+ "kyrgyz",
1948
+ "latin",
1949
+ "latvian",
1950
+ "lithuanian",
1951
+ "macedonian",
1952
+ "mongolian",
1953
+ "nepali",
1954
+ "norwegian",
1955
+ "pashto",
1956
+ "pidgin",
1957
+ "polish",
1958
+ "portuguese",
1959
+ "romanian",
1960
+ "russian",
1961
+ "serbian",
1962
+ "slovak",
1963
+ "slovene",
1964
+ "somali",
1965
+ "spanish",
1966
+ "swahili",
1967
+ "swedish",
1968
+ "tagalog",
1969
+ "turkish",
1970
+ "ukrainian",
1971
+ "urdu",
1972
+ "uzbek",
1973
+ "vietnamese",
1974
+ "welsh",
1975
+ ]
1976
+ | Omit = omit,
1977
+ max_speed: bool | Omit = omit,
1978
+ timeout_ms: int | Omit = omit,
1979
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1980
+ # The extra values given here take precedence over values defined on the client or passed to this method.
1981
+ extra_headers: Headers | None = None,
1982
+ extra_query: Query | None = None,
1983
+ extra_body: Body | None = None,
1984
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
1985
+ ) -> BrandRetrieveResponse:
1986
+ """
1987
+ Retrieve logos, backdrops, colors, industry, description, and more from any
1988
+ domain
1989
+
1990
+ Args:
1991
+ domain: Domain name to retrieve brand data for (e.g., 'example.com', 'google.com').
1992
+ Cannot be used with name or ticker parameters.
1993
+
1994
+ force_language: Optional parameter to force the language of the retrieved brand data. Works with
1995
+ all three lookup methods.
1996
+
1997
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
1998
+ the API will skip time-consuming operations for faster response at the cost of
1999
+ less comprehensive data. Works with all three lookup methods.
2000
+
2001
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
2002
+ than this value, it will be aborted with a 408 status code. Maximum allowed
2003
+ value is 300000ms (5 minutes).
2004
+
2005
+ extra_headers: Send extra headers
2006
+
2007
+ extra_query: Add additional query parameters to the request
2008
+
2009
+ extra_body: Add additional JSON properties to the request
2010
+
2011
+ timeout: Override the client-level default timeout for this request, in seconds
2012
+ """
2013
+ return await self._get(
2014
+ "/brand/retrieve",
2015
+ options=make_request_options(
2016
+ extra_headers=extra_headers,
2017
+ extra_query=extra_query,
2018
+ extra_body=extra_body,
2019
+ timeout=timeout,
2020
+ query=await async_maybe_transform(
2021
+ {
2022
+ "domain": domain,
2023
+ "force_language": force_language,
2024
+ "max_speed": max_speed,
2025
+ "timeout_ms": timeout_ms,
2026
+ },
2027
+ brand_retrieve_params.BrandRetrieveParams,
2028
+ ),
2029
+ ),
2030
+ cast_to=BrandRetrieveResponse,
2031
+ )
2032
+
2033
+ async def ai_product(
2034
+ self,
2035
+ *,
2036
+ url: str,
2037
+ timeout_ms: int | Omit = omit,
2038
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2039
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2040
+ extra_headers: Headers | None = None,
2041
+ extra_query: Query | None = None,
2042
+ extra_body: Body | None = None,
2043
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
2044
+ ) -> BrandAIProductResponse:
2045
+ """
2046
+ Beta feature: Given a single URL, determines if it is a product detail page,
2047
+ classifies the platform/product type, and extracts the product information.
2048
+ Supports Amazon, TikTok Shop, Etsy, and generic ecommerce sites.
2049
+
2050
+ Args:
2051
+ url: The product page URL to extract product data from.
2052
+
2053
+ timeout_ms: Optional timeout in milliseconds for the request. Maximum allowed value is
2054
+ 300000ms (5 minutes).
2055
+
2056
+ extra_headers: Send extra headers
2057
+
2058
+ extra_query: Add additional query parameters to the request
2059
+
2060
+ extra_body: Add additional JSON properties to the request
2061
+
2062
+ timeout: Override the client-level default timeout for this request, in seconds
2063
+ """
2064
+ return await self._post(
2065
+ "/brand/ai/product",
2066
+ body=await async_maybe_transform(
2067
+ {
2068
+ "url": url,
2069
+ "timeout_ms": timeout_ms,
2070
+ },
2071
+ brand_ai_product_params.BrandAIProductParams,
2072
+ ),
2073
+ options=make_request_options(
2074
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
2075
+ ),
2076
+ cast_to=BrandAIProductResponse,
2077
+ )
2078
+
2079
+ @overload
2080
+ async def ai_products(
2081
+ self,
2082
+ *,
2083
+ domain: str,
2084
+ max_products: int | Omit = omit,
2085
+ timeout_ms: int | Omit = omit,
2086
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2087
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2088
+ extra_headers: Headers | None = None,
2089
+ extra_query: Query | None = None,
2090
+ extra_body: Body | None = None,
2091
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
2092
+ ) -> BrandAIProductsResponse:
2093
+ """Beta feature: Extract product information from a brand's website.
2094
+
2095
+ Brand.dev will
2096
+ analyze the website and return a list of products with details such as name,
2097
+ description, image, pricing, features, and more.
2098
+
2099
+ Args:
2100
+ domain: The domain name to analyze.
2101
+
2102
+ max_products: Maximum number of products to extract.
2103
+
2104
+ timeout_ms: Optional timeout in milliseconds for the request. Maximum allowed value is
2105
+ 300000ms (5 minutes).
2106
+
2107
+ extra_headers: Send extra headers
2108
+
2109
+ extra_query: Add additional query parameters to the request
2110
+
2111
+ extra_body: Add additional JSON properties to the request
2112
+
2113
+ timeout: Override the client-level default timeout for this request, in seconds
2114
+ """
2115
+ ...
2116
+
2117
+ @overload
2118
+ async def ai_products(
2119
+ self,
2120
+ *,
2121
+ direct_url: str,
2122
+ max_products: int | Omit = omit,
2123
+ timeout_ms: int | Omit = omit,
2124
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2125
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2126
+ extra_headers: Headers | None = None,
2127
+ extra_query: Query | None = None,
2128
+ extra_body: Body | None = None,
2129
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
2130
+ ) -> BrandAIProductsResponse:
2131
+ """Beta feature: Extract product information from a brand's website.
2132
+
2133
+ Brand.dev will
2134
+ analyze the website and return a list of products with details such as name,
2135
+ description, image, pricing, features, and more.
2136
+
2137
+ Args:
2138
+ direct_url: A specific URL to use directly as the starting point for extraction without
2139
+ domain resolution.
2140
+
2141
+ max_products: Maximum number of products to extract.
2142
+
2143
+ timeout_ms: Optional timeout in milliseconds for the request. Maximum allowed value is
2144
+ 300000ms (5 minutes).
2145
+
2146
+ extra_headers: Send extra headers
2147
+
2148
+ extra_query: Add additional query parameters to the request
2149
+
2150
+ extra_body: Add additional JSON properties to the request
2151
+
2152
+ timeout: Override the client-level default timeout for this request, in seconds
2153
+ """
2154
+ ...
2155
+
2156
+ @required_args(["domain"], ["direct_url"])
2157
+ async def ai_products(
2158
+ self,
2159
+ *,
2160
+ domain: str | Omit = omit,
2161
+ max_products: int | Omit = omit,
2162
+ timeout_ms: int | Omit = omit,
2163
+ direct_url: str | Omit = omit,
2164
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2165
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2166
+ extra_headers: Headers | None = None,
2167
+ extra_query: Query | None = None,
2168
+ extra_body: Body | None = None,
2169
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
2170
+ ) -> BrandAIProductsResponse:
2171
+ return await self._post(
2172
+ "/brand/ai/products",
2173
+ body=await async_maybe_transform(
2174
+ {
2175
+ "domain": domain,
2176
+ "max_products": max_products,
2177
+ "timeout_ms": timeout_ms,
2178
+ "direct_url": direct_url,
2179
+ },
2180
+ brand_ai_products_params.BrandAIProductsParams,
2181
+ ),
2182
+ options=make_request_options(
2183
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
2184
+ ),
2185
+ cast_to=BrandAIProductsResponse,
2186
+ )
2187
+
2188
+ async def ai_query(
2189
+ self,
2190
+ *,
2191
+ data_to_extract: Iterable[brand_ai_query_params.DataToExtract],
2192
+ domain: str,
2193
+ specific_pages: brand_ai_query_params.SpecificPages | Omit = omit,
2194
+ timeout_ms: int | Omit = omit,
2195
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2196
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2197
+ extra_headers: Headers | None = None,
2198
+ extra_query: Query | None = None,
2199
+ extra_body: Body | None = None,
2200
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
2201
+ ) -> BrandAIQueryResponse:
2202
+ """Use AI to extract specific data points from a brand's website.
2203
+
2204
+ The AI will crawl
2205
+ the website and extract the requested information based on the provided data
2206
+ points.
2207
+
2208
+ Args:
2209
+ data_to_extract: Array of data points to extract from the website
2210
+
2211
+ domain: The domain name to analyze
2212
+
2213
+ specific_pages: Optional object specifying which pages to analyze
2214
+
2215
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
2216
+ than this value, it will be aborted with a 408 status code. Maximum allowed
2217
+ value is 300000ms (5 minutes).
2218
+
2219
+ extra_headers: Send extra headers
2220
+
2221
+ extra_query: Add additional query parameters to the request
2222
+
2223
+ extra_body: Add additional JSON properties to the request
2224
+
2225
+ timeout: Override the client-level default timeout for this request, in seconds
2226
+ """
2227
+ return await self._post(
2228
+ "/brand/ai/query",
2229
+ body=await async_maybe_transform(
2230
+ {
2231
+ "data_to_extract": data_to_extract,
2232
+ "domain": domain,
2233
+ "specific_pages": specific_pages,
2234
+ "timeout_ms": timeout_ms,
2235
+ },
2236
+ brand_ai_query_params.BrandAIQueryParams,
2237
+ ),
2238
+ options=make_request_options(
2239
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
2240
+ ),
2241
+ cast_to=BrandAIQueryResponse,
2242
+ )
2243
+
2244
+ async def fonts(
2245
+ self,
2246
+ *,
2247
+ domain: str,
2248
+ timeout_ms: int | Omit = omit,
2249
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2250
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2251
+ extra_headers: Headers | None = None,
2252
+ extra_query: Query | None = None,
2253
+ extra_body: Body | None = None,
2254
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
2255
+ ) -> BrandFontsResponse:
2256
+ """
2257
+ Extract font information from a brand's website including font families, usage
2258
+ statistics, fallbacks, and element/word counts.
2259
+
2260
+ Args:
2261
+ domain: Domain name to extract fonts from (e.g., 'example.com', 'google.com'). The
2262
+ domain will be automatically normalized and validated.
2263
+
2264
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
2265
+ than this value, it will be aborted with a 408 status code. Maximum allowed
2266
+ value is 300000ms (5 minutes).
2267
+
2268
+ extra_headers: Send extra headers
2269
+
2270
+ extra_query: Add additional query parameters to the request
2271
+
2272
+ extra_body: Add additional JSON properties to the request
2273
+
2274
+ timeout: Override the client-level default timeout for this request, in seconds
2275
+ """
2276
+ return await self._get(
2277
+ "/brand/fonts",
2278
+ options=make_request_options(
2279
+ extra_headers=extra_headers,
2280
+ extra_query=extra_query,
2281
+ extra_body=extra_body,
2282
+ timeout=timeout,
2283
+ query=await async_maybe_transform(
2284
+ {
2285
+ "domain": domain,
2286
+ "timeout_ms": timeout_ms,
2287
+ },
2288
+ brand_fonts_params.BrandFontsParams,
2289
+ ),
2290
+ ),
2291
+ cast_to=BrandFontsResponse,
2292
+ )
2293
+
2294
+ async def identify_from_transaction(
2295
+ self,
2296
+ *,
2297
+ transaction_info: str,
2298
+ city: str | Omit = omit,
2299
+ country_gl: Literal[
2300
+ "ad",
2301
+ "ae",
2302
+ "af",
2303
+ "ag",
2304
+ "ai",
2305
+ "al",
2306
+ "am",
2307
+ "an",
2308
+ "ao",
2309
+ "aq",
2310
+ "ar",
2311
+ "as",
2312
+ "at",
2313
+ "au",
2314
+ "aw",
2315
+ "az",
2316
+ "ba",
2317
+ "bb",
2318
+ "bd",
2319
+ "be",
2320
+ "bf",
2321
+ "bg",
2322
+ "bh",
2323
+ "bi",
2324
+ "bj",
2325
+ "bm",
2326
+ "bn",
2327
+ "bo",
2328
+ "br",
2329
+ "bs",
2330
+ "bt",
2331
+ "bv",
2332
+ "bw",
2333
+ "by",
2334
+ "bz",
2335
+ "ca",
2336
+ "cc",
2337
+ "cd",
2338
+ "cf",
2339
+ "cg",
2340
+ "ch",
2341
+ "ci",
2342
+ "ck",
2343
+ "cl",
2344
+ "cm",
2345
+ "cn",
2346
+ "co",
2347
+ "cr",
2348
+ "cu",
2349
+ "cv",
2350
+ "cx",
2351
+ "cy",
2352
+ "cz",
2353
+ "de",
2354
+ "dj",
2355
+ "dk",
2356
+ "dm",
2357
+ "do",
2358
+ "dz",
2359
+ "ec",
2360
+ "ee",
2361
+ "eg",
2362
+ "eh",
2363
+ "er",
2364
+ "es",
2365
+ "et",
2366
+ "fi",
2367
+ "fj",
2368
+ "fk",
2369
+ "fm",
2370
+ "fo",
2371
+ "fr",
2372
+ "ga",
2373
+ "gb",
2374
+ "gd",
2375
+ "ge",
2376
+ "gf",
2377
+ "gh",
2378
+ "gi",
2379
+ "gl",
2380
+ "gm",
2381
+ "gn",
2382
+ "gp",
2383
+ "gq",
2384
+ "gr",
2385
+ "gs",
2386
+ "gt",
2387
+ "gu",
2388
+ "gw",
2389
+ "gy",
2390
+ "hk",
2391
+ "hm",
2392
+ "hn",
2393
+ "hr",
2394
+ "ht",
2395
+ "hu",
2396
+ "id",
2397
+ "ie",
2398
+ "il",
2399
+ "in",
2400
+ "io",
2401
+ "iq",
2402
+ "ir",
2403
+ "is",
2404
+ "it",
2405
+ "jm",
2406
+ "jo",
2407
+ "jp",
2408
+ "ke",
2409
+ "kg",
2410
+ "kh",
2411
+ "ki",
2412
+ "km",
2413
+ "kn",
2414
+ "kp",
2415
+ "kr",
2416
+ "kw",
2417
+ "ky",
2418
+ "kz",
2419
+ "la",
2420
+ "lb",
2421
+ "lc",
2422
+ "li",
2423
+ "lk",
2424
+ "lr",
2425
+ "ls",
2426
+ "lt",
2427
+ "lu",
2428
+ "lv",
2429
+ "ly",
2430
+ "ma",
2431
+ "mc",
2432
+ "md",
2433
+ "mg",
2434
+ "mh",
2435
+ "mk",
2436
+ "ml",
2437
+ "mm",
2438
+ "mn",
2439
+ "mo",
2440
+ "mp",
2441
+ "mq",
2442
+ "mr",
2443
+ "ms",
2444
+ "mt",
2445
+ "mu",
2446
+ "mv",
2447
+ "mw",
2448
+ "mx",
2449
+ "my",
2450
+ "mz",
2451
+ "na",
2452
+ "nc",
2453
+ "ne",
2454
+ "nf",
2455
+ "ng",
2456
+ "ni",
2457
+ "nl",
2458
+ "no",
2459
+ "np",
2460
+ "nr",
2461
+ "nu",
2462
+ "nz",
2463
+ "om",
2464
+ "pa",
2465
+ "pe",
2466
+ "pf",
2467
+ "pg",
2468
+ "ph",
2469
+ "pk",
2470
+ "pl",
2471
+ "pm",
2472
+ "pn",
2473
+ "pr",
2474
+ "ps",
2475
+ "pt",
2476
+ "pw",
2477
+ "py",
2478
+ "qa",
2479
+ "re",
2480
+ "ro",
2481
+ "rs",
2482
+ "ru",
2483
+ "rw",
2484
+ "sa",
2485
+ "sb",
2486
+ "sc",
2487
+ "sd",
2488
+ "se",
2489
+ "sg",
2490
+ "sh",
2491
+ "si",
2492
+ "sj",
2493
+ "sk",
2494
+ "sl",
2495
+ "sm",
2496
+ "sn",
2497
+ "so",
2498
+ "sr",
2499
+ "st",
2500
+ "sv",
2501
+ "sy",
2502
+ "sz",
2503
+ "tc",
2504
+ "td",
2505
+ "tf",
2506
+ "tg",
2507
+ "th",
2508
+ "tj",
2509
+ "tk",
2510
+ "tl",
2511
+ "tm",
2512
+ "tn",
2513
+ "to",
2514
+ "tr",
2515
+ "tt",
2516
+ "tv",
2517
+ "tw",
2518
+ "tz",
2519
+ "ua",
2520
+ "ug",
2521
+ "um",
2522
+ "us",
2523
+ "uy",
2524
+ "uz",
2525
+ "va",
2526
+ "vc",
2527
+ "ve",
2528
+ "vg",
2529
+ "vi",
2530
+ "vn",
2531
+ "vu",
2532
+ "wf",
2533
+ "ws",
2534
+ "ye",
2535
+ "yt",
2536
+ "za",
2537
+ "zm",
2538
+ "zw",
2539
+ ]
2540
+ | Omit = omit,
2541
+ force_language: Literal[
2542
+ "albanian",
2543
+ "arabic",
2544
+ "azeri",
2545
+ "bengali",
2546
+ "bulgarian",
2547
+ "cebuano",
2548
+ "croatian",
2549
+ "czech",
2550
+ "danish",
2551
+ "dutch",
2552
+ "english",
2553
+ "estonian",
2554
+ "farsi",
2555
+ "finnish",
2556
+ "french",
2557
+ "german",
2558
+ "hausa",
2559
+ "hawaiian",
2560
+ "hindi",
2561
+ "hungarian",
2562
+ "icelandic",
2563
+ "indonesian",
2564
+ "italian",
2565
+ "kazakh",
2566
+ "kyrgyz",
2567
+ "latin",
2568
+ "latvian",
2569
+ "lithuanian",
2570
+ "macedonian",
2571
+ "mongolian",
2572
+ "nepali",
2573
+ "norwegian",
2574
+ "pashto",
2575
+ "pidgin",
2576
+ "polish",
2577
+ "portuguese",
2578
+ "romanian",
2579
+ "russian",
2580
+ "serbian",
2581
+ "slovak",
2582
+ "slovene",
2583
+ "somali",
2584
+ "spanish",
2585
+ "swahili",
2586
+ "swedish",
2587
+ "tagalog",
2588
+ "turkish",
2589
+ "ukrainian",
2590
+ "urdu",
2591
+ "uzbek",
2592
+ "vietnamese",
2593
+ "welsh",
2594
+ ]
2595
+ | Omit = omit,
2596
+ high_confidence_only: bool | Omit = omit,
2597
+ max_speed: bool | Omit = omit,
2598
+ mcc: str | Omit = omit,
2599
+ phone: float | Omit = omit,
2600
+ timeout_ms: int | Omit = omit,
2601
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2602
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2603
+ extra_headers: Headers | None = None,
2604
+ extra_query: Query | None = None,
2605
+ extra_body: Body | None = None,
2606
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
2607
+ ) -> BrandIdentifyFromTransactionResponse:
2608
+ """
2609
+ Endpoint specially designed for platforms that want to identify transaction data
2610
+ by the transaction title.
2611
+
2612
+ Args:
2613
+ transaction_info: Transaction information to identify the brand
2614
+
2615
+ city: Optional city name to prioritize when searching for the brand.
2616
+
2617
+ country_gl: Optional country code (GL parameter) to specify the country. This affects the
2618
+ geographic location used for search queries.
2619
+
2620
+ force_language: Optional parameter to force the language of the retrieved brand data.
2621
+
2622
+ high_confidence_only: When set to true, the API will perform an additional verification steps to
2623
+ ensure the identified brand matches the transaction with high confidence.
2624
+ Defaults to false.
2625
+
2626
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
2627
+ the API will skip time-consuming operations for faster response at the cost of
2628
+ less comprehensive data.
2629
+
2630
+ mcc: Optional Merchant Category Code (MCC) to help identify the business
2631
+ category/industry.
2632
+
2633
+ phone: Optional phone number from the transaction to help verify brand match.
2634
+
2635
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
2636
+ than this value, it will be aborted with a 408 status code. Maximum allowed
2637
+ value is 300000ms (5 minutes).
2638
+
2639
+ extra_headers: Send extra headers
2640
+
2641
+ extra_query: Add additional query parameters to the request
2642
+
2643
+ extra_body: Add additional JSON properties to the request
2644
+
2645
+ timeout: Override the client-level default timeout for this request, in seconds
2646
+ """
2647
+ return await self._get(
2648
+ "/brand/transaction_identifier",
2649
+ options=make_request_options(
2650
+ extra_headers=extra_headers,
2651
+ extra_query=extra_query,
2652
+ extra_body=extra_body,
2653
+ timeout=timeout,
2654
+ query=await async_maybe_transform(
2655
+ {
2656
+ "transaction_info": transaction_info,
2657
+ "city": city,
2658
+ "country_gl": country_gl,
2659
+ "force_language": force_language,
2660
+ "high_confidence_only": high_confidence_only,
2661
+ "max_speed": max_speed,
2662
+ "mcc": mcc,
2663
+ "phone": phone,
2664
+ "timeout_ms": timeout_ms,
2665
+ },
2666
+ brand_identify_from_transaction_params.BrandIdentifyFromTransactionParams,
2667
+ ),
2668
+ ),
2669
+ cast_to=BrandIdentifyFromTransactionResponse,
2670
+ )
2671
+
2672
+ async def prefetch(
2673
+ self,
2674
+ *,
2675
+ domain: str,
2676
+ timeout_ms: int | Omit = omit,
2677
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2678
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2679
+ extra_headers: Headers | None = None,
2680
+ extra_query: Query | None = None,
2681
+ extra_body: Body | None = None,
2682
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
2683
+ ) -> BrandPrefetchResponse:
2684
+ """
2685
+ Signal that you may fetch brand data for a particular domain soon to improve
2686
+ latency. This endpoint does not charge credits and is available for paid
2687
+ customers to optimize future requests. [You must be on a paid plan to use this
2688
+ endpoint]
2689
+
2690
+ Args:
2691
+ domain: Domain name to prefetch brand data for
2692
+
2693
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
2694
+ than this value, it will be aborted with a 408 status code. Maximum allowed
2695
+ value is 300000ms (5 minutes).
2696
+
2697
+ extra_headers: Send extra headers
2698
+
2699
+ extra_query: Add additional query parameters to the request
2700
+
2701
+ extra_body: Add additional JSON properties to the request
2702
+
2703
+ timeout: Override the client-level default timeout for this request, in seconds
2704
+ """
2705
+ return await self._post(
2706
+ "/brand/prefetch",
2707
+ body=await async_maybe_transform(
2708
+ {
2709
+ "domain": domain,
2710
+ "timeout_ms": timeout_ms,
2711
+ },
2712
+ brand_prefetch_params.BrandPrefetchParams,
2713
+ ),
2714
+ options=make_request_options(
2715
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
2716
+ ),
2717
+ cast_to=BrandPrefetchResponse,
2718
+ )
2719
+
2720
+ async def prefetch_by_email(
2721
+ self,
2722
+ *,
2723
+ email: str,
2724
+ timeout_ms: int | Omit = omit,
2725
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2726
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2727
+ extra_headers: Headers | None = None,
2728
+ extra_query: Query | None = None,
2729
+ extra_body: Body | None = None,
2730
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
2731
+ ) -> BrandPrefetchByEmailResponse:
2732
+ """
2733
+ Signal that you may fetch brand data for a particular domain soon to improve
2734
+ latency. This endpoint accepts an email address, extracts the domain from it,
2735
+ validates that it's not a disposable or free email provider, and queues the
2736
+ domain for prefetching. This endpoint does not charge credits and is available
2737
+ for paid customers to optimize future requests. [You must be on a paid plan to
2738
+ use this endpoint]
2739
+
2740
+ Args:
2741
+ email: Email address to prefetch brand data for. The domain will be extracted from the
2742
+ email. Free email providers (gmail.com, yahoo.com, etc.) and disposable email
2743
+ addresses are not allowed.
2744
+
2745
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
2746
+ than this value, it will be aborted with a 408 status code. Maximum allowed
2747
+ value is 300000ms (5 minutes).
2748
+
2749
+ extra_headers: Send extra headers
2750
+
2751
+ extra_query: Add additional query parameters to the request
2752
+
2753
+ extra_body: Add additional JSON properties to the request
2754
+
2755
+ timeout: Override the client-level default timeout for this request, in seconds
2756
+ """
2757
+ return await self._post(
2758
+ "/brand/prefetch-by-email",
2759
+ body=await async_maybe_transform(
2760
+ {
2761
+ "email": email,
2762
+ "timeout_ms": timeout_ms,
2763
+ },
2764
+ brand_prefetch_by_email_params.BrandPrefetchByEmailParams,
2765
+ ),
2766
+ options=make_request_options(
2767
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
2768
+ ),
2769
+ cast_to=BrandPrefetchByEmailResponse,
2770
+ )
2771
+
2772
+ async def retrieve_by_email(
2773
+ self,
2774
+ *,
2775
+ email: str,
2776
+ force_language: Literal[
2777
+ "albanian",
2778
+ "arabic",
2779
+ "azeri",
2780
+ "bengali",
2781
+ "bulgarian",
2782
+ "cebuano",
2783
+ "croatian",
2784
+ "czech",
2785
+ "danish",
2786
+ "dutch",
2787
+ "english",
2788
+ "estonian",
2789
+ "farsi",
2790
+ "finnish",
2791
+ "french",
2792
+ "german",
2793
+ "hausa",
2794
+ "hawaiian",
2795
+ "hindi",
2796
+ "hungarian",
2797
+ "icelandic",
2798
+ "indonesian",
2799
+ "italian",
2800
+ "kazakh",
2801
+ "kyrgyz",
2802
+ "latin",
2803
+ "latvian",
2804
+ "lithuanian",
2805
+ "macedonian",
2806
+ "mongolian",
2807
+ "nepali",
2808
+ "norwegian",
2809
+ "pashto",
2810
+ "pidgin",
2811
+ "polish",
2812
+ "portuguese",
2813
+ "romanian",
2814
+ "russian",
2815
+ "serbian",
2816
+ "slovak",
2817
+ "slovene",
2818
+ "somali",
2819
+ "spanish",
2820
+ "swahili",
2821
+ "swedish",
2822
+ "tagalog",
2823
+ "turkish",
2824
+ "ukrainian",
2825
+ "urdu",
2826
+ "uzbek",
2827
+ "vietnamese",
2828
+ "welsh",
2829
+ ]
2830
+ | Omit = omit,
2831
+ max_speed: bool | Omit = omit,
2832
+ timeout_ms: int | Omit = omit,
2833
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2834
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2835
+ extra_headers: Headers | None = None,
2836
+ extra_query: Query | None = None,
2837
+ extra_body: Body | None = None,
2838
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
2839
+ ) -> BrandRetrieveByEmailResponse:
2840
+ """
2841
+ Retrieve brand information using an email address while detecting disposable and
2842
+ free email addresses. This endpoint extracts the domain from the email address
2843
+ and returns brand data for that domain. Disposable and free email addresses
2844
+ (like gmail.com, yahoo.com) will throw a 422 error.
2845
+
2846
+ Args:
2847
+ email: Email address to retrieve brand data for (e.g., 'contact@example.com'). The
2848
+ domain will be extracted from the email. Free email providers (gmail.com,
2849
+ yahoo.com, etc.) and disposable email addresses are not allowed.
2850
+
2851
+ force_language: Optional parameter to force the language of the retrieved brand data.
2852
+
2853
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
2854
+ the API will skip time-consuming operations for faster response at the cost of
2855
+ less comprehensive data.
2856
+
2857
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
2858
+ than this value, it will be aborted with a 408 status code. Maximum allowed
2859
+ value is 300000ms (5 minutes).
2860
+
2861
+ extra_headers: Send extra headers
2862
+
2863
+ extra_query: Add additional query parameters to the request
2864
+
2865
+ extra_body: Add additional JSON properties to the request
2866
+
2867
+ timeout: Override the client-level default timeout for this request, in seconds
2868
+ """
2869
+ return await self._get(
2870
+ "/brand/retrieve-by-email",
2871
+ options=make_request_options(
2872
+ extra_headers=extra_headers,
2873
+ extra_query=extra_query,
2874
+ extra_body=extra_body,
2875
+ timeout=timeout,
2876
+ query=await async_maybe_transform(
2877
+ {
2878
+ "email": email,
2879
+ "force_language": force_language,
2880
+ "max_speed": max_speed,
2881
+ "timeout_ms": timeout_ms,
2882
+ },
2883
+ brand_retrieve_by_email_params.BrandRetrieveByEmailParams,
2884
+ ),
2885
+ ),
2886
+ cast_to=BrandRetrieveByEmailResponse,
2887
+ )
2888
+
2889
+ async def retrieve_by_isin(
2890
+ self,
2891
+ *,
2892
+ isin: str,
2893
+ force_language: Literal[
2894
+ "albanian",
2895
+ "arabic",
2896
+ "azeri",
2897
+ "bengali",
2898
+ "bulgarian",
2899
+ "cebuano",
2900
+ "croatian",
2901
+ "czech",
2902
+ "danish",
2903
+ "dutch",
2904
+ "english",
2905
+ "estonian",
2906
+ "farsi",
2907
+ "finnish",
2908
+ "french",
2909
+ "german",
2910
+ "hausa",
2911
+ "hawaiian",
2912
+ "hindi",
2913
+ "hungarian",
2914
+ "icelandic",
2915
+ "indonesian",
2916
+ "italian",
2917
+ "kazakh",
2918
+ "kyrgyz",
2919
+ "latin",
2920
+ "latvian",
2921
+ "lithuanian",
2922
+ "macedonian",
2923
+ "mongolian",
2924
+ "nepali",
2925
+ "norwegian",
2926
+ "pashto",
2927
+ "pidgin",
2928
+ "polish",
2929
+ "portuguese",
2930
+ "romanian",
2931
+ "russian",
2932
+ "serbian",
2933
+ "slovak",
2934
+ "slovene",
2935
+ "somali",
2936
+ "spanish",
2937
+ "swahili",
2938
+ "swedish",
2939
+ "tagalog",
2940
+ "turkish",
2941
+ "ukrainian",
2942
+ "urdu",
2943
+ "uzbek",
2944
+ "vietnamese",
2945
+ "welsh",
2946
+ ]
2947
+ | Omit = omit,
2948
+ max_speed: bool | Omit = omit,
2949
+ timeout_ms: int | Omit = omit,
2950
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2951
+ # The extra values given here take precedence over values defined on the client or passed to this method.
2952
+ extra_headers: Headers | None = None,
2953
+ extra_query: Query | None = None,
2954
+ extra_body: Body | None = None,
2955
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
2956
+ ) -> BrandRetrieveByIsinResponse:
2957
+ """
2958
+ Retrieve brand information using an ISIN (International Securities
2959
+ Identification Number). This endpoint looks up the company associated with the
2960
+ ISIN and returns its brand data.
2961
+
2962
+ Args:
2963
+ isin: ISIN (International Securities Identification Number) to retrieve brand data for
2964
+ (e.g., 'AU000000IMD5', 'US0378331005'). Must be exactly 12 characters: 2 letters
2965
+ followed by 9 alphanumeric characters and ending with a digit.
2966
+
2967
+ force_language: Optional parameter to force the language of the retrieved brand data.
2968
+
2969
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
2970
+ the API will skip time-consuming operations for faster response at the cost of
2971
+ less comprehensive data.
2972
+
2973
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
2974
+ than this value, it will be aborted with a 408 status code. Maximum allowed
2975
+ value is 300000ms (5 minutes).
2976
+
2977
+ extra_headers: Send extra headers
2978
+
2979
+ extra_query: Add additional query parameters to the request
2980
+
2981
+ extra_body: Add additional JSON properties to the request
2982
+
2983
+ timeout: Override the client-level default timeout for this request, in seconds
2984
+ """
2985
+ return await self._get(
2986
+ "/brand/retrieve-by-isin",
2987
+ options=make_request_options(
2988
+ extra_headers=extra_headers,
2989
+ extra_query=extra_query,
2990
+ extra_body=extra_body,
2991
+ timeout=timeout,
2992
+ query=await async_maybe_transform(
2993
+ {
2994
+ "isin": isin,
2995
+ "force_language": force_language,
2996
+ "max_speed": max_speed,
2997
+ "timeout_ms": timeout_ms,
2998
+ },
2999
+ brand_retrieve_by_isin_params.BrandRetrieveByIsinParams,
3000
+ ),
3001
+ ),
3002
+ cast_to=BrandRetrieveByIsinResponse,
3003
+ )
3004
+
3005
+ async def retrieve_by_name(
3006
+ self,
3007
+ *,
3008
+ name: str,
3009
+ force_language: Literal[
3010
+ "albanian",
3011
+ "arabic",
3012
+ "azeri",
3013
+ "bengali",
3014
+ "bulgarian",
3015
+ "cebuano",
3016
+ "croatian",
3017
+ "czech",
3018
+ "danish",
3019
+ "dutch",
3020
+ "english",
3021
+ "estonian",
3022
+ "farsi",
3023
+ "finnish",
3024
+ "french",
3025
+ "german",
3026
+ "hausa",
3027
+ "hawaiian",
3028
+ "hindi",
3029
+ "hungarian",
3030
+ "icelandic",
3031
+ "indonesian",
3032
+ "italian",
3033
+ "kazakh",
3034
+ "kyrgyz",
3035
+ "latin",
3036
+ "latvian",
3037
+ "lithuanian",
3038
+ "macedonian",
3039
+ "mongolian",
3040
+ "nepali",
3041
+ "norwegian",
3042
+ "pashto",
3043
+ "pidgin",
3044
+ "polish",
3045
+ "portuguese",
3046
+ "romanian",
3047
+ "russian",
3048
+ "serbian",
3049
+ "slovak",
3050
+ "slovene",
3051
+ "somali",
3052
+ "spanish",
3053
+ "swahili",
3054
+ "swedish",
3055
+ "tagalog",
3056
+ "turkish",
3057
+ "ukrainian",
3058
+ "urdu",
3059
+ "uzbek",
3060
+ "vietnamese",
3061
+ "welsh",
3062
+ ]
3063
+ | Omit = omit,
3064
+ max_speed: bool | Omit = omit,
3065
+ timeout_ms: int | Omit = omit,
3066
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
3067
+ # The extra values given here take precedence over values defined on the client or passed to this method.
3068
+ extra_headers: Headers | None = None,
3069
+ extra_query: Query | None = None,
3070
+ extra_body: Body | None = None,
3071
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
3072
+ ) -> BrandRetrieveByNameResponse:
3073
+ """Retrieve brand information using a company name.
3074
+
3075
+ This endpoint searches for the
3076
+ company by name and returns its brand data.
3077
+
3078
+ Args:
3079
+ name: Company name to retrieve brand data for (e.g., 'Apple Inc', 'Microsoft
3080
+ Corporation'). Must be 3-30 characters.
3081
+
3082
+ force_language: Optional parameter to force the language of the retrieved brand data.
3083
+
3084
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
3085
+ the API will skip time-consuming operations for faster response at the cost of
3086
+ less comprehensive data.
3087
+
3088
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
3089
+ than this value, it will be aborted with a 408 status code. Maximum allowed
3090
+ value is 300000ms (5 minutes).
3091
+
3092
+ extra_headers: Send extra headers
3093
+
3094
+ extra_query: Add additional query parameters to the request
3095
+
3096
+ extra_body: Add additional JSON properties to the request
3097
+
3098
+ timeout: Override the client-level default timeout for this request, in seconds
3099
+ """
3100
+ return await self._get(
3101
+ "/brand/retrieve-by-name",
3102
+ options=make_request_options(
3103
+ extra_headers=extra_headers,
3104
+ extra_query=extra_query,
3105
+ extra_body=extra_body,
3106
+ timeout=timeout,
3107
+ query=await async_maybe_transform(
3108
+ {
3109
+ "name": name,
3110
+ "force_language": force_language,
3111
+ "max_speed": max_speed,
3112
+ "timeout_ms": timeout_ms,
3113
+ },
3114
+ brand_retrieve_by_name_params.BrandRetrieveByNameParams,
3115
+ ),
3116
+ ),
3117
+ cast_to=BrandRetrieveByNameResponse,
3118
+ )
3119
+
3120
+ async def retrieve_by_ticker(
3121
+ self,
3122
+ *,
3123
+ ticker: str,
3124
+ force_language: Literal[
3125
+ "albanian",
3126
+ "arabic",
3127
+ "azeri",
3128
+ "bengali",
3129
+ "bulgarian",
3130
+ "cebuano",
3131
+ "croatian",
3132
+ "czech",
3133
+ "danish",
3134
+ "dutch",
3135
+ "english",
3136
+ "estonian",
3137
+ "farsi",
3138
+ "finnish",
3139
+ "french",
3140
+ "german",
3141
+ "hausa",
3142
+ "hawaiian",
3143
+ "hindi",
3144
+ "hungarian",
3145
+ "icelandic",
3146
+ "indonesian",
3147
+ "italian",
3148
+ "kazakh",
3149
+ "kyrgyz",
3150
+ "latin",
3151
+ "latvian",
3152
+ "lithuanian",
3153
+ "macedonian",
3154
+ "mongolian",
3155
+ "nepali",
3156
+ "norwegian",
3157
+ "pashto",
3158
+ "pidgin",
3159
+ "polish",
3160
+ "portuguese",
3161
+ "romanian",
3162
+ "russian",
3163
+ "serbian",
3164
+ "slovak",
3165
+ "slovene",
3166
+ "somali",
3167
+ "spanish",
3168
+ "swahili",
3169
+ "swedish",
3170
+ "tagalog",
3171
+ "turkish",
3172
+ "ukrainian",
3173
+ "urdu",
3174
+ "uzbek",
3175
+ "vietnamese",
3176
+ "welsh",
3177
+ ]
3178
+ | Omit = omit,
3179
+ max_speed: bool | Omit = omit,
3180
+ ticker_exchange: Literal[
3181
+ "AMEX",
3182
+ "AMS",
3183
+ "AQS",
3184
+ "ASX",
3185
+ "ATH",
3186
+ "BER",
3187
+ "BME",
3188
+ "BRU",
3189
+ "BSE",
3190
+ "BUD",
3191
+ "BUE",
3192
+ "BVC",
3193
+ "CBOE",
3194
+ "CNQ",
3195
+ "CPH",
3196
+ "DFM",
3197
+ "DOH",
3198
+ "DUB",
3199
+ "DUS",
3200
+ "DXE",
3201
+ "EGX",
3202
+ "FSX",
3203
+ "HAM",
3204
+ "HEL",
3205
+ "HKSE",
3206
+ "HOSE",
3207
+ "ICE",
3208
+ "IOB",
3209
+ "IST",
3210
+ "JKT",
3211
+ "JNB",
3212
+ "JPX",
3213
+ "KLS",
3214
+ "KOE",
3215
+ "KSC",
3216
+ "KUW",
3217
+ "LIS",
3218
+ "LSE",
3219
+ "MCX",
3220
+ "MEX",
3221
+ "MIL",
3222
+ "MUN",
3223
+ "NASDAQ",
3224
+ "NEO",
3225
+ "NSE",
3226
+ "NYSE",
3227
+ "NZE",
3228
+ "OSL",
3229
+ "OTC",
3230
+ "PAR",
3231
+ "PNK",
3232
+ "PRA",
3233
+ "RIS",
3234
+ "SAO",
3235
+ "SAU",
3236
+ "SES",
3237
+ "SET",
3238
+ "SGO",
3239
+ "SHH",
3240
+ "SHZ",
3241
+ "SIX",
3242
+ "STO",
3243
+ "STU",
3244
+ "TAI",
3245
+ "TAL",
3246
+ "TLV",
3247
+ "TSX",
3248
+ "TSXV",
3249
+ "TWO",
3250
+ "VIE",
3251
+ "WSE",
3252
+ "XETRA",
3253
+ ]
3254
+ | Omit = omit,
3255
+ timeout_ms: int | Omit = omit,
3256
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
3257
+ # The extra values given here take precedence over values defined on the client or passed to this method.
3258
+ extra_headers: Headers | None = None,
3259
+ extra_query: Query | None = None,
3260
+ extra_body: Body | None = None,
3261
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
3262
+ ) -> BrandRetrieveByTickerResponse:
3263
+ """Retrieve brand information using a stock ticker symbol.
3264
+
3265
+ This endpoint looks up
3266
+ the company associated with the ticker and returns its brand data.
3267
+
3268
+ Args:
3269
+ ticker: Stock ticker symbol to retrieve brand data for (e.g., 'AAPL', 'GOOGL', 'BRK.A').
3270
+ Must be 1-15 characters, letters/numbers/dots only.
3271
+
3272
+ force_language: Optional parameter to force the language of the retrieved brand data.
3273
+
3274
+ max_speed: Optional parameter to optimize the API call for maximum speed. When set to true,
3275
+ the API will skip time-consuming operations for faster response at the cost of
3276
+ less comprehensive data.
3277
+
3278
+ ticker_exchange: Optional stock exchange for the ticker. Defaults to NASDAQ if not specified.
3279
+
3280
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
3281
+ than this value, it will be aborted with a 408 status code. Maximum allowed
3282
+ value is 300000ms (5 minutes).
3283
+
3284
+ extra_headers: Send extra headers
3285
+
3286
+ extra_query: Add additional query parameters to the request
3287
+
3288
+ extra_body: Add additional JSON properties to the request
3289
+
3290
+ timeout: Override the client-level default timeout for this request, in seconds
3291
+ """
3292
+ return await self._get(
3293
+ "/brand/retrieve-by-ticker",
3294
+ options=make_request_options(
3295
+ extra_headers=extra_headers,
3296
+ extra_query=extra_query,
3297
+ extra_body=extra_body,
3298
+ timeout=timeout,
3299
+ query=await async_maybe_transform(
3300
+ {
3301
+ "ticker": ticker,
3302
+ "force_language": force_language,
3303
+ "max_speed": max_speed,
3304
+ "ticker_exchange": ticker_exchange,
3305
+ "timeout_ms": timeout_ms,
3306
+ },
3307
+ brand_retrieve_by_ticker_params.BrandRetrieveByTickerParams,
3308
+ ),
3309
+ ),
3310
+ cast_to=BrandRetrieveByTickerResponse,
3311
+ )
3312
+
3313
+ async def retrieve_naics(
3314
+ self,
3315
+ *,
3316
+ input: str,
3317
+ max_results: int | Omit = omit,
3318
+ min_results: int | Omit = omit,
3319
+ timeout_ms: int | Omit = omit,
3320
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
3321
+ # The extra values given here take precedence over values defined on the client or passed to this method.
3322
+ extra_headers: Headers | None = None,
3323
+ extra_query: Query | None = None,
3324
+ extra_body: Body | None = None,
3325
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
3326
+ ) -> BrandRetrieveNaicsResponse:
3327
+ """
3328
+ Endpoint to classify any brand into a 2022 NAICS code.
3329
+
3330
+ Args:
3331
+ input: Brand domain or title to retrieve NAICS code for. If a valid domain is provided
3332
+ in `input`, it will be used for classification, otherwise, we will search for
3333
+ the brand using the provided title.
3334
+
3335
+ max_results: Maximum number of NAICS codes to return. Must be between 1 and 10. Defaults
3336
+ to 5.
3337
+
3338
+ min_results: Minimum number of NAICS codes to return. Must be at least 1. Defaults to 1.
3339
+
3340
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
3341
+ than this value, it will be aborted with a 408 status code. Maximum allowed
3342
+ value is 300000ms (5 minutes).
3343
+
3344
+ extra_headers: Send extra headers
3345
+
3346
+ extra_query: Add additional query parameters to the request
3347
+
3348
+ extra_body: Add additional JSON properties to the request
3349
+
3350
+ timeout: Override the client-level default timeout for this request, in seconds
3351
+ """
3352
+ return await self._get(
3353
+ "/brand/naics",
3354
+ options=make_request_options(
3355
+ extra_headers=extra_headers,
3356
+ extra_query=extra_query,
3357
+ extra_body=extra_body,
3358
+ timeout=timeout,
3359
+ query=await async_maybe_transform(
3360
+ {
3361
+ "input": input,
3362
+ "max_results": max_results,
3363
+ "min_results": min_results,
3364
+ "timeout_ms": timeout_ms,
3365
+ },
3366
+ brand_retrieve_naics_params.BrandRetrieveNaicsParams,
3367
+ ),
3368
+ ),
3369
+ cast_to=BrandRetrieveNaicsResponse,
3370
+ )
3371
+
3372
+ async def retrieve_simplified(
3373
+ self,
3374
+ *,
3375
+ domain: str,
3376
+ timeout_ms: int | Omit = omit,
3377
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
3378
+ # The extra values given here take precedence over values defined on the client or passed to this method.
3379
+ extra_headers: Headers | None = None,
3380
+ extra_query: Query | None = None,
3381
+ extra_body: Body | None = None,
3382
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
3383
+ ) -> BrandRetrieveSimplifiedResponse:
3384
+ """
3385
+ Returns a simplified version of brand data containing only essential
3386
+ information: domain, title, colors, logos, and backdrops. This endpoint is
3387
+ optimized for faster responses and reduced data transfer.
3388
+
3389
+ Args:
3390
+ domain: Domain name to retrieve simplified brand data for
3391
+
3392
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
3393
+ than this value, it will be aborted with a 408 status code. Maximum allowed
3394
+ value is 300000ms (5 minutes).
3395
+
3396
+ extra_headers: Send extra headers
3397
+
3398
+ extra_query: Add additional query parameters to the request
3399
+
3400
+ extra_body: Add additional JSON properties to the request
3401
+
3402
+ timeout: Override the client-level default timeout for this request, in seconds
3403
+ """
3404
+ return await self._get(
3405
+ "/brand/retrieve-simplified",
3406
+ options=make_request_options(
3407
+ extra_headers=extra_headers,
3408
+ extra_query=extra_query,
3409
+ extra_body=extra_body,
3410
+ timeout=timeout,
3411
+ query=await async_maybe_transform(
3412
+ {
3413
+ "domain": domain,
3414
+ "timeout_ms": timeout_ms,
3415
+ },
3416
+ brand_retrieve_simplified_params.BrandRetrieveSimplifiedParams,
3417
+ ),
3418
+ ),
3419
+ cast_to=BrandRetrieveSimplifiedResponse,
3420
+ )
3421
+
3422
+ async def screenshot(
3423
+ self,
3424
+ *,
3425
+ domain: str,
3426
+ full_screenshot: Literal["true", "false"] | Omit = omit,
3427
+ page: Literal["login", "signup", "blog", "careers", "pricing", "terms", "privacy", "contact"] | Omit = omit,
3428
+ prioritize: Literal["speed", "quality"] | Omit = omit,
3429
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
3430
+ # The extra values given here take precedence over values defined on the client or passed to this method.
3431
+ extra_headers: Headers | None = None,
3432
+ extra_query: Query | None = None,
3433
+ extra_body: Body | None = None,
3434
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
3435
+ ) -> BrandScreenshotResponse:
3436
+ """Capture a screenshot of a website.
3437
+
3438
+ Supports both viewport (standard browser
3439
+ view) and full-page screenshots. Can also screenshot specific page types (login,
3440
+ pricing, etc.) by using heuristics to find the appropriate URL. Returns a URL to
3441
+ the uploaded screenshot image hosted on our CDN.
3442
+
3443
+ Args:
3444
+ domain: Domain name to take screenshot of (e.g., 'example.com', 'google.com'). The
3445
+ domain will be automatically normalized and validated.
3446
+
3447
+ full_screenshot: Optional parameter to determine screenshot type. If 'true', takes a full page
3448
+ screenshot capturing all content. If 'false' or not provided, takes a viewport
3449
+ screenshot (standard browser view).
3450
+
3451
+ page: Optional parameter to specify which page type to screenshot. If provided, the
3452
+ system will scrape the domain's links and use heuristics to find the most
3453
+ appropriate URL for the specified page type (30 supported languages). If not
3454
+ provided, screenshots the main domain landing page.
3455
+
3456
+ prioritize: Optional parameter to prioritize screenshot capture. If 'speed', optimizes for
3457
+ faster capture with basic quality. If 'quality', optimizes for higher quality
3458
+ with longer wait times. Defaults to 'quality' if not provided.
3459
+
3460
+ extra_headers: Send extra headers
3461
+
3462
+ extra_query: Add additional query parameters to the request
3463
+
3464
+ extra_body: Add additional JSON properties to the request
3465
+
3466
+ timeout: Override the client-level default timeout for this request, in seconds
3467
+ """
3468
+ return await self._get(
3469
+ "/brand/screenshot",
3470
+ options=make_request_options(
3471
+ extra_headers=extra_headers,
3472
+ extra_query=extra_query,
3473
+ extra_body=extra_body,
3474
+ timeout=timeout,
3475
+ query=await async_maybe_transform(
3476
+ {
3477
+ "domain": domain,
3478
+ "full_screenshot": full_screenshot,
3479
+ "page": page,
3480
+ "prioritize": prioritize,
3481
+ },
3482
+ brand_screenshot_params.BrandScreenshotParams,
3483
+ ),
3484
+ ),
3485
+ cast_to=BrandScreenshotResponse,
3486
+ )
3487
+
3488
+ async def styleguide(
3489
+ self,
3490
+ *,
3491
+ direct_url: str | Omit = omit,
3492
+ domain: str | Omit = omit,
3493
+ prioritize: Literal["speed", "quality"] | Omit = omit,
3494
+ timeout_ms: int | Omit = omit,
3495
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
3496
+ # The extra values given here take precedence over values defined on the client or passed to this method.
3497
+ extra_headers: Headers | None = None,
3498
+ extra_query: Query | None = None,
3499
+ extra_body: Body | None = None,
3500
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
3501
+ ) -> BrandStyleguideResponse:
3502
+ """
3503
+ Automatically extract comprehensive design system information from a brand's
3504
+ website including colors, typography, spacing, shadows, and UI components.
3505
+ Either 'domain' or 'directUrl' must be provided as a query parameter, but not
3506
+ both.
3507
+
3508
+ Args:
3509
+ direct_url: A specific URL to fetch the styleguide from directly, bypassing domain
3510
+ resolution (e.g., 'https://example.com/design-system').
3511
+
3512
+ domain: Domain name to extract styleguide from (e.g., 'example.com', 'google.com'). The
3513
+ domain will be automatically normalized and validated.
3514
+
3515
+ prioritize: Optional parameter to prioritize screenshot capture for styleguide extraction.
3516
+ If 'speed', optimizes for faster capture with basic quality. If 'quality',
3517
+ optimizes for higher quality with longer wait times. Defaults to 'quality' if
3518
+ not provided.
3519
+
3520
+ timeout_ms: Optional timeout in milliseconds for the request. If the request takes longer
3521
+ than this value, it will be aborted with a 408 status code. Maximum allowed
3522
+ value is 300000ms (5 minutes).
3523
+
3524
+ extra_headers: Send extra headers
3525
+
3526
+ extra_query: Add additional query parameters to the request
3527
+
3528
+ extra_body: Add additional JSON properties to the request
3529
+
3530
+ timeout: Override the client-level default timeout for this request, in seconds
3531
+ """
3532
+ return await self._get(
3533
+ "/brand/styleguide",
3534
+ options=make_request_options(
3535
+ extra_headers=extra_headers,
3536
+ extra_query=extra_query,
3537
+ extra_body=extra_body,
3538
+ timeout=timeout,
3539
+ query=await async_maybe_transform(
3540
+ {
3541
+ "direct_url": direct_url,
3542
+ "domain": domain,
3543
+ "prioritize": prioritize,
3544
+ "timeout_ms": timeout_ms,
3545
+ },
3546
+ brand_styleguide_params.BrandStyleguideParams,
3547
+ ),
3548
+ ),
3549
+ cast_to=BrandStyleguideResponse,
3550
+ )
3551
+
3552
+ async def web_scrape_html(
3553
+ self,
3554
+ *,
3555
+ url: str,
3556
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
3557
+ # The extra values given here take precedence over values defined on the client or passed to this method.
3558
+ extra_headers: Headers | None = None,
3559
+ extra_query: Query | None = None,
3560
+ extra_body: Body | None = None,
3561
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
3562
+ ) -> BrandWebScrapeHTMLResponse:
3563
+ """Scrapes the given URL and returns the raw HTML content of the page.
3564
+
3565
+ Uses
3566
+ automatic proxy escalation to handle blocked sites.
3567
+
3568
+ Args:
3569
+ url: Full URL to scrape (must include http:// or https:// protocol)
3570
+
3571
+ extra_headers: Send extra headers
3572
+
3573
+ extra_query: Add additional query parameters to the request
3574
+
3575
+ extra_body: Add additional JSON properties to the request
3576
+
3577
+ timeout: Override the client-level default timeout for this request, in seconds
3578
+ """
3579
+ return await self._get(
3580
+ "/web/scrape/html",
3581
+ options=make_request_options(
3582
+ extra_headers=extra_headers,
3583
+ extra_query=extra_query,
3584
+ extra_body=extra_body,
3585
+ timeout=timeout,
3586
+ query=await async_maybe_transform({"url": url}, brand_web_scrape_html_params.BrandWebScrapeHTMLParams),
3587
+ ),
3588
+ cast_to=BrandWebScrapeHTMLResponse,
3589
+ )
3590
+
3591
+ async def web_scrape_images(
3592
+ self,
3593
+ *,
3594
+ url: str,
3595
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
3596
+ # The extra values given here take precedence over values defined on the client or passed to this method.
3597
+ extra_headers: Headers | None = None,
3598
+ extra_query: Query | None = None,
3599
+ extra_body: Body | None = None,
3600
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
3601
+ ) -> BrandWebScrapeImagesResponse:
3602
+ """Scrapes all images from the given URL.
3603
+
3604
+ Extracts images from img, svg,
3605
+ picture/source, link, and video elements including inline SVGs, base64 data
3606
+ URIs, and standard URLs.
3607
+
3608
+ Args:
3609
+ url: Full URL to scrape images from (must include http:// or https:// protocol)
3610
+
3611
+ extra_headers: Send extra headers
3612
+
3613
+ extra_query: Add additional query parameters to the request
3614
+
3615
+ extra_body: Add additional JSON properties to the request
3616
+
3617
+ timeout: Override the client-level default timeout for this request, in seconds
3618
+ """
3619
+ return await self._get(
3620
+ "/web/scrape/images",
3621
+ options=make_request_options(
3622
+ extra_headers=extra_headers,
3623
+ extra_query=extra_query,
3624
+ extra_body=extra_body,
3625
+ timeout=timeout,
3626
+ query=await async_maybe_transform(
3627
+ {"url": url}, brand_web_scrape_images_params.BrandWebScrapeImagesParams
3628
+ ),
3629
+ ),
3630
+ cast_to=BrandWebScrapeImagesResponse,
3631
+ )
3632
+
3633
+ async def web_scrape_md(
3634
+ self,
3635
+ *,
3636
+ url: str,
3637
+ include_images: bool | Omit = omit,
3638
+ include_links: bool | Omit = omit,
3639
+ shorten_base64_images: bool | Omit = omit,
3640
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
3641
+ # The extra values given here take precedence over values defined on the client or passed to this method.
3642
+ extra_headers: Headers | None = None,
3643
+ extra_query: Query | None = None,
3644
+ extra_body: Body | None = None,
3645
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
3646
+ ) -> BrandWebScrapeMdResponse:
3647
+ """
3648
+ Scrapes the given URL, converts the HTML content to GitHub Flavored Markdown
3649
+ (GFM), and returns the result. Uses automatic proxy escalation to handle blocked
3650
+ sites.
3651
+
3652
+ Args:
3653
+ url: Full URL to scrape and convert to markdown (must include http:// or https://
3654
+ protocol)
3655
+
3656
+ include_images: Include image references in Markdown output
3657
+
3658
+ include_links: Preserve hyperlinks in Markdown output
3659
+
3660
+ shorten_base64_images: Shorten base64-encoded image data in the Markdown output
3661
+
3662
+ extra_headers: Send extra headers
3663
+
3664
+ extra_query: Add additional query parameters to the request
3665
+
3666
+ extra_body: Add additional JSON properties to the request
3667
+
3668
+ timeout: Override the client-level default timeout for this request, in seconds
3669
+ """
3670
+ return await self._get(
3671
+ "/web/scrape/markdown",
3672
+ options=make_request_options(
3673
+ extra_headers=extra_headers,
3674
+ extra_query=extra_query,
3675
+ extra_body=extra_body,
3676
+ timeout=timeout,
3677
+ query=await async_maybe_transform(
3678
+ {
3679
+ "url": url,
3680
+ "include_images": include_images,
3681
+ "include_links": include_links,
3682
+ "shorten_base64_images": shorten_base64_images,
3683
+ },
3684
+ brand_web_scrape_md_params.BrandWebScrapeMdParams,
3685
+ ),
3686
+ ),
3687
+ cast_to=BrandWebScrapeMdResponse,
3688
+ )
3689
+
3690
+ async def web_scrape_sitemap(
3691
+ self,
3692
+ *,
3693
+ domain: str,
3694
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
3695
+ # The extra values given here take precedence over values defined on the client or passed to this method.
3696
+ extra_headers: Headers | None = None,
3697
+ extra_query: Query | None = None,
3698
+ extra_body: Body | None = None,
3699
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
3700
+ ) -> BrandWebScrapeSitemapResponse:
3701
+ """
3702
+ Crawls the sitemap of the given domain and returns all discovered page URLs.
3703
+ Supports sitemap index files (recursive), parallel fetching with concurrency
3704
+ control, deduplication, and filters out non-page resources (images, PDFs, etc.).
3705
+
3706
+ Args:
3707
+ domain: Domain name to crawl sitemaps for (e.g., 'example.com'). The domain will be
3708
+ automatically normalized and validated.
3709
+
3710
+ extra_headers: Send extra headers
3711
+
3712
+ extra_query: Add additional query parameters to the request
3713
+
3714
+ extra_body: Add additional JSON properties to the request
3715
+
3716
+ timeout: Override the client-level default timeout for this request, in seconds
3717
+ """
3718
+ return await self._get(
3719
+ "/web/scrape/sitemap",
3720
+ options=make_request_options(
3721
+ extra_headers=extra_headers,
3722
+ extra_query=extra_query,
3723
+ extra_body=extra_body,
3724
+ timeout=timeout,
3725
+ query=await async_maybe_transform(
3726
+ {"domain": domain}, brand_web_scrape_sitemap_params.BrandWebScrapeSitemapParams
3727
+ ),
3728
+ ),
3729
+ cast_to=BrandWebScrapeSitemapResponse,
3730
+ )
3731
+
3732
+
3733
+ class BrandResourceWithRawResponse:
3734
+ def __init__(self, brand: BrandResource) -> None:
3735
+ self._brand = brand
3736
+
3737
+ self.retrieve = to_raw_response_wrapper(
3738
+ brand.retrieve,
3739
+ )
3740
+ self.ai_product = to_raw_response_wrapper(
3741
+ brand.ai_product,
3742
+ )
3743
+ self.ai_products = to_raw_response_wrapper(
3744
+ brand.ai_products,
3745
+ )
3746
+ self.ai_query = to_raw_response_wrapper(
3747
+ brand.ai_query,
3748
+ )
3749
+ self.fonts = to_raw_response_wrapper(
3750
+ brand.fonts,
3751
+ )
3752
+ self.identify_from_transaction = to_raw_response_wrapper(
3753
+ brand.identify_from_transaction,
3754
+ )
3755
+ self.prefetch = to_raw_response_wrapper(
3756
+ brand.prefetch,
3757
+ )
3758
+ self.prefetch_by_email = to_raw_response_wrapper(
3759
+ brand.prefetch_by_email,
3760
+ )
3761
+ self.retrieve_by_email = to_raw_response_wrapper(
3762
+ brand.retrieve_by_email,
3763
+ )
3764
+ self.retrieve_by_isin = to_raw_response_wrapper(
3765
+ brand.retrieve_by_isin,
3766
+ )
3767
+ self.retrieve_by_name = to_raw_response_wrapper(
3768
+ brand.retrieve_by_name,
3769
+ )
3770
+ self.retrieve_by_ticker = to_raw_response_wrapper(
3771
+ brand.retrieve_by_ticker,
3772
+ )
3773
+ self.retrieve_naics = to_raw_response_wrapper(
3774
+ brand.retrieve_naics,
3775
+ )
3776
+ self.retrieve_simplified = to_raw_response_wrapper(
3777
+ brand.retrieve_simplified,
3778
+ )
3779
+ self.screenshot = to_raw_response_wrapper(
3780
+ brand.screenshot,
3781
+ )
3782
+ self.styleguide = to_raw_response_wrapper(
3783
+ brand.styleguide,
3784
+ )
3785
+ self.web_scrape_html = to_raw_response_wrapper(
3786
+ brand.web_scrape_html,
3787
+ )
3788
+ self.web_scrape_images = to_raw_response_wrapper(
3789
+ brand.web_scrape_images,
3790
+ )
3791
+ self.web_scrape_md = to_raw_response_wrapper(
3792
+ brand.web_scrape_md,
3793
+ )
3794
+ self.web_scrape_sitemap = to_raw_response_wrapper(
3795
+ brand.web_scrape_sitemap,
3796
+ )
3797
+
3798
+
3799
+ class AsyncBrandResourceWithRawResponse:
3800
+ def __init__(self, brand: AsyncBrandResource) -> None:
3801
+ self._brand = brand
3802
+
3803
+ self.retrieve = async_to_raw_response_wrapper(
3804
+ brand.retrieve,
3805
+ )
3806
+ self.ai_product = async_to_raw_response_wrapper(
3807
+ brand.ai_product,
3808
+ )
3809
+ self.ai_products = async_to_raw_response_wrapper(
3810
+ brand.ai_products,
3811
+ )
3812
+ self.ai_query = async_to_raw_response_wrapper(
3813
+ brand.ai_query,
3814
+ )
3815
+ self.fonts = async_to_raw_response_wrapper(
3816
+ brand.fonts,
3817
+ )
3818
+ self.identify_from_transaction = async_to_raw_response_wrapper(
3819
+ brand.identify_from_transaction,
3820
+ )
3821
+ self.prefetch = async_to_raw_response_wrapper(
3822
+ brand.prefetch,
3823
+ )
3824
+ self.prefetch_by_email = async_to_raw_response_wrapper(
3825
+ brand.prefetch_by_email,
3826
+ )
3827
+ self.retrieve_by_email = async_to_raw_response_wrapper(
3828
+ brand.retrieve_by_email,
3829
+ )
3830
+ self.retrieve_by_isin = async_to_raw_response_wrapper(
3831
+ brand.retrieve_by_isin,
3832
+ )
3833
+ self.retrieve_by_name = async_to_raw_response_wrapper(
3834
+ brand.retrieve_by_name,
3835
+ )
3836
+ self.retrieve_by_ticker = async_to_raw_response_wrapper(
3837
+ brand.retrieve_by_ticker,
3838
+ )
3839
+ self.retrieve_naics = async_to_raw_response_wrapper(
3840
+ brand.retrieve_naics,
3841
+ )
3842
+ self.retrieve_simplified = async_to_raw_response_wrapper(
3843
+ brand.retrieve_simplified,
3844
+ )
3845
+ self.screenshot = async_to_raw_response_wrapper(
3846
+ brand.screenshot,
3847
+ )
3848
+ self.styleguide = async_to_raw_response_wrapper(
3849
+ brand.styleguide,
3850
+ )
3851
+ self.web_scrape_html = async_to_raw_response_wrapper(
3852
+ brand.web_scrape_html,
3853
+ )
3854
+ self.web_scrape_images = async_to_raw_response_wrapper(
3855
+ brand.web_scrape_images,
3856
+ )
3857
+ self.web_scrape_md = async_to_raw_response_wrapper(
3858
+ brand.web_scrape_md,
3859
+ )
3860
+ self.web_scrape_sitemap = async_to_raw_response_wrapper(
3861
+ brand.web_scrape_sitemap,
3862
+ )
3863
+
3864
+
3865
+ class BrandResourceWithStreamingResponse:
3866
+ def __init__(self, brand: BrandResource) -> None:
3867
+ self._brand = brand
3868
+
3869
+ self.retrieve = to_streamed_response_wrapper(
3870
+ brand.retrieve,
3871
+ )
3872
+ self.ai_product = to_streamed_response_wrapper(
3873
+ brand.ai_product,
3874
+ )
3875
+ self.ai_products = to_streamed_response_wrapper(
3876
+ brand.ai_products,
3877
+ )
3878
+ self.ai_query = to_streamed_response_wrapper(
3879
+ brand.ai_query,
3880
+ )
3881
+ self.fonts = to_streamed_response_wrapper(
3882
+ brand.fonts,
3883
+ )
3884
+ self.identify_from_transaction = to_streamed_response_wrapper(
3885
+ brand.identify_from_transaction,
3886
+ )
3887
+ self.prefetch = to_streamed_response_wrapper(
3888
+ brand.prefetch,
3889
+ )
3890
+ self.prefetch_by_email = to_streamed_response_wrapper(
3891
+ brand.prefetch_by_email,
3892
+ )
3893
+ self.retrieve_by_email = to_streamed_response_wrapper(
3894
+ brand.retrieve_by_email,
3895
+ )
3896
+ self.retrieve_by_isin = to_streamed_response_wrapper(
3897
+ brand.retrieve_by_isin,
3898
+ )
3899
+ self.retrieve_by_name = to_streamed_response_wrapper(
3900
+ brand.retrieve_by_name,
3901
+ )
3902
+ self.retrieve_by_ticker = to_streamed_response_wrapper(
3903
+ brand.retrieve_by_ticker,
3904
+ )
3905
+ self.retrieve_naics = to_streamed_response_wrapper(
3906
+ brand.retrieve_naics,
3907
+ )
3908
+ self.retrieve_simplified = to_streamed_response_wrapper(
3909
+ brand.retrieve_simplified,
3910
+ )
3911
+ self.screenshot = to_streamed_response_wrapper(
3912
+ brand.screenshot,
3913
+ )
3914
+ self.styleguide = to_streamed_response_wrapper(
3915
+ brand.styleguide,
3916
+ )
3917
+ self.web_scrape_html = to_streamed_response_wrapper(
3918
+ brand.web_scrape_html,
3919
+ )
3920
+ self.web_scrape_images = to_streamed_response_wrapper(
3921
+ brand.web_scrape_images,
3922
+ )
3923
+ self.web_scrape_md = to_streamed_response_wrapper(
3924
+ brand.web_scrape_md,
3925
+ )
3926
+ self.web_scrape_sitemap = to_streamed_response_wrapper(
3927
+ brand.web_scrape_sitemap,
3928
+ )
3929
+
3930
+
3931
+ class AsyncBrandResourceWithStreamingResponse:
3932
+ def __init__(self, brand: AsyncBrandResource) -> None:
3933
+ self._brand = brand
3934
+
3935
+ self.retrieve = async_to_streamed_response_wrapper(
3936
+ brand.retrieve,
3937
+ )
3938
+ self.ai_product = async_to_streamed_response_wrapper(
3939
+ brand.ai_product,
3940
+ )
3941
+ self.ai_products = async_to_streamed_response_wrapper(
3942
+ brand.ai_products,
3943
+ )
3944
+ self.ai_query = async_to_streamed_response_wrapper(
3945
+ brand.ai_query,
3946
+ )
3947
+ self.fonts = async_to_streamed_response_wrapper(
3948
+ brand.fonts,
3949
+ )
3950
+ self.identify_from_transaction = async_to_streamed_response_wrapper(
3951
+ brand.identify_from_transaction,
3952
+ )
3953
+ self.prefetch = async_to_streamed_response_wrapper(
3954
+ brand.prefetch,
3955
+ )
3956
+ self.prefetch_by_email = async_to_streamed_response_wrapper(
3957
+ brand.prefetch_by_email,
3958
+ )
3959
+ self.retrieve_by_email = async_to_streamed_response_wrapper(
3960
+ brand.retrieve_by_email,
3961
+ )
3962
+ self.retrieve_by_isin = async_to_streamed_response_wrapper(
3963
+ brand.retrieve_by_isin,
3964
+ )
3965
+ self.retrieve_by_name = async_to_streamed_response_wrapper(
3966
+ brand.retrieve_by_name,
3967
+ )
3968
+ self.retrieve_by_ticker = async_to_streamed_response_wrapper(
3969
+ brand.retrieve_by_ticker,
3970
+ )
3971
+ self.retrieve_naics = async_to_streamed_response_wrapper(
3972
+ brand.retrieve_naics,
3973
+ )
3974
+ self.retrieve_simplified = async_to_streamed_response_wrapper(
3975
+ brand.retrieve_simplified,
3976
+ )
3977
+ self.screenshot = async_to_streamed_response_wrapper(
3978
+ brand.screenshot,
3979
+ )
3980
+ self.styleguide = async_to_streamed_response_wrapper(
3981
+ brand.styleguide,
3982
+ )
3983
+ self.web_scrape_html = async_to_streamed_response_wrapper(
3984
+ brand.web_scrape_html,
3985
+ )
3986
+ self.web_scrape_images = async_to_streamed_response_wrapper(
3987
+ brand.web_scrape_images,
3988
+ )
3989
+ self.web_scrape_md = async_to_streamed_response_wrapper(
3990
+ brand.web_scrape_md,
3991
+ )
3992
+ self.web_scrape_sitemap = async_to_streamed_response_wrapper(
3993
+ brand.web_scrape_sitemap,
3994
+ )