context.dev 2.1.0 → 2.3.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +23 -0
- data/README.md +1 -1
- data/lib/context_dev/client.rb +7 -2
- data/lib/context_dev/internal/type/base_model.rb +5 -5
- data/lib/context_dev/models/monitor_create_params.rb +44 -14
- data/lib/context_dev/models/monitor_create_response.rb +112 -15
- data/lib/context_dev/models/monitor_list_account_runs_response.rb +23 -1
- data/lib/context_dev/models/monitor_list_response.rb +116 -15
- data/lib/context_dev/models/monitor_list_runs_response.rb +23 -1
- data/lib/context_dev/models/monitor_retrieve_change_response.rb +10 -10
- data/lib/context_dev/models/monitor_retrieve_response.rb +113 -15
- data/lib/context_dev/models/monitor_update_params.rb +44 -14
- data/lib/context_dev/models/monitor_update_response.rb +112 -15
- data/lib/context_dev/models/parse_handle_params.rb +110 -0
- data/lib/context_dev/models/parse_handle_response.rb +132 -0
- data/lib/context_dev/models/web_web_crawl_md_params.rb +16 -6
- data/lib/context_dev/models/web_web_scrape_html_params.rb +16 -6
- data/lib/context_dev/models/web_web_scrape_md_params.rb +16 -6
- data/lib/context_dev/models/web_web_scrape_md_response.rb +11 -1
- data/lib/context_dev/models/webhook_delivery.rb +109 -0
- data/lib/context_dev/models.rb +4 -0
- data/lib/context_dev/resources/monitors.rb +3 -2
- data/lib/context_dev/resources/parse.rb +63 -0
- data/lib/context_dev/resources/web.rb +19 -4
- data/lib/context_dev/version.rb +1 -1
- data/lib/context_dev.rb +4 -0
- data/rbi/context_dev/client.rbi +6 -2
- data/rbi/context_dev/models/monitor_create_params.rbi +106 -16
- data/rbi/context_dev/models/monitor_create_response.rbi +255 -17
- data/rbi/context_dev/models/monitor_list_account_runs_response.rbi +39 -3
- data/rbi/context_dev/models/monitor_list_response.rbi +256 -16
- data/rbi/context_dev/models/monitor_list_runs_response.rbi +39 -3
- data/rbi/context_dev/models/monitor_retrieve_change_response.rbi +12 -15
- data/rbi/context_dev/models/monitor_retrieve_response.rbi +255 -17
- data/rbi/context_dev/models/monitor_update_params.rbi +106 -16
- data/rbi/context_dev/models/monitor_update_response.rbi +255 -17
- data/rbi/context_dev/models/parse_handle_params.rbi +163 -0
- data/rbi/context_dev/models/parse_handle_response.rbi +377 -0
- data/rbi/context_dev/models/web_web_crawl_md_params.rbi +26 -7
- data/rbi/context_dev/models/web_web_scrape_html_params.rbi +26 -7
- data/rbi/context_dev/models/web_web_scrape_md_params.rbi +26 -7
- data/rbi/context_dev/models/web_web_scrape_md_response.rbi +12 -0
- data/rbi/context_dev/models/webhook_delivery.rbi +172 -0
- data/rbi/context_dev/models.rbi +4 -0
- data/rbi/context_dev/resources/monitors.rbi +3 -2
- data/rbi/context_dev/resources/parse.rbi +65 -0
- data/rbi/context_dev/resources/web.rbi +22 -7
- data/sig/context_dev/client.rbs +2 -0
- data/sig/context_dev/models/monitor_create_params.rbs +32 -3
- data/sig/context_dev/models/monitor_create_response.rbs +85 -6
- data/sig/context_dev/models/monitor_list_account_runs_response.rbs +21 -3
- data/sig/context_dev/models/monitor_list_response.rbs +85 -6
- data/sig/context_dev/models/monitor_list_runs_response.rbs +21 -3
- data/sig/context_dev/models/monitor_retrieve_change_response.rbs +8 -10
- data/sig/context_dev/models/monitor_retrieve_response.rbs +85 -6
- data/sig/context_dev/models/monitor_update_params.rbs +32 -3
- data/sig/context_dev/models/monitor_update_response.rbs +85 -6
- data/sig/context_dev/models/parse_handle_params.rbs +96 -0
- data/sig/context_dev/models/parse_handle_response.rbs +159 -0
- data/sig/context_dev/models/web_web_crawl_md_params.rbs +13 -2
- data/sig/context_dev/models/web_web_scrape_html_params.rbs +13 -2
- data/sig/context_dev/models/web_web_scrape_md_params.rbs +13 -2
- data/sig/context_dev/models/web_web_scrape_md_response.rbs +5 -0
- data/sig/context_dev/models/webhook_delivery.rbs +81 -0
- data/sig/context_dev/models.rbs +4 -0
- data/sig/context_dev/resources/parse.rbs +22 -0
- metadata +14 -2
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module ContextDev
|
|
4
|
+
module Models
|
|
5
|
+
class WebhookDelivery < ContextDev::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(ContextDev::WebhookDelivery, ContextDev::Internal::AnyHash)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
sig { returns(Time) }
|
|
12
|
+
attr_accessor :attempted_at
|
|
13
|
+
|
|
14
|
+
sig { returns(T.nilable(ContextDev::WebhookDelivery::Error)) }
|
|
15
|
+
attr_reader :error
|
|
16
|
+
|
|
17
|
+
sig do
|
|
18
|
+
params(
|
|
19
|
+
error: T.nilable(ContextDev::WebhookDelivery::Error::OrHash)
|
|
20
|
+
).void
|
|
21
|
+
end
|
|
22
|
+
attr_writer :error
|
|
23
|
+
|
|
24
|
+
# The event this delivery carried. Deliveries recorded before event selection
|
|
25
|
+
# existed report change.detected.
|
|
26
|
+
sig { returns(ContextDev::WebhookDelivery::Event::TaggedSymbol) }
|
|
27
|
+
attr_accessor :event
|
|
28
|
+
|
|
29
|
+
# Identifier sent in the X-Context-Id header.
|
|
30
|
+
sig { returns(String) }
|
|
31
|
+
attr_accessor :event_id
|
|
32
|
+
|
|
33
|
+
# The endpoint's final HTTP response status, or null when no response was
|
|
34
|
+
# received.
|
|
35
|
+
sig { returns(T.nilable(Integer)) }
|
|
36
|
+
attr_accessor :http_status
|
|
37
|
+
|
|
38
|
+
# Delivery outcome. delivered means any 2xx response; rejected means a non-2xx
|
|
39
|
+
# response; failed means no HTTP response was received; skipped_unsafe_url means
|
|
40
|
+
# the URL failed the public-endpoint safety check.
|
|
41
|
+
sig { returns(ContextDev::WebhookDelivery::Status::TaggedSymbol) }
|
|
42
|
+
attr_accessor :status
|
|
43
|
+
|
|
44
|
+
sig do
|
|
45
|
+
params(
|
|
46
|
+
attempted_at: Time,
|
|
47
|
+
error: T.nilable(ContextDev::WebhookDelivery::Error::OrHash),
|
|
48
|
+
event: ContextDev::WebhookDelivery::Event::OrSymbol,
|
|
49
|
+
event_id: String,
|
|
50
|
+
http_status: T.nilable(Integer),
|
|
51
|
+
status: ContextDev::WebhookDelivery::Status::OrSymbol
|
|
52
|
+
).returns(T.attached_class)
|
|
53
|
+
end
|
|
54
|
+
def self.new(
|
|
55
|
+
attempted_at:,
|
|
56
|
+
error:,
|
|
57
|
+
# The event this delivery carried. Deliveries recorded before event selection
|
|
58
|
+
# existed report change.detected.
|
|
59
|
+
event:,
|
|
60
|
+
# Identifier sent in the X-Context-Id header.
|
|
61
|
+
event_id:,
|
|
62
|
+
# The endpoint's final HTTP response status, or null when no response was
|
|
63
|
+
# received.
|
|
64
|
+
http_status:,
|
|
65
|
+
# Delivery outcome. delivered means any 2xx response; rejected means a non-2xx
|
|
66
|
+
# response; failed means no HTTP response was received; skipped_unsafe_url means
|
|
67
|
+
# the URL failed the public-endpoint safety check.
|
|
68
|
+
status:
|
|
69
|
+
)
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
sig do
|
|
73
|
+
override.returns(
|
|
74
|
+
{
|
|
75
|
+
attempted_at: Time,
|
|
76
|
+
error: T.nilable(ContextDev::WebhookDelivery::Error),
|
|
77
|
+
event: ContextDev::WebhookDelivery::Event::TaggedSymbol,
|
|
78
|
+
event_id: String,
|
|
79
|
+
http_status: T.nilable(Integer),
|
|
80
|
+
status: ContextDev::WebhookDelivery::Status::TaggedSymbol
|
|
81
|
+
}
|
|
82
|
+
)
|
|
83
|
+
end
|
|
84
|
+
def to_hash
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
class Error < ContextDev::Internal::Type::BaseModel
|
|
88
|
+
OrHash =
|
|
89
|
+
T.type_alias do
|
|
90
|
+
T.any(
|
|
91
|
+
ContextDev::WebhookDelivery::Error,
|
|
92
|
+
ContextDev::Internal::AnyHash
|
|
93
|
+
)
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
sig { returns(String) }
|
|
97
|
+
attr_accessor :code
|
|
98
|
+
|
|
99
|
+
sig { returns(String) }
|
|
100
|
+
attr_accessor :message
|
|
101
|
+
|
|
102
|
+
sig { params(code: String, message: String).returns(T.attached_class) }
|
|
103
|
+
def self.new(code:, message:)
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
sig { override.returns({ code: String, message: String }) }
|
|
107
|
+
def to_hash
|
|
108
|
+
end
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
# The event this delivery carried. Deliveries recorded before event selection
|
|
112
|
+
# existed report change.detected.
|
|
113
|
+
module Event
|
|
114
|
+
extend ContextDev::Internal::Type::Enum
|
|
115
|
+
|
|
116
|
+
TaggedSymbol =
|
|
117
|
+
T.type_alias { T.all(Symbol, ContextDev::WebhookDelivery::Event) }
|
|
118
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
119
|
+
|
|
120
|
+
CHANGE_DETECTED =
|
|
121
|
+
T.let(
|
|
122
|
+
:"change.detected",
|
|
123
|
+
ContextDev::WebhookDelivery::Event::TaggedSymbol
|
|
124
|
+
)
|
|
125
|
+
RUN_COMPLETED =
|
|
126
|
+
T.let(
|
|
127
|
+
:"run.completed",
|
|
128
|
+
ContextDev::WebhookDelivery::Event::TaggedSymbol
|
|
129
|
+
)
|
|
130
|
+
|
|
131
|
+
sig do
|
|
132
|
+
override.returns(
|
|
133
|
+
T::Array[ContextDev::WebhookDelivery::Event::TaggedSymbol]
|
|
134
|
+
)
|
|
135
|
+
end
|
|
136
|
+
def self.values
|
|
137
|
+
end
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
# Delivery outcome. delivered means any 2xx response; rejected means a non-2xx
|
|
141
|
+
# response; failed means no HTTP response was received; skipped_unsafe_url means
|
|
142
|
+
# the URL failed the public-endpoint safety check.
|
|
143
|
+
module Status
|
|
144
|
+
extend ContextDev::Internal::Type::Enum
|
|
145
|
+
|
|
146
|
+
TaggedSymbol =
|
|
147
|
+
T.type_alias { T.all(Symbol, ContextDev::WebhookDelivery::Status) }
|
|
148
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
149
|
+
|
|
150
|
+
DELIVERED =
|
|
151
|
+
T.let(:delivered, ContextDev::WebhookDelivery::Status::TaggedSymbol)
|
|
152
|
+
REJECTED =
|
|
153
|
+
T.let(:rejected, ContextDev::WebhookDelivery::Status::TaggedSymbol)
|
|
154
|
+
FAILED =
|
|
155
|
+
T.let(:failed, ContextDev::WebhookDelivery::Status::TaggedSymbol)
|
|
156
|
+
SKIPPED_UNSAFE_URL =
|
|
157
|
+
T.let(
|
|
158
|
+
:skipped_unsafe_url,
|
|
159
|
+
ContextDev::WebhookDelivery::Status::TaggedSymbol
|
|
160
|
+
)
|
|
161
|
+
|
|
162
|
+
sig do
|
|
163
|
+
override.returns(
|
|
164
|
+
T::Array[ContextDev::WebhookDelivery::Status::TaggedSymbol]
|
|
165
|
+
)
|
|
166
|
+
end
|
|
167
|
+
def self.values
|
|
168
|
+
end
|
|
169
|
+
end
|
|
170
|
+
end
|
|
171
|
+
end
|
|
172
|
+
end
|
data/rbi/context_dev/models.rbi
CHANGED
|
@@ -38,6 +38,8 @@ module ContextDev
|
|
|
38
38
|
|
|
39
39
|
MonitorUpdateParams = ContextDev::Models::MonitorUpdateParams
|
|
40
40
|
|
|
41
|
+
ParseHandleParams = ContextDev::Models::ParseHandleParams
|
|
42
|
+
|
|
41
43
|
UtilityPrefetchParams = ContextDev::Models::UtilityPrefetchParams
|
|
42
44
|
|
|
43
45
|
WebExtractCompetitorsParams = ContextDev::Models::WebExtractCompetitorsParams
|
|
@@ -48,6 +50,8 @@ module ContextDev
|
|
|
48
50
|
|
|
49
51
|
WebExtractStyleguideParams = ContextDev::Models::WebExtractStyleguideParams
|
|
50
52
|
|
|
53
|
+
WebhookDelivery = ContextDev::Models::WebhookDelivery
|
|
54
|
+
|
|
51
55
|
WebScreenshotParams = ContextDev::Models::WebScreenshotParams
|
|
52
56
|
|
|
53
57
|
WebSearchParams = ContextDev::Models::WebSearchParams
|
|
@@ -3,8 +3,9 @@
|
|
|
3
3
|
module ContextDev
|
|
4
4
|
module Resources
|
|
5
5
|
# Monitor pages, sitemaps, and extracted website data for exact or semantic
|
|
6
|
-
# changes.
|
|
7
|
-
# MonitorsChangeDetectedWebhookPayload
|
|
6
|
+
# changes. Webhook payloads are documented by the
|
|
7
|
+
# MonitorsChangeDetectedWebhookPayload and MonitorsRunCompletedWebhookPayload
|
|
8
|
+
# schemas.
|
|
8
9
|
class Monitors
|
|
9
10
|
# Creates a monitor. The request body is a union of the supported target/change
|
|
10
11
|
# detection combinations. The monitor runs immediately after creation to create
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module ContextDev
|
|
4
|
+
module Resources
|
|
5
|
+
class Parse
|
|
6
|
+
# Converts raw text, source code, web/data, PDF, Microsoft Office, and image bytes
|
|
7
|
+
# into LLM-usable Markdown.
|
|
8
|
+
sig do
|
|
9
|
+
params(
|
|
10
|
+
body: ContextDev::Internal::FileInput,
|
|
11
|
+
base_url: String,
|
|
12
|
+
extension: String,
|
|
13
|
+
filename: String,
|
|
14
|
+
include_images: T::Boolean,
|
|
15
|
+
include_links: T::Boolean,
|
|
16
|
+
ocr: T::Boolean,
|
|
17
|
+
pdf_end: Integer,
|
|
18
|
+
pdf_start: Integer,
|
|
19
|
+
shorten_base64_images: T::Boolean,
|
|
20
|
+
use_main_content_only: T::Boolean,
|
|
21
|
+
request_options: ContextDev::RequestOptions::OrHash
|
|
22
|
+
).returns(ContextDev::Models::ParseHandleResponse)
|
|
23
|
+
end
|
|
24
|
+
def handle(
|
|
25
|
+
# Body param
|
|
26
|
+
body:,
|
|
27
|
+
# Query param: Optional HTTP(S) source document URL used to resolve relative links
|
|
28
|
+
# and image references. Relative references remain relative when omitted.
|
|
29
|
+
base_url: nil,
|
|
30
|
+
# Query param: Optional file extension hint, such as pdf, docx, xlsx, pptx, html,
|
|
31
|
+
# json, csv, md, py, rtf, jpg, png, or txt.
|
|
32
|
+
extension: nil,
|
|
33
|
+
# Query param: Optional filename hint used to infer the extension when extension
|
|
34
|
+
# is omitted.
|
|
35
|
+
filename: nil,
|
|
36
|
+
# Query param: Include image references in Markdown output
|
|
37
|
+
include_images: nil,
|
|
38
|
+
# Query param: Preserve hyperlinks in Markdown output
|
|
39
|
+
include_links: nil,
|
|
40
|
+
# Query param: When true for PDF inputs, detect and OCR images embedded in the
|
|
41
|
+
# selected pages, inserting recognized text at each image's position in page
|
|
42
|
+
# reading order while preserving the PDF text layer. pdfStart/pdfEnd limit the
|
|
43
|
+
# inclusive page range. This is separate from automatic scanned-PDF OCR fallback.
|
|
44
|
+
ocr: nil,
|
|
45
|
+
# Query param: Last 1-based PDF page to parse. When omitted, parsing ends at the
|
|
46
|
+
# last page. Must be greater than or equal to pdfStart when both are provided.
|
|
47
|
+
pdf_end: nil,
|
|
48
|
+
# Query param: First 1-based PDF page to parse. When omitted, parsing starts at
|
|
49
|
+
# the first page.
|
|
50
|
+
pdf_start: nil,
|
|
51
|
+
# Query param: Shorten base64-encoded image data in the Markdown output
|
|
52
|
+
shorten_base64_images: nil,
|
|
53
|
+
# Query param: Extract only the main content from HTML-like inputs
|
|
54
|
+
use_main_content_only: nil,
|
|
55
|
+
request_options: {}
|
|
56
|
+
)
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# @api private
|
|
60
|
+
sig { params(client: ContextDev::Client).returns(T.attached_class) }
|
|
61
|
+
def self.new(client:)
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
@@ -344,8 +344,8 @@ module ContextDev
|
|
|
344
344
|
max_depth: nil,
|
|
345
345
|
# Maximum number of pages to crawl. Hard cap: 500.
|
|
346
346
|
max_pages: nil,
|
|
347
|
-
# PDF parsing controls. Use start/end to limit text extraction and
|
|
348
|
-
# inclusive 1-based page range.
|
|
347
|
+
# PDF parsing controls. Use start/end to limit text extraction and embedded-image
|
|
348
|
+
# detection/OCR to an inclusive 1-based page range.
|
|
349
349
|
pdf: nil,
|
|
350
350
|
# When true, waits briefly for CSS and transition animations to settle before
|
|
351
351
|
# extracting each crawled page. Defaults to false. This adds a bit of latency in
|
|
@@ -416,8 +416,8 @@ module ContextDev
|
|
|
416
416
|
# younger than this many milliseconds. Defaults to 1 day (86400000 ms) when
|
|
417
417
|
# omitted. Max is 30 days (2592000000 ms). Set to 0 to always scrape fresh.
|
|
418
418
|
max_age_ms: nil,
|
|
419
|
-
# PDF parsing controls. Use start/end to limit text extraction and
|
|
420
|
-
# inclusive 1-based page range.
|
|
419
|
+
# PDF parsing controls. Use start/end to limit text extraction and embedded-image
|
|
420
|
+
# detection/OCR to an inclusive 1-based page range.
|
|
421
421
|
pdf: nil,
|
|
422
422
|
# When true, waits briefly for CSS and transition animations to settle before
|
|
423
423
|
# extracting HTML. Defaults to false. This adds a bit of latency in exchange for
|
|
@@ -482,7 +482,22 @@ module ContextDev
|
|
|
482
482
|
)
|
|
483
483
|
end
|
|
484
484
|
|
|
485
|
-
# Scrapes the given URL into LLM usable Markdown.
|
|
485
|
+
# Scrapes the given URL into LLM usable Markdown. Inspect key_metadata on JSON
|
|
486
|
+
# responses from a recognized API key; use error_code to distinguish stable
|
|
487
|
+
# failure categories.
|
|
488
|
+
#
|
|
489
|
+
# ### Billing & errors
|
|
490
|
+
#
|
|
491
|
+
# | HTTP status | Billed? | Meaning |
|
|
492
|
+
# | ----------- | -------------- | ---------------------------------------------------------------------------------------- |
|
|
493
|
+
# | 200 | Yes — 1 credit | Successful scrape, including a zero-length result when includeSelectors matched nothing |
|
|
494
|
+
# | 400 | No | Invalid input, skipped PDF, or the page could not be scraped |
|
|
495
|
+
# | 401 / 403 | No | Invalid/disabled key, insufficient permissions, or credits exhausted; inspect error_code |
|
|
496
|
+
# | 404 | No | Target page returned or fingerprinted as not found |
|
|
497
|
+
# | 408 | No | Request timed out |
|
|
498
|
+
# | 415 | No | Unsupported content type |
|
|
499
|
+
# | 429 | No | Per-minute rate limit exceeded; honor Retry-After |
|
|
500
|
+
# | 500 | No | Internal error |
|
|
486
501
|
sig do
|
|
487
502
|
params(
|
|
488
503
|
url: String,
|
|
@@ -532,8 +547,8 @@ module ContextDev
|
|
|
532
547
|
# younger than this many milliseconds. Defaults to 1 day (86400000 ms) when
|
|
533
548
|
# omitted. Max is 30 days (2592000000 ms). Set to 0 to always scrape fresh.
|
|
534
549
|
max_age_ms: nil,
|
|
535
|
-
# PDF parsing controls. Use start/end to limit text extraction and
|
|
536
|
-
# inclusive 1-based page range.
|
|
550
|
+
# PDF parsing controls. Use start/end to limit text extraction and embedded-image
|
|
551
|
+
# detection/OCR to an inclusive 1-based page range.
|
|
537
552
|
pdf: nil,
|
|
538
553
|
# When true, waits briefly for CSS and transition animations to settle before
|
|
539
554
|
# converting to Markdown. Defaults to false. This adds a bit of latency in
|
data/sig/context_dev/client.rbs
CHANGED
|
@@ -287,14 +287,43 @@ module ContextDev
|
|
|
287
287
|
def self?.values: -> ::Array[ContextDev::Models::MonitorCreateParams::mode]
|
|
288
288
|
end
|
|
289
289
|
|
|
290
|
-
type webhook =
|
|
290
|
+
type webhook =
|
|
291
|
+
{
|
|
292
|
+
url: String,
|
|
293
|
+
events: ::Array[ContextDev::Models::MonitorCreateParams::Webhook::event],
|
|
294
|
+
secret: String
|
|
295
|
+
}
|
|
291
296
|
|
|
292
297
|
class Webhook < ContextDev::Internal::Type::BaseModel
|
|
293
298
|
attr_accessor url: String
|
|
294
299
|
|
|
295
|
-
|
|
300
|
+
attr_reader events: ::Array[ContextDev::Models::MonitorCreateParams::Webhook::event]?
|
|
301
|
+
|
|
302
|
+
def events=: (
|
|
303
|
+
::Array[ContextDev::Models::MonitorCreateParams::Webhook::event]
|
|
304
|
+
) -> ::Array[ContextDev::Models::MonitorCreateParams::Webhook::event]
|
|
305
|
+
|
|
306
|
+
def initialize: (
|
|
307
|
+
url: String,
|
|
308
|
+
?events: ::Array[ContextDev::Models::MonitorCreateParams::Webhook::event]
|
|
309
|
+
) -> void
|
|
310
|
+
|
|
311
|
+
def to_hash: -> {
|
|
312
|
+
url: String,
|
|
313
|
+
events: ::Array[ContextDev::Models::MonitorCreateParams::Webhook::event],
|
|
314
|
+
secret: String
|
|
315
|
+
}
|
|
296
316
|
|
|
297
|
-
|
|
317
|
+
type event = :"change.detected" | :"run.completed"
|
|
318
|
+
|
|
319
|
+
module Event
|
|
320
|
+
extend ContextDev::Internal::Type::Enum
|
|
321
|
+
|
|
322
|
+
CHANGE_DETECTED: :"change.detected"
|
|
323
|
+
RUN_COMPLETED: :"run.completed"
|
|
324
|
+
|
|
325
|
+
def self?.values: -> ::Array[ContextDev::Models::MonitorCreateParams::Webhook::event]
|
|
326
|
+
end
|
|
298
327
|
end
|
|
299
328
|
end
|
|
300
329
|
end
|
|
@@ -17,7 +17,8 @@ module ContextDev
|
|
|
17
17
|
last_run_at: Time?,
|
|
18
18
|
next_run_at: Time?,
|
|
19
19
|
tags: ::Array[String],
|
|
20
|
-
webhook: ContextDev::Models::MonitorCreateResponse::Webhook
|
|
20
|
+
webhook: ContextDev::Models::MonitorCreateResponse::Webhook?,
|
|
21
|
+
webhook_failure: ContextDev::Models::MonitorCreateResponse::WebhookFailure?
|
|
21
22
|
}
|
|
22
23
|
|
|
23
24
|
class MonitorCreateResponse < ContextDev::Internal::Type::BaseModel
|
|
@@ -55,6 +56,8 @@ module ContextDev
|
|
|
55
56
|
|
|
56
57
|
attr_accessor webhook: ContextDev::Models::MonitorCreateResponse::Webhook?
|
|
57
58
|
|
|
59
|
+
attr_accessor webhook_failure: ContextDev::Models::MonitorCreateResponse::WebhookFailure?
|
|
60
|
+
|
|
58
61
|
def initialize: (
|
|
59
62
|
id: String,
|
|
60
63
|
change_detection: ContextDev::Models::MonitorCreateResponse::change_detection,
|
|
@@ -71,7 +74,8 @@ module ContextDev
|
|
|
71
74
|
?last_run_at: Time?,
|
|
72
75
|
?next_run_at: Time?,
|
|
73
76
|
?tags: ::Array[String],
|
|
74
|
-
?webhook: ContextDev::Models::MonitorCreateResponse::Webhook
|
|
77
|
+
?webhook: ContextDev::Models::MonitorCreateResponse::Webhook?,
|
|
78
|
+
?webhook_failure: ContextDev::Models::MonitorCreateResponse::WebhookFailure?
|
|
75
79
|
) -> void
|
|
76
80
|
|
|
77
81
|
def to_hash: -> {
|
|
@@ -90,7 +94,8 @@ module ContextDev
|
|
|
90
94
|
last_run_at: Time?,
|
|
91
95
|
next_run_at: Time?,
|
|
92
96
|
tags: ::Array[String],
|
|
93
|
-
webhook: ContextDev::Models::MonitorCreateResponse::Webhook
|
|
97
|
+
webhook: ContextDev::Models::MonitorCreateResponse::Webhook?,
|
|
98
|
+
webhook_failure: ContextDev::Models::MonitorCreateResponse::WebhookFailure?
|
|
94
99
|
}
|
|
95
100
|
|
|
96
101
|
type change_detection =
|
|
@@ -415,18 +420,92 @@ module ContextDev
|
|
|
415
420
|
def to_hash: -> { code: String, message: String }
|
|
416
421
|
end
|
|
417
422
|
|
|
418
|
-
type webhook =
|
|
423
|
+
type webhook =
|
|
424
|
+
{
|
|
425
|
+
url: String,
|
|
426
|
+
events: ::Array[ContextDev::Models::MonitorCreateResponse::Webhook::event],
|
|
427
|
+
secret: String
|
|
428
|
+
}
|
|
419
429
|
|
|
420
430
|
class Webhook < ContextDev::Internal::Type::BaseModel
|
|
421
431
|
attr_accessor url: String
|
|
422
432
|
|
|
433
|
+
attr_reader events: ::Array[ContextDev::Models::MonitorCreateResponse::Webhook::event]?
|
|
434
|
+
|
|
435
|
+
def events=: (
|
|
436
|
+
::Array[ContextDev::Models::MonitorCreateResponse::Webhook::event]
|
|
437
|
+
) -> ::Array[ContextDev::Models::MonitorCreateResponse::Webhook::event]
|
|
438
|
+
|
|
423
439
|
attr_reader secret: String?
|
|
424
440
|
|
|
425
441
|
def secret=: (String) -> String
|
|
426
442
|
|
|
427
|
-
def initialize: (
|
|
443
|
+
def initialize: (
|
|
444
|
+
url: String,
|
|
445
|
+
?events: ::Array[ContextDev::Models::MonitorCreateResponse::Webhook::event],
|
|
446
|
+
?secret: String
|
|
447
|
+
) -> void
|
|
448
|
+
|
|
449
|
+
def to_hash: -> {
|
|
450
|
+
url: String,
|
|
451
|
+
events: ::Array[ContextDev::Models::MonitorCreateResponse::Webhook::event],
|
|
452
|
+
secret: String
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
type event = :"change.detected" | :"run.completed"
|
|
456
|
+
|
|
457
|
+
module Event
|
|
458
|
+
extend ContextDev::Internal::Type::Enum
|
|
459
|
+
|
|
460
|
+
CHANGE_DETECTED: :"change.detected"
|
|
461
|
+
RUN_COMPLETED: :"run.completed"
|
|
428
462
|
|
|
429
|
-
|
|
463
|
+
def self?.values: -> ::Array[ContextDev::Models::MonitorCreateResponse::Webhook::event]
|
|
464
|
+
end
|
|
465
|
+
end
|
|
466
|
+
|
|
467
|
+
type webhook_failure =
|
|
468
|
+
{
|
|
469
|
+
consecutive_failures: Integer,
|
|
470
|
+
last_failed_at: Time,
|
|
471
|
+
last_message: String,
|
|
472
|
+
last_status: ContextDev::Models::MonitorCreateResponse::WebhookFailure::last_status
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
class WebhookFailure < ContextDev::Internal::Type::BaseModel
|
|
476
|
+
attr_accessor consecutive_failures: Integer
|
|
477
|
+
|
|
478
|
+
attr_accessor last_failed_at: Time
|
|
479
|
+
|
|
480
|
+
attr_accessor last_message: String
|
|
481
|
+
|
|
482
|
+
attr_accessor last_status: ContextDev::Models::MonitorCreateResponse::WebhookFailure::last_status
|
|
483
|
+
|
|
484
|
+
def initialize: (
|
|
485
|
+
consecutive_failures: Integer,
|
|
486
|
+
last_failed_at: Time,
|
|
487
|
+
last_message: String,
|
|
488
|
+
last_status: ContextDev::Models::MonitorCreateResponse::WebhookFailure::last_status
|
|
489
|
+
) -> void
|
|
490
|
+
|
|
491
|
+
def to_hash: -> {
|
|
492
|
+
consecutive_failures: Integer,
|
|
493
|
+
last_failed_at: Time,
|
|
494
|
+
last_message: String,
|
|
495
|
+
last_status: ContextDev::Models::MonitorCreateResponse::WebhookFailure::last_status
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
type last_status = :rejected | :failed | :skipped_unsafe_url
|
|
499
|
+
|
|
500
|
+
module LastStatus
|
|
501
|
+
extend ContextDev::Internal::Type::Enum
|
|
502
|
+
|
|
503
|
+
REJECTED: :rejected
|
|
504
|
+
FAILED: :failed
|
|
505
|
+
SKIPPED_UNSAFE_URL: :skipped_unsafe_url
|
|
506
|
+
|
|
507
|
+
def self?.values: -> ::Array[ContextDev::Models::MonitorCreateResponse::WebhookFailure::last_status]
|
|
508
|
+
end
|
|
430
509
|
end
|
|
431
510
|
end
|
|
432
511
|
end
|
|
@@ -41,7 +41,9 @@ module ContextDev
|
|
|
41
41
|
completed_at: Time?,
|
|
42
42
|
error: ContextDev::Models::MonitorListAccountRunsResponse::Data::Error?,
|
|
43
43
|
skip_reason: ContextDev::Models::MonitorListAccountRunsResponse::Data::skip_reason?,
|
|
44
|
-
started_at: Time
|
|
44
|
+
started_at: Time?,
|
|
45
|
+
webhook_deliveries: ::Array[ContextDev::WebhookDelivery],
|
|
46
|
+
webhook_delivery: ContextDev::WebhookDelivery
|
|
45
47
|
}
|
|
46
48
|
|
|
47
49
|
class Data < ContextDev::Internal::Type::BaseModel
|
|
@@ -73,6 +75,18 @@ module ContextDev
|
|
|
73
75
|
|
|
74
76
|
attr_accessor started_at: Time?
|
|
75
77
|
|
|
78
|
+
attr_reader webhook_deliveries: ::Array[ContextDev::WebhookDelivery]?
|
|
79
|
+
|
|
80
|
+
def webhook_deliveries=: (
|
|
81
|
+
::Array[ContextDev::WebhookDelivery]
|
|
82
|
+
) -> ::Array[ContextDev::WebhookDelivery]
|
|
83
|
+
|
|
84
|
+
attr_reader webhook_delivery: ContextDev::WebhookDelivery?
|
|
85
|
+
|
|
86
|
+
def webhook_delivery=: (
|
|
87
|
+
ContextDev::WebhookDelivery
|
|
88
|
+
) -> ContextDev::WebhookDelivery
|
|
89
|
+
|
|
76
90
|
def initialize: (
|
|
77
91
|
id: String,
|
|
78
92
|
baseline_created: bool,
|
|
@@ -87,7 +101,9 @@ module ContextDev
|
|
|
87
101
|
?completed_at: Time?,
|
|
88
102
|
?error: ContextDev::Models::MonitorListAccountRunsResponse::Data::Error?,
|
|
89
103
|
?skip_reason: ContextDev::Models::MonitorListAccountRunsResponse::Data::skip_reason?,
|
|
90
|
-
?started_at: Time
|
|
104
|
+
?started_at: Time?,
|
|
105
|
+
?webhook_deliveries: ::Array[ContextDev::WebhookDelivery],
|
|
106
|
+
?webhook_delivery: ContextDev::WebhookDelivery
|
|
91
107
|
) -> void
|
|
92
108
|
|
|
93
109
|
def to_hash: -> {
|
|
@@ -104,7 +120,9 @@ module ContextDev
|
|
|
104
120
|
completed_at: Time?,
|
|
105
121
|
error: ContextDev::Models::MonitorListAccountRunsResponse::Data::Error?,
|
|
106
122
|
skip_reason: ContextDev::Models::MonitorListAccountRunsResponse::Data::skip_reason?,
|
|
107
|
-
started_at: Time
|
|
123
|
+
started_at: Time?,
|
|
124
|
+
webhook_deliveries: ::Array[ContextDev::WebhookDelivery],
|
|
125
|
+
webhook_delivery: ContextDev::WebhookDelivery
|
|
108
126
|
}
|
|
109
127
|
|
|
110
128
|
type change_detection_type = :exact | :semantic
|