context.dev 2.4.0 → 2.6.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 (187) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +29 -0
  3. data/README.md +1 -1
  4. data/lib/context_dev/client.rb +4 -0
  5. data/lib/context_dev/models/ai_extract_product_params.rb +9 -1
  6. data/lib/context_dev/models/ai_extract_products_params.rb +18 -2
  7. data/lib/context_dev/models/batch_cancel_params.rb +22 -0
  8. data/lib/context_dev/models/batch_cancel_response.rb +354 -0
  9. data/lib/context_dev/models/batch_get_results_params.rb +42 -0
  10. data/lib/context_dev/models/batch_get_results_response.rb +463 -0
  11. data/lib/context_dev/models/batch_list_params.rb +94 -0
  12. data/lib/context_dev/models/batch_list_response.rb +388 -0
  13. data/lib/context_dev/models/batch_retrieve_params.rb +22 -0
  14. data/lib/context_dev/models/batch_retrieve_response.rb +390 -0
  15. data/lib/context_dev/models/batch_submit_params.rb +56 -0
  16. data/lib/context_dev/models/batch_submit_response.rb +614 -0
  17. data/lib/context_dev/models/brand_retrieve_params.rb +109 -22
  18. data/lib/context_dev/models/brand_retrieve_response.rb +4 -6
  19. data/lib/context_dev/models/brand_retrieve_simplified_params.rb +32 -3
  20. data/lib/context_dev/models/error.rb +26 -0
  21. data/lib/context_dev/models/error_count.rb +26 -0
  22. data/lib/context_dev/models/industry_retrieve_naics_params.rb +11 -1
  23. data/lib/context_dev/models/industry_retrieve_sic_params.rb +11 -1
  24. data/lib/context_dev/models/monitor_create_params.rb +147 -132
  25. data/lib/context_dev/models/monitor_create_response.rb +40 -15
  26. data/lib/context_dev/models/monitor_get_credit_usage_params.rb +30 -0
  27. data/lib/context_dev/models/monitor_get_credit_usage_response.rb +59 -0
  28. data/lib/context_dev/models/monitor_get_limits_params.rb +14 -0
  29. data/lib/context_dev/models/monitor_get_limits_response.rb +52 -0
  30. data/lib/context_dev/models/monitor_list_account_changes_params.rb +16 -7
  31. data/lib/context_dev/models/monitor_list_account_changes_response.rb +2 -1
  32. data/lib/context_dev/models/monitor_list_account_runs_params.rb +7 -10
  33. data/lib/context_dev/models/monitor_list_changes_params.rb +8 -4
  34. data/lib/context_dev/models/monitor_list_changes_response.rb +2 -1
  35. data/lib/context_dev/models/monitor_list_params.rb +18 -19
  36. data/lib/context_dev/models/monitor_list_response.rb +27 -12
  37. data/lib/context_dev/models/monitor_list_runs_params.rb +7 -10
  38. data/lib/context_dev/models/monitor_retrieve_change_response.rb +2 -1
  39. data/lib/context_dev/models/monitor_retrieve_response.rb +27 -12
  40. data/lib/context_dev/models/monitor_update_params.rb +27 -12
  41. data/lib/context_dev/models/monitor_update_response.rb +27 -12
  42. data/lib/context_dev/models/parse_handle_params.rb +199 -33
  43. data/lib/context_dev/models/utility_prefetch_params.rb +9 -1
  44. data/lib/context_dev/models/web_extract_competitors_params.rb +11 -1
  45. data/lib/context_dev/models/web_extract_fonts_params.rb +14 -4
  46. data/lib/context_dev/models/web_extract_params.rb +19 -1
  47. data/lib/context_dev/models/web_extract_styleguide_params.rb +14 -4
  48. data/lib/context_dev/models/web_screenshot_params.rb +69 -18
  49. data/lib/context_dev/models/web_screenshot_response.rb +3 -2
  50. data/lib/context_dev/models/web_search_params.rb +9 -1
  51. data/lib/context_dev/models/web_web_crawl_md_params.rb +34 -1
  52. data/lib/context_dev/models/web_web_scrape_html_params.rb +268 -29
  53. data/lib/context_dev/models/web_web_scrape_html_response.rb +93 -1
  54. data/lib/context_dev/models/web_web_scrape_images_params.rb +208 -19
  55. data/lib/context_dev/models/web_web_scrape_md_params.rb +352 -38
  56. data/lib/context_dev/models/web_web_scrape_md_response.rb +93 -1
  57. data/lib/context_dev/models/web_web_scrape_sitemap_params.rb +45 -1
  58. data/lib/context_dev/models.rb +18 -0
  59. data/lib/context_dev/resources/ai.rb +3 -1
  60. data/lib/context_dev/resources/batch.rb +155 -0
  61. data/lib/context_dev/resources/brand.rb +6 -2
  62. data/lib/context_dev/resources/industry.rb +6 -2
  63. data/lib/context_dev/resources/monitors.rb +75 -37
  64. data/lib/context_dev/resources/parse.rb +15 -11
  65. data/lib/context_dev/resources/utility.rb +3 -1
  66. data/lib/context_dev/resources/web.rb +104 -55
  67. data/lib/context_dev/version.rb +1 -1
  68. data/lib/context_dev.rb +17 -0
  69. data/rbi/context_dev/client.rbi +3 -0
  70. data/rbi/context_dev/models/ai_extract_product_params.rbi +11 -0
  71. data/rbi/context_dev/models/ai_extract_products_params.rbi +22 -0
  72. data/rbi/context_dev/models/batch_cancel_params.rbi +40 -0
  73. data/rbi/context_dev/models/batch_cancel_response.rbi +642 -0
  74. data/rbi/context_dev/models/batch_get_results_params.rbi +70 -0
  75. data/rbi/context_dev/models/batch_get_results_response.rbi +848 -0
  76. data/rbi/context_dev/models/batch_list_params.rbi +166 -0
  77. data/rbi/context_dev/models/batch_list_response.rbi +738 -0
  78. data/rbi/context_dev/models/batch_retrieve_params.rbi +40 -0
  79. data/rbi/context_dev/models/batch_retrieve_response.rbi +707 -0
  80. data/rbi/context_dev/models/batch_submit_params.rbi +105 -0
  81. data/rbi/context_dev/models/batch_submit_response.rbi +1330 -0
  82. data/rbi/context_dev/models/brand_retrieve_params.rbi +175 -64
  83. data/rbi/context_dev/models/brand_retrieve_response.rbi +8 -11
  84. data/rbi/context_dev/models/brand_retrieve_simplified_params.rbi +68 -5
  85. data/rbi/context_dev/models/error.rbi +32 -0
  86. data/rbi/context_dev/models/error_count.rbi +34 -0
  87. data/rbi/context_dev/models/industry_retrieve_naics_params.rbi +15 -0
  88. data/rbi/context_dev/models/industry_retrieve_sic_params.rbi +15 -0
  89. data/rbi/context_dev/models/monitor_create_params.rbi +280 -246
  90. data/rbi/context_dev/models/monitor_create_response.rbi +44 -11
  91. data/rbi/context_dev/models/monitor_get_credit_usage_params.rbi +60 -0
  92. data/rbi/context_dev/models/monitor_get_credit_usage_response.rbi +111 -0
  93. data/rbi/context_dev/models/monitor_get_limits_params.rbi +30 -0
  94. data/rbi/context_dev/models/monitor_get_limits_response.rbi +105 -0
  95. data/rbi/context_dev/models/monitor_list_account_changes_params.rbi +16 -0
  96. data/rbi/context_dev/models/monitor_list_account_changes_response.rbi +2 -0
  97. data/rbi/context_dev/models/monitor_list_account_runs_params.rbi +7 -6
  98. data/rbi/context_dev/models/monitor_list_changes_params.rbi +8 -0
  99. data/rbi/context_dev/models/monitor_list_changes_response.rbi +2 -0
  100. data/rbi/context_dev/models/monitor_list_params.rbi +23 -31
  101. data/rbi/context_dev/models/monitor_list_response.rbi +30 -9
  102. data/rbi/context_dev/models/monitor_list_runs_params.rbi +7 -6
  103. data/rbi/context_dev/models/monitor_retrieve_change_response.rbi +2 -0
  104. data/rbi/context_dev/models/monitor_retrieve_response.rbi +30 -9
  105. data/rbi/context_dev/models/monitor_update_params.rbi +30 -9
  106. data/rbi/context_dev/models/monitor_update_response.rbi +30 -9
  107. data/rbi/context_dev/models/parse_handle_params.rbi +400 -46
  108. data/rbi/context_dev/models/utility_prefetch_params.rbi +11 -0
  109. data/rbi/context_dev/models/web_extract_competitors_params.rbi +15 -0
  110. data/rbi/context_dev/models/web_extract_fonts_params.rbi +19 -7
  111. data/rbi/context_dev/models/web_extract_params.rbi +26 -0
  112. data/rbi/context_dev/models/web_extract_styleguide_params.rbi +19 -7
  113. data/rbi/context_dev/models/web_screenshot_params.rbi +108 -37
  114. data/rbi/context_dev/models/web_screenshot_response.rbi +4 -2
  115. data/rbi/context_dev/models/web_search_params.rbi +11 -0
  116. data/rbi/context_dev/models/web_web_crawl_md_params.rbi +53 -0
  117. data/rbi/context_dev/models/web_web_scrape_html_params.rbi +554 -49
  118. data/rbi/context_dev/models/web_web_scrape_html_response.rbi +182 -0
  119. data/rbi/context_dev/models/web_web_scrape_images_params.rbi +426 -30
  120. data/rbi/context_dev/models/web_web_scrape_md_params.rbi +742 -61
  121. data/rbi/context_dev/models/web_web_scrape_md_response.rbi +180 -0
  122. data/rbi/context_dev/models/web_web_scrape_sitemap_params.rbi +82 -0
  123. data/rbi/context_dev/models.rbi +18 -0
  124. data/rbi/context_dev/resources/ai.rbi +3 -0
  125. data/rbi/context_dev/resources/batch.rbi +120 -0
  126. data/rbi/context_dev/resources/brand.rbi +9 -1
  127. data/rbi/context_dev/resources/industry.rbi +10 -0
  128. data/rbi/context_dev/resources/monitors.rbi +67 -23
  129. data/rbi/context_dev/resources/parse.rbi +46 -19
  130. data/rbi/context_dev/resources/utility.rbi +3 -0
  131. data/rbi/context_dev/resources/web.rbi +224 -48
  132. data/sig/context_dev/client.rbs +2 -0
  133. data/sig/context_dev/models/ai_extract_product_params.rbs +12 -1
  134. data/sig/context_dev/models/ai_extract_products_params.rbs +14 -0
  135. data/sig/context_dev/models/batch_cancel_params.rbs +23 -0
  136. data/sig/context_dev/models/batch_cancel_response.rbs +266 -0
  137. data/sig/context_dev/models/batch_get_results_params.rbs +36 -0
  138. data/sig/context_dev/models/batch_get_results_response.rbs +399 -0
  139. data/sig/context_dev/models/batch_list_params.rbs +94 -0
  140. data/sig/context_dev/models/batch_list_response.rbs +304 -0
  141. data/sig/context_dev/models/batch_retrieve_params.rbs +23 -0
  142. data/sig/context_dev/models/batch_retrieve_response.rbs +290 -0
  143. data/sig/context_dev/models/batch_submit_params.rbs +52 -0
  144. data/sig/context_dev/models/batch_submit_response.rbs +542 -0
  145. data/sig/context_dev/models/brand_retrieve_params.rbs +97 -51
  146. data/sig/context_dev/models/brand_retrieve_response.rbs +2 -2
  147. data/sig/context_dev/models/brand_retrieve_simplified_params.rbs +34 -5
  148. data/sig/context_dev/models/error.rbs +15 -0
  149. data/sig/context_dev/models/error_count.rbs +15 -0
  150. data/sig/context_dev/models/industry_retrieve_naics_params.rbs +7 -0
  151. data/sig/context_dev/models/industry_retrieve_sic_params.rbs +7 -0
  152. data/sig/context_dev/models/monitor_create_params.rbs +117 -97
  153. data/sig/context_dev/models/monitor_create_response.rbs +18 -1
  154. data/sig/context_dev/models/monitor_get_credit_usage_params.rbs +32 -0
  155. data/sig/context_dev/models/monitor_get_credit_usage_response.rbs +52 -0
  156. data/sig/context_dev/models/monitor_get_limits_params.rbs +15 -0
  157. data/sig/context_dev/models/monitor_get_limits_response.rbs +43 -0
  158. data/sig/context_dev/models/monitor_list_params.rbs +8 -14
  159. data/sig/context_dev/models/monitor_list_response.rbs +13 -1
  160. data/sig/context_dev/models/monitor_retrieve_response.rbs +13 -1
  161. data/sig/context_dev/models/monitor_update_params.rbs +13 -1
  162. data/sig/context_dev/models/monitor_update_response.rbs +13 -1
  163. data/sig/context_dev/models/parse_handle_params.rbs +124 -25
  164. data/sig/context_dev/models/utility_prefetch_params.rbs +7 -0
  165. data/sig/context_dev/models/web_extract_competitors_params.rbs +12 -1
  166. data/sig/context_dev/models/web_extract_fonts_params.rbs +10 -5
  167. data/sig/context_dev/models/web_extract_params.rbs +14 -0
  168. data/sig/context_dev/models/web_extract_styleguide_params.rbs +10 -5
  169. data/sig/context_dev/models/web_screenshot_params.rbs +41 -20
  170. data/sig/context_dev/models/web_search_params.rbs +7 -0
  171. data/sig/context_dev/models/web_web_crawl_md_params.rbs +28 -1
  172. data/sig/context_dev/models/web_web_scrape_html_params.rbs +175 -47
  173. data/sig/context_dev/models/web_web_scrape_html_response.rbs +85 -0
  174. data/sig/context_dev/models/web_web_scrape_images_params.rbs +128 -38
  175. data/sig/context_dev/models/web_web_scrape_md_params.rbs +229 -62
  176. data/sig/context_dev/models/web_web_scrape_md_response.rbs +85 -0
  177. data/sig/context_dev/models/web_web_scrape_sitemap_params.rbs +35 -1
  178. data/sig/context_dev/models.rbs +18 -0
  179. data/sig/context_dev/resources/ai.rbs +1 -0
  180. data/sig/context_dev/resources/batch.rbs +41 -0
  181. data/sig/context_dev/resources/brand.rbs +3 -1
  182. data/sig/context_dev/resources/industry.rbs +2 -0
  183. data/sig/context_dev/resources/monitors.rbs +14 -4
  184. data/sig/context_dev/resources/parse.rbs +8 -5
  185. data/sig/context_dev/resources/utility.rbs +1 -0
  186. data/sig/context_dev/resources/web.rbs +47 -26
  187. metadata +53 -2
@@ -0,0 +1,463 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ContextDev
4
+ module Models
5
+ # @see ContextDev::Resources::Batch#get_results
6
+ class BatchGetResultsResponse < ContextDev::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ # Result records on this page.
9
+ #
10
+ # @return [Array<ContextDev::Models::BatchGetResultsResponse::Data::Ok, ContextDev::Models::BatchGetResultsResponse::Data::Error>, nil]
11
+ optional :data,
12
+ -> { ContextDev::Internal::Type::ArrayOf[union: ContextDev::Models::BatchGetResultsResponse::Data] }
13
+
14
+ # @!attribute has_more
15
+ # Whether another page is available.
16
+ #
17
+ # @return [Boolean, nil]
18
+ optional :has_more, ContextDev::Internal::Type::Boolean
19
+
20
+ # @!attribute key_metadata
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
+ #
24
+ # @return [ContextDev::Models::BatchGetResultsResponse::KeyMetadata, nil]
25
+ optional :key_metadata, -> { ContextDev::Models::BatchGetResultsResponse::KeyMetadata }
26
+
27
+ # @!attribute next_cursor
28
+ # Cursor for the next page.
29
+ #
30
+ # @return [String, nil]
31
+ optional :next_cursor, String, nil?: true
32
+
33
+ # @!method initialize(data: nil, has_more: nil, key_metadata: nil, next_cursor: nil)
34
+ # Some parameter documentations has been truncated, see
35
+ # {ContextDev::Models::BatchGetResultsResponse} for more details.
36
+ #
37
+ # @param data [Array<ContextDev::Models::BatchGetResultsResponse::Data::Ok, ContextDev::Models::BatchGetResultsResponse::Data::Error>] Result records on this page.
38
+ #
39
+ # @param has_more [Boolean] Whether another page is available.
40
+ #
41
+ # @param key_metadata [ContextDev::Models::BatchGetResultsResponse::KeyMetadata] Metadata about the API key used for the request. Included in every response when
42
+ #
43
+ # @param next_cursor [String, nil] Cursor for the next page.
44
+
45
+ # One page outcome from a finished batch.
46
+ module Data
47
+ extend ContextDev::Internal::Type::Union
48
+
49
+ discriminator :status
50
+
51
+ # A page the batch fetched successfully.
52
+ variant :ok, -> { ContextDev::Models::BatchGetResultsResponse::Data::Ok }
53
+
54
+ # A page the batch could not fetch.
55
+ variant :error, -> { ContextDev::Models::BatchGetResultsResponse::Data::Error }
56
+
57
+ class Ok < ContextDev::Internal::Type::BaseModel
58
+ # @!attribute final_url
59
+ # URL the content was read from, after redirects.
60
+ #
61
+ # @return [String]
62
+ required :final_url, String
63
+
64
+ # @!attribute http_status
65
+ # HTTP status of the final response, when known.
66
+ #
67
+ # @return [Integer, nil]
68
+ required :http_status, Integer, nil?: true
69
+
70
+ # @!attribute metadata
71
+ # Metadata extracted from the scraped page HTML.
72
+ #
73
+ # @return [ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata]
74
+ required :metadata, -> { ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata }
75
+
76
+ # @!attribute status
77
+ # The page was scraped.
78
+ #
79
+ # @return [Symbol, :ok]
80
+ required :status, const: :ok
81
+
82
+ # @!attribute url
83
+ # URL as submitted, or as discovered by the crawl.
84
+ #
85
+ # @return [String]
86
+ required :url, String
87
+
88
+ # @!attribute html
89
+ # Raw page HTML. Present on html batches.
90
+ #
91
+ # @return [String, nil]
92
+ optional :html, String
93
+
94
+ # @!attribute item_id
95
+ # Caller-supplied identifier echoed from submission.
96
+ #
97
+ # @return [String, nil]
98
+ optional :item_id, String, api_name: :itemId
99
+
100
+ # @!attribute markdown
101
+ # Page content as Markdown. Present on markdown batches.
102
+ #
103
+ # @return [String, nil]
104
+ optional :markdown, String
105
+
106
+ # @!attribute meta
107
+ # Caller-supplied metadata echoed from submission.
108
+ #
109
+ # @return [Hash{Symbol=>Object}, nil]
110
+ optional :meta, ContextDev::Internal::Type::HashOf[ContextDev::Internal::Type::Unknown]
111
+
112
+ # @!method initialize(final_url:, http_status:, metadata:, url:, html: nil, item_id: nil, markdown: nil, meta: nil, status: :ok)
113
+ # A page the batch fetched successfully.
114
+ #
115
+ # @param final_url [String] URL the content was read from, after redirects.
116
+ #
117
+ # @param http_status [Integer, nil] HTTP status of the final response, when known.
118
+ #
119
+ # @param metadata [ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata] Metadata extracted from the scraped page HTML.
120
+ #
121
+ # @param url [String] URL as submitted, or as discovered by the crawl.
122
+ #
123
+ # @param html [String] Raw page HTML. Present on html batches.
124
+ #
125
+ # @param item_id [String] Caller-supplied identifier echoed from submission.
126
+ #
127
+ # @param markdown [String] Page content as Markdown. Present on markdown batches.
128
+ #
129
+ # @param meta [Hash{Symbol=>Object}] Caller-supplied metadata echoed from submission.
130
+ #
131
+ # @param status [Symbol, :ok] The page was scraped.
132
+
133
+ # @see ContextDev::Models::BatchGetResultsResponse::Data::Ok#metadata
134
+ class Metadata < ContextDev::Internal::Type::BaseModel
135
+ # @!attribute final_url
136
+ # Final URL scraped after redirects or scraper fallback, when known. Falls back to
137
+ # sourceUrl when unavailable.
138
+ #
139
+ # @return [String]
140
+ required :final_url, String, api_name: :finalUrl
141
+
142
+ # @!attribute source_url
143
+ # Original URL requested by the caller.
144
+ #
145
+ # @return [String]
146
+ required :source_url, String, api_name: :sourceUrl
147
+
148
+ # @!attribute additional_meta
149
+ # Additional non-social meta tags not promoted to top-level metadata fields.
150
+ #
151
+ # @return [Hash{Symbol=>String, Array<String>}, nil]
152
+ optional :additional_meta,
153
+ -> { ContextDev::Internal::Type::HashOf[union: ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata::AdditionalMeta] },
154
+ api_name: :additionalMeta
155
+
156
+ # @!attribute alternates
157
+ # Resolved alternate links from link rel=alternate tags.
158
+ #
159
+ # @return [Array<ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata::Alternate>, nil]
160
+ optional :alternates,
161
+ -> { ContextDev::Internal::Type::ArrayOf[ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata::Alternate] }
162
+
163
+ # @!attribute author
164
+ # Author metadata, when present.
165
+ #
166
+ # @return [String, nil]
167
+ optional :author, String
168
+
169
+ # @!attribute canonical_url
170
+ # Resolved canonical URL, when present.
171
+ #
172
+ # @return [String, nil]
173
+ optional :canonical_url, String, api_name: :canonicalUrl
174
+
175
+ # @!attribute description
176
+ # Best description extracted from standard, Open Graph, or Twitter metadata.
177
+ #
178
+ # @return [String, nil]
179
+ optional :description, String
180
+
181
+ # @!attribute favicon
182
+ # Resolved favicon URL, when present.
183
+ #
184
+ # @return [String, nil]
185
+ optional :favicon, String
186
+
187
+ # @!attribute image
188
+ # Primary resolved preview image from Open Graph, Twitter, or image metadata.
189
+ #
190
+ # @return [String, nil]
191
+ optional :image, String
192
+
193
+ # @!attribute json_ld
194
+ # JSON-LD structured data blocks parsed from the page.
195
+ #
196
+ # @return [Array<Hash{Symbol=>Object}>, nil]
197
+ optional :json_ld,
198
+ ContextDev::Internal::Type::ArrayOf[ContextDev::Internal::Type::HashOf[ContextDev::Internal::Type::Unknown]],
199
+ api_name: :jsonLd
200
+
201
+ # @!attribute keywords
202
+ # Keywords extracted from the page's keywords meta tag.
203
+ #
204
+ # @return [Array<String>, nil]
205
+ optional :keywords, ContextDev::Internal::Type::ArrayOf[String]
206
+
207
+ # @!attribute language
208
+ # Language extracted from html lang or language meta tags.
209
+ #
210
+ # @return [String, nil]
211
+ optional :language, String
212
+
213
+ # @!attribute modified_time
214
+ # Modified timestamp/date from page metadata, when present.
215
+ #
216
+ # @return [String, nil]
217
+ optional :modified_time, String, api_name: :modifiedTime
218
+
219
+ # @!attribute open_graph
220
+ # Open Graph metadata with the og: prefix removed and keys camel-cased.
221
+ #
222
+ # @return [Hash{Symbol=>String, Array<String>}, nil]
223
+ optional :open_graph,
224
+ -> { ContextDev::Internal::Type::HashOf[union: ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata::OpenGraph] },
225
+ api_name: :openGraph
226
+
227
+ # @!attribute published_time
228
+ # Published timestamp/date from page metadata, when present.
229
+ #
230
+ # @return [String, nil]
231
+ optional :published_time, String, api_name: :publishedTime
232
+
233
+ # @!attribute robots
234
+ # Robots meta directive, when present.
235
+ #
236
+ # @return [String, nil]
237
+ optional :robots, String
238
+
239
+ # @!attribute site_name
240
+ # Site or application name from page metadata.
241
+ #
242
+ # @return [String, nil]
243
+ optional :site_name, String, api_name: :siteName
244
+
245
+ # @!attribute title
246
+ # Best title extracted from the page.
247
+ #
248
+ # @return [String, nil]
249
+ optional :title, String
250
+
251
+ # @!attribute twitter
252
+ # Twitter card metadata with the twitter: prefix removed and keys camel-cased.
253
+ #
254
+ # @return [Hash{Symbol=>String, Array<String>}, nil]
255
+ optional :twitter,
256
+ -> { ContextDev::Internal::Type::HashOf[union: ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata::Twitter] }
257
+
258
+ # @!method initialize(final_url:, source_url:, additional_meta: nil, alternates: nil, author: nil, canonical_url: nil, description: nil, favicon: 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)
259
+ # Some parameter documentations has been truncated, see
260
+ # {ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata} for more
261
+ # details.
262
+ #
263
+ # Metadata extracted from the scraped page HTML.
264
+ #
265
+ # @param final_url [String] Final URL scraped after redirects or scraper fallback, when known. Falls back to
266
+ #
267
+ # @param source_url [String] Original URL requested by the caller.
268
+ #
269
+ # @param additional_meta [Hash{Symbol=>String, Array<String>}] Additional non-social meta tags not promoted to top-level metadata fields.
270
+ #
271
+ # @param alternates [Array<ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata::Alternate>] Resolved alternate links from link rel=alternate tags.
272
+ #
273
+ # @param author [String] Author metadata, when present.
274
+ #
275
+ # @param canonical_url [String] Resolved canonical URL, when present.
276
+ #
277
+ # @param description [String] Best description extracted from standard, Open Graph, or Twitter metadata.
278
+ #
279
+ # @param favicon [String] Resolved favicon URL, when present.
280
+ #
281
+ # @param image [String] Primary resolved preview image from Open Graph, Twitter, or image metadata.
282
+ #
283
+ # @param json_ld [Array<Hash{Symbol=>Object}>] JSON-LD structured data blocks parsed from the page.
284
+ #
285
+ # @param keywords [Array<String>] Keywords extracted from the page's keywords meta tag.
286
+ #
287
+ # @param language [String] Language extracted from html lang or language meta tags.
288
+ #
289
+ # @param modified_time [String] Modified timestamp/date from page metadata, when present.
290
+ #
291
+ # @param open_graph [Hash{Symbol=>String, Array<String>}] Open Graph metadata with the og: prefix removed and keys camel-cased.
292
+ #
293
+ # @param published_time [String] Published timestamp/date from page metadata, when present.
294
+ #
295
+ # @param robots [String] Robots meta directive, when present.
296
+ #
297
+ # @param site_name [String] Site or application name from page metadata.
298
+ #
299
+ # @param title [String] Best title extracted from the page.
300
+ #
301
+ # @param twitter [Hash{Symbol=>String, Array<String>}] Twitter card metadata with the twitter: prefix removed and keys camel-cased.
302
+
303
+ module AdditionalMeta
304
+ extend ContextDev::Internal::Type::Union
305
+
306
+ variant String
307
+
308
+ variant -> { ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata::AdditionalMeta::StringArray }
309
+
310
+ # @!method self.variants
311
+ # @return [Array(String, Array<String>)]
312
+
313
+ # @type [ContextDev::Internal::Type::Converter]
314
+ StringArray = ContextDev::Internal::Type::ArrayOf[String]
315
+ end
316
+
317
+ class Alternate < ContextDev::Internal::Type::BaseModel
318
+ # @!attribute href
319
+ # Resolved alternate URL.
320
+ #
321
+ # @return [String]
322
+ required :href, String
323
+
324
+ # @!attribute hreflang
325
+ # Language or locale for the alternate URL, when present.
326
+ #
327
+ # @return [String, nil]
328
+ optional :hreflang, String
329
+
330
+ # @!attribute title
331
+ # Alternate resource title, when present.
332
+ #
333
+ # @return [String, nil]
334
+ optional :title, String
335
+
336
+ # @!attribute type
337
+ # Alternate resource MIME type, when present.
338
+ #
339
+ # @return [String, nil]
340
+ optional :type, String
341
+
342
+ # @!method initialize(href:, hreflang: nil, title: nil, type: nil)
343
+ # @param href [String] Resolved alternate URL.
344
+ #
345
+ # @param hreflang [String] Language or locale for the alternate URL, when present.
346
+ #
347
+ # @param title [String] Alternate resource title, when present.
348
+ #
349
+ # @param type [String] Alternate resource MIME type, when present.
350
+ end
351
+
352
+ module OpenGraph
353
+ extend ContextDev::Internal::Type::Union
354
+
355
+ variant String
356
+
357
+ variant -> { ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata::OpenGraph::StringArray }
358
+
359
+ # @!method self.variants
360
+ # @return [Array(String, Array<String>)]
361
+
362
+ # @type [ContextDev::Internal::Type::Converter]
363
+ StringArray = ContextDev::Internal::Type::ArrayOf[String]
364
+ end
365
+
366
+ module Twitter
367
+ extend ContextDev::Internal::Type::Union
368
+
369
+ variant String
370
+
371
+ variant -> { ContextDev::Models::BatchGetResultsResponse::Data::Ok::Metadata::Twitter::StringArray }
372
+
373
+ # @!method self.variants
374
+ # @return [Array(String, Array<String>)]
375
+
376
+ # @type [ContextDev::Internal::Type::Converter]
377
+ StringArray = ContextDev::Internal::Type::ArrayOf[String]
378
+ end
379
+ end
380
+ end
381
+
382
+ class Error < ContextDev::Internal::Type::BaseModel
383
+ # @!attribute error_code
384
+ # Why the page failed.
385
+ #
386
+ # @return [String]
387
+ required :error_code, String
388
+
389
+ # @!attribute message
390
+ # Human-readable failure detail.
391
+ #
392
+ # @return [String]
393
+ required :message, String
394
+
395
+ # @!attribute status
396
+ # The page could not be scraped.
397
+ #
398
+ # @return [Symbol, :error]
399
+ required :status, const: :error
400
+
401
+ # @!attribute url
402
+ # URL as submitted, or as discovered by the crawl.
403
+ #
404
+ # @return [String]
405
+ required :url, String
406
+
407
+ # @!attribute item_id
408
+ # Caller-supplied identifier echoed from submission.
409
+ #
410
+ # @return [String, nil]
411
+ optional :item_id, String, api_name: :itemId
412
+
413
+ # @!attribute meta
414
+ # Caller-supplied metadata echoed from submission.
415
+ #
416
+ # @return [Hash{Symbol=>Object}, nil]
417
+ optional :meta, ContextDev::Internal::Type::HashOf[ContextDev::Internal::Type::Unknown]
418
+
419
+ # @!method initialize(error_code:, message:, url:, item_id: nil, meta: nil, status: :error)
420
+ # A page the batch could not fetch.
421
+ #
422
+ # @param error_code [String] Why the page failed.
423
+ #
424
+ # @param message [String] Human-readable failure detail.
425
+ #
426
+ # @param url [String] URL as submitted, or as discovered by the crawl.
427
+ #
428
+ # @param item_id [String] Caller-supplied identifier echoed from submission.
429
+ #
430
+ # @param meta [Hash{Symbol=>Object}] Caller-supplied metadata echoed from submission.
431
+ #
432
+ # @param status [Symbol, :error] The page could not be scraped.
433
+ end
434
+
435
+ # @!method self.variants
436
+ # @return [Array(ContextDev::Models::BatchGetResultsResponse::Data::Ok, ContextDev::Models::BatchGetResultsResponse::Data::Error)]
437
+ end
438
+
439
+ # @see ContextDev::Models::BatchGetResultsResponse#key_metadata
440
+ class KeyMetadata < ContextDev::Internal::Type::BaseModel
441
+ # @!attribute credits_consumed
442
+ # The number of credits consumed by this request.
443
+ #
444
+ # @return [Integer]
445
+ required :credits_consumed, Integer
446
+
447
+ # @!attribute credits_remaining
448
+ # The number of credits remaining for your organization after this request.
449
+ #
450
+ # @return [Integer]
451
+ required :credits_remaining, Integer
452
+
453
+ # @!method initialize(credits_consumed:, credits_remaining:)
454
+ # Metadata about the API key used for the request. Included in every response
455
+ # whenever a valid API key is provided, even when the response status is not 200.
456
+ #
457
+ # @param credits_consumed [Integer] The number of credits consumed by this request.
458
+ #
459
+ # @param credits_remaining [Integer] The number of credits remaining for your organization after this request.
460
+ end
461
+ end
462
+ end
463
+ end
@@ -0,0 +1,94 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ContextDev
4
+ module Models
5
+ # @see ContextDev::Resources::Batch#list
6
+ class BatchListParams < ContextDev::Internal::Type::BaseModel
7
+ extend ContextDev::Internal::Type::RequestParameters::Converter
8
+ include ContextDev::Internal::Type::RequestParameters
9
+
10
+ # @!attribute cursor
11
+ # Cursor from the previous page.
12
+ #
13
+ # @return [String, nil]
14
+ optional :cursor, String
15
+
16
+ # @!attribute limit
17
+ # Batches per page. Defaults to 25.
18
+ #
19
+ # @return [Integer, nil]
20
+ optional :limit, Integer
21
+
22
+ # @!attribute q
23
+ # Free-text search term, matched against the batch id, crawl source (start URL or
24
+ # sitemap domain), and tags.
25
+ #
26
+ # @return [String, nil]
27
+ optional :q, String
28
+
29
+ # @!attribute search_type
30
+ # `prefix` for as-you-type prefix matching (default), `exact` for full-token
31
+ # matching.
32
+ #
33
+ # @return [Symbol, ContextDev::Models::BatchListParams::SearchType, nil]
34
+ optional :search_type, enum: -> { ContextDev::BatchListParams::SearchType }
35
+
36
+ # @!attribute status
37
+ # Filter by status.
38
+ #
39
+ # @return [Symbol, ContextDev::Models::BatchListParams::Status, nil]
40
+ optional :status, enum: -> { ContextDev::BatchListParams::Status }
41
+
42
+ # @!attribute tags
43
+ # Comma-separated list of tags to filter by (matches batches having any of them).
44
+ #
45
+ # @return [String, nil]
46
+ optional :tags, String
47
+
48
+ # @!method initialize(cursor: nil, limit: nil, q: nil, search_type: nil, status: nil, tags: nil, request_options: {})
49
+ # Some parameter documentations has been truncated, see
50
+ # {ContextDev::Models::BatchListParams} for more details.
51
+ #
52
+ # @param cursor [String] Cursor from the previous page.
53
+ #
54
+ # @param limit [Integer] Batches per page. Defaults to 25.
55
+ #
56
+ # @param q [String] Free-text search term, matched against the batch id, crawl source (start URL or
57
+ #
58
+ # @param search_type [Symbol, ContextDev::Models::BatchListParams::SearchType] `prefix` for as-you-type prefix matching (default), `exact` for full-token match
59
+ #
60
+ # @param status [Symbol, ContextDev::Models::BatchListParams::Status] Filter by status.
61
+ #
62
+ # @param tags [String] Comma-separated list of tags to filter by (matches batches having any of them).
63
+ #
64
+ # @param request_options [ContextDev::RequestOptions, Hash{Symbol=>Object}]
65
+
66
+ # `prefix` for as-you-type prefix matching (default), `exact` for full-token
67
+ # matching.
68
+ module SearchType
69
+ extend ContextDev::Internal::Type::Enum
70
+
71
+ EXACT = :exact
72
+ PREFIX = :prefix
73
+
74
+ # @!method self.values
75
+ # @return [Array<Symbol>]
76
+ end
77
+
78
+ # Filter by status.
79
+ module Status
80
+ extend ContextDev::Internal::Type::Enum
81
+
82
+ QUEUED = :queued
83
+ RUNNING = :running
84
+ CANCELLING = :cancelling
85
+ COMPLETED = :completed
86
+ CANCELLED = :cancelled
87
+ FAILED = :failed
88
+
89
+ # @!method self.values
90
+ # @return [Array<Symbol>]
91
+ end
92
+ end
93
+ end
94
+ end