context.dev 2.13.0 → 2.15.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 (180) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +1 -10
  4. data/lib/context_dev/client.rb +4 -0
  5. data/lib/context_dev/models/ai_extract_product_response.rb +7 -9
  6. data/lib/context_dev/models/ai_extract_products_response.rb +7 -9
  7. data/lib/context_dev/models/batch_cancel_response.rb +4 -4
  8. data/lib/context_dev/models/batch_delete_response.rb +7 -12
  9. data/lib/context_dev/models/batch_get_results_response.rb +7 -12
  10. data/lib/context_dev/models/batch_list_response.rb +7 -12
  11. data/lib/context_dev/models/batch_retrieve_response.rb +13 -5
  12. data/lib/context_dev/models/batch_submit_params.rb +34 -3
  13. data/lib/context_dev/models/batch_submit_response.rb +4 -4
  14. data/lib/context_dev/models/brand_retrieve_response.rb +7 -9
  15. data/lib/context_dev/models/brand_retrieve_simplified_params.rb +3 -4
  16. data/lib/context_dev/models/brand_retrieve_simplified_response.rb +7 -9
  17. data/lib/context_dev/models/brand_search_params.rb +3 -4
  18. data/lib/context_dev/models/brand_search_response.rb +7 -9
  19. data/lib/context_dev/models/industry_retrieve_naics_params.rb +3 -4
  20. data/lib/context_dev/models/industry_retrieve_naics_response.rb +7 -12
  21. data/lib/context_dev/models/industry_retrieve_sic_params.rb +3 -4
  22. data/lib/context_dev/models/industry_retrieve_sic_response.rb +7 -9
  23. data/lib/context_dev/models/monitor_create_params.rb +9 -1
  24. data/lib/context_dev/models/monitor_create_response.rb +9 -1
  25. data/lib/context_dev/models/monitor_list_account_runs_response.rb +9 -1
  26. data/lib/context_dev/models/monitor_list_response.rb +9 -1
  27. data/lib/context_dev/models/monitor_list_runs_response.rb +9 -1
  28. data/lib/context_dev/models/monitor_retrieve_response.rb +9 -1
  29. data/lib/context_dev/models/monitor_update_params.rb +9 -1
  30. data/lib/context_dev/models/monitor_update_response.rb +9 -1
  31. data/lib/context_dev/models/news_search_response.rb +7 -9
  32. data/lib/context_dev/models/parse_handle_params.rb +3 -4
  33. data/lib/context_dev/models/parse_handle_response.rb +7 -12
  34. data/lib/context_dev/models/person_enrich_response.rb +7 -12
  35. data/lib/context_dev/models/retry_config.rb +22 -0
  36. data/lib/context_dev/models/utility_prefetch_response.rb +7 -12
  37. data/lib/context_dev/models/web_extract_competitors_params.rb +3 -4
  38. data/lib/context_dev/models/web_extract_competitors_response.rb +7 -12
  39. data/lib/context_dev/models/web_extract_fonts_params.rb +3 -4
  40. data/lib/context_dev/models/web_extract_fonts_response.rb +7 -9
  41. data/lib/context_dev/models/web_extract_response.rb +7 -9
  42. data/lib/context_dev/models/web_extract_styleguide_params.rb +3 -4
  43. data/lib/context_dev/models/web_extract_styleguide_response.rb +7 -9
  44. data/lib/context_dev/models/web_screenshot_params.rb +3 -4
  45. data/lib/context_dev/models/web_screenshot_response.rb +7 -9
  46. data/lib/context_dev/models/web_search_response.rb +7 -9
  47. data/lib/context_dev/models/web_web_crawl_md_response.rb +7 -9
  48. data/lib/context_dev/models/web_web_scrape_html_params.rb +3 -4
  49. data/lib/context_dev/models/web_web_scrape_html_response.rb +7 -9
  50. data/lib/context_dev/models/web_web_scrape_images_params.rb +3 -4
  51. data/lib/context_dev/models/web_web_scrape_images_response.rb +7 -9
  52. data/lib/context_dev/models/web_web_scrape_md_params.rb +3 -4
  53. data/lib/context_dev/models/web_web_scrape_md_response.rb +7 -9
  54. data/lib/context_dev/models/web_web_scrape_sitemap_params.rb +13 -5
  55. data/lib/context_dev/models/web_web_scrape_sitemap_response.rb +7 -9
  56. data/lib/context_dev/models/webhook_delivery.rb +9 -1
  57. data/lib/context_dev/models/webhooks/attempt.rb +102 -0
  58. data/lib/context_dev/models/webhooks/delivery.rb +253 -0
  59. data/lib/context_dev/models/webhooks/delivery_list_attempts_params.rb +52 -0
  60. data/lib/context_dev/models/webhooks/delivery_list_attempts_response.rb +65 -0
  61. data/lib/context_dev/models/webhooks/delivery_list_params.rb +195 -0
  62. data/lib/context_dev/models/webhooks/delivery_list_response.rb +65 -0
  63. data/lib/context_dev/models/webhooks/delivery_retrieve_params.rb +36 -0
  64. data/lib/context_dev/models/webhooks/delivery_retrieve_response.rb +40 -0
  65. data/lib/context_dev/models/webhooks/delivery_retry_params.rb +48 -0
  66. data/lib/context_dev/models/webhooks/delivery_retry_response.rb +49 -0
  67. data/lib/context_dev/models/webhooks/delivery_summary.rb +229 -0
  68. data/lib/context_dev/models.rb +4 -0
  69. data/lib/context_dev/resources/batch.rb +4 -2
  70. data/lib/context_dev/resources/brand.rb +2 -2
  71. data/lib/context_dev/resources/industry.rb +2 -2
  72. data/lib/context_dev/resources/parse.rb +1 -1
  73. data/lib/context_dev/resources/web.rb +18 -14
  74. data/lib/context_dev/resources/webhooks/deliveries.rb +131 -0
  75. data/lib/context_dev/resources/webhooks.rb +19 -0
  76. data/lib/context_dev/version.rb +1 -1
  77. data/lib/context_dev.rb +14 -0
  78. data/rbi/context_dev/client.rbi +3 -0
  79. data/rbi/context_dev/models/ai_extract_product_response.rbi +7 -10
  80. data/rbi/context_dev/models/ai_extract_products_response.rbi +7 -10
  81. data/rbi/context_dev/models/batch_cancel_response.rbi +4 -4
  82. data/rbi/context_dev/models/batch_delete_response.rbi +7 -10
  83. data/rbi/context_dev/models/batch_get_results_response.rbi +7 -10
  84. data/rbi/context_dev/models/batch_list_response.rbi +7 -10
  85. data/rbi/context_dev/models/batch_retrieve_response.rbi +19 -7
  86. data/rbi/context_dev/models/batch_submit_params.rbi +59 -2
  87. data/rbi/context_dev/models/batch_submit_response.rbi +4 -4
  88. data/rbi/context_dev/models/brand_retrieve_response.rbi +7 -10
  89. data/rbi/context_dev/models/brand_retrieve_simplified_params.rbi +4 -6
  90. data/rbi/context_dev/models/brand_retrieve_simplified_response.rbi +7 -10
  91. data/rbi/context_dev/models/brand_search_params.rbi +4 -6
  92. data/rbi/context_dev/models/brand_search_response.rbi +7 -10
  93. data/rbi/context_dev/models/industry_retrieve_naics_params.rbi +4 -6
  94. data/rbi/context_dev/models/industry_retrieve_naics_response.rbi +7 -10
  95. data/rbi/context_dev/models/industry_retrieve_sic_params.rbi +4 -6
  96. data/rbi/context_dev/models/industry_retrieve_sic_response.rbi +7 -10
  97. data/rbi/context_dev/models/monitor_create_params.rbi +13 -2
  98. data/rbi/context_dev/models/monitor_create_response.rbi +11 -0
  99. data/rbi/context_dev/models/monitor_list_account_runs_response.rbi +14 -3
  100. data/rbi/context_dev/models/monitor_list_response.rbi +11 -0
  101. data/rbi/context_dev/models/monitor_list_runs_response.rbi +14 -3
  102. data/rbi/context_dev/models/monitor_retrieve_response.rbi +11 -0
  103. data/rbi/context_dev/models/monitor_update_params.rbi +13 -2
  104. data/rbi/context_dev/models/monitor_update_response.rbi +11 -0
  105. data/rbi/context_dev/models/news_search_response.rbi +7 -10
  106. data/rbi/context_dev/models/parse_handle_params.rbi +4 -6
  107. data/rbi/context_dev/models/parse_handle_response.rbi +7 -10
  108. data/rbi/context_dev/models/person_enrich_response.rbi +7 -10
  109. data/rbi/context_dev/models/retry_config.rbi +35 -0
  110. data/rbi/context_dev/models/utility_prefetch_response.rbi +7 -10
  111. data/rbi/context_dev/models/web_extract_competitors_params.rbi +4 -6
  112. data/rbi/context_dev/models/web_extract_competitors_response.rbi +7 -10
  113. data/rbi/context_dev/models/web_extract_fonts_params.rbi +4 -6
  114. data/rbi/context_dev/models/web_extract_fonts_response.rbi +7 -10
  115. data/rbi/context_dev/models/web_extract_response.rbi +7 -10
  116. data/rbi/context_dev/models/web_extract_styleguide_params.rbi +4 -6
  117. data/rbi/context_dev/models/web_extract_styleguide_response.rbi +7 -10
  118. data/rbi/context_dev/models/web_screenshot_params.rbi +4 -6
  119. data/rbi/context_dev/models/web_screenshot_response.rbi +7 -10
  120. data/rbi/context_dev/models/web_search_response.rbi +7 -10
  121. data/rbi/context_dev/models/web_web_crawl_md_response.rbi +7 -10
  122. data/rbi/context_dev/models/web_web_scrape_html_params.rbi +4 -6
  123. data/rbi/context_dev/models/web_web_scrape_html_response.rbi +7 -10
  124. data/rbi/context_dev/models/web_web_scrape_images_params.rbi +4 -6
  125. data/rbi/context_dev/models/web_web_scrape_images_response.rbi +7 -10
  126. data/rbi/context_dev/models/web_web_scrape_md_params.rbi +4 -6
  127. data/rbi/context_dev/models/web_web_scrape_md_response.rbi +7 -10
  128. data/rbi/context_dev/models/web_web_scrape_sitemap_params.rbi +17 -6
  129. data/rbi/context_dev/models/web_web_scrape_sitemap_response.rbi +7 -10
  130. data/rbi/context_dev/models/webhook_delivery.rbi +14 -3
  131. data/rbi/context_dev/models/webhooks/attempt.rbi +160 -0
  132. data/rbi/context_dev/models/webhooks/delivery.rbi +471 -0
  133. data/rbi/context_dev/models/webhooks/delivery_list_attempts_params.rbi +83 -0
  134. data/rbi/context_dev/models/webhooks/delivery_list_attempts_response.rbi +123 -0
  135. data/rbi/context_dev/models/webhooks/delivery_list_params.rbi +427 -0
  136. data/rbi/context_dev/models/webhooks/delivery_list_response.rbi +123 -0
  137. data/rbi/context_dev/models/webhooks/delivery_retrieve_params.rbi +61 -0
  138. data/rbi/context_dev/models/webhooks/delivery_retrieve_response.rbi +99 -0
  139. data/rbi/context_dev/models/webhooks/delivery_retry_params.rbi +81 -0
  140. data/rbi/context_dev/models/webhooks/delivery_retry_response.rbi +107 -0
  141. data/rbi/context_dev/models/webhooks/delivery_summary.rbi +459 -0
  142. data/rbi/context_dev/models.rbi +4 -0
  143. data/rbi/context_dev/resources/batch.rbi +6 -1
  144. data/rbi/context_dev/resources/brand.rbi +4 -6
  145. data/rbi/context_dev/resources/industry.rbi +4 -6
  146. data/rbi/context_dev/resources/parse.rbi +2 -3
  147. data/rbi/context_dev/resources/web.rbi +26 -29
  148. data/rbi/context_dev/resources/webhooks/deliveries.rbi +95 -0
  149. data/rbi/context_dev/resources/webhooks.rbi +16 -0
  150. data/sig/context_dev/client.rbs +2 -0
  151. data/sig/context_dev/models/batch_retrieve_response.rbs +10 -3
  152. data/sig/context_dev/models/batch_submit_params.rbs +23 -0
  153. data/sig/context_dev/models/monitor_create_params.rbs +8 -1
  154. data/sig/context_dev/models/monitor_create_response.rbs +7 -0
  155. data/sig/context_dev/models/monitor_list_account_runs_response.rbs +10 -3
  156. data/sig/context_dev/models/monitor_list_response.rbs +7 -0
  157. data/sig/context_dev/models/monitor_list_runs_response.rbs +10 -3
  158. data/sig/context_dev/models/monitor_retrieve_response.rbs +7 -0
  159. data/sig/context_dev/models/monitor_update_params.rbs +8 -1
  160. data/sig/context_dev/models/monitor_update_response.rbs +7 -0
  161. data/sig/context_dev/models/retry_config.rbs +15 -0
  162. data/sig/context_dev/models/web_web_scrape_sitemap_params.rbs +7 -0
  163. data/sig/context_dev/models/webhook_delivery.rbs +10 -3
  164. data/sig/context_dev/models/webhooks/attempt.rbs +76 -0
  165. data/sig/context_dev/models/webhooks/delivery.rbs +208 -0
  166. data/sig/context_dev/models/webhooks/delivery_list_attempts_params.rbs +49 -0
  167. data/sig/context_dev/models/webhooks/delivery_list_attempts_response.rbs +60 -0
  168. data/sig/context_dev/models/webhooks/delivery_list_params.rbs +207 -0
  169. data/sig/context_dev/models/webhooks/delivery_list_response.rbs +60 -0
  170. data/sig/context_dev/models/webhooks/delivery_retrieve_params.rbs +32 -0
  171. data/sig/context_dev/models/webhooks/delivery_retrieve_response.rbs +45 -0
  172. data/sig/context_dev/models/webhooks/delivery_retry_params.rbs +49 -0
  173. data/sig/context_dev/models/webhooks/delivery_retry_response.rbs +50 -0
  174. data/sig/context_dev/models/webhooks/delivery_summary.rbs +193 -0
  175. data/sig/context_dev/models.rbs +4 -0
  176. data/sig/context_dev/resources/batch.rbs +1 -0
  177. data/sig/context_dev/resources/web.rbs +1 -0
  178. data/sig/context_dev/resources/webhooks/deliveries.rbs +36 -0
  179. data/sig/context_dev/resources/webhooks.rbs +9 -0
  180. metadata +44 -2
@@ -0,0 +1,229 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ContextDev
4
+ module Models
5
+ module Webhooks
6
+ class DeliverySummary < ContextDev::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # Delivery ID.
9
+ #
10
+ # @return [String]
11
+ required :id, String
12
+
13
+ # @!attribute created_at
14
+ # Event creation time.
15
+ #
16
+ # @return [Time]
17
+ required :created_at, Time
18
+
19
+ # @!attribute delivered_at
20
+ # Last successful delivery time, or null if never delivered.
21
+ #
22
+ # @return [Time, nil]
23
+ required :delivered_at, Time, nil?: true
24
+
25
+ # @!attribute event
26
+ # Webhook event type.
27
+ #
28
+ # @return [Symbol, ContextDev::Models::Webhooks::DeliverySummary::Event]
29
+ required :event, enum: -> { ContextDev::Webhooks::DeliverySummary::Event }
30
+
31
+ # @!attribute last_error
32
+ # Latest delivery error, or null if none.
33
+ #
34
+ # @return [ContextDev::Models::Webhooks::DeliverySummary::LastError, nil]
35
+ required :last_error, -> { ContextDev::Webhooks::DeliverySummary::LastError }, nil?: true
36
+
37
+ # @!attribute next_attempt_at
38
+ # Next scheduled attempt, or null if none.
39
+ #
40
+ # @return [Time, nil]
41
+ required :next_attempt_at, Time, nil?: true
42
+
43
+ # @!attribute retry_expires_at
44
+ # Manual retry deadline, seven days after event creation.
45
+ #
46
+ # @return [Time]
47
+ required :retry_expires_at, Time
48
+
49
+ # @!attribute source
50
+ # Batch or monitor run that produced the event.
51
+ #
52
+ # @return [ContextDev::Models::Webhooks::DeliverySummary::Source::Batch, ContextDev::Models::Webhooks::DeliverySummary::Source::Monitor]
53
+ required :source, union: -> { ContextDev::Webhooks::DeliverySummary::Source }
54
+
55
+ # @!attribute status
56
+ # Current delivery status.
57
+ #
58
+ # @return [Symbol, ContextDev::Models::Webhooks::DeliverySummary::Status]
59
+ required :status, enum: -> { ContextDev::Webhooks::DeliverySummary::Status }
60
+
61
+ # @!attribute url
62
+ # Webhook destination URL.
63
+ #
64
+ # @return [String]
65
+ required :url, String
66
+
67
+ # @!method initialize(id:, created_at:, delivered_at:, event:, last_error:, next_attempt_at:, retry_expires_at:, source:, status:, url:)
68
+ # @param id [String] Delivery ID.
69
+ #
70
+ # @param created_at [Time] Event creation time.
71
+ #
72
+ # @param delivered_at [Time, nil] Last successful delivery time, or null if never delivered.
73
+ #
74
+ # @param event [Symbol, ContextDev::Models::Webhooks::DeliverySummary::Event] Webhook event type.
75
+ #
76
+ # @param last_error [ContextDev::Models::Webhooks::DeliverySummary::LastError, nil] Latest delivery error, or null if none.
77
+ #
78
+ # @param next_attempt_at [Time, nil] Next scheduled attempt, or null if none.
79
+ #
80
+ # @param retry_expires_at [Time] Manual retry deadline, seven days after event creation.
81
+ #
82
+ # @param source [ContextDev::Models::Webhooks::DeliverySummary::Source::Batch, ContextDev::Models::Webhooks::DeliverySummary::Source::Monitor] Batch or monitor run that produced the event.
83
+ #
84
+ # @param status [Symbol, ContextDev::Models::Webhooks::DeliverySummary::Status] Current delivery status.
85
+ #
86
+ # @param url [String] Webhook destination URL.
87
+
88
+ # Webhook event type.
89
+ #
90
+ # @see ContextDev::Models::Webhooks::DeliverySummary#event
91
+ module Event
92
+ extend ContextDev::Internal::Type::Enum
93
+
94
+ BATCH_COMPLETED = :"batch.completed"
95
+ BATCH_FAILED = :"batch.failed"
96
+ BATCH_CANCELLED = :"batch.cancelled"
97
+ CHANGE_DETECTED = :"change.detected"
98
+ RUN_COMPLETED = :"run.completed"
99
+
100
+ # @!method self.values
101
+ # @return [Array<Symbol>]
102
+ end
103
+
104
+ # @see ContextDev::Models::Webhooks::DeliverySummary#last_error
105
+ class LastError < ContextDev::Internal::Type::BaseModel
106
+ # @!attribute code
107
+ # Error code.
108
+ #
109
+ # @return [String]
110
+ required :code, String
111
+
112
+ # @!attribute message
113
+ # Error details.
114
+ #
115
+ # @return [String]
116
+ required :message, String
117
+
118
+ # @!method initialize(code:, message:)
119
+ # Latest delivery error, or null if none.
120
+ #
121
+ # @param code [String] Error code.
122
+ #
123
+ # @param message [String] Error details.
124
+ end
125
+
126
+ # Batch or monitor run that produced the event.
127
+ #
128
+ # @see ContextDev::Models::Webhooks::DeliverySummary#source
129
+ module Source
130
+ extend ContextDev::Internal::Type::Union
131
+
132
+ variant -> { ContextDev::Webhooks::DeliverySummary::Source::Batch }
133
+
134
+ variant -> { ContextDev::Webhooks::DeliverySummary::Source::Monitor }
135
+
136
+ class Batch < ContextDev::Internal::Type::BaseModel
137
+ # @!attribute batch_id
138
+ # Batch ID.
139
+ #
140
+ # @return [String]
141
+ required :batch_id, String
142
+
143
+ # @!attribute type
144
+ # Delivery source.
145
+ #
146
+ # @return [Symbol, ContextDev::Models::Webhooks::DeliverySummary::Source::Batch::Type]
147
+ required :type, enum: -> { ContextDev::Webhooks::DeliverySummary::Source::Batch::Type }
148
+
149
+ # @!method initialize(batch_id:, type:)
150
+ # @param batch_id [String] Batch ID.
151
+ #
152
+ # @param type [Symbol, ContextDev::Models::Webhooks::DeliverySummary::Source::Batch::Type] Delivery source.
153
+
154
+ # Delivery source.
155
+ #
156
+ # @see ContextDev::Models::Webhooks::DeliverySummary::Source::Batch#type
157
+ module Type
158
+ extend ContextDev::Internal::Type::Enum
159
+
160
+ BATCH = :batch
161
+
162
+ # @!method self.values
163
+ # @return [Array<Symbol>]
164
+ end
165
+ end
166
+
167
+ class Monitor < ContextDev::Internal::Type::BaseModel
168
+ # @!attribute monitor_id
169
+ # Monitor ID.
170
+ #
171
+ # @return [String]
172
+ required :monitor_id, String
173
+
174
+ # @!attribute run_id
175
+ # Monitor run ID.
176
+ #
177
+ # @return [String]
178
+ required :run_id, String
179
+
180
+ # @!attribute type
181
+ # Delivery source.
182
+ #
183
+ # @return [Symbol, ContextDev::Models::Webhooks::DeliverySummary::Source::Monitor::Type]
184
+ required :type, enum: -> { ContextDev::Webhooks::DeliverySummary::Source::Monitor::Type }
185
+
186
+ # @!method initialize(monitor_id:, run_id:, type:)
187
+ # @param monitor_id [String] Monitor ID.
188
+ #
189
+ # @param run_id [String] Monitor run ID.
190
+ #
191
+ # @param type [Symbol, ContextDev::Models::Webhooks::DeliverySummary::Source::Monitor::Type] Delivery source.
192
+
193
+ # Delivery source.
194
+ #
195
+ # @see ContextDev::Models::Webhooks::DeliverySummary::Source::Monitor#type
196
+ module Type
197
+ extend ContextDev::Internal::Type::Enum
198
+
199
+ MONITOR = :monitor
200
+
201
+ # @!method self.values
202
+ # @return [Array<Symbol>]
203
+ end
204
+ end
205
+
206
+ # @!method self.variants
207
+ # @return [Array(ContextDev::Models::Webhooks::DeliverySummary::Source::Batch, ContextDev::Models::Webhooks::DeliverySummary::Source::Monitor)]
208
+ end
209
+
210
+ # Current delivery status.
211
+ #
212
+ # @see ContextDev::Models::Webhooks::DeliverySummary#status
213
+ module Status
214
+ extend ContextDev::Internal::Type::Enum
215
+
216
+ PENDING = :pending
217
+ DELIVERING = :delivering
218
+ RETRYING = :retrying
219
+ DELIVERED = :delivered
220
+ FAILED = :failed
221
+ CANCELLED = :cancelled
222
+
223
+ # @!method self.values
224
+ # @return [Array<Symbol>]
225
+ end
226
+ end
227
+ end
228
+ end
229
+ end
@@ -105,6 +105,8 @@ module ContextDev
105
105
 
106
106
  PersonEnrichParams = ContextDev::Models::PersonEnrichParams
107
107
 
108
+ RetryConfig = ContextDev::Models::RetryConfig
109
+
108
110
  UtilityPrefetchParams = ContextDev::Models::UtilityPrefetchParams
109
111
 
110
112
  WebExtractCompetitorsParams = ContextDev::Models::WebExtractCompetitorsParams
@@ -117,6 +119,8 @@ module ContextDev
117
119
 
118
120
  WebhookDelivery = ContextDev::Models::WebhookDelivery
119
121
 
122
+ Webhooks = ContextDev::Models::Webhooks
123
+
120
124
  WebScreenshotParams = ContextDev::Models::WebScreenshotParams
121
125
 
122
126
  WebSearchParams = ContextDev::Models::WebSearchParams
@@ -139,13 +139,15 @@ module ContextDev
139
139
  #
140
140
  # Scrape 25K URLs or crawl large websites asynchronously.
141
141
  #
142
- # @overload submit(input:, tags: nil, webhook_url: nil, idempotency_key: nil, request_options: {})
142
+ # @overload submit(input:, tags: nil, webhook: nil, webhook_url: nil, idempotency_key: nil, request_options: {})
143
143
  #
144
144
  # @param input [ContextDev::Models::BatchSubmitParams::Input::Scrape, ContextDev::Models::BatchSubmitParams::Input::Crawl] Body param: Choose a URL list or a site crawl.
145
145
  #
146
146
  # @param tags [Array<String>] Body param: Tags stored on the batch. Filter the batch list by them later.
147
147
  #
148
- # @param webhook_url [String] Body param: URL notified when the batch finishes.
148
+ # @param webhook [ContextDev::Models::BatchSubmitParams::Webhook] Body param: Completion webhook settings. Cannot be combined with webhookUrl. Omi
149
+ #
150
+ # @param webhook_url [String] Body param: Legacy URL notified when the batch finishes. Preserves one best-effo
149
151
  #
150
152
  # @param idempotency_key [String] Header param: Any string unique to this submission. Retries with the same key re
151
153
  #
@@ -42,7 +42,7 @@ module ContextDev
42
42
  #
43
43
  # @param max_age_ms [Integer, nil] Maximum age in milliseconds for cached brand data before the API performs a hard
44
44
  #
45
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
45
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
46
46
  #
47
47
  # @param theme [Symbol, ContextDev::Models::BrandRetrieveSimplifiedParams::Theme] Optional theme preference used when selecting brand assets.
48
48
  #
@@ -78,7 +78,7 @@ module ContextDev
78
78
  #
79
79
  # @param query_by [Array<Symbol, ContextDev::Models::BrandSearchParams::QueryBy>] Fields to match the search term against, as a comma-separated list or repeated p
80
80
  #
81
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
81
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
82
82
  #
83
83
  # @param typo_tolerance [Integer] Maximum number of typos tolerated when matching, from 0 to 2. Defaults to 0 (no
84
84
  #
@@ -16,7 +16,7 @@ module ContextDev
16
16
  #
17
17
  # @param min_results [Integer] Minimum number of NAICS codes to return. Must be at least 1. Defaults to 1.
18
18
  #
19
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
19
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
20
20
  #
21
21
  # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
22
22
  #
@@ -56,7 +56,7 @@ module ContextDev
56
56
  #
57
57
  # @param min_results [Integer] Minimum number of SIC codes to return. Must be at least 1. Defaults to 1.
58
58
  #
59
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
59
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
60
60
  #
61
61
  # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
62
62
  #
@@ -27,7 +27,7 @@ module ContextDev
27
27
  #
28
28
  # @param shorten_base64_images [Boolean] Query param: Shorten base64-encoded image data in the Markdown output
29
29
  #
30
- # @param tags [Array<String>] Query param: Optional comma-separated caller-defined tags for tracking this requ
30
+ # @param tags [Array<String>] Query param: Comma-separated tags for tracking request usage. Up to 20 tags, eac
31
31
  #
32
32
  # @param use_main_content_only [Boolean] Query param: Extract only the main content from HTML-like inputs
33
33
  #
@@ -71,7 +71,7 @@ module ContextDev
71
71
  #
72
72
  # @param num_competitors [Integer] Exact number of direct competitors to return. Defaults to 5.
73
73
  #
74
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
74
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
75
75
  #
76
76
  # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
77
77
  #
@@ -106,7 +106,7 @@ module ContextDev
106
106
  #
107
107
  # @param max_age_ms [Integer, nil] Maximum age in milliseconds for cached brand data before the API performs a hard
108
108
  #
109
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
109
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
110
110
  #
111
111
  # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
112
112
  #
@@ -147,7 +147,7 @@ module ContextDev
147
147
  #
148
148
  # @param max_age_ms [Integer, nil] Maximum age in milliseconds for cached brand data before the API performs a hard
149
149
  #
150
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
150
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
151
151
  #
152
152
  # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
153
153
  #
@@ -200,7 +200,7 @@ module ContextDev
200
200
  #
201
201
  # @param scroll_offset [Integer, nil] Optional vertical scroll offset in pixels for capturing a long page in viewport-
202
202
  #
203
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
203
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
204
204
  #
205
205
  # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
206
206
  #
@@ -374,7 +374,7 @@ module ContextDev
374
374
  #
375
375
  # @param settle_animations [Boolean] When true, waits briefly for CSS and transition animations to settle before extr
376
376
  #
377
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
377
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
378
378
  #
379
379
  # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
380
380
  #
@@ -433,7 +433,7 @@ module ContextDev
433
433
  #
434
434
  # @param max_age_ms [Integer, nil] Reuse a cached result this many milliseconds old or newer. Default: 86400000 (1
435
435
  #
436
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
436
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
437
437
  #
438
438
  # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
439
439
  #
@@ -523,7 +523,7 @@ module ContextDev
523
523
  #
524
524
  # @param shorten_base64_images [Boolean] Shorten base64-encoded image data in the Markdown output
525
525
  #
526
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
526
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
527
527
  #
528
528
  # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
529
529
  #
@@ -566,25 +566,28 @@ module ContextDev
566
566
  # Some parameter documentations has been truncated, see
567
567
  # {ContextDev::Models::WebWebScrapeSitemapParams} for more details.
568
568
  #
569
- # Crawl an entire website's sitemap and return all discovered page URLs. Pass
570
- # `search` to have the crawled sitemap filtered down to the pages about a phrase
571
- # (for example `pricing and plans` or `api authentication docs`), most relevant
572
- # first — a searched crawl scans the whole sitemap and costs 2 credits instead
573
- # of 1.
569
+ # Crawl an entire website's sitemap and return all discovered page URLs. Set
570
+ # `includeSubdomains=true` to also discover public pages and sitemaps on child
571
+ # hosts such as `docs.example.com` or `brand.example.com`. Pass `search` to have
572
+ # the discovered URLs filtered down to the pages about a phrase (for example
573
+ # `pricing and plans` or `api authentication docs`), most relevant first — a
574
+ # searched crawl scans the whole sitemap and costs 2 credits instead of 1.
574
575
  #
575
- # @overload web_scrape_sitemap(domain:, headers: nil, max_links: nil, search: nil, sitemap_url: nil, tags: nil, timeout_ms: nil, url_regex: nil, zdr: nil, request_options: {})
576
+ # @overload web_scrape_sitemap(domain:, headers: nil, include_subdomains: nil, max_links: nil, search: nil, sitemap_url: nil, tags: nil, timeout_ms: nil, url_regex: nil, zdr: nil, request_options: {})
576
577
  #
577
578
  # @param domain [String] Domain to build a sitemap for
578
579
  #
579
580
  # @param headers [Hash{Symbol=>String}] Optional outbound HTTP headers forwarded only to the target URL, sent as deep-ob
580
581
  #
582
+ # @param include_subdomains [Boolean] When true, discover and include public pages and sitemaps on subdomains of the r
583
+ #
581
584
  # @param max_links [Integer] Maximum number of links to return from the sitemap crawl. Defaults to 10,000. Mi
582
585
  #
583
586
  # @param search [String] Optional search phrase. When provided, the crawled sitemap is filtered to the pa
584
587
  #
585
588
  # @param sitemap_url [String] Optional explicit sitemap URL. When provided, exactly this sitemap is crawled in
586
589
  #
587
- # @param tags [Array<String>] Optional comma-separated caller-defined tags for tracking this request. Tags are
590
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
588
591
  #
589
592
  # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
590
593
  #
@@ -604,6 +607,7 @@ module ContextDev
604
607
  method: :get,
605
608
  path: "web/scrape/sitemap",
606
609
  query: query.transform_keys(
610
+ include_subdomains: "includeSubdomains",
607
611
  max_links: "maxLinks",
608
612
  sitemap_url: "sitemapUrl",
609
613
  timeout_ms: "timeoutMS",
@@ -0,0 +1,131 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ContextDev
4
+ module Resources
5
+ class Webhooks
6
+ # Inspect and retry webhook deliveries. These endpoints cost no credits.
7
+ class Deliveries
8
+ # Some parameter documentations has been truncated, see
9
+ # {ContextDev::Models::Webhooks::DeliveryRetrieveParams} for more details.
10
+ #
11
+ # Get a webhook delivery, including its status and latest attempt.
12
+ #
13
+ # @overload retrieve(delivery_id, tags: nil, request_options: {})
14
+ #
15
+ # @param delivery_id [String] Delivery ID.
16
+ #
17
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
18
+ #
19
+ # @param request_options [ContextDev::RequestOptions, Hash{Symbol=>Object}, nil]
20
+ #
21
+ # @return [ContextDev::Models::Webhooks::DeliveryRetrieveResponse]
22
+ #
23
+ # @see ContextDev::Models::Webhooks::DeliveryRetrieveParams
24
+ def retrieve(delivery_id, params = {})
25
+ parsed, options = ContextDev::Webhooks::DeliveryRetrieveParams.dump_request(params)
26
+ query = ContextDev::Internal::Util.encode_query_params(parsed)
27
+ @client.request(
28
+ method: :get,
29
+ path: ["webhooks/deliveries/%1$s", delivery_id],
30
+ query: query,
31
+ model: ContextDev::Models::Webhooks::DeliveryRetrieveResponse,
32
+ options: options
33
+ )
34
+ end
35
+
36
+ # List your batch or monitor webhook deliveries, newest first.
37
+ #
38
+ # @overload list(body:, request_options: {})
39
+ #
40
+ # @param body [ContextDev::Models::Webhooks::DeliveryListParams::Body::Batch, ContextDev::Models::Webhooks::DeliveryListParams::Body::Monitor]
41
+ # @param request_options [ContextDev::RequestOptions, Hash{Symbol=>Object}, nil]
42
+ #
43
+ # @return [ContextDev::Models::Webhooks::DeliveryListResponse]
44
+ #
45
+ # @see ContextDev::Models::Webhooks::DeliveryListParams
46
+ def list(params)
47
+ parsed, options = ContextDev::Webhooks::DeliveryListParams.dump_request(params)
48
+ @client.request(
49
+ method: :post,
50
+ path: "webhooks/deliveries",
51
+ body: parsed[:body],
52
+ model: ContextDev::Models::Webhooks::DeliveryListResponse,
53
+ options: options
54
+ )
55
+ end
56
+
57
+ # Some parameter documentations has been truncated, see
58
+ # {ContextDev::Models::Webhooks::DeliveryListAttemptsParams} for more details.
59
+ #
60
+ # List delivery attempts, newest first.
61
+ #
62
+ # @overload list_attempts(delivery_id, cursor: nil, limit: nil, tags: nil, request_options: {})
63
+ #
64
+ # @param delivery_id [String] Delivery ID.
65
+ #
66
+ # @param cursor [String] The next_cursor from the previous response.
67
+ #
68
+ # @param limit [Integer] Number of attempts to return.
69
+ #
70
+ # @param tags [Array<String>] Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50 charac
71
+ #
72
+ # @param request_options [ContextDev::RequestOptions, Hash{Symbol=>Object}, nil]
73
+ #
74
+ # @return [ContextDev::Models::Webhooks::DeliveryListAttemptsResponse]
75
+ #
76
+ # @see ContextDev::Models::Webhooks::DeliveryListAttemptsParams
77
+ def list_attempts(delivery_id, params = {})
78
+ parsed, options = ContextDev::Webhooks::DeliveryListAttemptsParams.dump_request(params)
79
+ query = ContextDev::Internal::Util.encode_query_params(parsed)
80
+ @client.request(
81
+ method: :get,
82
+ path: ["webhooks/deliveries/%1$s/attempts", delivery_id],
83
+ query: query,
84
+ model: ContextDev::Models::Webhooks::DeliveryListAttemptsResponse,
85
+ options: options
86
+ )
87
+ end
88
+
89
+ # Some parameter documentations has been truncated, see
90
+ # {ContextDev::Models::Webhooks::DeliveryRetryParams} for more details.
91
+ #
92
+ # Retry a webhook delivery within seven days of creation.
93
+ #
94
+ # @overload retry_(delivery_id, force: nil, tags: nil, idempotency_key: nil, request_options: {})
95
+ #
96
+ # @param delivery_id [String] Path param: Delivery ID.
97
+ #
98
+ # @param force [Boolean] Body param: Resend a delivery that already succeeded.
99
+ #
100
+ # @param tags [Array<String>] Body param: Optional tags for tracking usage. Up to 20 tags, each 1 to 50 charac
101
+ #
102
+ # @param idempotency_key [String] Header param: Unique key to prevent duplicate retry requests.
103
+ #
104
+ # @param request_options [ContextDev::RequestOptions, Hash{Symbol=>Object}, nil]
105
+ #
106
+ # @return [ContextDev::Models::Webhooks::DeliveryRetryResponse]
107
+ #
108
+ # @see ContextDev::Models::Webhooks::DeliveryRetryParams
109
+ def retry_(delivery_id, params = {})
110
+ parsed, options = ContextDev::Webhooks::DeliveryRetryParams.dump_request(params)
111
+ header_params = {idempotency_key: "idempotency-key"}
112
+ @client.request(
113
+ method: :post,
114
+ path: ["webhooks/deliveries/%1$s/retry", delivery_id],
115
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
116
+ body: parsed.except(*header_params.keys),
117
+ model: ContextDev::Models::Webhooks::DeliveryRetryResponse,
118
+ options: options
119
+ )
120
+ end
121
+
122
+ # @api private
123
+ #
124
+ # @param client [ContextDev::Client]
125
+ def initialize(client:)
126
+ @client = client
127
+ end
128
+ end
129
+ end
130
+ end
131
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ContextDev
4
+ module Resources
5
+ class Webhooks
6
+ # Inspect and retry webhook deliveries. These endpoints cost no credits.
7
+ # @return [ContextDev::Resources::Webhooks::Deliveries]
8
+ attr_reader :deliveries
9
+
10
+ # @api private
11
+ #
12
+ # @param client [ContextDev::Client]
13
+ def initialize(client:)
14
+ @client = client
15
+ @deliveries = ContextDev::Resources::Webhooks::Deliveries.new(client: client)
16
+ end
17
+ end
18
+ end
19
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ContextDev
4
- VERSION = "2.13.0"
4
+ VERSION = "2.15.0"
5
5
  end
data/lib/context_dev.rb CHANGED
@@ -52,6 +52,7 @@ require_relative "context_dev/errors"
52
52
  require_relative "context_dev/internal/transport/base_client"
53
53
  require_relative "context_dev/internal/transport/pooled_net_requester"
54
54
  require_relative "context_dev/client"
55
+ require_relative "context_dev/models/webhooks/delivery"
55
56
  require_relative "context_dev/models/ai_extract_product_params"
56
57
  require_relative "context_dev/models/ai_extract_product_response"
57
58
  require_relative "context_dev/models/ai_extract_products_params"
@@ -114,6 +115,7 @@ require_relative "context_dev/models/parse_handle_params"
114
115
  require_relative "context_dev/models/parse_handle_response"
115
116
  require_relative "context_dev/models/person_enrich_params"
116
117
  require_relative "context_dev/models/person_enrich_response"
118
+ require_relative "context_dev/models/retry_config"
117
119
  require_relative "context_dev/models/utility_prefetch_params"
118
120
  require_relative "context_dev/models/utility_prefetch_response"
119
121
  require_relative "context_dev/models/web_extract_competitors_params"
@@ -125,6 +127,16 @@ require_relative "context_dev/models/web_extract_response"
125
127
  require_relative "context_dev/models/web_extract_styleguide_params"
126
128
  require_relative "context_dev/models/web_extract_styleguide_response"
127
129
  require_relative "context_dev/models/webhook_delivery"
130
+ require_relative "context_dev/models/webhooks/attempt"
131
+ require_relative "context_dev/models/webhooks/delivery_list_attempts_params"
132
+ require_relative "context_dev/models/webhooks/delivery_list_attempts_response"
133
+ require_relative "context_dev/models/webhooks/delivery_list_params"
134
+ require_relative "context_dev/models/webhooks/delivery_list_response"
135
+ require_relative "context_dev/models/webhooks/delivery_retrieve_params"
136
+ require_relative "context_dev/models/webhooks/delivery_retrieve_response"
137
+ require_relative "context_dev/models/webhooks/delivery_retry_params"
138
+ require_relative "context_dev/models/webhooks/delivery_retry_response"
139
+ require_relative "context_dev/models/webhooks/delivery_summary"
128
140
  require_relative "context_dev/models/web_screenshot_params"
129
141
  require_relative "context_dev/models/web_screenshot_response"
130
142
  require_relative "context_dev/models/web_search_params"
@@ -150,3 +162,5 @@ require_relative "context_dev/resources/parse"
150
162
  require_relative "context_dev/resources/people"
151
163
  require_relative "context_dev/resources/utility"
152
164
  require_relative "context_dev/resources/web"
165
+ require_relative "context_dev/resources/webhooks"
166
+ require_relative "context_dev/resources/webhooks/deliveries"
@@ -42,6 +42,9 @@ module ContextDev
42
42
  sig { returns(ContextDev::Resources::Batch) }
43
43
  attr_reader :batch
44
44
 
45
+ sig { returns(ContextDev::Resources::Webhooks) }
46
+ attr_reader :webhooks
47
+
45
48
  sig { returns(ContextDev::Resources::People) }
46
49
  attr_reader :people
47
50