context.dev 1.30.0 → 1.32.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 (91) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/README.md +1 -1
  4. data/lib/context_dev/models/ai_ai_query_response.rb +36 -1
  5. data/lib/context_dev/models/ai_extract_product_response.rb +36 -1
  6. data/lib/context_dev/models/ai_extract_products_response.rb +36 -1
  7. data/lib/context_dev/models/brand_identify_from_transaction_response.rb +36 -1
  8. data/lib/context_dev/models/brand_retrieve_by_email_response.rb +36 -1
  9. data/lib/context_dev/models/brand_retrieve_by_isin_response.rb +36 -1
  10. data/lib/context_dev/models/brand_retrieve_by_name_response.rb +36 -1
  11. data/lib/context_dev/models/brand_retrieve_by_ticker_response.rb +36 -1
  12. data/lib/context_dev/models/brand_retrieve_response.rb +36 -1
  13. data/lib/context_dev/models/brand_retrieve_simplified_response.rb +36 -1
  14. data/lib/context_dev/models/industry_retrieve_naics_response.rb +36 -1
  15. data/lib/context_dev/models/industry_retrieve_sic_response.rb +33 -1
  16. data/lib/context_dev/models/utility_prefetch_by_email_response.rb +36 -1
  17. data/lib/context_dev/models/utility_prefetch_response.rb +36 -1
  18. data/lib/context_dev/models/web_extract_competitors_response.rb +36 -1
  19. data/lib/context_dev/models/web_extract_fonts_response.rb +33 -1
  20. data/lib/context_dev/models/web_extract_params.rb +21 -3
  21. data/lib/context_dev/models/web_extract_response.rb +36 -1
  22. data/lib/context_dev/models/web_extract_styleguide_response.rb +36 -1
  23. data/lib/context_dev/models/web_screenshot_response.rb +36 -1
  24. data/lib/context_dev/models/web_search_response.rb +36 -1
  25. data/lib/context_dev/models/web_web_crawl_md_params.rb +2 -2
  26. data/lib/context_dev/models/web_web_crawl_md_response.rb +37 -1
  27. data/lib/context_dev/models/web_web_scrape_html_params.rb +10 -1
  28. data/lib/context_dev/models/web_web_scrape_html_response.rb +33 -1
  29. data/lib/context_dev/models/web_web_scrape_images_response.rb +36 -1
  30. data/lib/context_dev/models/web_web_scrape_md_response.rb +36 -1
  31. data/lib/context_dev/models/web_web_scrape_sitemap_response.rb +36 -1
  32. data/lib/context_dev/resources/web.rb +10 -3
  33. data/lib/context_dev/version.rb +1 -1
  34. data/rbi/context_dev/models/ai_ai_query_response.rbi +62 -0
  35. data/rbi/context_dev/models/ai_extract_product_response.rbi +65 -0
  36. data/rbi/context_dev/models/ai_extract_products_response.rbi +65 -0
  37. data/rbi/context_dev/models/brand_identify_from_transaction_response.rbi +67 -0
  38. data/rbi/context_dev/models/brand_retrieve_by_email_response.rbi +67 -0
  39. data/rbi/context_dev/models/brand_retrieve_by_isin_response.rbi +67 -0
  40. data/rbi/context_dev/models/brand_retrieve_by_name_response.rbi +67 -0
  41. data/rbi/context_dev/models/brand_retrieve_by_ticker_response.rbi +67 -0
  42. data/rbi/context_dev/models/brand_retrieve_response.rbi +65 -0
  43. data/rbi/context_dev/models/brand_retrieve_simplified_response.rbi +67 -0
  44. data/rbi/context_dev/models/industry_retrieve_naics_response.rbi +67 -0
  45. data/rbi/context_dev/models/industry_retrieve_sic_response.rbi +67 -0
  46. data/rbi/context_dev/models/utility_prefetch_by_email_response.rbi +79 -4
  47. data/rbi/context_dev/models/utility_prefetch_response.rbi +77 -4
  48. data/rbi/context_dev/models/web_extract_competitors_response.rbi +70 -3
  49. data/rbi/context_dev/models/web_extract_fonts_response.rbi +68 -3
  50. data/rbi/context_dev/models/web_extract_params.rbi +28 -2
  51. data/rbi/context_dev/models/web_extract_response.rbi +65 -3
  52. data/rbi/context_dev/models/web_extract_styleguide_response.rbi +67 -0
  53. data/rbi/context_dev/models/web_screenshot_response.rbi +65 -0
  54. data/rbi/context_dev/models/web_search_response.rbi +65 -3
  55. data/rbi/context_dev/models/web_web_crawl_md_params.rbi +4 -4
  56. data/rbi/context_dev/models/web_web_crawl_md_response.rbi +71 -3
  57. data/rbi/context_dev/models/web_web_scrape_html_params.rbi +13 -0
  58. data/rbi/context_dev/models/web_web_scrape_html_response.rbi +68 -3
  59. data/rbi/context_dev/models/web_web_scrape_images_response.rbi +68 -3
  60. data/rbi/context_dev/models/web_web_scrape_md_response.rbi +68 -3
  61. data/rbi/context_dev/models/web_web_scrape_sitemap_response.rbi +70 -3
  62. data/rbi/context_dev/resources/web.rbi +15 -3
  63. data/sig/context_dev/models/ai_ai_query_response.rbs +28 -0
  64. data/sig/context_dev/models/ai_extract_product_response.rbs +28 -0
  65. data/sig/context_dev/models/ai_extract_products_response.rbs +28 -0
  66. data/sig/context_dev/models/brand_identify_from_transaction_response.rbs +28 -0
  67. data/sig/context_dev/models/brand_retrieve_by_email_response.rbs +28 -0
  68. data/sig/context_dev/models/brand_retrieve_by_isin_response.rbs +28 -0
  69. data/sig/context_dev/models/brand_retrieve_by_name_response.rbs +28 -0
  70. data/sig/context_dev/models/brand_retrieve_by_ticker_response.rbs +28 -0
  71. data/sig/context_dev/models/brand_retrieve_response.rbs +28 -0
  72. data/sig/context_dev/models/brand_retrieve_simplified_response.rbs +28 -0
  73. data/sig/context_dev/models/industry_retrieve_naics_response.rbs +28 -0
  74. data/sig/context_dev/models/industry_retrieve_sic_response.rbs +28 -0
  75. data/sig/context_dev/models/utility_prefetch_by_email_response.rbs +38 -2
  76. data/sig/context_dev/models/utility_prefetch_response.rbs +38 -2
  77. data/sig/context_dev/models/web_extract_competitors_response.rbs +31 -3
  78. data/sig/context_dev/models/web_extract_fonts_response.rbs +31 -3
  79. data/sig/context_dev/models/web_extract_params.rbs +14 -0
  80. data/sig/context_dev/models/web_extract_response.rbs +31 -3
  81. data/sig/context_dev/models/web_extract_styleguide_response.rbs +28 -0
  82. data/sig/context_dev/models/web_screenshot_response.rbs +28 -0
  83. data/sig/context_dev/models/web_search_response.rbs +31 -3
  84. data/sig/context_dev/models/web_web_crawl_md_response.rbs +31 -3
  85. data/sig/context_dev/models/web_web_scrape_html_params.rbs +7 -0
  86. data/sig/context_dev/models/web_web_scrape_html_response.rbs +31 -3
  87. data/sig/context_dev/models/web_web_scrape_images_response.rbs +31 -3
  88. data/sig/context_dev/models/web_web_scrape_md_response.rbs +31 -3
  89. data/sig/context_dev/models/web_web_scrape_sitemap_response.rbs +31 -3
  90. data/sig/context_dev/resources/web.rbs +3 -0
  91. metadata +2 -2
@@ -37,13 +37,30 @@ module ContextDev
37
37
  sig { returns(T::Array[String]) }
38
38
  attr_accessor :urls_analyzed
39
39
 
40
+ # Metadata about the API key used for the request. Included in every response
41
+ # whenever a valid API key is provided, even when the response status is not 200.
42
+ sig do
43
+ returns(T.nilable(ContextDev::Models::WebExtractResponse::KeyMetadata))
44
+ end
45
+ attr_reader :key_metadata
46
+
47
+ sig do
48
+ params(
49
+ key_metadata:
50
+ ContextDev::Models::WebExtractResponse::KeyMetadata::OrHash
51
+ ).void
52
+ end
53
+ attr_writer :key_metadata
54
+
40
55
  sig do
41
56
  params(
42
57
  data: T::Hash[Symbol, T.anything],
43
58
  metadata: ContextDev::Models::WebExtractResponse::Metadata::OrHash,
44
59
  status: String,
45
60
  url: String,
46
- urls_analyzed: T::Array[String]
61
+ urls_analyzed: T::Array[String],
62
+ key_metadata:
63
+ ContextDev::Models::WebExtractResponse::KeyMetadata::OrHash
47
64
  ).returns(T.attached_class)
48
65
  end
49
66
  def self.new(
@@ -55,7 +72,10 @@ module ContextDev
55
72
  # The starting URL that was analyzed
56
73
  url:,
57
74
  # List of URLs whose Markdown was used for extraction
58
- urls_analyzed:
75
+ urls_analyzed:,
76
+ # Metadata about the API key used for the request. Included in every response
77
+ # whenever a valid API key is provided, even when the response status is not 200.
78
+ key_metadata: nil
59
79
  )
60
80
  end
61
81
 
@@ -66,7 +86,8 @@ module ContextDev
66
86
  metadata: ContextDev::Models::WebExtractResponse::Metadata,
67
87
  status: String,
68
88
  url: String,
69
- urls_analyzed: T::Array[String]
89
+ urls_analyzed: T::Array[String],
90
+ key_metadata: ContextDev::Models::WebExtractResponse::KeyMetadata
70
91
  }
71
92
  )
72
93
  end
@@ -129,6 +150,47 @@ module ContextDev
129
150
  def to_hash
130
151
  end
131
152
  end
153
+
154
+ class KeyMetadata < ContextDev::Internal::Type::BaseModel
155
+ OrHash =
156
+ T.type_alias do
157
+ T.any(
158
+ ContextDev::Models::WebExtractResponse::KeyMetadata,
159
+ ContextDev::Internal::AnyHash
160
+ )
161
+ end
162
+
163
+ # The number of credits consumed by this request.
164
+ sig { returns(Integer) }
165
+ attr_accessor :credits_consumed
166
+
167
+ # The number of credits remaining for your organization after this request.
168
+ sig { returns(Integer) }
169
+ attr_accessor :credits_remaining
170
+
171
+ # Metadata about the API key used for the request. Included in every response
172
+ # whenever a valid API key is provided, even when the response status is not 200.
173
+ sig do
174
+ params(credits_consumed: Integer, credits_remaining: Integer).returns(
175
+ T.attached_class
176
+ )
177
+ end
178
+ def self.new(
179
+ # The number of credits consumed by this request.
180
+ credits_consumed:,
181
+ # The number of credits remaining for your organization after this request.
182
+ credits_remaining:
183
+ )
184
+ end
185
+
186
+ sig do
187
+ override.returns(
188
+ { credits_consumed: Integer, credits_remaining: Integer }
189
+ )
190
+ end
191
+ def to_hash
192
+ end
193
+ end
132
194
  end
133
195
  end
134
196
  end
@@ -25,6 +25,25 @@ module ContextDev
25
25
  sig { params(domain: String).void }
26
26
  attr_writer :domain
27
27
 
28
+ # Metadata about the API key used for the request. Included in every response
29
+ # whenever a valid API key is provided, even when the response status is not 200.
30
+ sig do
31
+ returns(
32
+ T.nilable(
33
+ ContextDev::Models::WebExtractStyleguideResponse::KeyMetadata
34
+ )
35
+ )
36
+ end
37
+ attr_reader :key_metadata
38
+
39
+ sig do
40
+ params(
41
+ key_metadata:
42
+ ContextDev::Models::WebExtractStyleguideResponse::KeyMetadata::OrHash
43
+ ).void
44
+ end
45
+ attr_writer :key_metadata
46
+
28
47
  # Status of the response, e.g., 'ok'
29
48
  sig { returns(T.nilable(String)) }
30
49
  attr_reader :status
@@ -54,6 +73,8 @@ module ContextDev
54
73
  params(
55
74
  code: Integer,
56
75
  domain: String,
76
+ key_metadata:
77
+ ContextDev::Models::WebExtractStyleguideResponse::KeyMetadata::OrHash,
57
78
  status: String,
58
79
  styleguide:
59
80
  ContextDev::Models::WebExtractStyleguideResponse::Styleguide::OrHash
@@ -64,6 +85,9 @@ module ContextDev
64
85
  code: nil,
65
86
  # The normalized domain that was processed
66
87
  domain: nil,
88
+ # Metadata about the API key used for the request. Included in every response
89
+ # whenever a valid API key is provided, even when the response status is not 200.
90
+ key_metadata: nil,
67
91
  # Status of the response, e.g., 'ok'
68
92
  status: nil,
69
93
  # Comprehensive styleguide data extracted from the website
@@ -76,6 +100,8 @@ module ContextDev
76
100
  {
77
101
  code: Integer,
78
102
  domain: String,
103
+ key_metadata:
104
+ ContextDev::Models::WebExtractStyleguideResponse::KeyMetadata,
79
105
  status: String,
80
106
  styleguide:
81
107
  ContextDev::Models::WebExtractStyleguideResponse::Styleguide
@@ -85,6 +111,47 @@ module ContextDev
85
111
  def to_hash
86
112
  end
87
113
 
114
+ class KeyMetadata < ContextDev::Internal::Type::BaseModel
115
+ OrHash =
116
+ T.type_alias do
117
+ T.any(
118
+ ContextDev::Models::WebExtractStyleguideResponse::KeyMetadata,
119
+ ContextDev::Internal::AnyHash
120
+ )
121
+ end
122
+
123
+ # The number of credits consumed by this request.
124
+ sig { returns(Integer) }
125
+ attr_accessor :credits_consumed
126
+
127
+ # The number of credits remaining for your organization after this request.
128
+ sig { returns(Integer) }
129
+ attr_accessor :credits_remaining
130
+
131
+ # Metadata about the API key used for the request. Included in every response
132
+ # whenever a valid API key is provided, even when the response status is not 200.
133
+ sig do
134
+ params(credits_consumed: Integer, credits_remaining: Integer).returns(
135
+ T.attached_class
136
+ )
137
+ end
138
+ def self.new(
139
+ # The number of credits consumed by this request.
140
+ credits_consumed:,
141
+ # The number of credits remaining for your organization after this request.
142
+ credits_remaining:
143
+ )
144
+ end
145
+
146
+ sig do
147
+ override.returns(
148
+ { credits_consumed: Integer, credits_remaining: Integer }
149
+ )
150
+ end
151
+ def to_hash
152
+ end
153
+ end
154
+
88
155
  class Styleguide < ContextDev::Internal::Type::BaseModel
89
156
  OrHash =
90
157
  T.type_alias do
@@ -32,6 +32,23 @@ module ContextDev
32
32
  sig { params(height: Integer).void }
33
33
  attr_writer :height
34
34
 
35
+ # Metadata about the API key used for the request. Included in every response
36
+ # whenever a valid API key is provided, even when the response status is not 200.
37
+ sig do
38
+ returns(
39
+ T.nilable(ContextDev::Models::WebScreenshotResponse::KeyMetadata)
40
+ )
41
+ end
42
+ attr_reader :key_metadata
43
+
44
+ sig do
45
+ params(
46
+ key_metadata:
47
+ ContextDev::Models::WebScreenshotResponse::KeyMetadata::OrHash
48
+ ).void
49
+ end
50
+ attr_writer :key_metadata
51
+
35
52
  # Public URL of the uploaded screenshot image
36
53
  sig { returns(T.nilable(String)) }
37
54
  attr_reader :screenshot
@@ -76,6 +93,8 @@ module ContextDev
76
93
  code: Integer,
77
94
  domain: String,
78
95
  height: Integer,
96
+ key_metadata:
97
+ ContextDev::Models::WebScreenshotResponse::KeyMetadata::OrHash,
79
98
  screenshot: String,
80
99
  screenshot_type:
81
100
  ContextDev::Models::WebScreenshotResponse::ScreenshotType::OrSymbol,
@@ -90,6 +109,9 @@ module ContextDev
90
109
  domain: nil,
91
110
  # Height in pixels of the returned screenshot image
92
111
  height: nil,
112
+ # Metadata about the API key used for the request. Included in every response
113
+ # whenever a valid API key is provided, even when the response status is not 200.
114
+ key_metadata: nil,
93
115
  # Public URL of the uploaded screenshot image
94
116
  screenshot: nil,
95
117
  # Type of screenshot that was captured
@@ -107,6 +129,8 @@ module ContextDev
107
129
  code: Integer,
108
130
  domain: String,
109
131
  height: Integer,
132
+ key_metadata:
133
+ ContextDev::Models::WebScreenshotResponse::KeyMetadata,
110
134
  screenshot: String,
111
135
  screenshot_type:
112
136
  ContextDev::Models::WebScreenshotResponse::ScreenshotType::TaggedSymbol,
@@ -118,6 +142,47 @@ module ContextDev
118
142
  def to_hash
119
143
  end
120
144
 
145
+ class KeyMetadata < ContextDev::Internal::Type::BaseModel
146
+ OrHash =
147
+ T.type_alias do
148
+ T.any(
149
+ ContextDev::Models::WebScreenshotResponse::KeyMetadata,
150
+ ContextDev::Internal::AnyHash
151
+ )
152
+ end
153
+
154
+ # The number of credits consumed by this request.
155
+ sig { returns(Integer) }
156
+ attr_accessor :credits_consumed
157
+
158
+ # The number of credits remaining for your organization after this request.
159
+ sig { returns(Integer) }
160
+ attr_accessor :credits_remaining
161
+
162
+ # Metadata about the API key used for the request. Included in every response
163
+ # whenever a valid API key is provided, even when the response status is not 200.
164
+ sig do
165
+ params(credits_consumed: Integer, credits_remaining: Integer).returns(
166
+ T.attached_class
167
+ )
168
+ end
169
+ def self.new(
170
+ # The number of credits consumed by this request.
171
+ credits_consumed:,
172
+ # The number of credits remaining for your organization after this request.
173
+ credits_remaining:
174
+ )
175
+ end
176
+
177
+ sig do
178
+ override.returns(
179
+ { credits_consumed: Integer, credits_remaining: Integer }
180
+ )
181
+ end
182
+ def to_hash
183
+ end
184
+ end
185
+
121
186
  # Type of screenshot that was captured
122
187
  module ScreenshotType
123
188
  extend ContextDev::Internal::Type::Enum
@@ -18,17 +18,37 @@ module ContextDev
18
18
  sig { returns(T::Array[ContextDev::Models::WebSearchResponse::Result]) }
19
19
  attr_accessor :results
20
20
 
21
+ # Metadata about the API key used for the request. Included in every response
22
+ # whenever a valid API key is provided, even when the response status is not 200.
23
+ sig do
24
+ returns(T.nilable(ContextDev::Models::WebSearchResponse::KeyMetadata))
25
+ end
26
+ attr_reader :key_metadata
27
+
28
+ sig do
29
+ params(
30
+ key_metadata:
31
+ ContextDev::Models::WebSearchResponse::KeyMetadata::OrHash
32
+ ).void
33
+ end
34
+ attr_writer :key_metadata
35
+
21
36
  sig do
22
37
  params(
23
38
  query: String,
24
39
  results:
25
- T::Array[ContextDev::Models::WebSearchResponse::Result::OrHash]
40
+ T::Array[ContextDev::Models::WebSearchResponse::Result::OrHash],
41
+ key_metadata:
42
+ ContextDev::Models::WebSearchResponse::KeyMetadata::OrHash
26
43
  ).returns(T.attached_class)
27
44
  end
28
45
  def self.new(
29
46
  # Echo of the original query (useful when fanout was enabled).
30
47
  query:,
31
- results:
48
+ results:,
49
+ # Metadata about the API key used for the request. Included in every response
50
+ # whenever a valid API key is provided, even when the response status is not 200.
51
+ key_metadata: nil
32
52
  )
33
53
  end
34
54
 
@@ -36,7 +56,8 @@ module ContextDev
36
56
  override.returns(
37
57
  {
38
58
  query: String,
39
- results: T::Array[ContextDev::Models::WebSearchResponse::Result]
59
+ results: T::Array[ContextDev::Models::WebSearchResponse::Result],
60
+ key_metadata: ContextDev::Models::WebSearchResponse::KeyMetadata
40
61
  }
41
62
  )
42
63
  end
@@ -266,6 +287,47 @@ module ContextDev
266
287
  end
267
288
  end
268
289
  end
290
+
291
+ class KeyMetadata < ContextDev::Internal::Type::BaseModel
292
+ OrHash =
293
+ T.type_alias do
294
+ T.any(
295
+ ContextDev::Models::WebSearchResponse::KeyMetadata,
296
+ ContextDev::Internal::AnyHash
297
+ )
298
+ end
299
+
300
+ # The number of credits consumed by this request.
301
+ sig { returns(Integer) }
302
+ attr_accessor :credits_consumed
303
+
304
+ # The number of credits remaining for your organization after this request.
305
+ sig { returns(Integer) }
306
+ attr_accessor :credits_remaining
307
+
308
+ # Metadata about the API key used for the request. Included in every response
309
+ # whenever a valid API key is provided, even when the response status is not 200.
310
+ sig do
311
+ params(credits_consumed: Integer, credits_remaining: Integer).returns(
312
+ T.attached_class
313
+ )
314
+ end
315
+ def self.new(
316
+ # The number of credits consumed by this request.
317
+ credits_consumed:,
318
+ # The number of credits remaining for your organization after this request.
319
+ credits_remaining:
320
+ )
321
+ end
322
+
323
+ sig do
324
+ override.returns(
325
+ { credits_consumed: Integer, credits_remaining: Integer }
326
+ )
327
+ end
328
+ def to_hash
329
+ end
330
+ end
269
331
  end
270
332
  end
271
333
  end
@@ -105,8 +105,8 @@ module ContextDev
105
105
 
106
106
  # Soft time budget for the crawl in milliseconds. After each scrape, the crawler
107
107
  # checks the elapsed time and, if exceeded, returns the pages collected so far
108
- # instead of continuing. Min: 10000 (10s). Max: 240000 (4 min). Default: 120000 (2
109
- # min).
108
+ # instead of continuing. Min: 10000 (10s). Max: 110000 (110s). Default: 80000
109
+ # (80s).
110
110
  sig { returns(T.nilable(Integer)) }
111
111
  attr_reader :stop_after_ms
112
112
 
@@ -205,8 +205,8 @@ module ContextDev
205
205
  shorten_base64_images: nil,
206
206
  # Soft time budget for the crawl in milliseconds. After each scrape, the crawler
207
207
  # checks the elapsed time and, if exceeded, returns the pages collected so far
208
- # instead of continuing. Min: 10000 (10s). Max: 240000 (4 min). Default: 120000 (2
209
- # min).
208
+ # instead of continuing. Min: 10000 (10s). Max: 110000 (110s). Default: 80000
209
+ # (80s).
210
210
  stop_after_ms: nil,
211
211
  # Optional timeout in milliseconds for the request. If the request takes longer
212
212
  # than this value, it will be aborted with a 408 status code. Maximum allowed
@@ -26,21 +26,48 @@ module ContextDev
26
26
  end
27
27
  attr_accessor :results
28
28
 
29
+ # Metadata about the API key used for the request. Included in every response
30
+ # whenever a valid API key is provided, even when the response status is not 200.
31
+ sig do
32
+ returns(
33
+ T.nilable(ContextDev::Models::WebWebCrawlMdResponse::KeyMetadata)
34
+ )
35
+ end
36
+ attr_reader :key_metadata
37
+
38
+ sig do
39
+ params(
40
+ key_metadata:
41
+ ContextDev::Models::WebWebCrawlMdResponse::KeyMetadata::OrHash
42
+ ).void
43
+ end
44
+ attr_writer :key_metadata
45
+
29
46
  sig do
30
47
  params(
31
48
  metadata: ContextDev::Models::WebWebCrawlMdResponse::Metadata::OrHash,
32
49
  results:
33
- T::Array[ContextDev::Models::WebWebCrawlMdResponse::Result::OrHash]
50
+ T::Array[ContextDev::Models::WebWebCrawlMdResponse::Result::OrHash],
51
+ key_metadata:
52
+ ContextDev::Models::WebWebCrawlMdResponse::KeyMetadata::OrHash
34
53
  ).returns(T.attached_class)
35
54
  end
36
- def self.new(metadata:, results:)
55
+ def self.new(
56
+ metadata:,
57
+ results:,
58
+ # Metadata about the API key used for the request. Included in every response
59
+ # whenever a valid API key is provided, even when the response status is not 200.
60
+ key_metadata: nil
61
+ )
37
62
  end
38
63
 
39
64
  sig do
40
65
  override.returns(
41
66
  {
42
67
  metadata: ContextDev::Models::WebWebCrawlMdResponse::Metadata,
43
- results: T::Array[ContextDev::Models::WebWebCrawlMdResponse::Result]
68
+ results:
69
+ T::Array[ContextDev::Models::WebWebCrawlMdResponse::Result],
70
+ key_metadata: ContextDev::Models::WebWebCrawlMdResponse::KeyMetadata
44
71
  }
45
72
  )
46
73
  end
@@ -235,6 +262,47 @@ module ContextDev
235
262
  end
236
263
  end
237
264
  end
265
+
266
+ class KeyMetadata < ContextDev::Internal::Type::BaseModel
267
+ OrHash =
268
+ T.type_alias do
269
+ T.any(
270
+ ContextDev::Models::WebWebCrawlMdResponse::KeyMetadata,
271
+ ContextDev::Internal::AnyHash
272
+ )
273
+ end
274
+
275
+ # The number of credits consumed by this request.
276
+ sig { returns(Integer) }
277
+ attr_accessor :credits_consumed
278
+
279
+ # The number of credits remaining for your organization after this request.
280
+ sig { returns(Integer) }
281
+ attr_accessor :credits_remaining
282
+
283
+ # Metadata about the API key used for the request. Included in every response
284
+ # whenever a valid API key is provided, even when the response status is not 200.
285
+ sig do
286
+ params(credits_consumed: Integer, credits_remaining: Integer).returns(
287
+ T.attached_class
288
+ )
289
+ end
290
+ def self.new(
291
+ # The number of credits consumed by this request.
292
+ credits_consumed:,
293
+ # The number of credits remaining for your organization after this request.
294
+ credits_remaining:
295
+ )
296
+ end
297
+
298
+ sig do
299
+ override.returns(
300
+ { credits_consumed: Integer, credits_remaining: Integer }
301
+ )
302
+ end
303
+ def to_hash
304
+ end
305
+ end
238
306
  end
239
307
  end
240
308
  end
@@ -78,6 +78,14 @@ module ContextDev
78
78
  sig { params(timeout_ms: Integer).void }
79
79
  attr_writer :timeout_ms
80
80
 
81
+ # When true, return only the page's main content in the HTML response, excluding
82
+ # headers, footers, sidebars, and navigation when detectable.
83
+ sig { returns(T.nilable(T::Boolean)) }
84
+ attr_reader :use_main_content_only
85
+
86
+ sig { params(use_main_content_only: T::Boolean).void }
87
+ attr_writer :use_main_content_only
88
+
81
89
  # Optional browser wait time in milliseconds after initial page load. Min: 0. Max:
82
90
  # 30000 (30 seconds).
83
91
  sig { returns(T.nilable(Integer)) }
@@ -96,6 +104,7 @@ module ContextDev
96
104
  max_age_ms: Integer,
97
105
  pdf: ContextDev::WebWebScrapeHTMLParams::Pdf::OrHash,
98
106
  timeout_ms: Integer,
107
+ use_main_content_only: T::Boolean,
99
108
  wait_for_ms: Integer,
100
109
  request_options: ContextDev::RequestOptions::OrHash
101
110
  ).returns(T.attached_class)
@@ -128,6 +137,9 @@ module ContextDev
128
137
  # than this value, it will be aborted with a 408 status code. Maximum allowed
129
138
  # value is 300000ms (5 minutes).
130
139
  timeout_ms: nil,
140
+ # When true, return only the page's main content in the HTML response, excluding
141
+ # headers, footers, sidebars, and navigation when detectable.
142
+ use_main_content_only: nil,
131
143
  # Optional browser wait time in milliseconds after initial page load. Min: 0. Max:
132
144
  # 30000 (30 seconds).
133
145
  wait_for_ms: nil,
@@ -146,6 +158,7 @@ module ContextDev
146
158
  max_age_ms: Integer,
147
159
  pdf: ContextDev::WebWebScrapeHTMLParams::Pdf,
148
160
  timeout_ms: Integer,
161
+ use_main_content_only: T::Boolean,
149
162
  wait_for_ms: Integer,
150
163
  request_options: ContextDev::RequestOptions
151
164
  }
@@ -38,13 +38,32 @@ module ContextDev
38
38
  sig { returns(String) }
39
39
  attr_accessor :url
40
40
 
41
+ # Metadata about the API key used for the request. Included in every response
42
+ # whenever a valid API key is provided, even when the response status is not 200.
43
+ sig do
44
+ returns(
45
+ T.nilable(ContextDev::Models::WebWebScrapeHTMLResponse::KeyMetadata)
46
+ )
47
+ end
48
+ attr_reader :key_metadata
49
+
50
+ sig do
51
+ params(
52
+ key_metadata:
53
+ ContextDev::Models::WebWebScrapeHTMLResponse::KeyMetadata::OrHash
54
+ ).void
55
+ end
56
+ attr_writer :key_metadata
57
+
41
58
  sig do
42
59
  params(
43
60
  html: String,
44
61
  success:
45
62
  ContextDev::Models::WebWebScrapeHTMLResponse::Success::OrBoolean,
46
63
  type: ContextDev::Models::WebWebScrapeHTMLResponse::Type::OrSymbol,
47
- url: String
64
+ url: String,
65
+ key_metadata:
66
+ ContextDev::Models::WebWebScrapeHTMLResponse::KeyMetadata::OrHash
48
67
  ).returns(T.attached_class)
49
68
  end
50
69
  def self.new(
@@ -58,7 +77,10 @@ module ContextDev
58
77
  # surfaced as `xml`; ordinary pages are `html`.
59
78
  type:,
60
79
  # The URL that was scraped
61
- url:
80
+ url:,
81
+ # Metadata about the API key used for the request. Included in every response
82
+ # whenever a valid API key is provided, even when the response status is not 200.
83
+ key_metadata: nil
62
84
  )
63
85
  end
64
86
 
@@ -70,7 +92,9 @@ module ContextDev
70
92
  ContextDev::Models::WebWebScrapeHTMLResponse::Success::TaggedBoolean,
71
93
  type:
72
94
  ContextDev::Models::WebWebScrapeHTMLResponse::Type::TaggedSymbol,
73
- url: String
95
+ url: String,
96
+ key_metadata:
97
+ ContextDev::Models::WebWebScrapeHTMLResponse::KeyMetadata
74
98
  }
75
99
  )
76
100
  end
@@ -169,6 +193,47 @@ module ContextDev
169
193
  def self.values
170
194
  end
171
195
  end
196
+
197
+ class KeyMetadata < ContextDev::Internal::Type::BaseModel
198
+ OrHash =
199
+ T.type_alias do
200
+ T.any(
201
+ ContextDev::Models::WebWebScrapeHTMLResponse::KeyMetadata,
202
+ ContextDev::Internal::AnyHash
203
+ )
204
+ end
205
+
206
+ # The number of credits consumed by this request.
207
+ sig { returns(Integer) }
208
+ attr_accessor :credits_consumed
209
+
210
+ # The number of credits remaining for your organization after this request.
211
+ sig { returns(Integer) }
212
+ attr_accessor :credits_remaining
213
+
214
+ # Metadata about the API key used for the request. Included in every response
215
+ # whenever a valid API key is provided, even when the response status is not 200.
216
+ sig do
217
+ params(credits_consumed: Integer, credits_remaining: Integer).returns(
218
+ T.attached_class
219
+ )
220
+ end
221
+ def self.new(
222
+ # The number of credits consumed by this request.
223
+ credits_consumed:,
224
+ # The number of credits remaining for your organization after this request.
225
+ credits_remaining:
226
+ )
227
+ end
228
+
229
+ sig do
230
+ override.returns(
231
+ { credits_consumed: Integer, credits_remaining: Integer }
232
+ )
233
+ end
234
+ def to_hash
235
+ end
236
+ end
172
237
  end
173
238
  end
174
239
  end