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
@@ -12,39 +12,40 @@ module ContextDev
12
12
  # its initial baseline.
13
13
  sig do
14
14
  params(
15
- change_detection:
16
- T.any(
17
- ContextDev::MonitorCreateParams::ChangeDetection::Exact::OrHash,
18
- ContextDev::MonitorCreateParams::ChangeDetection::Semantic::OrHash
19
- ),
20
15
  name: String,
21
- schedule: ContextDev::MonitorCreateParams::Schedule::OrHash,
22
16
  target:
23
17
  T.any(
24
18
  ContextDev::MonitorCreateParams::Target::Page::OrHash,
25
19
  ContextDev::MonitorCreateParams::Target::Sitemap::OrHash,
26
20
  ContextDev::MonitorCreateParams::Target::Extract::OrHash
27
21
  ),
22
+ change_detection:
23
+ T.any(
24
+ ContextDev::MonitorCreateParams::ChangeDetection::Exact::OrHash,
25
+ ContextDev::MonitorCreateParams::ChangeDetection::Semantic::OrHash
26
+ ),
28
27
  mode: ContextDev::MonitorCreateParams::Mode::OrSymbol,
28
+ schedule: ContextDev::MonitorCreateParams::Schedule::OrHash,
29
29
  tags: T::Array[String],
30
30
  webhook: T.nilable(ContextDev::MonitorCreateParams::Webhook::OrHash),
31
31
  request_options: ContextDev::RequestOptions::OrHash
32
32
  ).returns(ContextDev::Models::MonitorCreateResponse)
33
33
  end
34
34
  def create(
35
- # Discriminated union describing how changes are detected.
36
- change_detection:,
37
35
  name:,
38
- # Run the monitor on a fixed interval defined by a frequency and a unit, e.g.
39
- # every 6 hours or every 2 days. The total interval (frequency × unit) must be
40
- # between 10 minutes and 1 year.
41
- schedule:,
42
36
  # Discriminated union describing what the monitor watches.
43
37
  target:,
38
+ # Discriminated union describing how changes are detected.
39
+ change_detection: nil,
44
40
  # Top-level monitor category. Always `web` today; the concrete behavior is
45
41
  # described by `target` and `change_detection`.
46
42
  mode: nil,
43
+ # Run the monitor on a fixed interval defined by a frequency and a unit, e.g.
44
+ # every 6 hours or every 2 days. The total interval (frequency × unit) must be
45
+ # between 10 minutes and 1 year.
46
+ schedule: nil,
47
47
  # User-defined tags for grouping and filtering monitors and their changes.
48
+ # Duplicates are removed.
48
49
  tags: nil,
49
50
  webhook: nil,
50
51
  request_options: {}
@@ -97,6 +98,7 @@ module ContextDev
97
98
  schedule: nil,
98
99
  status: nil,
99
100
  # User-defined tags for grouping and filtering monitors and their changes.
101
+ # Duplicates are removed.
100
102
  tags: nil,
101
103
  # Discriminated union describing what the monitor watches.
102
104
  target: nil,
@@ -117,18 +119,23 @@ module ContextDev
117
119
  limit: Integer,
118
120
  q: String,
119
121
  search_by:
120
- T::Array[ContextDev::MonitorListParams::SearchBy::OrSymbol],
122
+ T.nilable(
123
+ T::Array[ContextDev::MonitorListParams::SearchBy::OrSymbol]
124
+ ),
121
125
  search_type: ContextDev::MonitorListParams::SearchType::OrSymbol,
122
126
  status: ContextDev::MonitorListParams::Status::OrSymbol,
123
127
  tag: String,
124
- tags: T::Array[String],
128
+ tags: T.nilable(T::Array[String]),
125
129
  target_type: ContextDev::MonitorListParams::TargetType::OrSymbol,
126
130
  request_options: ContextDev::RequestOptions::OrHash
127
131
  ).returns(ContextDev::Models::MonitorListResponse)
128
132
  end
129
133
  def list(
134
+ # Filter by change detection type.
130
135
  change_detection_type: nil,
136
+ # Opaque pagination cursor from a previous response.
131
137
  cursor: nil,
138
+ # Maximum number of items to return per page (1-100). Defaults to 25.
132
139
  limit: nil,
133
140
  # Free-text search term, matched against the fields named in `search_by`.
134
141
  q: nil,
@@ -138,16 +145,13 @@ module ContextDev
138
145
  # `prefix` for as-you-type prefix matching (default), `exact` for full-token
139
146
  # matching.
140
147
  search_type: nil,
141
- # Monitor lifecycle status. `failed` means the most recent run failed (see the
142
- # monitor's `last_error`); failed monitors keep running on schedule and flip back
143
- # to `active` on the next successful run. Monitors are auto-`paused` after
144
- # repeated consecutive failures or insufficient-credit skips; resume by PATCHing
145
- # status to `active`.
148
+ # Filter monitors by lifecycle status.
146
149
  status: nil,
147
150
  # Filter to items that have this tag.
148
151
  tag: nil,
149
152
  # Comma-separated list of tags to filter by (matches monitors having any of them).
150
153
  tags: nil,
154
+ # Filter by target type.
151
155
  target_type: nil,
152
156
  request_options: {}
153
157
  )
@@ -163,6 +167,33 @@ module ContextDev
163
167
  def delete(monitor_id, request_options: {})
164
168
  end
165
169
 
170
+ # Returns credits charged per monitor over an optional [since, until] window,
171
+ # newest spenders first.
172
+ sig do
173
+ params(
174
+ since: Time,
175
+ until_: Time,
176
+ request_options: ContextDev::RequestOptions::OrHash
177
+ ).returns(ContextDev::Models::MonitorGetCreditUsageResponse)
178
+ end
179
+ def get_credit_usage(
180
+ # Only include items at or after this ISO 8601 timestamp.
181
+ since: nil,
182
+ # Only include items before this ISO 8601 timestamp.
183
+ until_: nil,
184
+ request_options: {}
185
+ )
186
+ end
187
+
188
+ # Returns how many monitors the account has and the maximum it allows.
189
+ sig do
190
+ params(request_options: ContextDev::RequestOptions::OrHash).returns(
191
+ ContextDev::Models::MonitorGetLimitsResponse
192
+ )
193
+ end
194
+ def get_limits(request_options: {})
195
+ end
196
+
166
197
  # Returns an account-wide feed of detected changes across monitors.
167
198
  sig do
168
199
  params(
@@ -180,14 +211,21 @@ module ContextDev
180
211
  ).returns(ContextDev::Models::MonitorListAccountChangesResponse)
181
212
  end
182
213
  def list_account_changes(
214
+ # Filter by change detection type.
183
215
  change_detection_type: nil,
216
+ # Opaque pagination cursor from a previous response.
184
217
  cursor: nil,
218
+ # Maximum number of items to return per page (1-100). Defaults to 25.
185
219
  limit: nil,
220
+ # Filter changes to a single monitor.
186
221
  monitor_id: nil,
222
+ # Only include items at or after this ISO 8601 timestamp.
187
223
  since: nil,
188
224
  # Filter to items that have this tag.
189
225
  tag: nil,
226
+ # Filter by target type.
190
227
  target_type: nil,
228
+ # Only include items before this ISO 8601 timestamp.
191
229
  until_: nil,
192
230
  request_options: {}
193
231
  )
@@ -203,10 +241,11 @@ module ContextDev
203
241
  ).returns(ContextDev::Models::MonitorListAccountRunsResponse)
204
242
  end
205
243
  def list_account_runs(
244
+ # Opaque pagination cursor from a previous response.
206
245
  cursor: nil,
246
+ # Maximum number of items to return per page (1-100). Defaults to 25.
207
247
  limit: nil,
208
- # Lifecycle status of a run. `skipped` runs never executed — see `skip_reason`
209
- # (insufficient credits, monitor paused, or superseded by a concurrent run).
248
+ # Filter runs by lifecycle status.
210
249
  status: nil,
211
250
  request_options: {}
212
251
  )
@@ -226,11 +265,15 @@ module ContextDev
226
265
  end
227
266
  def list_changes(
228
267
  monitor_id,
268
+ # Opaque pagination cursor from a previous response.
229
269
  cursor: nil,
270
+ # Maximum number of items to return per page (1-100). Defaults to 25.
230
271
  limit: nil,
272
+ # Only include items at or after this ISO 8601 timestamp.
231
273
  since: nil,
232
274
  # Filter to items that have this tag.
233
275
  tag: nil,
276
+ # Only include items before this ISO 8601 timestamp.
234
277
  until_: nil,
235
278
  request_options: {}
236
279
  )
@@ -248,10 +291,11 @@ module ContextDev
248
291
  end
249
292
  def list_runs(
250
293
  monitor_id,
294
+ # Opaque pagination cursor from a previous response.
251
295
  cursor: nil,
296
+ # Maximum number of items to return per page (1-100). Defaults to 25.
252
297
  limit: nil,
253
- # Lifecycle status of a run. `skipped` runs never executed — see `skip_reason`
254
- # (insufficient credits, monitor paused, or superseded by a concurrent run).
298
+ # Filter runs by lifecycle status.
255
299
  status: nil,
256
300
  request_options: {}
257
301
  )
@@ -4,47 +4,74 @@ module ContextDev
4
4
  module Resources
5
5
  class Parse
6
6
  # Converts raw text, source code, web/data, PDF, Microsoft Office, and image bytes
7
- # into LLM-usable Markdown. The base request costs 1 credit. When OCR runs
8
- # (requires ocr=true), the entire call costs 5 credits; ocr=true requests where no
9
- # OCR ends up running still cost 1 credit.
7
+ # into LLM-usable Markdown.
10
8
  sig do
11
9
  params(
12
10
  body: ContextDev::Internal::FileInput,
11
+ client: String,
13
12
  extension: ContextDev::ParseHandleParams::Extension::OrSymbol,
14
- include_images: T::Boolean,
15
- include_links: T::Boolean,
16
- ocr: T::Boolean,
13
+ include_images:
14
+ T.any(
15
+ T::Boolean,
16
+ ContextDev::ParseHandleParams::IncludeImages::OrSymbol
17
+ ),
18
+ include_links:
19
+ T.any(
20
+ T::Boolean,
21
+ ContextDev::ParseHandleParams::IncludeLinks::OrSymbol
22
+ ),
23
+ ocr: T.any(T::Boolean, ContextDev::ParseHandleParams::Ocr::OrSymbol),
17
24
  pdf: ContextDev::ParseHandleParams::Pdf::OrHash,
18
- shorten_base64_images: T::Boolean,
19
- use_main_content_only: T::Boolean,
25
+ shorten_base64_images:
26
+ T.any(
27
+ T::Boolean,
28
+ ContextDev::ParseHandleParams::ShortenBase64Images::OrSymbol
29
+ ),
30
+ tags: T::Array[String],
31
+ use_main_content_only:
32
+ T.any(
33
+ T::Boolean,
34
+ ContextDev::ParseHandleParams::UseMainContentOnly::OrSymbol
35
+ ),
36
+ zdr: ContextDev::ParseHandleParams::Zdr::OrSymbol,
20
37
  request_options: ContextDev::RequestOptions::OrHash
21
38
  ).returns(ContextDev::Models::ParseHandleResponse)
22
39
  end
23
40
  def handle(
24
41
  # Body param
25
42
  body:,
26
- # Query param: Optional file extension hint. Case-insensitive; a leading dot is
27
- # accepted (e.g. ".pdf").
43
+ # Query param: Optional client identifier used for usage attribution.
44
+ client: nil,
45
+ # Query param: Optional file extension hint, such as pdf, docx, xlsx, pptx, html,
46
+ # json, csv, md, py, rtf, jpg, png, or txt.
28
47
  extension: nil,
29
48
  # Query param: Include image references in Markdown output
30
49
  include_images: nil,
31
50
  # Query param: Preserve hyperlinks in Markdown output
32
51
  include_links: nil,
33
- # Query param: Gates all OCR. When true, PDFs get embedded-image OCR (recognized
34
- # text inserted at each image's position in page reading order, preserving the
35
- # text layer; pdf.start/pdf.end limit the page range), scanned PDFs with no text
36
- # layer get full-document OCR, and raster images get their visible text
37
- # transcribed. When false, no OCR runs: scanned PDFs may yield no content and
38
- # images return only format/dimension metadata. Calls where OCR actually runs cost
39
- # 5 credits instead of 1.
52
+ # Query param: When true for PDF inputs, detect and OCR images embedded in the
53
+ # selected pages, inserting recognized text at each image's position in page
54
+ # reading order while preserving the PDF text layer. pdf.start/pdf.end limit the
55
+ # inclusive page range. When false, all OCR is disabled, including the automatic
56
+ # scanned-PDF fallback.
40
57
  ocr: nil,
41
- # Query param: PDF page-range controls. Use start/end to limit parsing (and OCR
42
- # when ocr=true) to an inclusive 1-based page range.
58
+ # Query param: PDF page-range options as a JSON object, e.g. {"start": 2, "end":
59
+ # 5}.
43
60
  pdf: nil,
44
61
  # Query param: Shorten base64-encoded image data in the Markdown output
45
62
  shorten_base64_images: nil,
63
+ # Query param: Optional comma-separated caller-defined tags for tracking this
64
+ # request. Tags are recorded on the request's usage log and can be used to filter
65
+ # usage on the dashboard usage page. Up to 20 tags, each 1-50 characters.
66
+ tags: nil,
46
67
  # Query param: Extract only the main content from HTML-like inputs
47
68
  use_main_content_only: nil,
69
+ # Query param: Set to enabled to bypass shared caches and omit request and
70
+ # response content from retained usage logs. Requires zero data retention to be
71
+ # enabled for your organization (contact support@context.dev), otherwise the
72
+ # request fails with ZDR_NOT_ENABLED. Successful ZDR responses include
73
+ # X-Context-ZDR: true.
74
+ zdr: nil,
48
75
  request_options: {}
49
76
  )
50
77
  end
@@ -15,6 +15,7 @@ module ContextDev
15
15
  ContextDev::UtilityPrefetchParams::Identifier::UtilityPrefetchEmailIdentifier::OrHash
16
16
  ),
17
17
  type: ContextDev::UtilityPrefetchParams::Type::OrSymbol,
18
+ tags: T::Array[String],
18
19
  timeout_ms: Integer,
19
20
  request_options: ContextDev::RequestOptions::OrHash
20
21
  ).returns(ContextDev::Models::UtilityPrefetchResponse)
@@ -24,6 +25,8 @@ module ContextDev
24
25
  identifier:,
25
26
  # What to prefetch. Currently only 'brand' is supported.
26
27
  type:,
28
+ # Optional tags for tracking usage. Up to 20 tags, each 1 to 50 characters.
29
+ tags: nil,
27
30
  # Optional timeout in milliseconds for the request. If the request takes longer
28
31
  # than this value, it will be aborted with a 408 status code. Maximum allowed
29
32
  # value is 300000ms (5 minutes).