context.dev 2.21.0 → 2.22.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 (229) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +24 -0
  3. data/README.md +1 -1
  4. data/lib/context_dev/client.rb +4 -9
  5. data/lib/context_dev/models/batch_cancel_params.rb +2 -2
  6. data/lib/context_dev/models/batch_cancel_response.rb +16 -21
  7. data/lib/context_dev/models/batch_delete_params.rb +2 -2
  8. data/lib/context_dev/models/batch_delete_response.rb +8 -8
  9. data/lib/context_dev/models/batch_get_results_params.rb +2 -2
  10. data/lib/context_dev/models/batch_get_results_response.rb +17 -22
  11. data/lib/context_dev/models/batch_list_response.rb +38 -47
  12. data/lib/context_dev/models/batch_retrieve_params.rb +2 -2
  13. data/lib/context_dev/models/batch_retrieve_response.rb +37 -46
  14. data/lib/context_dev/models/batch_submit_params.rb +80 -109
  15. data/lib/context_dev/models/batch_submit_response.rb +18 -28
  16. data/lib/context_dev/models/brand_retrieve_params.rb +90 -149
  17. data/lib/context_dev/models/brand_retrieve_response.rb +18 -22
  18. data/lib/context_dev/models/brand_search_params.rb +2 -3
  19. data/lib/context_dev/models/brand_search_response.rb +8 -8
  20. data/lib/context_dev/models/crawl_controls.rb +1 -2
  21. data/lib/context_dev/models/feedback_submit_params.rb +2 -2
  22. data/lib/context_dev/models/feedback_submit_response.rb +8 -8
  23. data/lib/context_dev/models/industry_retrieve_naics_params.rb +17 -32
  24. data/lib/context_dev/models/industry_retrieve_naics_response.rb +10 -10
  25. data/lib/context_dev/models/industry_retrieve_sic_params.rb +20 -39
  26. data/lib/context_dev/models/industry_retrieve_sic_response.rb +10 -10
  27. data/lib/context_dev/models/intake.rb +7 -13
  28. data/lib/context_dev/models/log_list_response.rb +14 -10
  29. data/lib/context_dev/models/log_retrieve_response.rb +15 -41
  30. data/lib/context_dev/models/monitor_create_params.rb +238 -72
  31. data/lib/context_dev/models/monitor_create_response.rb +364 -175
  32. data/lib/context_dev/models/monitor_delete_params.rb +3 -1
  33. data/lib/context_dev/models/monitor_delete_response.rb +44 -1
  34. data/lib/context_dev/models/monitor_get_credit_usage_response.rb +43 -1
  35. data/lib/context_dev/models/monitor_get_limits_response.rb +47 -7
  36. data/lib/context_dev/models/monitor_list_account_changes_response.rb +143 -20
  37. data/lib/context_dev/models/monitor_list_account_runs_response.rb +50 -8
  38. data/lib/context_dev/models/monitor_list_changes_params.rb +2 -1
  39. data/lib/context_dev/models/monitor_list_changes_response.rb +143 -20
  40. data/lib/context_dev/models/monitor_list_params.rb +3 -3
  41. data/lib/context_dev/models/monitor_list_response.rb +304 -106
  42. data/lib/context_dev/models/monitor_list_runs_params.rb +2 -1
  43. data/lib/context_dev/models/monitor_list_runs_response.rb +50 -8
  44. data/lib/context_dev/models/monitor_retrieve_change_params.rb +3 -1
  45. data/lib/context_dev/models/monitor_retrieve_change_response.rb +45 -15
  46. data/lib/context_dev/models/monitor_retrieve_params.rb +3 -1
  47. data/lib/context_dev/models/monitor_retrieve_response.rb +361 -171
  48. data/lib/context_dev/models/monitor_retrieve_run_params.rb +6 -2
  49. data/lib/context_dev/models/monitor_retrieve_run_response.rb +45 -8
  50. data/lib/context_dev/models/monitor_rotate_webhook_secret_params.rb +3 -1
  51. data/lib/context_dev/models/monitor_rotate_webhook_secret_response.rb +364 -172
  52. data/lib/context_dev/models/monitor_run_params.rb +3 -1
  53. data/lib/context_dev/models/monitor_run_response.rb +42 -4
  54. data/lib/context_dev/models/monitor_update_params.rb +239 -71
  55. data/lib/context_dev/models/monitor_update_response.rb +361 -171
  56. data/lib/context_dev/models/news_search_params.rb +10 -6
  57. data/lib/context_dev/models/news_search_response.rb +8 -8
  58. data/lib/context_dev/models/parse_handle_params.rb +9 -20
  59. data/lib/context_dev/models/parse_handle_response.rb +8 -8
  60. data/lib/context_dev/models/person_enrich_params.rb +76 -50
  61. data/lib/context_dev/models/person_enrich_response.rb +8 -8
  62. data/lib/context_dev/models/utility_prefetch_params.rb +15 -29
  63. data/lib/context_dev/models/utility_prefetch_response.rb +10 -10
  64. data/lib/context_dev/models/web_answers_params.rb +28 -47
  65. data/lib/context_dev/models/web_answers_response.rb +9 -8
  66. data/lib/context_dev/models/web_extract_competitors_params.rb +17 -32
  67. data/lib/context_dev/models/web_extract_competitors_response.rb +8 -8
  68. data/lib/context_dev/models/web_extract_styleguide_params.rb +22 -44
  69. data/lib/context_dev/models/web_extract_styleguide_response.rb +34 -44
  70. data/lib/context_dev/models/web_map_urls_params.rb +30 -51
  71. data/lib/context_dev/models/web_map_urls_response.rb +8 -8
  72. data/lib/context_dev/models/web_scrape_params.rb +193 -191
  73. data/lib/context_dev/models/web_scrape_response.rb +219 -95
  74. data/lib/context_dev/models/web_screenshot_params.rb +20 -39
  75. data/lib/context_dev/models/web_screenshot_response.rb +18 -28
  76. data/lib/context_dev/models/web_search_params.rb +76 -65
  77. data/lib/context_dev/models/web_search_response.rb +68 -27
  78. data/lib/context_dev/models/web_web_crawl_md_params.rb +41 -70
  79. data/lib/context_dev/models/web_web_crawl_md_response.rb +11 -15
  80. data/lib/context_dev/models/webhook_delivery.rb +3 -7
  81. data/lib/context_dev/models/webhooks/attempt.rb +3 -3
  82. data/lib/context_dev/models/webhooks/delivery.rb +16 -11
  83. data/lib/context_dev/models/webhooks/delivery_list_attempts_params.rb +2 -6
  84. data/lib/context_dev/models/webhooks/delivery_list_attempts_response.rb +8 -8
  85. data/lib/context_dev/models/webhooks/delivery_list_params.rb +4 -4
  86. data/lib/context_dev/models/webhooks/delivery_list_response.rb +8 -8
  87. data/lib/context_dev/models/webhooks/delivery_retrieve_params.rb +2 -6
  88. data/lib/context_dev/models/webhooks/delivery_retrieve_response.rb +8 -8
  89. data/lib/context_dev/models/webhooks/delivery_retry_params.rb +4 -4
  90. data/lib/context_dev/models/webhooks/delivery_retry_response.rb +8 -8
  91. data/lib/context_dev/models/webhooks/delivery_summary.rb +16 -11
  92. data/lib/context_dev/resources/batch.rb +17 -16
  93. data/lib/context_dev/resources/brand.rb +6 -8
  94. data/lib/context_dev/resources/feedback.rb +4 -5
  95. data/lib/context_dev/resources/industry.rb +9 -11
  96. data/lib/context_dev/resources/logs.rb +4 -5
  97. data/lib/context_dev/resources/monitors.rb +50 -53
  98. data/lib/context_dev/resources/news.rb +4 -8
  99. data/lib/context_dev/resources/parse.rb +4 -5
  100. data/lib/context_dev/resources/people.rb +11 -13
  101. data/lib/context_dev/resources/utility.rb +4 -11
  102. data/lib/context_dev/resources/web.rb +69 -94
  103. data/lib/context_dev/resources/webhooks/deliveries.rb +10 -18
  104. data/lib/context_dev/resources/webhooks.rb +1 -1
  105. data/lib/context_dev/version.rb +1 -1
  106. data/rbi/context_dev/client.rbi +4 -9
  107. data/rbi/context_dev/models/batch_cancel_params.rbi +2 -2
  108. data/rbi/context_dev/models/batch_cancel_response.rbi +17 -21
  109. data/rbi/context_dev/models/batch_delete_params.rbi +2 -2
  110. data/rbi/context_dev/models/batch_delete_response.rbi +9 -9
  111. data/rbi/context_dev/models/batch_get_results_params.rbi +2 -2
  112. data/rbi/context_dev/models/batch_get_results_response.rbi +18 -26
  113. data/rbi/context_dev/models/batch_list_response.rbi +41 -53
  114. data/rbi/context_dev/models/batch_retrieve_params.rbi +2 -2
  115. data/rbi/context_dev/models/batch_retrieve_response.rbi +40 -52
  116. data/rbi/context_dev/models/batch_submit_params.rbi +87 -147
  117. data/rbi/context_dev/models/batch_submit_response.rbi +19 -31
  118. data/rbi/context_dev/models/brand_retrieve_params.rbi +99 -190
  119. data/rbi/context_dev/models/brand_retrieve_response.rbi +19 -25
  120. data/rbi/context_dev/models/brand_search_params.rbi +2 -4
  121. data/rbi/context_dev/models/brand_search_response.rbi +9 -9
  122. data/rbi/context_dev/models/crawl_controls.rbi +1 -2
  123. data/rbi/context_dev/models/feedback_submit_params.rbi +2 -2
  124. data/rbi/context_dev/models/feedback_submit_response.rbi +9 -9
  125. data/rbi/context_dev/models/industry_retrieve_naics_params.rbi +19 -42
  126. data/rbi/context_dev/models/industry_retrieve_naics_response.rbi +11 -11
  127. data/rbi/context_dev/models/industry_retrieve_sic_params.rbi +22 -51
  128. data/rbi/context_dev/models/industry_retrieve_sic_response.rbi +11 -11
  129. data/rbi/context_dev/models/intake.rbi +7 -19
  130. data/rbi/context_dev/models/log_list_response.rbi +13 -11
  131. data/rbi/context_dev/models/log_retrieve_response.rbi +13 -76
  132. data/rbi/context_dev/models/monitor_create_params.rbi +418 -78
  133. data/rbi/context_dev/models/monitor_create_response.rbi +654 -287
  134. data/rbi/context_dev/models/monitor_delete_params.rbi +6 -1
  135. data/rbi/context_dev/models/monitor_delete_response.rbi +89 -3
  136. data/rbi/context_dev/models/monitor_get_credit_usage_response.rbi +77 -3
  137. data/rbi/context_dev/models/monitor_get_limits_response.rbi +83 -10
  138. data/rbi/context_dev/models/monitor_list_account_changes_response.rbi +236 -24
  139. data/rbi/context_dev/models/monitor_list_account_runs_response.rbi +86 -12
  140. data/rbi/context_dev/models/monitor_list_changes_params.rbi +2 -0
  141. data/rbi/context_dev/models/monitor_list_changes_response.rbi +234 -24
  142. data/rbi/context_dev/models/monitor_list_params.rbi +4 -4
  143. data/rbi/context_dev/models/monitor_list_response.rbi +502 -130
  144. data/rbi/context_dev/models/monitor_list_runs_params.rbi +2 -0
  145. data/rbi/context_dev/models/monitor_list_runs_response.rbi +84 -12
  146. data/rbi/context_dev/models/monitor_retrieve_change_params.rbi +6 -1
  147. data/rbi/context_dev/models/monitor_retrieve_change_response.rbi +79 -15
  148. data/rbi/context_dev/models/monitor_retrieve_params.rbi +6 -1
  149. data/rbi/context_dev/models/monitor_retrieve_response.rbi +654 -283
  150. data/rbi/context_dev/models/monitor_retrieve_run_params.rbi +9 -1
  151. data/rbi/context_dev/models/monitor_retrieve_run_response.rbi +77 -9
  152. data/rbi/context_dev/models/monitor_rotate_webhook_secret_params.rbi +6 -1
  153. data/rbi/context_dev/models/monitor_rotate_webhook_secret_response.rbi +659 -288
  154. data/rbi/context_dev/models/monitor_run_params.rbi +6 -1
  155. data/rbi/context_dev/models/monitor_run_response.rbi +82 -9
  156. data/rbi/context_dev/models/monitor_update_params.rbi +420 -75
  157. data/rbi/context_dev/models/monitor_update_response.rbi +650 -281
  158. data/rbi/context_dev/models/news_search_params.rbi +10 -2
  159. data/rbi/context_dev/models/news_search_response.rbi +9 -9
  160. data/rbi/context_dev/models/parse_handle_params.rbi +10 -29
  161. data/rbi/context_dev/models/parse_handle_response.rbi +9 -9
  162. data/rbi/context_dev/models/person_enrich_params.rbi +86 -44
  163. data/rbi/context_dev/models/person_enrich_response.rbi +9 -9
  164. data/rbi/context_dev/models/utility_prefetch_params.rbi +15 -27
  165. data/rbi/context_dev/models/utility_prefetch_response.rbi +11 -11
  166. data/rbi/context_dev/models/web_answers_params.rbi +33 -63
  167. data/rbi/context_dev/models/web_answers_response.rbi +11 -9
  168. data/rbi/context_dev/models/web_extract_competitors_params.rbi +19 -42
  169. data/rbi/context_dev/models/web_extract_competitors_response.rbi +9 -9
  170. data/rbi/context_dev/models/web_extract_styleguide_params.rbi +25 -61
  171. data/rbi/context_dev/models/web_extract_styleguide_response.rbi +36 -51
  172. data/rbi/context_dev/models/web_map_urls_params.rbi +33 -68
  173. data/rbi/context_dev/models/web_map_urls_response.rbi +9 -9
  174. data/rbi/context_dev/models/web_scrape_params.rbi +212 -206
  175. data/rbi/context_dev/models/web_scrape_response.rbi +296 -120
  176. data/rbi/context_dev/models/web_screenshot_params.rbi +22 -51
  177. data/rbi/context_dev/models/web_screenshot_response.rbi +20 -35
  178. data/rbi/context_dev/models/web_search_params.rbi +114 -82
  179. data/rbi/context_dev/models/web_search_response.rbi +145 -33
  180. data/rbi/context_dev/models/web_web_crawl_md_params.rbi +45 -95
  181. data/rbi/context_dev/models/web_web_crawl_md_response.rbi +12 -18
  182. data/rbi/context_dev/models/webhook_delivery.rbi +3 -9
  183. data/rbi/context_dev/models/webhooks/attempt.rbi +3 -3
  184. data/rbi/context_dev/models/webhooks/delivery.rbi +14 -11
  185. data/rbi/context_dev/models/webhooks/delivery_list_attempts_params.rbi +2 -4
  186. data/rbi/context_dev/models/webhooks/delivery_list_attempts_response.rbi +9 -9
  187. data/rbi/context_dev/models/webhooks/delivery_list_params.rbi +4 -4
  188. data/rbi/context_dev/models/webhooks/delivery_list_response.rbi +9 -9
  189. data/rbi/context_dev/models/webhooks/delivery_retrieve_params.rbi +2 -4
  190. data/rbi/context_dev/models/webhooks/delivery_retrieve_response.rbi +9 -9
  191. data/rbi/context_dev/models/webhooks/delivery_retry_params.rbi +4 -4
  192. data/rbi/context_dev/models/webhooks/delivery_retry_response.rbi +9 -9
  193. data/rbi/context_dev/models/webhooks/delivery_summary.rbi +14 -11
  194. data/rbi/context_dev/resources/batch.rbi +19 -18
  195. data/rbi/context_dev/resources/brand.rbi +6 -9
  196. data/rbi/context_dev/resources/feedback.rbi +4 -5
  197. data/rbi/context_dev/resources/industry.rbi +11 -27
  198. data/rbi/context_dev/resources/logs.rbi +4 -5
  199. data/rbi/context_dev/resources/monitors.rbi +71 -49
  200. data/rbi/context_dev/resources/news.rbi +4 -8
  201. data/rbi/context_dev/resources/parse.rbi +7 -14
  202. data/rbi/context_dev/resources/people.rbi +15 -13
  203. data/rbi/context_dev/resources/utility.rbi +4 -11
  204. data/rbi/context_dev/resources/web.rbi +89 -190
  205. data/rbi/context_dev/resources/webhooks/deliveries.rbi +10 -12
  206. data/rbi/context_dev/resources/webhooks.rbi +1 -1
  207. data/sig/context_dev/models/log_retrieve_response.rbs +0 -28
  208. data/sig/context_dev/models/monitor_create_params.rbs +113 -0
  209. data/sig/context_dev/models/monitor_create_response.rbs +203 -53
  210. data/sig/context_dev/models/monitor_delete_response.rbs +46 -3
  211. data/sig/context_dev/models/monitor_get_credit_usage_response.rbs +36 -3
  212. data/sig/context_dev/models/monitor_get_limits_response.rbs +36 -3
  213. data/sig/context_dev/models/monitor_list_account_changes_response.rbs +111 -8
  214. data/sig/context_dev/models/monitor_list_account_runs_response.rbs +36 -3
  215. data/sig/context_dev/models/monitor_list_changes_response.rbs +111 -8
  216. data/sig/context_dev/models/monitor_list_response.rbs +149 -3
  217. data/sig/context_dev/models/monitor_list_runs_response.rbs +36 -3
  218. data/sig/context_dev/models/monitor_retrieve_change_response.rbs +33 -0
  219. data/sig/context_dev/models/monitor_retrieve_response.rbs +203 -53
  220. data/sig/context_dev/models/monitor_retrieve_run_response.rbs +33 -0
  221. data/sig/context_dev/models/monitor_rotate_webhook_secret_response.rbs +203 -53
  222. data/sig/context_dev/models/monitor_run_response.rbs +48 -3
  223. data/sig/context_dev/models/monitor_update_params.rbs +113 -0
  224. data/sig/context_dev/models/monitor_update_response.rbs +203 -53
  225. data/sig/context_dev/models/web_scrape_response.rbs +204 -27
  226. data/sig/context_dev/models/web_search_params.rbs +25 -0
  227. data/sig/context_dev/models/web_search_response.rbs +48 -0
  228. data/sig/context_dev/resources/web.rbs +1 -0
  229. metadata +2 -2
@@ -8,12 +8,14 @@ module ContextDev
8
8
  include ContextDev::Internal::Type::RequestParameters
9
9
 
10
10
  # @!attribute monitor_id
11
+ # ID of the monitor.
11
12
  #
12
13
  # @return [String]
13
14
  required :monitor_id, String
14
15
 
15
16
  # @!method initialize(monitor_id:, request_options: {})
16
- # @param monitor_id [String]
17
+ # @param monitor_id [String] ID of the monitor.
18
+ #
17
19
  # @param request_options [ContextDev::RequestOptions, Hash{Symbol=>Object}]
18
20
  end
19
21
  end
@@ -14,14 +14,26 @@ module ContextDev
14
14
  # @return [Boolean]
15
15
  required :queued, ContextDev::Internal::Type::Boolean
16
16
 
17
+ # @!attribute request_id
18
+ # Unique ID of this request, also in `X-Request-Id`. Include it when contacting
19
+ # support.
20
+ #
21
+ # @return [String]
22
+ required :request_id, String
23
+
17
24
  # @!attribute run_id
18
- # The queued run. Poll GET /monitors/{monitor_id}/runs or use it to correlate
19
- # results.
25
+ # ID of the queued run; pass it to Retrieve a monitor run.
20
26
  #
21
27
  # @return [String]
22
28
  required :run_id, String
23
29
 
24
- # @!method initialize(monitor_id:, queued:, run_id:)
30
+ # @!attribute key_metadata
31
+ # Credits this request used and your remaining balance.
32
+ #
33
+ # @return [ContextDev::Models::MonitorRunResponse::KeyMetadata, nil]
34
+ optional :key_metadata, -> { ContextDev::Models::MonitorRunResponse::KeyMetadata }
35
+
36
+ # @!method initialize(monitor_id:, queued:, request_id:, run_id:, key_metadata: nil)
25
37
  # Some parameter documentations has been truncated, see
26
38
  # {ContextDev::Models::MonitorRunResponse} for more details.
27
39
  #
@@ -29,7 +41,33 @@ module ContextDev
29
41
  #
30
42
  # @param queued [Boolean]
31
43
  #
32
- # @param run_id [String] The queued run. Poll GET /monitors/{monitor_id}/runs or use it to correlate resu
44
+ # @param request_id [String] Unique ID of this request, also in `X-Request-Id`. Include it when contacting su
45
+ #
46
+ # @param run_id [String] ID of the queued run; pass it to Retrieve a monitor run.
47
+ #
48
+ # @param key_metadata [ContextDev::Models::MonitorRunResponse::KeyMetadata] Credits this request used and your remaining balance.
49
+
50
+ # @see ContextDev::Models::MonitorRunResponse#key_metadata
51
+ class KeyMetadata < ContextDev::Internal::Type::BaseModel
52
+ # @!attribute credits_consumed
53
+ # Credits charged for this request.
54
+ #
55
+ # @return [Integer]
56
+ required :credits_consumed, Integer
57
+
58
+ # @!attribute credits_remaining
59
+ # Credits remaining for your organization.
60
+ #
61
+ # @return [Integer]
62
+ required :credits_remaining, Integer
63
+
64
+ # @!method initialize(credits_consumed:, credits_remaining:)
65
+ # Credits this request used and your remaining balance.
66
+ #
67
+ # @param credits_consumed [Integer] Credits charged for this request.
68
+ #
69
+ # @param credits_remaining [Integer] Credits remaining for your organization.
70
+ end
33
71
  end
34
72
  end
35
73
  end
@@ -8,17 +8,20 @@ module ContextDev
8
8
  include ContextDev::Internal::Type::RequestParameters
9
9
 
10
10
  # @!attribute monitor_id
11
+ # ID of the monitor.
11
12
  #
12
13
  # @return [String]
13
14
  required :monitor_id, String
14
15
 
15
16
  # @!attribute change_detection
16
- # Discriminated union describing how changes are detected.
17
+ # How changes are judged. Defaults to `semantic` for extract targets and page
18
+ # targets with `instructions`, otherwise `exact`.
17
19
  #
18
20
  # @return [ContextDev::Models::MonitorUpdateParams::ChangeDetection::Exact, ContextDev::Models::MonitorUpdateParams::ChangeDetection::Semantic, nil]
19
21
  optional :change_detection, union: -> { ContextDev::MonitorUpdateParams::ChangeDetection }
20
22
 
21
23
  # @!attribute name
24
+ # Display name for the monitor.
22
25
  #
23
26
  # @return [String, nil]
24
27
  optional :name, String
@@ -32,25 +35,25 @@ module ContextDev
32
35
  optional :schedule, -> { ContextDev::MonitorUpdateParams::Schedule }
33
36
 
34
37
  # @!attribute status
38
+ # Set `paused` to stop scheduled runs or `active` to resume them.
35
39
  #
36
40
  # @return [Symbol, ContextDev::Models::MonitorUpdateParams::Status, nil]
37
41
  optional :status, enum: -> { ContextDev::MonitorUpdateParams::Status }
38
42
 
39
43
  # @!attribute tags
40
- # User-defined tags for grouping and filtering monitors and their changes.
41
- # Duplicates are removed.
44
+ # Labels for filtering monitors, their changes, and their usage.
42
45
  #
43
46
  # @return [Array<String>, nil]
44
47
  optional :tags, ContextDev::Internal::Type::ArrayOf[String]
45
48
 
46
49
  # @!attribute target
47
- # Discriminated union describing what the monitor watches.
50
+ # What to watch: a page, a sitemap, or data extracted from a site.
48
51
  #
49
52
  # @return [ContextDev::Models::MonitorUpdateParams::Target::Page, ContextDev::Models::MonitorUpdateParams::Target::Sitemap, ContextDev::Models::MonitorUpdateParams::Target::Extract, nil]
50
53
  optional :target, union: -> { ContextDev::MonitorUpdateParams::Target }
51
54
 
52
55
  # @!attribute webhook
53
- # Set to null to remove the webhook.
56
+ # Set to null to remove the webhook. Changing `url` issues a new secret.
54
57
  #
55
58
  # @return [ContextDev::Models::MonitorUpdateParams::Webhook, nil]
56
59
  optional :webhook, -> { ContextDev::MonitorUpdateParams::Webhook }, nil?: true
@@ -59,25 +62,26 @@ module ContextDev
59
62
  # Some parameter documentations has been truncated, see
60
63
  # {ContextDev::Models::MonitorUpdateParams} for more details.
61
64
  #
62
- # @param monitor_id [String]
65
+ # @param monitor_id [String] ID of the monitor.
63
66
  #
64
- # @param change_detection [ContextDev::Models::MonitorUpdateParams::ChangeDetection::Exact, ContextDev::Models::MonitorUpdateParams::ChangeDetection::Semantic] Discriminated union describing how changes are detected.
67
+ # @param change_detection [ContextDev::Models::MonitorUpdateParams::ChangeDetection::Exact, ContextDev::Models::MonitorUpdateParams::ChangeDetection::Semantic] How changes are judged. Defaults to `semantic` for extract targets and page targ
65
68
  #
66
- # @param name [String]
69
+ # @param name [String] Display name for the monitor.
67
70
  #
68
71
  # @param schedule [ContextDev::Models::MonitorUpdateParams::Schedule] Run the monitor on a fixed interval defined by a frequency and a unit, e.g. ever
69
72
  #
70
- # @param status [Symbol, ContextDev::Models::MonitorUpdateParams::Status]
73
+ # @param status [Symbol, ContextDev::Models::MonitorUpdateParams::Status] Set `paused` to stop scheduled runs or `active` to resume them.
71
74
  #
72
- # @param tags [Array<String>] User-defined tags for grouping and filtering monitors and their changes. Duplica
75
+ # @param tags [Array<String>] Labels for filtering monitors, their changes, and their usage.
73
76
  #
74
- # @param target [ContextDev::Models::MonitorUpdateParams::Target::Page, ContextDev::Models::MonitorUpdateParams::Target::Sitemap, ContextDev::Models::MonitorUpdateParams::Target::Extract] Discriminated union describing what the monitor watches.
77
+ # @param target [ContextDev::Models::MonitorUpdateParams::Target::Page, ContextDev::Models::MonitorUpdateParams::Target::Sitemap, ContextDev::Models::MonitorUpdateParams::Target::Extract] What to watch: a page, a sitemap, or data extracted from a site.
75
78
  #
76
- # @param webhook [ContextDev::Models::MonitorUpdateParams::Webhook, nil] Set to null to remove the webhook.
79
+ # @param webhook [ContextDev::Models::MonitorUpdateParams::Webhook, nil] Set to null to remove the webhook. Changing `url` issues a new secret.
77
80
  #
78
81
  # @param request_options [ContextDev::RequestOptions, Hash{Symbol=>Object}]
79
82
 
80
- # Discriminated union describing how changes are detected.
83
+ # How changes are judged. Defaults to `semantic` for extract targets and page
84
+ # targets with `instructions`, otherwise `exact`.
81
85
  module ChangeDetection
82
86
  extend ContextDev::Internal::Type::Union
83
87
 
@@ -86,11 +90,12 @@ module ContextDev
86
90
  # Detect exact changes. For page targets, this means visible text diffs. For sitemap targets, this means URL additions and removals.
87
91
  variant :exact, -> { ContextDev::MonitorUpdateParams::ChangeDetection::Exact }
88
92
 
89
- # Detect meaning-level changes to page content, ignoring cosmetic or instruction-irrelevant differences. Which changes are meaningful is judged against the page or extract target's `instructions` (and an extract target's `schema`, when provided).
93
+ # Detect meaningful content changes using the target’s instructions and optional schema.
90
94
  variant :semantic, -> { ContextDev::MonitorUpdateParams::ChangeDetection::Semantic }
91
95
 
92
96
  class Exact < ContextDev::Internal::Type::BaseModel
93
97
  # @!attribute type
98
+ # Use `exact` to compare visible text or sitemap URLs.
94
99
  #
95
100
  # @return [Symbol, :exact]
96
101
  required :type, const: :exact
@@ -99,28 +104,29 @@ module ContextDev
99
104
  # Detect exact changes. For page targets, this means visible text diffs. For
100
105
  # sitemap targets, this means URL additions and removals.
101
106
  #
102
- # @param type [Symbol, :exact]
107
+ # @param type [Symbol, :exact] Use `exact` to compare visible text or sitemap URLs.
103
108
  end
104
109
 
105
110
  class Semantic < ContextDev::Internal::Type::BaseModel
106
111
  # @!attribute type
112
+ # Use `semantic` to judge changes against the target instructions.
107
113
  #
108
114
  # @return [Symbol, :semantic]
109
115
  required :type, const: :semantic
110
116
 
111
117
  # @!attribute confidence_threshold
118
+ # Minimum confidence required to report a meaningful change, from 0 to 1.
112
119
  #
113
120
  # @return [Float, nil]
114
121
  optional :confidence_threshold, Float
115
122
 
116
123
  # @!method initialize(confidence_threshold: nil, type: :semantic)
117
- # Detect meaning-level changes to page content, ignoring cosmetic or
118
- # instruction-irrelevant differences. Which changes are meaningful is judged
119
- # against the page or extract target's `instructions` (and an extract target's
120
- # `schema`, when provided).
124
+ # Detect meaningful content changes using the target’s instructions and optional
125
+ # schema.
121
126
  #
122
- # @param confidence_threshold [Float]
123
- # @param type [Symbol, :semantic]
127
+ # @param confidence_threshold [Float] Minimum confidence required to report a meaningful change, from 0 to 1.
128
+ #
129
+ # @param type [Symbol, :semantic] Use `semantic` to judge changes against the target instructions.
124
130
  end
125
131
 
126
132
  # @!method self.variants
@@ -137,11 +143,13 @@ module ContextDev
137
143
  required :frequency, Integer
138
144
 
139
145
  # @!attribute type
146
+ # Use `interval` to run on a repeating schedule.
140
147
  #
141
148
  # @return [Symbol, ContextDev::Models::MonitorUpdateParams::Schedule::Type]
142
149
  required :type, enum: -> { ContextDev::MonitorUpdateParams::Schedule::Type }
143
150
 
144
151
  # @!attribute unit
152
+ # Time unit used with `frequency` to set the run interval.
145
153
  #
146
154
  # @return [Symbol, ContextDev::Models::MonitorUpdateParams::Schedule::Unit]
147
155
  required :unit, enum: -> { ContextDev::MonitorUpdateParams::Schedule::Unit }
@@ -156,10 +164,12 @@ module ContextDev
156
164
  #
157
165
  # @param frequency [Integer] Number of units between runs. The resulting interval (frequency × unit) must be
158
166
  #
159
- # @param type [Symbol, ContextDev::Models::MonitorUpdateParams::Schedule::Type]
167
+ # @param type [Symbol, ContextDev::Models::MonitorUpdateParams::Schedule::Type] Use `interval` to run on a repeating schedule.
160
168
  #
161
- # @param unit [Symbol, ContextDev::Models::MonitorUpdateParams::Schedule::Unit]
169
+ # @param unit [Symbol, ContextDev::Models::MonitorUpdateParams::Schedule::Unit] Time unit used with `frequency` to set the run interval.
162
170
 
171
+ # Use `interval` to run on a repeating schedule.
172
+ #
163
173
  # @see ContextDev::Models::MonitorUpdateParams::Schedule#type
164
174
  module Type
165
175
  extend ContextDev::Internal::Type::Enum
@@ -170,6 +180,8 @@ module ContextDev
170
180
  # @return [Array<Symbol>]
171
181
  end
172
182
 
183
+ # Time unit used with `frequency` to set the run interval.
184
+ #
173
185
  # @see ContextDev::Models::MonitorUpdateParams::Schedule#unit
174
186
  module Unit
175
187
  extend ContextDev::Internal::Type::Enum
@@ -183,6 +195,7 @@ module ContextDev
183
195
  end
184
196
  end
185
197
 
198
+ # Set `paused` to stop scheduled runs or `active` to resume them.
186
199
  module Status
187
200
  extend ContextDev::Internal::Type::Enum
188
201
 
@@ -193,7 +206,7 @@ module ContextDev
193
206
  # @return [Array<Symbol>]
194
207
  end
195
208
 
196
- # Discriminated union describing what the monitor watches.
209
+ # What to watch: a page, a sitemap, or data extracted from a site.
197
210
  module Target
198
211
  extend ContextDev::Internal::Type::Union
199
212
 
@@ -202,38 +215,46 @@ module ContextDev
202
215
  # Watch a single web page. Exact detection reports visible-text diffs; semantic detection judges confirmed stable diffs against `instructions`.
203
216
  variant :page, -> { ContextDev::MonitorUpdateParams::Target::Page }
204
217
 
205
- # Watch a sitemap for URL additions and removals. Crawled URLs are normalized (lowercased host, no trailing slash/fragment) and scoped to the monitored site and its subdomains before comparison. On a detected difference the sitemap is re-fetched within the same run and only URLs both observations agree on are reported, suppressing transient crawl flaps.
218
+ # Watch a site’s URL inventory for confirmed additions and removals.
206
219
  variant :sitemap, -> { ContextDev::MonitorUpdateParams::Target::Sitemap }
207
220
 
208
- # Watch the monitor-relevant pages of a site for meaningful changes. A crawl guided by `schema`/`instructions` selects up to `max_pages` relevant pages to track; each run re-checks exactly those pages, and confirmed content changes are judged for relevance against the monitor's `instructions` (and `schema`, when provided). The tracked page set is refreshed by a periodic re-discovery crawl.
221
+ # Track relevant pages selected by `schema` and `instructions`; refresh the page set periodically.
209
222
  variant :extract, -> { ContextDev::MonitorUpdateParams::Target::Extract }
210
223
 
211
224
  class Page < ContextDev::Internal::Type::BaseModel
212
225
  # @!attribute type
226
+ # Use `page` to watch one web page.
213
227
  #
214
228
  # @return [Symbol, :page]
215
229
  required :type, const: :page
216
230
 
217
231
  # @!attribute url
232
+ # Public HTTP(S) page URL to monitor.
218
233
  #
219
234
  # @return [String]
220
235
  required :url, String
221
236
 
237
+ # @!attribute actions
238
+ # Optional browser actions executed in array order after the page loads, before
239
+ # content is captured, on every run. Requires a paid plan. Maximum: 5 actions.
240
+ # Changes create a new baseline.
241
+ #
242
+ # @return [Array<ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Wait, ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Perform, ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll>, nil]
243
+ optional :actions,
244
+ -> {
245
+ ContextDev::Internal::Type::ArrayOf[union: ContextDev::MonitorUpdateParams::Target::Page::Action]
246
+ },
247
+ nil?: true
248
+
222
249
  # @!attribute exclude_selectors
223
- # CSS selectors for HTML regions to remove before text extraction. Applied after
224
- # include_selectors; exclusion takes precedence when an element matches both. Omit
225
- # or pass an empty array to apply no explicit exclusions. Changing these selectors
226
- # creates a new baseline.
250
+ # Remove matching regions after inclusions. Changes create a new baseline.
227
251
  #
228
252
  # @return [Array<String>, nil]
229
253
  optional :exclude_selectors, ContextDev::Internal::Type::ArrayOf[String]
230
254
 
231
255
  # @!attribute include_selectors
232
- # CSS selectors defining the HTML regions to monitor. Matching subtrees are
233
- # combined in document order before text extraction, instead of automatic
234
- # main-content selection. Omit or pass an empty array to use automatic
235
- # main-content extraction. If the filtered page has no usable text, the run fails
236
- # without replacing the baseline. Changing these selectors creates a new baseline.
256
+ # Monitor these CSS-selected regions. Empty or omitted uses main content. Changes
257
+ # create a new baseline.
237
258
  #
238
259
  # @return [Array<String>, nil]
239
260
  optional :include_selectors, ContextDev::Internal::Type::ArrayOf[String]
@@ -251,28 +272,188 @@ module ContextDev
251
272
  # @return [Boolean, nil]
252
273
  optional :normalize_whitespace, ContextDev::Internal::Type::Boolean
253
274
 
254
- # @!method initialize(url:, exclude_selectors: nil, include_selectors: nil, instructions: nil, normalize_whitespace: nil, type: :page)
275
+ # @!method initialize(url:, actions: nil, exclude_selectors: nil, include_selectors: nil, instructions: nil, normalize_whitespace: nil, type: :page)
255
276
  # Some parameter documentations has been truncated, see
256
277
  # {ContextDev::Models::MonitorUpdateParams::Target::Page} for more details.
257
278
  #
258
279
  # Watch a single web page. Exact detection reports visible-text diffs; semantic
259
280
  # detection judges confirmed stable diffs against `instructions`.
260
281
  #
261
- # @param url [String]
282
+ # @param url [String] Public HTTP(S) page URL to monitor.
283
+ #
284
+ # @param actions [Array<ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Wait, ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Perform, ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll>, nil] Optional browser actions executed in array order after the page loads, before co
262
285
  #
263
- # @param exclude_selectors [Array<String>] CSS selectors for HTML regions to remove before text extraction. Applied after i
286
+ # @param exclude_selectors [Array<String>] Remove matching regions after inclusions. Changes create a new baseline.
264
287
  #
265
- # @param include_selectors [Array<String>] CSS selectors defining the HTML regions to monitor. Matching subtrees are combin
288
+ # @param include_selectors [Array<String>] Monitor these CSS-selected regions. Empty or omitted uses main content. Changes
266
289
  #
267
290
  # @param instructions [String] Plain-language goal describing which page changes matter. When provided without
268
291
  #
269
292
  # @param normalize_whitespace [Boolean] Normalize whitespace before comparing or analyzing text.
270
293
  #
271
- # @param type [Symbol, :page]
294
+ # @param type [Symbol, :page] Use `page` to watch one web page.
295
+
296
+ # Browser action discriminated by `do`. Each variant exposes only its applicable
297
+ # fields.
298
+ module Action
299
+ extend ContextDev::Internal::Type::Union
300
+
301
+ discriminator :do
302
+
303
+ # Pause for a fixed number of milliseconds before continuing to the next action.
304
+ variant :wait, -> { ContextDev::MonitorUpdateParams::Target::Page::Action::Wait }
305
+
306
+ # Resolve and perform one natural-language browser action.
307
+ variant :perform, -> { ContextDev::MonitorUpdateParams::Target::Page::Action::Perform }
308
+
309
+ # Scroll the page or a selected scrollable container, waiting adaptively for content and dimensions to settle after each iteration.
310
+ variant :scroll, -> { ContextDev::MonitorUpdateParams::Target::Page::Action::Scroll }
311
+
312
+ class Wait < ContextDev::Internal::Type::BaseModel
313
+ # @!attribute do_
314
+ # Use `wait` to pause for a fixed duration.
315
+ #
316
+ # @return [Symbol, :wait]
317
+ required :do_, const: :wait, api_name: :do
318
+
319
+ # @!attribute time_ms
320
+ # Time to pause in milliseconds before the next action.
321
+ #
322
+ # @return [Integer]
323
+ required :time_ms, Integer, api_name: :timeMs
324
+
325
+ # @!method initialize(time_ms:, do_: :wait)
326
+ # Pause for a fixed number of milliseconds before continuing to the next action.
327
+ #
328
+ # @param time_ms [Integer] Time to pause in milliseconds before the next action.
329
+ #
330
+ # @param do_ [Symbol, :wait] Use `wait` to pause for a fixed duration.
331
+ end
332
+
333
+ class Perform < ContextDev::Internal::Type::BaseModel
334
+ # @!attribute action
335
+ # One browser instruction, such as clicking a button or entering text.
336
+ #
337
+ # @return [String]
338
+ required :action, String
339
+
340
+ # @!attribute do_
341
+ # Use `perform` for a plain-language browser instruction.
342
+ #
343
+ # @return [Symbol, :perform]
344
+ required :do_, const: :perform, api_name: :do
345
+
346
+ # @!method initialize(action:, do_: :perform)
347
+ # Resolve and perform one natural-language browser action.
348
+ #
349
+ # @param action [String] One browser instruction, such as clicking a button or entering text.
350
+ #
351
+ # @param do_ [Symbol, :perform] Use `perform` for a plain-language browser instruction.
352
+ end
353
+
354
+ class Scroll < ContextDev::Internal::Type::BaseModel
355
+ # @!attribute do_
356
+ # Use `scroll` to move through the page or a container.
357
+ #
358
+ # @return [Symbol, :scroll]
359
+ required :do_, const: :scroll, api_name: :do
360
+
361
+ # @!attribute amount
362
+ # Pixels per scroll, one visible viewport, or the current scroll boundary.
363
+ # Defaults to viewport.
364
+ #
365
+ # @return [Integer, Symbol, ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll::Amount, nil]
366
+ optional :amount, union: -> { ContextDev::MonitorUpdateParams::Target::Page::Action::Scroll::Amount }
367
+
368
+ # @!attribute container
369
+ # CSS selector for the first matching scroll container. Defaults to the page.
370
+ #
371
+ # @return [String, nil]
372
+ optional :container, String
373
+
374
+ # @!attribute direction
375
+ # Direction to scroll. Defaults to down.
376
+ #
377
+ # @return [Symbol, ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll::Direction, nil]
378
+ optional :direction, enum: -> { ContextDev::MonitorUpdateParams::Target::Page::Action::Scroll::Direction }
379
+
380
+ # @!attribute max_scrolls
381
+ # Maximum scroll iterations. Stops early when scrolling and scrollable extent stop
382
+ # changing. Defaults to 1.
383
+ #
384
+ # @return [Integer, nil]
385
+ optional :max_scrolls, Integer, api_name: :maxScrolls
386
+
387
+ # @!method initialize(amount: nil, container: nil, direction: nil, max_scrolls: nil, do_: :scroll)
388
+ # Some parameter documentations has been truncated, see
389
+ # {ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll} for more
390
+ # details.
391
+ #
392
+ # Scroll the page or a selected scrollable container, waiting adaptively for
393
+ # content and dimensions to settle after each iteration.
394
+ #
395
+ # @param amount [Integer, Symbol, ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll::Amount] Pixels per scroll, one visible viewport, or the current scroll boundary. Default
396
+ #
397
+ # @param container [String] CSS selector for the first matching scroll container. Defaults to the page.
398
+ #
399
+ # @param direction [Symbol, ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll::Direction] Direction to scroll. Defaults to down.
400
+ #
401
+ # @param max_scrolls [Integer] Maximum scroll iterations. Stops early when scrolling and scrollable extent stop
402
+ #
403
+ # @param do_ [Symbol, :scroll] Use `scroll` to move through the page or a container.
404
+
405
+ # Pixels per scroll, one visible viewport, or the current scroll boundary.
406
+ # Defaults to viewport.
407
+ #
408
+ # @see ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll#amount
409
+ module Amount
410
+ extend ContextDev::Internal::Type::Union
411
+
412
+ variant Integer
413
+
414
+ variant const: -> { ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll::Amount::VIEWPORT }
415
+
416
+ variant const: -> { ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll::Amount::MAX }
417
+
418
+ # @!method self.variants
419
+ # @return [Array(Integer, Symbol)]
420
+
421
+ define_sorbet_constant!(:Variants) do
422
+ T.type_alias { T.any(Integer, ContextDev::MonitorUpdateParams::Target::Page::Action::Scroll::Amount::TaggedSymbol) }
423
+ end
424
+
425
+ # @!group
426
+
427
+ VIEWPORT = :viewport
428
+ MAX = :max
429
+
430
+ # @!endgroup
431
+ end
432
+
433
+ # Direction to scroll. Defaults to down.
434
+ #
435
+ # @see ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll#direction
436
+ module Direction
437
+ extend ContextDev::Internal::Type::Enum
438
+
439
+ UP = :up
440
+ DOWN = :down
441
+ LEFT = :left
442
+ RIGHT = :right
443
+
444
+ # @!method self.values
445
+ # @return [Array<Symbol>]
446
+ end
447
+ end
448
+
449
+ # @!method self.variants
450
+ # @return [Array(ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Wait, ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Perform, ContextDev::Models::MonitorUpdateParams::Target::Page::Action::Scroll)]
451
+ end
272
452
  end
273
453
 
274
454
  class Sitemap < ContextDev::Internal::Type::BaseModel
275
455
  # @!attribute type
456
+ # Use `sitemap` to watch a site for added or removed URLs.
276
457
  #
277
458
  # @return [Symbol, :sitemap]
278
459
  required :type, const: :sitemap
@@ -302,11 +483,7 @@ module ContextDev
302
483
  optional :max_urls, Integer
303
484
 
304
485
  # @!method initialize(url:, exclude: nil, include: nil, max_urls: nil, type: :sitemap)
305
- # Watch a sitemap for URL additions and removals. Crawled URLs are normalized
306
- # (lowercased host, no trailing slash/fragment) and scoped to the monitored site
307
- # and its subdomains before comparison. On a detected difference the sitemap is
308
- # re-fetched within the same run and only URLs both observations agree on are
309
- # reported, suppressing transient crawl flaps.
486
+ # Watch a site’s URL inventory for confirmed additions and removals.
310
487
  #
311
488
  # @param url [String] Sitemap URL to monitor.
312
489
  #
@@ -316,7 +493,7 @@ module ContextDev
316
493
  #
317
494
  # @param max_urls [Integer] Maximum number of sitemap URLs to track (capped at 10,000).
318
495
  #
319
- # @param type [Symbol, :sitemap]
496
+ # @param type [Symbol, :sitemap] Use `sitemap` to watch a site for added or removed URLs.
320
497
  end
321
498
 
322
499
  class Extract < ContextDev::Internal::Type::BaseModel
@@ -328,6 +505,7 @@ module ContextDev
328
505
  required :instructions, String
329
506
 
330
507
  # @!attribute type
508
+ # Use `extract` to watch structured data across selected pages.
331
509
  #
332
510
  # @return [Symbol, :extract]
333
511
  required :type, const: :extract
@@ -339,6 +517,7 @@ module ContextDev
339
517
  required :url, String
340
518
 
341
519
  # @!attribute follow_subdomains
520
+ # Allow page discovery on subdomains of the target site.
342
521
  #
343
522
  # @return [Boolean, nil]
344
523
  optional :follow_subdomains, ContextDev::Internal::Type::Boolean
@@ -356,14 +535,8 @@ module ContextDev
356
535
  optional :max_pages, Integer
357
536
 
358
537
  # @!attribute schema
359
- # JSON Schema describing the data you care about. It is used three ways: it guides
360
- # which pages are selected for tracking, it gives the change judge extra context
361
- # on which changes matter (alongside `instructions`), and it defines the shape of
362
- # the baseline `data` snapshot on GET /monitors/{monitor_id} (refreshed at most
363
- # about once a day). It is not a response format for changes: change events and
364
- # webhook payloads always contain diffs, summaries, and evidence excerpts — never
365
- # data in this schema's shape. If omitted, a default summary + key-points schema
366
- # is used.
538
+ # JSON Schema for page selection and the baseline snapshot. Changes return diffs
539
+ # and evidence.
367
540
  #
368
541
  # @return [Hash{Symbol=>Object}, nil]
369
542
  optional :schema, ContextDev::Internal::Type::HashOf[ContextDev::Internal::Type::Unknown]
@@ -372,25 +545,22 @@ module ContextDev
372
545
  # Some parameter documentations has been truncated, see
373
546
  # {ContextDev::Models::MonitorUpdateParams::Target::Extract} for more details.
374
547
  #
375
- # Watch the monitor-relevant pages of a site for meaningful changes. A crawl
376
- # guided by `schema`/`instructions` selects up to `max_pages` relevant pages to
377
- # track; each run re-checks exactly those pages, and confirmed content changes are
378
- # judged for relevance against the monitor's `instructions` (and `schema`, when
379
- # provided). The tracked page set is refreshed by a periodic re-discovery crawl.
548
+ # Track relevant pages selected by `schema` and `instructions`; refresh the page
549
+ # set periodically.
380
550
  #
381
551
  # @param instructions [String] Natural-language instructions guiding which pages and facts to track and which c
382
552
  #
383
553
  # @param url [String] Root URL to extract structured data from.
384
554
  #
385
- # @param follow_subdomains [Boolean]
555
+ # @param follow_subdomains [Boolean] Allow page discovery on subdomains of the target site.
386
556
  #
387
557
  # @param max_depth [Integer] Optional maximum link depth from the starting URL (0 = only the starting page).
388
558
  #
389
559
  # @param max_pages [Integer] Maximum number of pages to track.
390
560
  #
391
- # @param schema [Hash{Symbol=>Object}] JSON Schema describing the data you care about. It is used three ways: it guides
561
+ # @param schema [Hash{Symbol=>Object}] JSON Schema for page selection and the baseline snapshot. Changes return diffs a
392
562
  #
393
- # @param type [Symbol, :extract]
563
+ # @param type [Symbol, :extract] Use `extract` to watch structured data across selected pages.
394
564
  end
395
565
 
396
566
  # @!method self.variants
@@ -399,17 +569,15 @@ module ContextDev
399
569
 
400
570
  class Webhook < ContextDev::Internal::Type::BaseModel
401
571
  # @!attribute url
402
- # Webhook URL events are delivered to. Slack incoming webhook URLs are
403
- # automatically formatted as Slack messages.
572
+ # Public HTTP(S) URL that receives events. Slack and GovSlack URLs get formatted
573
+ # messages.
404
574
  #
405
575
  # @return [String]
406
576
  required :url, String
407
577
 
408
578
  # @!attribute events
409
- # Events delivered to this endpoint. `change.detected` fires only when a run
410
- # detects a change; `run.completed` fires on every completed run — including runs
411
- # that detected no change — and embeds the change when one was detected. Defaults
412
- # to `["change.detected"]` when omitted.
579
+ # Events to deliver. Defaults to `change.detected`; `run.completed` also includes
580
+ # unchanged runs.
413
581
  #
414
582
  # @return [Array<Symbol, ContextDev::Models::MonitorUpdateParams::Webhook::Event>, nil]
415
583
  optional :events,
@@ -425,11 +593,11 @@ module ContextDev
425
593
  # Some parameter documentations has been truncated, see
426
594
  # {ContextDev::Models::MonitorUpdateParams::Webhook} for more details.
427
595
  #
428
- # Set to null to remove the webhook.
596
+ # Set to null to remove the webhook. Changing `url` issues a new secret.
429
597
  #
430
- # @param url [String] Webhook URL events are delivered to. Slack incoming webhook URLs are automatical
598
+ # @param url [String] Public HTTP(S) URL that receives events. Slack and GovSlack URLs get formatted m
431
599
  #
432
- # @param events [Array<Symbol, ContextDev::Models::MonitorUpdateParams::Webhook::Event>] Events delivered to this endpoint. `change.detected` fires only when a run detec
600
+ # @param events [Array<Symbol, ContextDev::Models::MonitorUpdateParams::Webhook::Event>] Events to deliver. Defaults to `change.detected`; `run.completed` also includes
433
601
  #
434
602
  # @param retry_ [ContextDev::Models::RetryConfig] Webhook retry settings. Use {} for the default schedule.
435
603