context.dev 2.18.0 → 2.20.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 (116) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +220 -0
  3. data/README.md +1 -1
  4. data/lib/context_dev/client.rb +0 -4
  5. data/lib/context_dev/models/monitor_retrieve_run_params.rb +26 -0
  6. data/lib/context_dev/models/monitor_retrieve_run_response.rb +232 -0
  7. data/lib/context_dev/models/monitor_rotate_webhook_secret_params.rb +20 -0
  8. data/lib/context_dev/models/monitor_rotate_webhook_secret_response.rb +765 -0
  9. data/lib/context_dev/models/{web_web_scrape_sitemap_params.rb → web_map_urls_params.rb} +14 -14
  10. data/lib/context_dev/models/web_map_urls_response.rb +123 -0
  11. data/lib/context_dev/models/web_scrape_params.rb +1035 -0
  12. data/lib/context_dev/models/web_scrape_response.rb +974 -0
  13. data/lib/context_dev/models/web_screenshot_params.rb +15 -1
  14. data/lib/context_dev/models/web_screenshot_response.rb +3 -3
  15. data/lib/context_dev/models.rb +8 -22
  16. data/lib/context_dev/resources/brand.rb +0 -36
  17. data/lib/context_dev/resources/monitors.rb +47 -0
  18. data/lib/context_dev/resources/web.rb +118 -486
  19. data/lib/context_dev/version.rb +1 -1
  20. data/lib/context_dev.rb +8 -23
  21. data/rbi/context_dev/client.rbi +0 -3
  22. data/rbi/context_dev/models/monitor_retrieve_run_params.rbi +46 -0
  23. data/rbi/context_dev/models/monitor_retrieve_run_response.rbi +452 -0
  24. data/rbi/context_dev/models/monitor_rotate_webhook_secret_params.rbi +38 -0
  25. data/rbi/context_dev/models/monitor_rotate_webhook_secret_response.rbi +1367 -0
  26. data/rbi/context_dev/models/{web_web_scrape_sitemap_params.rbi → web_map_urls_params.rbi} +23 -45
  27. data/rbi/context_dev/models/web_map_urls_response.rbi +226 -0
  28. data/rbi/context_dev/models/web_scrape_params.rbi +2221 -0
  29. data/rbi/context_dev/models/web_scrape_response.rbi +1874 -0
  30. data/rbi/context_dev/models/web_screenshot_params.rbi +23 -0
  31. data/rbi/context_dev/models/web_screenshot_response.rbi +4 -4
  32. data/rbi/context_dev/models.rbi +9 -24
  33. data/rbi/context_dev/resources/brand.rbi +0 -35
  34. data/rbi/context_dev/resources/monitors.rbi +24 -0
  35. data/rbi/context_dev/resources/web.rbi +152 -654
  36. data/sig/context_dev/client.rbs +0 -2
  37. data/sig/context_dev/models/monitor_retrieve_run_params.rbs +28 -0
  38. data/sig/context_dev/models/monitor_retrieve_run_response.rbs +182 -0
  39. data/sig/context_dev/models/monitor_rotate_webhook_secret_params.rbs +23 -0
  40. data/sig/context_dev/models/monitor_rotate_webhook_secret_response.rbs +545 -0
  41. data/sig/context_dev/models/{web_web_scrape_sitemap_params.rbs → web_map_urls_params.rbs} +22 -22
  42. data/sig/context_dev/models/web_map_urls_response.rbs +125 -0
  43. data/sig/context_dev/models/web_scrape_params.rbs +925 -0
  44. data/sig/context_dev/models/web_scrape_response.rbs +782 -0
  45. data/sig/context_dev/models/web_screenshot_params.rbs +7 -0
  46. data/sig/context_dev/models.rbs +8 -22
  47. data/sig/context_dev/resources/brand.rbs +0 -9
  48. data/sig/context_dev/resources/monitors.rbs +11 -0
  49. data/sig/context_dev/resources/web.rbs +33 -128
  50. metadata +26 -71
  51. data/lib/context_dev/models/ai_extract_product_params.rb +0 -125
  52. data/lib/context_dev/models/ai_extract_product_response.rb +0 -402
  53. data/lib/context_dev/models/ai_extract_products_params.rb +0 -233
  54. data/lib/context_dev/models/ai_extract_products_response.rb +0 -370
  55. data/lib/context_dev/models/brand_retrieve_simplified_params.rb +0 -120
  56. data/lib/context_dev/models/brand_retrieve_simplified_response.rb +0 -441
  57. data/lib/context_dev/models/web_extract_fonts_params.rb +0 -114
  58. data/lib/context_dev/models/web_extract_fonts_response.rb +0 -291
  59. data/lib/context_dev/models/web_extract_params.rb +0 -419
  60. data/lib/context_dev/models/web_extract_response.rb +0 -287
  61. data/lib/context_dev/models/web_web_scrape_bytes_params.rb +0 -346
  62. data/lib/context_dev/models/web_web_scrape_bytes_response.rb +0 -135
  63. data/lib/context_dev/models/web_web_scrape_html_params.rb +0 -812
  64. data/lib/context_dev/models/web_web_scrape_html_response.rb +0 -628
  65. data/lib/context_dev/models/web_web_scrape_images_params.rb +0 -373
  66. data/lib/context_dev/models/web_web_scrape_images_response.rb +0 -409
  67. data/lib/context_dev/models/web_web_scrape_md_params.rb +0 -670
  68. data/lib/context_dev/models/web_web_scrape_md_response.rb +0 -567
  69. data/lib/context_dev/models/web_web_scrape_screenshot_params.rb +0 -471
  70. data/lib/context_dev/models/web_web_scrape_screenshot_response.rb +0 -169
  71. data/lib/context_dev/models/web_web_scrape_sitemap_response.rb +0 -144
  72. data/lib/context_dev/resources/ai.rb +0 -71
  73. data/rbi/context_dev/models/ai_extract_product_params.rbi +0 -253
  74. data/rbi/context_dev/models/ai_extract_product_response.rbi +0 -791
  75. data/rbi/context_dev/models/ai_extract_products_params.rbi +0 -490
  76. data/rbi/context_dev/models/ai_extract_products_response.rbi +0 -718
  77. data/rbi/context_dev/models/brand_retrieve_simplified_params.rbi +0 -256
  78. data/rbi/context_dev/models/brand_retrieve_simplified_response.rbi +0 -1040
  79. data/rbi/context_dev/models/web_extract_fonts_params.rbi +0 -223
  80. data/rbi/context_dev/models/web_extract_fonts_response.rbi +0 -563
  81. data/rbi/context_dev/models/web_extract_params.rbi +0 -781
  82. data/rbi/context_dev/models/web_extract_response.rbi +0 -512
  83. data/rbi/context_dev/models/web_web_scrape_bytes_params.rbi +0 -702
  84. data/rbi/context_dev/models/web_web_scrape_bytes_response.rbi +0 -238
  85. data/rbi/context_dev/models/web_web_scrape_html_params.rbi +0 -1690
  86. data/rbi/context_dev/models/web_web_scrape_html_response.rbi +0 -1287
  87. data/rbi/context_dev/models/web_web_scrape_images_params.rbi +0 -728
  88. data/rbi/context_dev/models/web_web_scrape_images_response.rbi +0 -910
  89. data/rbi/context_dev/models/web_web_scrape_md_params.rbi +0 -1052
  90. data/rbi/context_dev/models/web_web_scrape_md_response.rbi +0 -1088
  91. data/rbi/context_dev/models/web_web_scrape_screenshot_params.rbi +0 -1580
  92. data/rbi/context_dev/models/web_web_scrape_screenshot_response.rbi +0 -332
  93. data/rbi/context_dev/models/web_web_scrape_sitemap_response.rbi +0 -258
  94. data/rbi/context_dev/resources/ai.rbi +0 -63
  95. data/sig/context_dev/models/ai_extract_product_params.rbs +0 -106
  96. data/sig/context_dev/models/ai_extract_product_response.rbs +0 -314
  97. data/sig/context_dev/models/ai_extract_products_params.rbs +0 -202
  98. data/sig/context_dev/models/ai_extract_products_response.rbs +0 -293
  99. data/sig/context_dev/models/brand_retrieve_simplified_params.rbs +0 -104
  100. data/sig/context_dev/models/brand_retrieve_simplified_response.rbs +0 -413
  101. data/sig/context_dev/models/web_extract_fonts_params.rbs +0 -93
  102. data/sig/context_dev/models/web_extract_fonts_response.rbs +0 -230
  103. data/sig/context_dev/models/web_extract_params.rbs +0 -324
  104. data/sig/context_dev/models/web_extract_response.rbs +0 -239
  105. data/sig/context_dev/models/web_web_scrape_bytes_params.rbs +0 -531
  106. data/sig/context_dev/models/web_web_scrape_bytes_response.rbs +0 -108
  107. data/sig/context_dev/models/web_web_scrape_html_params.rbs +0 -878
  108. data/sig/context_dev/models/web_web_scrape_html_response.rbs +0 -525
  109. data/sig/context_dev/models/web_web_scrape_images_params.rbs +0 -281
  110. data/sig/context_dev/models/web_web_scrape_images_response.rbs +0 -371
  111. data/sig/context_dev/models/web_web_scrape_md_params.rbs +0 -758
  112. data/sig/context_dev/models/web_web_scrape_md_response.rbs +0 -465
  113. data/sig/context_dev/models/web_web_scrape_screenshot_params.rbs +0 -619
  114. data/sig/context_dev/models/web_web_scrape_screenshot_response.rbs +0 -127
  115. data/sig/context_dev/models/web_web_scrape_sitemap_response.rbs +0 -117
  116. data/sig/context_dev/resources/ai.rbs +0 -21
@@ -1,628 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module ContextDev
4
- module Models
5
- # @see ContextDev::Resources::Web#web_scrape_html
6
- class WebWebScrapeHTMLResponse < ContextDev::Internal::Type::BaseModel
7
- # @!attribute cache_metadata
8
- # Cache outcome for this response. Composite responses are hits only when every
9
- # cache-controlled fetch contributing to the output was a hit; age_ms is the
10
- # oldest contributing hit.
11
- #
12
- # @return [ContextDev::Models::WebWebScrapeHTMLResponse::CacheMetadata]
13
- required :cache_metadata, -> { ContextDev::Models::WebWebScrapeHTMLResponse::CacheMetadata }
14
-
15
- # @!attribute final_dom_state
16
- # How complete the returned content is. `loaded` means the page finished the waits
17
- # the request asked for. `still-loading` only occurs with
18
- # timeoutOpts.behavior=return-partial: the timeoutOpts.milliseconds deadline was
19
- # reached first, so the content reflects the DOM at that moment and late-rendering
20
- # parts may be missing. Partial results are billed at the base request cost.
21
- #
22
- # @return [Symbol, ContextDev::Models::WebWebScrapeHTMLResponse::FinalDomState]
23
- required :final_dom_state,
24
- enum: -> { ContextDev::Models::WebWebScrapeHTMLResponse::FinalDomState },
25
- api_name: :finalDOMState
26
-
27
- # @!attribute html
28
- # The scraped content of the page. For normal pages this is the raw HTML. When the
29
- # page is a sitemap or feed served behind an XSL stylesheet (which browsers render
30
- # into HTML), this is the underlying XML instead — see the `type` field.
31
- #
32
- # @return [String]
33
- required :html, String
34
-
35
- # @!attribute metadata
36
- # Metadata extracted from the scraped page HTML.
37
- #
38
- # @return [ContextDev::Models::WebWebScrapeHTMLResponse::Metadata]
39
- required :metadata, -> { ContextDev::Models::WebWebScrapeHTMLResponse::Metadata }
40
-
41
- # @!attribute request_id
42
- # Unique id of this API call, also sent in the X-Request-Id response header. Quote
43
- # it when contacting support about a failed request.
44
- #
45
- # @return [String]
46
- required :request_id, String
47
-
48
- # @!attribute success
49
- # Indicates success
50
- #
51
- # @return [Boolean, ContextDev::Models::WebWebScrapeHTMLResponse::Success]
52
- required :success, enum: -> { ContextDev::Models::WebWebScrapeHTMLResponse::Success }
53
-
54
- # @!attribute type
55
- # Detected content type of the returned `html` field. Sitemaps and feeds are
56
- # surfaced as `xml`; ordinary pages are `html`. Excel workbooks are surfaced as
57
- # `xlsx`/`xls` with the extracted sheets as HTML tables; PowerPoint presentations
58
- # are surfaced as `pptx`/`ppt` with the extracted slides as HTML.
59
- #
60
- # @return [Symbol, ContextDev::Models::WebWebScrapeHTMLResponse::Type]
61
- required :type, enum: -> { ContextDev::Models::WebWebScrapeHTMLResponse::Type }
62
-
63
- # @!attribute url
64
- # The URL that was scraped
65
- #
66
- # @return [String]
67
- required :url, String
68
-
69
- # @!attribute actions_applied
70
- # One verified outcome per requested browser action, in request order.
71
- #
72
- # @return [Array<ContextDev::Models::WebWebScrapeHTMLResponse::ActionsApplied>, nil]
73
- optional :actions_applied,
74
- -> { ContextDev::Internal::Type::ArrayOf[ContextDev::Models::WebWebScrapeHTMLResponse::ActionsApplied] },
75
- api_name: :actionsApplied
76
-
77
- # @!attribute actions_html_stale
78
- # True when an action was applied but the returned content could not be refreshed
79
- # afterward.
80
- #
81
- # @return [Boolean, nil]
82
- optional :actions_html_stale, ContextDev::Internal::Type::Boolean, api_name: :actionsHtmlStale
83
-
84
- # @!attribute extracted
85
- # Present only when extractRules is supplied. Keys match the requested fields.
86
- # Values are normalized text, raw attribute strings, outer HTML, nested objects,
87
- # or lists. Missing items are null; lists with no matches are empty. Rules run on
88
- # the returned HTML after filtering.
89
- #
90
- # @return [Hash{Symbol=>String, Object, Array<String, Object, nil>, nil}, nil]
91
- optional :extracted,
92
- -> { ContextDev::Internal::Type::HashOf[union: ContextDev::Models::WebWebScrapeHTMLResponse::Extracted, nil?: true] }
93
-
94
- # @!attribute key_metadata
95
- # Credit usage, included whenever a valid API key is provided.
96
- #
97
- # @return [ContextDev::Models::WebWebScrapeHTMLResponse::KeyMetadata, nil]
98
- optional :key_metadata, -> { ContextDev::Models::WebWebScrapeHTMLResponse::KeyMetadata }
99
-
100
- # @!method initialize(cache_metadata:, final_dom_state:, html:, metadata:, request_id:, success:, type:, url:, actions_applied: nil, actions_html_stale: nil, extracted: nil, key_metadata: nil)
101
- # Some parameter documentations has been truncated, see
102
- # {ContextDev::Models::WebWebScrapeHTMLResponse} for more details.
103
- #
104
- # @param cache_metadata [ContextDev::Models::WebWebScrapeHTMLResponse::CacheMetadata] Cache outcome for this response. Composite responses are hits only when every ca
105
- #
106
- # @param final_dom_state [Symbol, ContextDev::Models::WebWebScrapeHTMLResponse::FinalDomState] How complete the returned content is. `loaded` means the page finished the waits
107
- #
108
- # @param html [String] The scraped content of the page. For normal pages this is the raw HTML. When the
109
- #
110
- # @param metadata [ContextDev::Models::WebWebScrapeHTMLResponse::Metadata] Metadata extracted from the scraped page HTML.
111
- #
112
- # @param request_id [String] Unique id of this API call, also sent in the X-Request-Id response header. Quote
113
- #
114
- # @param success [Boolean, ContextDev::Models::WebWebScrapeHTMLResponse::Success] Indicates success
115
- #
116
- # @param type [Symbol, ContextDev::Models::WebWebScrapeHTMLResponse::Type] Detected content type of the returned `html` field. Sitemaps and feeds are surfa
117
- #
118
- # @param url [String] The URL that was scraped
119
- #
120
- # @param actions_applied [Array<ContextDev::Models::WebWebScrapeHTMLResponse::ActionsApplied>] One verified outcome per requested browser action, in request order.
121
- #
122
- # @param actions_html_stale [Boolean] True when an action was applied but the returned content could not be refreshed
123
- #
124
- # @param extracted [Hash{Symbol=>String, Object, Array<String, Object, nil>, nil}] Present only when extractRules is supplied. Keys match the requested fields. Val
125
- #
126
- # @param key_metadata [ContextDev::Models::WebWebScrapeHTMLResponse::KeyMetadata] Credit usage, included whenever a valid API key is provided.
127
-
128
- # @see ContextDev::Models::WebWebScrapeHTMLResponse#cache_metadata
129
- class CacheMetadata < ContextDev::Internal::Type::BaseModel
130
- # @!attribute age_ms
131
- # Age of the cached data in milliseconds. Zero for miss and zdr responses.
132
- #
133
- # @return [Integer]
134
- required :age_ms, Integer
135
-
136
- # @!attribute status
137
- # Whether the response was served from cache, required fresh work, or honored
138
- # zero-data-retention cache bypass.
139
- #
140
- # @return [Symbol, ContextDev::Models::WebWebScrapeHTMLResponse::CacheMetadata::Status]
141
- required :status, enum: -> { ContextDev::Models::WebWebScrapeHTMLResponse::CacheMetadata::Status }
142
-
143
- # @!method initialize(age_ms:, status:)
144
- # Some parameter documentations has been truncated, see
145
- # {ContextDev::Models::WebWebScrapeHTMLResponse::CacheMetadata} for more details.
146
- #
147
- # Cache outcome for this response. Composite responses are hits only when every
148
- # cache-controlled fetch contributing to the output was a hit; age_ms is the
149
- # oldest contributing hit.
150
- #
151
- # @param age_ms [Integer] Age of the cached data in milliseconds. Zero for miss and zdr responses.
152
- #
153
- # @param status [Symbol, ContextDev::Models::WebWebScrapeHTMLResponse::CacheMetadata::Status] Whether the response was served from cache, required fresh work, or honored zero
154
-
155
- # Whether the response was served from cache, required fresh work, or honored
156
- # zero-data-retention cache bypass.
157
- #
158
- # @see ContextDev::Models::WebWebScrapeHTMLResponse::CacheMetadata#status
159
- module Status
160
- extend ContextDev::Internal::Type::Enum
161
-
162
- HIT = :hit
163
- MISS = :miss
164
- ZDR = :zdr
165
-
166
- # @!method self.values
167
- # @return [Array<Symbol>]
168
- end
169
- end
170
-
171
- # How complete the returned content is. `loaded` means the page finished the waits
172
- # the request asked for. `still-loading` only occurs with
173
- # timeoutOpts.behavior=return-partial: the timeoutOpts.milliseconds deadline was
174
- # reached first, so the content reflects the DOM at that moment and late-rendering
175
- # parts may be missing. Partial results are billed at the base request cost.
176
- #
177
- # @see ContextDev::Models::WebWebScrapeHTMLResponse#final_dom_state
178
- module FinalDomState
179
- extend ContextDev::Internal::Type::Enum
180
-
181
- LOADED = :loaded
182
- STILL_LOADING = :"still-loading"
183
-
184
- # @!method self.values
185
- # @return [Array<Symbol>]
186
- end
187
-
188
- # @see ContextDev::Models::WebWebScrapeHTMLResponse#metadata
189
- class Metadata < ContextDev::Internal::Type::BaseModel
190
- # @!attribute final_url
191
- # Final URL scraped after redirects or scraper fallback, when known. Falls back to
192
- # sourceUrl when unavailable.
193
- #
194
- # @return [String]
195
- required :final_url, String, api_name: :finalUrl
196
-
197
- # @!attribute source_url
198
- # Original URL requested by the caller.
199
- #
200
- # @return [String]
201
- required :source_url, String, api_name: :sourceUrl
202
-
203
- # @!attribute additional_meta
204
- # Additional non-social meta tags not promoted to top-level metadata fields.
205
- #
206
- # @return [Hash{Symbol=>String, Array<String>}, nil]
207
- optional :additional_meta,
208
- -> { ContextDev::Internal::Type::HashOf[union: ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::AdditionalMeta] },
209
- api_name: :additionalMeta
210
-
211
- # @!attribute alternates
212
- # Resolved alternate links from link rel=alternate tags.
213
- #
214
- # @return [Array<ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::Alternate>, nil]
215
- optional :alternates,
216
- -> { ContextDev::Internal::Type::ArrayOf[ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::Alternate] }
217
-
218
- # @!attribute author
219
- # Author metadata, when present.
220
- #
221
- # @return [String, nil]
222
- optional :author, String
223
-
224
- # @!attribute canonical_url
225
- # Resolved canonical URL, when present.
226
- #
227
- # @return [String, nil]
228
- optional :canonical_url, String, api_name: :canonicalUrl
229
-
230
- # @!attribute description
231
- # Best description extracted from standard, Open Graph, or Twitter metadata.
232
- #
233
- # @return [String, nil]
234
- optional :description, String
235
-
236
- # @!attribute favicon
237
- # Resolved favicon URL, when present.
238
- #
239
- # @return [String, nil]
240
- optional :favicon, String
241
-
242
- # @!attribute headings
243
- # Page headings (h1–h6) in document order, extracted from the unfiltered document.
244
- # Capped at the first 500 headings. Omitted when the page has none.
245
- #
246
- # @return [Array<ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::Heading>, nil]
247
- optional :headings,
248
- -> { ContextDev::Internal::Type::ArrayOf[ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::Heading] }
249
-
250
- # @!attribute image
251
- # Primary resolved preview image from Open Graph, Twitter, or image metadata.
252
- #
253
- # @return [String, nil]
254
- optional :image, String
255
-
256
- # @!attribute json_ld
257
- # JSON-LD structured data blocks parsed from the page.
258
- #
259
- # @return [Array<Hash{Symbol=>Object}>, nil]
260
- optional :json_ld,
261
- ContextDev::Internal::Type::ArrayOf[ContextDev::Internal::Type::HashOf[ContextDev::Internal::Type::Unknown]],
262
- api_name: :jsonLd
263
-
264
- # @!attribute keywords
265
- # Keywords extracted from the page's keywords meta tag.
266
- #
267
- # @return [Array<String>, nil]
268
- optional :keywords, ContextDev::Internal::Type::ArrayOf[String]
269
-
270
- # @!attribute language
271
- # Language extracted from html lang or language meta tags.
272
- #
273
- # @return [String, nil]
274
- optional :language, String
275
-
276
- # @!attribute modified_time
277
- # Modified timestamp/date from page metadata, when present.
278
- #
279
- # @return [String, nil]
280
- optional :modified_time, String, api_name: :modifiedTime
281
-
282
- # @!attribute open_graph
283
- # Open Graph metadata with the og: prefix removed and keys camel-cased.
284
- #
285
- # @return [Hash{Symbol=>String, Array<String>}, nil]
286
- optional :open_graph,
287
- -> { ContextDev::Internal::Type::HashOf[union: ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::OpenGraph] },
288
- api_name: :openGraph
289
-
290
- # @!attribute published_time
291
- # Published timestamp/date from page metadata, when present.
292
- #
293
- # @return [String, nil]
294
- optional :published_time, String, api_name: :publishedTime
295
-
296
- # @!attribute robots
297
- # Robots meta directive, when present.
298
- #
299
- # @return [String, nil]
300
- optional :robots, String
301
-
302
- # @!attribute site_name
303
- # Site or application name from page metadata.
304
- #
305
- # @return [String, nil]
306
- optional :site_name, String, api_name: :siteName
307
-
308
- # @!attribute title
309
- # Best title extracted from the page.
310
- #
311
- # @return [String, nil]
312
- optional :title, String
313
-
314
- # @!attribute twitter
315
- # Twitter card metadata with the twitter: prefix removed and keys camel-cased.
316
- #
317
- # @return [Hash{Symbol=>String, Array<String>}, nil]
318
- optional :twitter,
319
- -> { ContextDev::Internal::Type::HashOf[union: ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::Twitter] }
320
-
321
- # @!method initialize(final_url:, source_url:, additional_meta: nil, alternates: nil, author: nil, canonical_url: nil, description: nil, favicon: nil, headings: nil, image: nil, json_ld: nil, keywords: nil, language: nil, modified_time: nil, open_graph: nil, published_time: nil, robots: nil, site_name: nil, title: nil, twitter: nil)
322
- # Some parameter documentations has been truncated, see
323
- # {ContextDev::Models::WebWebScrapeHTMLResponse::Metadata} for more details.
324
- #
325
- # Metadata extracted from the scraped page HTML.
326
- #
327
- # @param final_url [String] Final URL scraped after redirects or scraper fallback, when known. Falls back to
328
- #
329
- # @param source_url [String] Original URL requested by the caller.
330
- #
331
- # @param additional_meta [Hash{Symbol=>String, Array<String>}] Additional non-social meta tags not promoted to top-level metadata fields.
332
- #
333
- # @param alternates [Array<ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::Alternate>] Resolved alternate links from link rel=alternate tags.
334
- #
335
- # @param author [String] Author metadata, when present.
336
- #
337
- # @param canonical_url [String] Resolved canonical URL, when present.
338
- #
339
- # @param description [String] Best description extracted from standard, Open Graph, or Twitter metadata.
340
- #
341
- # @param favicon [String] Resolved favicon URL, when present.
342
- #
343
- # @param headings [Array<ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::Heading>] Page headings (h1–h6) in document order, extracted from the unfiltered document.
344
- #
345
- # @param image [String] Primary resolved preview image from Open Graph, Twitter, or image metadata.
346
- #
347
- # @param json_ld [Array<Hash{Symbol=>Object}>] JSON-LD structured data blocks parsed from the page.
348
- #
349
- # @param keywords [Array<String>] Keywords extracted from the page's keywords meta tag.
350
- #
351
- # @param language [String] Language extracted from html lang or language meta tags.
352
- #
353
- # @param modified_time [String] Modified timestamp/date from page metadata, when present.
354
- #
355
- # @param open_graph [Hash{Symbol=>String, Array<String>}] Open Graph metadata with the og: prefix removed and keys camel-cased.
356
- #
357
- # @param published_time [String] Published timestamp/date from page metadata, when present.
358
- #
359
- # @param robots [String] Robots meta directive, when present.
360
- #
361
- # @param site_name [String] Site or application name from page metadata.
362
- #
363
- # @param title [String] Best title extracted from the page.
364
- #
365
- # @param twitter [Hash{Symbol=>String, Array<String>}] Twitter card metadata with the twitter: prefix removed and keys camel-cased.
366
-
367
- module AdditionalMeta
368
- extend ContextDev::Internal::Type::Union
369
-
370
- variant String
371
-
372
- variant -> { ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::AdditionalMeta::StringArray }
373
-
374
- # @!method self.variants
375
- # @return [Array(String, Array<String>)]
376
-
377
- # @type [ContextDev::Internal::Type::Converter]
378
- StringArray = ContextDev::Internal::Type::ArrayOf[String]
379
- end
380
-
381
- class Alternate < ContextDev::Internal::Type::BaseModel
382
- # @!attribute href
383
- # Resolved alternate URL.
384
- #
385
- # @return [String]
386
- required :href, String
387
-
388
- # @!attribute hreflang
389
- # Language or locale for the alternate URL, when present.
390
- #
391
- # @return [String, nil]
392
- optional :hreflang, String
393
-
394
- # @!attribute title
395
- # Alternate resource title, when present.
396
- #
397
- # @return [String, nil]
398
- optional :title, String
399
-
400
- # @!attribute type
401
- # Alternate resource MIME type, when present.
402
- #
403
- # @return [String, nil]
404
- optional :type, String
405
-
406
- # @!method initialize(href:, hreflang: nil, title: nil, type: nil)
407
- # @param href [String] Resolved alternate URL.
408
- #
409
- # @param hreflang [String] Language or locale for the alternate URL, when present.
410
- #
411
- # @param title [String] Alternate resource title, when present.
412
- #
413
- # @param type [String] Alternate resource MIME type, when present.
414
- end
415
-
416
- class Heading < ContextDev::Internal::Type::BaseModel
417
- # @!attribute level
418
- # Heading level, 1–6 (from h1–h6).
419
- #
420
- # @return [Integer]
421
- required :level, Integer
422
-
423
- # @!attribute text
424
- # Heading text with whitespace collapsed, truncated to 1000 characters.
425
- #
426
- # @return [String]
427
- required :text, String
428
-
429
- # @!method initialize(level:, text:)
430
- # @param level [Integer] Heading level, 1–6 (from h1–h6).
431
- #
432
- # @param text [String] Heading text with whitespace collapsed, truncated to 1000 characters.
433
- end
434
-
435
- module OpenGraph
436
- extend ContextDev::Internal::Type::Union
437
-
438
- variant String
439
-
440
- variant -> { ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::OpenGraph::StringArray }
441
-
442
- # @!method self.variants
443
- # @return [Array(String, Array<String>)]
444
-
445
- # @type [ContextDev::Internal::Type::Converter]
446
- StringArray = ContextDev::Internal::Type::ArrayOf[String]
447
- end
448
-
449
- module Twitter
450
- extend ContextDev::Internal::Type::Union
451
-
452
- variant String
453
-
454
- variant -> { ContextDev::Models::WebWebScrapeHTMLResponse::Metadata::Twitter::StringArray }
455
-
456
- # @!method self.variants
457
- # @return [Array(String, Array<String>)]
458
-
459
- # @type [ContextDev::Internal::Type::Converter]
460
- StringArray = ContextDev::Internal::Type::ArrayOf[String]
461
- end
462
- end
463
-
464
- # Indicates success
465
- #
466
- # @see ContextDev::Models::WebWebScrapeHTMLResponse#success
467
- module Success
468
- extend ContextDev::Internal::Type::Enum
469
-
470
- TRUE = true
471
-
472
- # @!method self.values
473
- # @return [Array<Boolean>]
474
- end
475
-
476
- # Detected content type of the returned `html` field. Sitemaps and feeds are
477
- # surfaced as `xml`; ordinary pages are `html`. Excel workbooks are surfaced as
478
- # `xlsx`/`xls` with the extracted sheets as HTML tables; PowerPoint presentations
479
- # are surfaced as `pptx`/`ppt` with the extracted slides as HTML.
480
- #
481
- # @see ContextDev::Models::WebWebScrapeHTMLResponse#type
482
- module Type
483
- extend ContextDev::Internal::Type::Enum
484
-
485
- HTML = :html
486
- XML = :xml
487
- JSON = :json
488
- TEXT = :text
489
- CSV = :csv
490
- MARKDOWN = :markdown
491
- SVG = :svg
492
- PDF = :pdf
493
- DOCX = :docx
494
- DOC = :doc
495
- XLSX = :xlsx
496
- XLS = :xls
497
- PPTX = :pptx
498
- PPT = :ppt
499
-
500
- # @!method self.values
501
- # @return [Array<Symbol>]
502
- end
503
-
504
- class ActionsApplied < ContextDev::Internal::Type::BaseModel
505
- # @!attribute instruction
506
- #
507
- # @return [String]
508
- required :instruction, String
509
-
510
- # @!attribute status
511
- # Applied means the requested page state was visibly verified. Failed means it was
512
- # not verified. Skipped means it was not attempted.
513
- #
514
- # @return [Symbol, ContextDev::Models::WebWebScrapeHTMLResponse::ActionsApplied::Status]
515
- required :status, enum: -> { ContextDev::Models::WebWebScrapeHTMLResponse::ActionsApplied::Status }
516
-
517
- # @!attribute completion_evidence
518
- # Visible page evidence used to verify an applied action.
519
- #
520
- # @return [String, nil]
521
- optional :completion_evidence, String, api_name: :completionEvidence
522
-
523
- # @!attribute duration_ms
524
- #
525
- # @return [Float, nil]
526
- optional :duration_ms, Float, api_name: :durationMs
527
-
528
- # @!attribute error
529
- #
530
- # @return [String, nil]
531
- optional :error, String
532
-
533
- # @!attribute method_
534
- #
535
- # @return [String, nil]
536
- optional :method_, String, api_name: :method
537
-
538
- # @!attribute target_description
539
- #
540
- # @return [String, nil]
541
- optional :target_description, String, api_name: :targetDescription
542
-
543
- # @!method initialize(instruction:, status:, completion_evidence: nil, duration_ms: nil, error: nil, method_: nil, target_description: nil)
544
- # Some parameter documentations has been truncated, see
545
- # {ContextDev::Models::WebWebScrapeHTMLResponse::ActionsApplied} for more details.
546
- #
547
- # @param instruction [String]
548
- #
549
- # @param status [Symbol, ContextDev::Models::WebWebScrapeHTMLResponse::ActionsApplied::Status] Applied means the requested page state was visibly verified. Failed means it was
550
- #
551
- # @param completion_evidence [String] Visible page evidence used to verify an applied action.
552
- #
553
- # @param duration_ms [Float]
554
- #
555
- # @param error [String]
556
- #
557
- # @param method_ [String]
558
- #
559
- # @param target_description [String]
560
-
561
- # Applied means the requested page state was visibly verified. Failed means it was
562
- # not verified. Skipped means it was not attempted.
563
- #
564
- # @see ContextDev::Models::WebWebScrapeHTMLResponse::ActionsApplied#status
565
- module Status
566
- extend ContextDev::Internal::Type::Enum
567
-
568
- APPLIED = :applied
569
- FAILED = :failed
570
- SKIPPED = :skipped
571
-
572
- # @!method self.values
573
- # @return [Array<Symbol>]
574
- end
575
- end
576
-
577
- module Extracted
578
- extend ContextDev::Internal::Type::Union
579
-
580
- variant String
581
-
582
- variant ContextDev::Internal::Type::Unknown
583
-
584
- variant -> { ContextDev::Models::WebWebScrapeHTMLResponse::Extracted::UnionMember2Array }
585
-
586
- module UnionMember2
587
- extend ContextDev::Internal::Type::Union
588
-
589
- variant String
590
-
591
- variant ContextDev::Internal::Type::Unknown
592
-
593
- # @!method self.variants
594
- # @return [Array(String, Object)]
595
- end
596
-
597
- # @!method self.variants
598
- # @return [Array(String, Object, Array<String, Object, nil>)]
599
-
600
- # @type [ContextDev::Internal::Type::Converter]
601
- UnionMember2Array =
602
- ContextDev::Internal::Type::ArrayOf[union: -> { ContextDev::Models::WebWebScrapeHTMLResponse::Extracted::UnionMember2 }, nil?: true]
603
- end
604
-
605
- # @see ContextDev::Models::WebWebScrapeHTMLResponse#key_metadata
606
- class KeyMetadata < ContextDev::Internal::Type::BaseModel
607
- # @!attribute credits_consumed
608
- # Credits used by this request.
609
- #
610
- # @return [Integer]
611
- required :credits_consumed, Integer
612
-
613
- # @!attribute credits_remaining
614
- # Credits remaining for your organization.
615
- #
616
- # @return [Integer]
617
- required :credits_remaining, Integer
618
-
619
- # @!method initialize(credits_consumed:, credits_remaining:)
620
- # Credit usage, included whenever a valid API key is provided.
621
- #
622
- # @param credits_consumed [Integer] Credits used by this request.
623
- #
624
- # @param credits_remaining [Integer] Credits remaining for your organization.
625
- end
626
- end
627
- end
628
- end