brand.dev 0.24.0 → 0.26.0

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 (42) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +22 -0
  3. data/README.md +1 -1
  4. data/lib/brand_dev/models/brand_ai_product_response.rb +9 -1
  5. data/lib/brand_dev/models/brand_ai_products_response.rb +9 -1
  6. data/lib/brand_dev/models/brand_web_scrape_html_params.rb +22 -0
  7. data/lib/brand_dev/models/brand_web_scrape_html_response.rb +45 -0
  8. data/lib/brand_dev/models/brand_web_scrape_images_params.rb +22 -0
  9. data/lib/brand_dev/models/brand_web_scrape_images_response.rb +111 -0
  10. data/lib/brand_dev/models/brand_web_scrape_md_params.rb +42 -0
  11. data/lib/brand_dev/models/brand_web_scrape_md_response.rb +45 -0
  12. data/lib/brand_dev/models/brand_web_scrape_sitemap_params.rb +26 -0
  13. data/lib/brand_dev/models/brand_web_scrape_sitemap_response.rb +91 -0
  14. data/lib/brand_dev/models.rb +8 -0
  15. data/lib/brand_dev/resources/brand.rb +105 -0
  16. data/lib/brand_dev/version.rb +1 -1
  17. data/lib/brand_dev.rb +8 -0
  18. data/rbi/brand_dev/models/brand_ai_product_response.rbi +8 -0
  19. data/rbi/brand_dev/models/brand_ai_products_response.rbi +8 -0
  20. data/rbi/brand_dev/models/brand_web_scrape_html_params.rbi +40 -0
  21. data/rbi/brand_dev/models/brand_web_scrape_html_response.rbi +92 -0
  22. data/rbi/brand_dev/models/brand_web_scrape_images_params.rbi +43 -0
  23. data/rbi/brand_dev/models/brand_web_scrape_images_response.rbi +259 -0
  24. data/rbi/brand_dev/models/brand_web_scrape_md_params.rbi +67 -0
  25. data/rbi/brand_dev/models/brand_web_scrape_md_response.rbi +92 -0
  26. data/rbi/brand_dev/models/brand_web_scrape_sitemap_params.rbi +45 -0
  27. data/rbi/brand_dev/models/brand_web_scrape_sitemap_response.rbi +167 -0
  28. data/rbi/brand_dev/models.rbi +8 -0
  29. data/rbi/brand_dev/resources/brand.rbi +71 -0
  30. data/sig/brand_dev/models/brand_ai_product_response.rbs +5 -0
  31. data/sig/brand_dev/models/brand_ai_products_response.rbs +5 -0
  32. data/sig/brand_dev/models/brand_web_scrape_html_params.rbs +20 -0
  33. data/sig/brand_dev/models/brand_web_scrape_html_response.rbs +40 -0
  34. data/sig/brand_dev/models/brand_web_scrape_images_params.rbs +20 -0
  35. data/sig/brand_dev/models/brand_web_scrape_images_response.rbs +98 -0
  36. data/sig/brand_dev/models/brand_web_scrape_md_params.rbs +36 -0
  37. data/sig/brand_dev/models/brand_web_scrape_md_response.rbs +40 -0
  38. data/sig/brand_dev/models/brand_web_scrape_sitemap_params.rbs +23 -0
  39. data/sig/brand_dev/models/brand_web_scrape_sitemap_response.rbs +77 -0
  40. data/sig/brand_dev/models.rbs +8 -0
  41. data/sig/brand_dev/resources/brand.rbs +22 -0
  42. metadata +26 -2
@@ -0,0 +1,167 @@
1
+ # typed: strong
2
+
3
+ module BrandDev
4
+ module Models
5
+ class BrandWebScrapeSitemapResponse < BrandDev::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ BrandDev::Models::BrandWebScrapeSitemapResponse,
10
+ BrandDev::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The normalized domain that was crawled
15
+ sig { returns(String) }
16
+ attr_accessor :domain
17
+
18
+ # Metadata about the sitemap crawl operation
19
+ sig { returns(BrandDev::Models::BrandWebScrapeSitemapResponse::Meta) }
20
+ attr_reader :meta
21
+
22
+ sig do
23
+ params(
24
+ meta: BrandDev::Models::BrandWebScrapeSitemapResponse::Meta::OrHash
25
+ ).void
26
+ end
27
+ attr_writer :meta
28
+
29
+ # Indicates success
30
+ sig do
31
+ returns(
32
+ BrandDev::Models::BrandWebScrapeSitemapResponse::Success::TaggedBoolean
33
+ )
34
+ end
35
+ attr_accessor :success
36
+
37
+ # Array of discovered page URLs from the sitemap (max 500)
38
+ sig { returns(T::Array[String]) }
39
+ attr_accessor :urls
40
+
41
+ sig do
42
+ params(
43
+ domain: String,
44
+ meta: BrandDev::Models::BrandWebScrapeSitemapResponse::Meta::OrHash,
45
+ success:
46
+ BrandDev::Models::BrandWebScrapeSitemapResponse::Success::OrBoolean,
47
+ urls: T::Array[String]
48
+ ).returns(T.attached_class)
49
+ end
50
+ def self.new(
51
+ # The normalized domain that was crawled
52
+ domain:,
53
+ # Metadata about the sitemap crawl operation
54
+ meta:,
55
+ # Indicates success
56
+ success:,
57
+ # Array of discovered page URLs from the sitemap (max 500)
58
+ urls:
59
+ )
60
+ end
61
+
62
+ sig do
63
+ override.returns(
64
+ {
65
+ domain: String,
66
+ meta: BrandDev::Models::BrandWebScrapeSitemapResponse::Meta,
67
+ success:
68
+ BrandDev::Models::BrandWebScrapeSitemapResponse::Success::TaggedBoolean,
69
+ urls: T::Array[String]
70
+ }
71
+ )
72
+ end
73
+ def to_hash
74
+ end
75
+
76
+ class Meta < BrandDev::Internal::Type::BaseModel
77
+ OrHash =
78
+ T.type_alias do
79
+ T.any(
80
+ BrandDev::Models::BrandWebScrapeSitemapResponse::Meta,
81
+ BrandDev::Internal::AnyHash
82
+ )
83
+ end
84
+
85
+ # Number of errors encountered during crawling
86
+ sig { returns(Integer) }
87
+ attr_accessor :errors
88
+
89
+ # Total number of sitemap files discovered
90
+ sig { returns(Integer) }
91
+ attr_accessor :sitemaps_discovered
92
+
93
+ # Number of sitemap files successfully fetched and parsed
94
+ sig { returns(Integer) }
95
+ attr_accessor :sitemaps_fetched
96
+
97
+ # Number of sitemap files skipped (due to errors, timeouts, or limits)
98
+ sig { returns(Integer) }
99
+ attr_accessor :sitemaps_skipped
100
+
101
+ # Metadata about the sitemap crawl operation
102
+ sig do
103
+ params(
104
+ errors: Integer,
105
+ sitemaps_discovered: Integer,
106
+ sitemaps_fetched: Integer,
107
+ sitemaps_skipped: Integer
108
+ ).returns(T.attached_class)
109
+ end
110
+ def self.new(
111
+ # Number of errors encountered during crawling
112
+ errors:,
113
+ # Total number of sitemap files discovered
114
+ sitemaps_discovered:,
115
+ # Number of sitemap files successfully fetched and parsed
116
+ sitemaps_fetched:,
117
+ # Number of sitemap files skipped (due to errors, timeouts, or limits)
118
+ sitemaps_skipped:
119
+ )
120
+ end
121
+
122
+ sig do
123
+ override.returns(
124
+ {
125
+ errors: Integer,
126
+ sitemaps_discovered: Integer,
127
+ sitemaps_fetched: Integer,
128
+ sitemaps_skipped: Integer
129
+ }
130
+ )
131
+ end
132
+ def to_hash
133
+ end
134
+ end
135
+
136
+ # Indicates success
137
+ module Success
138
+ extend BrandDev::Internal::Type::Enum
139
+
140
+ TaggedBoolean =
141
+ T.type_alias do
142
+ T.all(
143
+ T::Boolean,
144
+ BrandDev::Models::BrandWebScrapeSitemapResponse::Success
145
+ )
146
+ end
147
+ OrBoolean = T.type_alias { T::Boolean }
148
+
149
+ TRUE =
150
+ T.let(
151
+ true,
152
+ BrandDev::Models::BrandWebScrapeSitemapResponse::Success::TaggedBoolean
153
+ )
154
+
155
+ sig do
156
+ override.returns(
157
+ T::Array[
158
+ BrandDev::Models::BrandWebScrapeSitemapResponse::Success::TaggedBoolean
159
+ ]
160
+ )
161
+ end
162
+ def self.values
163
+ end
164
+ end
165
+ end
166
+ end
167
+ end
@@ -34,4 +34,12 @@ module BrandDev
34
34
  BrandScreenshotParams = BrandDev::Models::BrandScreenshotParams
35
35
 
36
36
  BrandStyleguideParams = BrandDev::Models::BrandStyleguideParams
37
+
38
+ BrandWebScrapeHTMLParams = BrandDev::Models::BrandWebScrapeHTMLParams
39
+
40
+ BrandWebScrapeImagesParams = BrandDev::Models::BrandWebScrapeImagesParams
41
+
42
+ BrandWebScrapeMdParams = BrandDev::Models::BrandWebScrapeMdParams
43
+
44
+ BrandWebScrapeSitemapParams = BrandDev::Models::BrandWebScrapeSitemapParams
37
45
  end
@@ -462,6 +462,77 @@ module BrandDev
462
462
  )
463
463
  end
464
464
 
465
+ # Scrapes the given URL and returns the raw HTML content of the page. Uses
466
+ # automatic proxy escalation to handle blocked sites.
467
+ sig do
468
+ params(
469
+ url: String,
470
+ request_options: BrandDev::RequestOptions::OrHash
471
+ ).returns(BrandDev::Models::BrandWebScrapeHTMLResponse)
472
+ end
473
+ def web_scrape_html(
474
+ # Full URL to scrape (must include http:// or https:// protocol)
475
+ url:,
476
+ request_options: {}
477
+ )
478
+ end
479
+
480
+ # Scrapes all images from the given URL. Extracts images from img, svg,
481
+ # picture/source, link, and video elements including inline SVGs, base64 data
482
+ # URIs, and standard URLs.
483
+ sig do
484
+ params(
485
+ url: String,
486
+ request_options: BrandDev::RequestOptions::OrHash
487
+ ).returns(BrandDev::Models::BrandWebScrapeImagesResponse)
488
+ end
489
+ def web_scrape_images(
490
+ # Full URL to scrape images from (must include http:// or https:// protocol)
491
+ url:,
492
+ request_options: {}
493
+ )
494
+ end
495
+
496
+ # Scrapes the given URL, converts the HTML content to GitHub Flavored Markdown
497
+ # (GFM), and returns the result. Uses automatic proxy escalation to handle blocked
498
+ # sites.
499
+ sig do
500
+ params(
501
+ url: String,
502
+ include_images: T::Boolean,
503
+ include_links: T::Boolean,
504
+ request_options: BrandDev::RequestOptions::OrHash
505
+ ).returns(BrandDev::Models::BrandWebScrapeMdResponse)
506
+ end
507
+ def web_scrape_md(
508
+ # Full URL to scrape and convert to markdown (must include http:// or https://
509
+ # protocol)
510
+ url:,
511
+ # Include image references in Markdown output
512
+ include_images: nil,
513
+ # Preserve hyperlinks in Markdown output
514
+ include_links: nil,
515
+ request_options: {}
516
+ )
517
+ end
518
+
519
+ # Crawls the sitemap of the given domain and returns all discovered page URLs.
520
+ # Supports sitemap index files (recursive), parallel fetching with concurrency
521
+ # control, deduplication, and filters out non-page resources (images, PDFs, etc.).
522
+ sig do
523
+ params(
524
+ domain: String,
525
+ request_options: BrandDev::RequestOptions::OrHash
526
+ ).returns(BrandDev::Models::BrandWebScrapeSitemapResponse)
527
+ end
528
+ def web_scrape_sitemap(
529
+ # Domain name to crawl sitemaps for (e.g., 'example.com'). The domain will be
530
+ # automatically normalized and validated.
531
+ domain:,
532
+ request_options: {}
533
+ )
534
+ end
535
+
465
536
  # @api private
466
537
  sig { params(client: BrandDev::Client).returns(T.attached_class) }
467
538
  def self.new(client:)
@@ -45,6 +45,7 @@ module BrandDev
45
45
  {
46
46
  description: String,
47
47
  features: ::Array[String],
48
+ images: ::Array[String],
48
49
  name: String,
49
50
  tags: ::Array[String],
50
51
  target_audience: ::Array[String],
@@ -62,6 +63,8 @@ module BrandDev
62
63
 
63
64
  attr_accessor features: ::Array[String]
64
65
 
66
+ attr_accessor images: ::Array[String]
67
+
65
68
  attr_accessor name: String
66
69
 
67
70
  attr_accessor tags: ::Array[String]
@@ -85,6 +88,7 @@ module BrandDev
85
88
  def initialize: (
86
89
  description: String,
87
90
  features: ::Array[String],
91
+ images: ::Array[String],
88
92
  name: String,
89
93
  tags: ::Array[String],
90
94
  target_audience: ::Array[String],
@@ -100,6 +104,7 @@ module BrandDev
100
104
  def to_hash: -> {
101
105
  description: String,
102
106
  features: ::Array[String],
107
+ images: ::Array[String],
103
108
  name: String,
104
109
  tags: ::Array[String],
105
110
  target_audience: ::Array[String],
@@ -22,6 +22,7 @@ module BrandDev
22
22
  {
23
23
  description: String,
24
24
  features: ::Array[String],
25
+ images: ::Array[String],
25
26
  name: String,
26
27
  tags: ::Array[String],
27
28
  target_audience: ::Array[String],
@@ -39,6 +40,8 @@ module BrandDev
39
40
 
40
41
  attr_accessor features: ::Array[String]
41
42
 
43
+ attr_accessor images: ::Array[String]
44
+
42
45
  attr_accessor name: String
43
46
 
44
47
  attr_accessor tags: ::Array[String]
@@ -62,6 +65,7 @@ module BrandDev
62
65
  def initialize: (
63
66
  description: String,
64
67
  features: ::Array[String],
68
+ images: ::Array[String],
65
69
  name: String,
66
70
  tags: ::Array[String],
67
71
  target_audience: ::Array[String],
@@ -77,6 +81,7 @@ module BrandDev
77
81
  def to_hash: -> {
78
82
  description: String,
79
83
  features: ::Array[String],
84
+ images: ::Array[String],
80
85
  name: String,
81
86
  tags: ::Array[String],
82
87
  target_audience: ::Array[String],
@@ -0,0 +1,20 @@
1
+ module BrandDev
2
+ module Models
3
+ type brand_web_scrape_html_params =
4
+ { url: String } & BrandDev::Internal::Type::request_parameters
5
+
6
+ class BrandWebScrapeHTMLParams < BrandDev::Internal::Type::BaseModel
7
+ extend BrandDev::Internal::Type::RequestParameters::Converter
8
+ include BrandDev::Internal::Type::RequestParameters
9
+
10
+ attr_accessor url: String
11
+
12
+ def initialize: (
13
+ url: String,
14
+ ?request_options: BrandDev::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> { url: String, request_options: BrandDev::RequestOptions }
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,40 @@
1
+ module BrandDev
2
+ module Models
3
+ type brand_web_scrape_html_response =
4
+ {
5
+ html: String,
6
+ success: BrandDev::Models::BrandWebScrapeHTMLResponse::success,
7
+ url: String
8
+ }
9
+
10
+ class BrandWebScrapeHTMLResponse < BrandDev::Internal::Type::BaseModel
11
+ attr_accessor html: String
12
+
13
+ attr_accessor success: BrandDev::Models::BrandWebScrapeHTMLResponse::success
14
+
15
+ attr_accessor url: String
16
+
17
+ def initialize: (
18
+ html: String,
19
+ success: BrandDev::Models::BrandWebScrapeHTMLResponse::success,
20
+ url: String
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ html: String,
25
+ success: BrandDev::Models::BrandWebScrapeHTMLResponse::success,
26
+ url: String
27
+ }
28
+
29
+ type success = true
30
+
31
+ module Success
32
+ extend BrandDev::Internal::Type::Enum
33
+
34
+ TRUE: true
35
+
36
+ def self?.values: -> ::Array[BrandDev::Models::BrandWebScrapeHTMLResponse::success]
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,20 @@
1
+ module BrandDev
2
+ module Models
3
+ type brand_web_scrape_images_params =
4
+ { url: String } & BrandDev::Internal::Type::request_parameters
5
+
6
+ class BrandWebScrapeImagesParams < BrandDev::Internal::Type::BaseModel
7
+ extend BrandDev::Internal::Type::RequestParameters::Converter
8
+ include BrandDev::Internal::Type::RequestParameters
9
+
10
+ attr_accessor url: String
11
+
12
+ def initialize: (
13
+ url: String,
14
+ ?request_options: BrandDev::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> { url: String, request_options: BrandDev::RequestOptions }
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,98 @@
1
+ module BrandDev
2
+ module Models
3
+ type brand_web_scrape_images_response =
4
+ {
5
+ images: ::Array[BrandDev::Models::BrandWebScrapeImagesResponse::Image],
6
+ success: BrandDev::Models::BrandWebScrapeImagesResponse::success,
7
+ url: String
8
+ }
9
+
10
+ class BrandWebScrapeImagesResponse < BrandDev::Internal::Type::BaseModel
11
+ attr_accessor images: ::Array[BrandDev::Models::BrandWebScrapeImagesResponse::Image]
12
+
13
+ attr_accessor success: BrandDev::Models::BrandWebScrapeImagesResponse::success
14
+
15
+ attr_accessor url: String
16
+
17
+ def initialize: (
18
+ images: ::Array[BrandDev::Models::BrandWebScrapeImagesResponse::Image],
19
+ success: BrandDev::Models::BrandWebScrapeImagesResponse::success,
20
+ url: String
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ images: ::Array[BrandDev::Models::BrandWebScrapeImagesResponse::Image],
25
+ success: BrandDev::Models::BrandWebScrapeImagesResponse::success,
26
+ url: String
27
+ }
28
+
29
+ type image =
30
+ {
31
+ alt: String?,
32
+ element: BrandDev::Models::BrandWebScrapeImagesResponse::Image::element,
33
+ src: String,
34
+ type: BrandDev::Models::BrandWebScrapeImagesResponse::Image::type_
35
+ }
36
+
37
+ class Image < BrandDev::Internal::Type::BaseModel
38
+ attr_accessor alt: String?
39
+
40
+ attr_accessor element: BrandDev::Models::BrandWebScrapeImagesResponse::Image::element
41
+
42
+ attr_accessor src: String
43
+
44
+ attr_accessor type: BrandDev::Models::BrandWebScrapeImagesResponse::Image::type_
45
+
46
+ def initialize: (
47
+ alt: String?,
48
+ element: BrandDev::Models::BrandWebScrapeImagesResponse::Image::element,
49
+ src: String,
50
+ type: BrandDev::Models::BrandWebScrapeImagesResponse::Image::type_
51
+ ) -> void
52
+
53
+ def to_hash: -> {
54
+ alt: String?,
55
+ element: BrandDev::Models::BrandWebScrapeImagesResponse::Image::element,
56
+ src: String,
57
+ type: BrandDev::Models::BrandWebScrapeImagesResponse::Image::type_
58
+ }
59
+
60
+ type element = :img | :svg | :link | :source | :video
61
+
62
+ module Element
63
+ extend BrandDev::Internal::Type::Enum
64
+
65
+ IMG: :img
66
+ SVG: :svg
67
+ LINK: :link
68
+ SOURCE: :source
69
+ VIDEO: :video
70
+
71
+ def self?.values: -> ::Array[BrandDev::Models::BrandWebScrapeImagesResponse::Image::element]
72
+ end
73
+
74
+ type type_ = :url | :html | :base64
75
+
76
+ module Type
77
+ extend BrandDev::Internal::Type::Enum
78
+
79
+ URL: :url
80
+ HTML: :html
81
+ BASE64: :base64
82
+
83
+ def self?.values: -> ::Array[BrandDev::Models::BrandWebScrapeImagesResponse::Image::type_]
84
+ end
85
+ end
86
+
87
+ type success = true
88
+
89
+ module Success
90
+ extend BrandDev::Internal::Type::Enum
91
+
92
+ TRUE: true
93
+
94
+ def self?.values: -> ::Array[BrandDev::Models::BrandWebScrapeImagesResponse::success]
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,36 @@
1
+ module BrandDev
2
+ module Models
3
+ type brand_web_scrape_md_params =
4
+ { url: String, include_images: bool, include_links: bool }
5
+ & BrandDev::Internal::Type::request_parameters
6
+
7
+ class BrandWebScrapeMdParams < BrandDev::Internal::Type::BaseModel
8
+ extend BrandDev::Internal::Type::RequestParameters::Converter
9
+ include BrandDev::Internal::Type::RequestParameters
10
+
11
+ attr_accessor url: String
12
+
13
+ attr_reader include_images: bool?
14
+
15
+ def include_images=: (bool) -> bool
16
+
17
+ attr_reader include_links: bool?
18
+
19
+ def include_links=: (bool) -> bool
20
+
21
+ def initialize: (
22
+ url: String,
23
+ ?include_images: bool,
24
+ ?include_links: bool,
25
+ ?request_options: BrandDev::request_opts
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ url: String,
30
+ include_images: bool,
31
+ include_links: bool,
32
+ request_options: BrandDev::RequestOptions
33
+ }
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,40 @@
1
+ module BrandDev
2
+ module Models
3
+ type brand_web_scrape_md_response =
4
+ {
5
+ markdown: String,
6
+ success: BrandDev::Models::BrandWebScrapeMdResponse::success,
7
+ url: String
8
+ }
9
+
10
+ class BrandWebScrapeMdResponse < BrandDev::Internal::Type::BaseModel
11
+ attr_accessor markdown: String
12
+
13
+ attr_accessor success: BrandDev::Models::BrandWebScrapeMdResponse::success
14
+
15
+ attr_accessor url: String
16
+
17
+ def initialize: (
18
+ markdown: String,
19
+ success: BrandDev::Models::BrandWebScrapeMdResponse::success,
20
+ url: String
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ markdown: String,
25
+ success: BrandDev::Models::BrandWebScrapeMdResponse::success,
26
+ url: String
27
+ }
28
+
29
+ type success = true
30
+
31
+ module Success
32
+ extend BrandDev::Internal::Type::Enum
33
+
34
+ TRUE: true
35
+
36
+ def self?.values: -> ::Array[BrandDev::Models::BrandWebScrapeMdResponse::success]
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,23 @@
1
+ module BrandDev
2
+ module Models
3
+ type brand_web_scrape_sitemap_params =
4
+ { domain: String } & BrandDev::Internal::Type::request_parameters
5
+
6
+ class BrandWebScrapeSitemapParams < BrandDev::Internal::Type::BaseModel
7
+ extend BrandDev::Internal::Type::RequestParameters::Converter
8
+ include BrandDev::Internal::Type::RequestParameters
9
+
10
+ attr_accessor domain: String
11
+
12
+ def initialize: (
13
+ domain: String,
14
+ ?request_options: BrandDev::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ domain: String,
19
+ request_options: BrandDev::RequestOptions
20
+ }
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,77 @@
1
+ module BrandDev
2
+ module Models
3
+ type brand_web_scrape_sitemap_response =
4
+ {
5
+ domain: String,
6
+ meta: BrandDev::Models::BrandWebScrapeSitemapResponse::Meta,
7
+ success: BrandDev::Models::BrandWebScrapeSitemapResponse::success,
8
+ urls: ::Array[String]
9
+ }
10
+
11
+ class BrandWebScrapeSitemapResponse < BrandDev::Internal::Type::BaseModel
12
+ attr_accessor domain: String
13
+
14
+ attr_accessor meta: BrandDev::Models::BrandWebScrapeSitemapResponse::Meta
15
+
16
+ attr_accessor success: BrandDev::Models::BrandWebScrapeSitemapResponse::success
17
+
18
+ attr_accessor urls: ::Array[String]
19
+
20
+ def initialize: (
21
+ domain: String,
22
+ meta: BrandDev::Models::BrandWebScrapeSitemapResponse::Meta,
23
+ success: BrandDev::Models::BrandWebScrapeSitemapResponse::success,
24
+ urls: ::Array[String]
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ domain: String,
29
+ meta: BrandDev::Models::BrandWebScrapeSitemapResponse::Meta,
30
+ success: BrandDev::Models::BrandWebScrapeSitemapResponse::success,
31
+ urls: ::Array[String]
32
+ }
33
+
34
+ type meta =
35
+ {
36
+ errors: Integer,
37
+ sitemaps_discovered: Integer,
38
+ sitemaps_fetched: Integer,
39
+ sitemaps_skipped: Integer
40
+ }
41
+
42
+ class Meta < BrandDev::Internal::Type::BaseModel
43
+ attr_accessor errors: Integer
44
+
45
+ attr_accessor sitemaps_discovered: Integer
46
+
47
+ attr_accessor sitemaps_fetched: Integer
48
+
49
+ attr_accessor sitemaps_skipped: Integer
50
+
51
+ def initialize: (
52
+ errors: Integer,
53
+ sitemaps_discovered: Integer,
54
+ sitemaps_fetched: Integer,
55
+ sitemaps_skipped: Integer
56
+ ) -> void
57
+
58
+ def to_hash: -> {
59
+ errors: Integer,
60
+ sitemaps_discovered: Integer,
61
+ sitemaps_fetched: Integer,
62
+ sitemaps_skipped: Integer
63
+ }
64
+ end
65
+
66
+ type success = true
67
+
68
+ module Success
69
+ extend BrandDev::Internal::Type::Enum
70
+
71
+ TRUE: true
72
+
73
+ def self?.values: -> ::Array[BrandDev::Models::BrandWebScrapeSitemapResponse::success]
74
+ end
75
+ end
76
+ end
77
+ end
@@ -30,4 +30,12 @@ module BrandDev
30
30
  class BrandScreenshotParams = BrandDev::Models::BrandScreenshotParams
31
31
 
32
32
  class BrandStyleguideParams = BrandDev::Models::BrandStyleguideParams
33
+
34
+ class BrandWebScrapeHTMLParams = BrandDev::Models::BrandWebScrapeHTMLParams
35
+
36
+ class BrandWebScrapeImagesParams = BrandDev::Models::BrandWebScrapeImagesParams
37
+
38
+ class BrandWebScrapeMdParams = BrandDev::Models::BrandWebScrapeMdParams
39
+
40
+ class BrandWebScrapeSitemapParams = BrandDev::Models::BrandWebScrapeSitemapParams
33
41
  end