brand.dev 0.25.0 → 0.27.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 (39) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/brand_dev/models/brand_styleguide_params.rb +12 -3
  5. data/lib/brand_dev/models/brand_web_scrape_html_params.rb +22 -0
  6. data/lib/brand_dev/models/brand_web_scrape_html_response.rb +45 -0
  7. data/lib/brand_dev/models/brand_web_scrape_images_params.rb +22 -0
  8. data/lib/brand_dev/models/brand_web_scrape_images_response.rb +111 -0
  9. data/lib/brand_dev/models/brand_web_scrape_md_params.rb +42 -0
  10. data/lib/brand_dev/models/brand_web_scrape_md_response.rb +45 -0
  11. data/lib/brand_dev/models/brand_web_scrape_sitemap_params.rb +26 -0
  12. data/lib/brand_dev/models/brand_web_scrape_sitemap_response.rb +91 -0
  13. data/lib/brand_dev/models.rb +8 -0
  14. data/lib/brand_dev/resources/brand.rb +112 -3
  15. data/lib/brand_dev/version.rb +1 -1
  16. data/lib/brand_dev.rb +8 -0
  17. data/rbi/brand_dev/models/brand_styleguide_params.rbi +19 -3
  18. data/rbi/brand_dev/models/brand_web_scrape_html_params.rbi +40 -0
  19. data/rbi/brand_dev/models/brand_web_scrape_html_response.rbi +92 -0
  20. data/rbi/brand_dev/models/brand_web_scrape_images_params.rbi +43 -0
  21. data/rbi/brand_dev/models/brand_web_scrape_images_response.rbi +259 -0
  22. data/rbi/brand_dev/models/brand_web_scrape_md_params.rbi +67 -0
  23. data/rbi/brand_dev/models/brand_web_scrape_md_response.rbi +92 -0
  24. data/rbi/brand_dev/models/brand_web_scrape_sitemap_params.rbi +45 -0
  25. data/rbi/brand_dev/models/brand_web_scrape_sitemap_response.rbi +167 -0
  26. data/rbi/brand_dev/models.rbi +8 -0
  27. data/rbi/brand_dev/resources/brand.rbi +78 -1
  28. data/sig/brand_dev/models/brand_styleguide_params.rbs +11 -2
  29. data/sig/brand_dev/models/brand_web_scrape_html_params.rbs +20 -0
  30. data/sig/brand_dev/models/brand_web_scrape_html_response.rbs +40 -0
  31. data/sig/brand_dev/models/brand_web_scrape_images_params.rbs +20 -0
  32. data/sig/brand_dev/models/brand_web_scrape_images_response.rbs +98 -0
  33. data/sig/brand_dev/models/brand_web_scrape_md_params.rbs +36 -0
  34. data/sig/brand_dev/models/brand_web_scrape_md_response.rbs +40 -0
  35. data/sig/brand_dev/models/brand_web_scrape_sitemap_params.rbs +23 -0
  36. data/sig/brand_dev/models/brand_web_scrape_sitemap_response.rbs +77 -0
  37. data/sig/brand_dev/models.rbs +8 -0
  38. data/sig/brand_dev/resources/brand.rbs +24 -1
  39. 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
@@ -437,8 +437,11 @@ module BrandDev
437
437
 
438
438
  # Automatically extract comprehensive design system information from a brand's
439
439
  # website including colors, typography, spacing, shadows, and UI components.
440
+ # Either 'domain' or 'directUrl' must be provided as a query parameter, but not
441
+ # both.
440
442
  sig do
441
443
  params(
444
+ direct_url: String,
442
445
  domain: String,
443
446
  prioritize: BrandDev::BrandStyleguideParams::Prioritize::OrSymbol,
444
447
  timeout_ms: Integer,
@@ -446,9 +449,12 @@ module BrandDev
446
449
  ).returns(BrandDev::Models::BrandStyleguideResponse)
447
450
  end
448
451
  def styleguide(
452
+ # A specific URL to fetch the styleguide from directly, bypassing domain
453
+ # resolution (e.g., 'https://example.com/design-system').
454
+ direct_url: nil,
449
455
  # Domain name to extract styleguide from (e.g., 'example.com', 'google.com'). The
450
456
  # domain will be automatically normalized and validated.
451
- domain:,
457
+ domain: nil,
452
458
  # Optional parameter to prioritize screenshot capture for styleguide extraction.
453
459
  # If 'speed', optimizes for faster capture with basic quality. If 'quality',
454
460
  # optimizes for higher quality with longer wait times. Defaults to 'quality' if
@@ -462,6 +468,77 @@ module BrandDev
462
468
  )
463
469
  end
464
470
 
471
+ # Scrapes the given URL and returns the raw HTML content of the page. Uses
472
+ # automatic proxy escalation to handle blocked sites.
473
+ sig do
474
+ params(
475
+ url: String,
476
+ request_options: BrandDev::RequestOptions::OrHash
477
+ ).returns(BrandDev::Models::BrandWebScrapeHTMLResponse)
478
+ end
479
+ def web_scrape_html(
480
+ # Full URL to scrape (must include http:// or https:// protocol)
481
+ url:,
482
+ request_options: {}
483
+ )
484
+ end
485
+
486
+ # Scrapes all images from the given URL. Extracts images from img, svg,
487
+ # picture/source, link, and video elements including inline SVGs, base64 data
488
+ # URIs, and standard URLs.
489
+ sig do
490
+ params(
491
+ url: String,
492
+ request_options: BrandDev::RequestOptions::OrHash
493
+ ).returns(BrandDev::Models::BrandWebScrapeImagesResponse)
494
+ end
495
+ def web_scrape_images(
496
+ # Full URL to scrape images from (must include http:// or https:// protocol)
497
+ url:,
498
+ request_options: {}
499
+ )
500
+ end
501
+
502
+ # Scrapes the given URL, converts the HTML content to GitHub Flavored Markdown
503
+ # (GFM), and returns the result. Uses automatic proxy escalation to handle blocked
504
+ # sites.
505
+ sig do
506
+ params(
507
+ url: String,
508
+ include_images: T::Boolean,
509
+ include_links: T::Boolean,
510
+ request_options: BrandDev::RequestOptions::OrHash
511
+ ).returns(BrandDev::Models::BrandWebScrapeMdResponse)
512
+ end
513
+ def web_scrape_md(
514
+ # Full URL to scrape and convert to markdown (must include http:// or https://
515
+ # protocol)
516
+ url:,
517
+ # Include image references in Markdown output
518
+ include_images: nil,
519
+ # Preserve hyperlinks in Markdown output
520
+ include_links: nil,
521
+ request_options: {}
522
+ )
523
+ end
524
+
525
+ # Crawls the sitemap of the given domain and returns all discovered page URLs.
526
+ # Supports sitemap index files (recursive), parallel fetching with concurrency
527
+ # control, deduplication, and filters out non-page resources (images, PDFs, etc.).
528
+ sig do
529
+ params(
530
+ domain: String,
531
+ request_options: BrandDev::RequestOptions::OrHash
532
+ ).returns(BrandDev::Models::BrandWebScrapeSitemapResponse)
533
+ end
534
+ def web_scrape_sitemap(
535
+ # Domain name to crawl sitemaps for (e.g., 'example.com'). The domain will be
536
+ # automatically normalized and validated.
537
+ domain:,
538
+ request_options: {}
539
+ )
540
+ end
541
+
465
542
  # @api private
466
543
  sig { params(client: BrandDev::Client).returns(T.attached_class) }
467
544
  def self.new(client:)
@@ -2,6 +2,7 @@ module BrandDev
2
2
  module Models
3
3
  type brand_styleguide_params =
4
4
  {
5
+ direct_url: String,
5
6
  domain: String,
6
7
  prioritize: BrandDev::Models::BrandStyleguideParams::prioritize,
7
8
  timeout_ms: Integer
@@ -12,7 +13,13 @@ module BrandDev
12
13
  extend BrandDev::Internal::Type::RequestParameters::Converter
13
14
  include BrandDev::Internal::Type::RequestParameters
14
15
 
15
- attr_accessor domain: String
16
+ attr_reader direct_url: String?
17
+
18
+ def direct_url=: (String) -> String
19
+
20
+ attr_reader domain: String?
21
+
22
+ def domain=: (String) -> String
16
23
 
17
24
  attr_reader prioritize: BrandDev::Models::BrandStyleguideParams::prioritize?
18
25
 
@@ -25,13 +32,15 @@ module BrandDev
25
32
  def timeout_ms=: (Integer) -> Integer
26
33
 
27
34
  def initialize: (
28
- domain: String,
35
+ ?direct_url: String,
36
+ ?domain: String,
29
37
  ?prioritize: BrandDev::Models::BrandStyleguideParams::prioritize,
30
38
  ?timeout_ms: Integer,
31
39
  ?request_options: BrandDev::request_opts
32
40
  ) -> void
33
41
 
34
42
  def to_hash: -> {
43
+ direct_url: String,
35
44
  domain: String,
36
45
  prioritize: BrandDev::Models::BrandStyleguideParams::prioritize,
37
46
  timeout_ms: Integer,
@@ -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