context.dev 2.16.0 → 2.17.1
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 +24 -0
- data/README.md +1 -1
- data/lib/context_dev/models/ai_extract_product_params.rb +53 -8
- data/lib/context_dev/models/ai_extract_product_response.rb +10 -1
- data/lib/context_dev/models/ai_extract_products_params.rb +116 -16
- data/lib/context_dev/models/ai_extract_products_response.rb +11 -1
- data/lib/context_dev/models/brand_retrieve_params.rb +355 -60
- data/lib/context_dev/models/brand_retrieve_response.rb +71 -62
- data/lib/context_dev/models/brand_retrieve_simplified_params.rb +57 -11
- data/lib/context_dev/models/brand_retrieve_simplified_response.rb +72 -63
- data/lib/context_dev/models/industry_retrieve_naics_params.rb +53 -8
- data/lib/context_dev/models/industry_retrieve_naics_response.rb +10 -1
- data/lib/context_dev/models/industry_retrieve_sic_params.rb +53 -8
- data/lib/context_dev/models/industry_retrieve_sic_response.rb +10 -1
- data/lib/context_dev/models/monitor_create_params.rb +27 -3
- data/lib/context_dev/models/monitor_create_response.rb +30 -5
- data/lib/context_dev/models/monitor_list_response.rb +30 -5
- data/lib/context_dev/models/monitor_retrieve_response.rb +30 -5
- data/lib/context_dev/models/monitor_update_params.rb +27 -3
- data/lib/context_dev/models/monitor_update_response.rb +30 -5
- data/lib/context_dev/models/person_enrich_params.rb +53 -8
- data/lib/context_dev/models/person_enrich_response.rb +10 -1
- data/lib/context_dev/models/utility_prefetch_params.rb +48 -8
- data/lib/context_dev/models/web_answers_params.rb +124 -0
- data/lib/context_dev/models/web_answers_response.rb +68 -0
- data/lib/context_dev/models/web_extract_competitors_params.rb +53 -8
- data/lib/context_dev/models/web_extract_competitors_response.rb +10 -1
- data/lib/context_dev/models/web_extract_fonts_params.rb +58 -11
- data/lib/context_dev/models/web_extract_fonts_response.rb +32 -1
- data/lib/context_dev/models/web_extract_params.rb +53 -8
- data/lib/context_dev/models/web_extract_response.rb +10 -1
- data/lib/context_dev/models/web_extract_styleguide_params.rb +58 -11
- data/lib/context_dev/models/web_extract_styleguide_response.rb +32 -1
- data/lib/context_dev/models/web_screenshot_params.rb +58 -10
- data/lib/context_dev/models/web_screenshot_response.rb +32 -1
- data/lib/context_dev/models/web_search_params.rb +112 -16
- data/lib/context_dev/models/web_search_response.rb +49 -4
- data/lib/context_dev/models/web_web_crawl_md_params.rb +53 -8
- data/lib/context_dev/models/web_web_crawl_md_response.rb +11 -1
- data/lib/context_dev/models/web_web_scrape_bytes_params.rb +344 -0
- data/lib/context_dev/models/web_web_scrape_bytes_response.rb +135 -0
- data/lib/context_dev/models/web_web_scrape_html_params.rb +57 -10
- data/lib/context_dev/models/web_web_scrape_html_response.rb +32 -1
- data/lib/context_dev/models/web_web_scrape_images_params.rb +57 -10
- data/lib/context_dev/models/web_web_scrape_images_response.rb +42 -1
- data/lib/context_dev/models/web_web_scrape_md_params.rb +57 -10
- data/lib/context_dev/models/web_web_scrape_md_response.rb +32 -1
- data/lib/context_dev/models/web_web_scrape_sitemap_params.rb +53 -8
- data/lib/context_dev/models/web_web_scrape_sitemap_response.rb +11 -1
- data/lib/context_dev/models.rb +4 -0
- data/lib/context_dev/resources/ai.rb +2 -2
- data/lib/context_dev/resources/brand.rb +3 -3
- data/lib/context_dev/resources/industry.rb +6 -6
- data/lib/context_dev/resources/people.rb +2 -2
- data/lib/context_dev/resources/utility.rb +2 -2
- data/lib/context_dev/resources/web.rb +119 -33
- data/lib/context_dev/version.rb +1 -1
- data/lib/context_dev.rb +4 -0
- data/rbi/context_dev/models/ai_extract_product_params.rbi +125 -13
- data/rbi/context_dev/models/ai_extract_product_response.rbi +13 -0
- data/rbi/context_dev/models/ai_extract_products_params.rbi +264 -26
- data/rbi/context_dev/models/ai_extract_products_response.rbi +15 -0
- data/rbi/context_dev/models/brand_retrieve_params.rbi +816 -102
- data/rbi/context_dev/models/brand_retrieve_response.rbi +136 -131
- data/rbi/context_dev/models/brand_retrieve_simplified_params.rbi +136 -19
- data/rbi/context_dev/models/brand_retrieve_simplified_response.rbi +140 -135
- data/rbi/context_dev/models/industry_retrieve_naics_params.rbi +127 -13
- data/rbi/context_dev/models/industry_retrieve_naics_response.rbi +13 -0
- data/rbi/context_dev/models/industry_retrieve_sic_params.rbi +127 -13
- data/rbi/context_dev/models/industry_retrieve_sic_response.rbi +13 -0
- data/rbi/context_dev/models/monitor_create_params.rbi +40 -2
- data/rbi/context_dev/models/monitor_create_response.rbi +44 -4
- data/rbi/context_dev/models/monitor_list_response.rbi +44 -4
- data/rbi/context_dev/models/monitor_retrieve_response.rbi +44 -4
- data/rbi/context_dev/models/monitor_update_params.rbi +40 -2
- data/rbi/context_dev/models/monitor_update_response.rbi +44 -4
- data/rbi/context_dev/models/person_enrich_params.rbi +123 -13
- data/rbi/context_dev/models/person_enrich_response.rbi +16 -3
- data/rbi/context_dev/models/utility_prefetch_params.rbi +112 -13
- data/rbi/context_dev/models/web_answers_params.rbi +234 -0
- data/rbi/context_dev/models/web_answers_response.rbi +122 -0
- data/rbi/context_dev/models/web_extract_competitors_params.rbi +127 -13
- data/rbi/context_dev/models/web_extract_competitors_response.rbi +16 -3
- data/rbi/context_dev/models/web_extract_fonts_params.rbi +132 -19
- data/rbi/context_dev/models/web_extract_fonts_response.rbi +71 -0
- data/rbi/context_dev/models/web_extract_params.rbi +120 -13
- data/rbi/context_dev/models/web_extract_response.rbi +16 -3
- data/rbi/context_dev/models/web_extract_styleguide_params.rbi +136 -19
- data/rbi/context_dev/models/web_extract_styleguide_response.rbi +71 -0
- data/rbi/context_dev/models/web_screenshot_params.rbi +132 -17
- data/rbi/context_dev/models/web_screenshot_response.rbi +71 -0
- data/rbi/context_dev/models/web_search_params.rbi +253 -26
- data/rbi/context_dev/models/web_search_response.rbi +96 -8
- data/rbi/context_dev/models/web_web_crawl_md_params.rbi +123 -13
- data/rbi/context_dev/models/web_web_crawl_md_response.rbi +19 -3
- data/rbi/context_dev/models/web_web_scrape_bytes_params.rbi +699 -0
- data/rbi/context_dev/models/web_web_scrape_bytes_response.rbi +238 -0
- data/rbi/context_dev/models/web_web_scrape_html_params.rbi +132 -17
- data/rbi/context_dev/models/web_web_scrape_html_response.rbi +61 -0
- data/rbi/context_dev/models/web_web_scrape_images_params.rbi +134 -17
- data/rbi/context_dev/models/web_web_scrape_images_response.rbi +89 -3
- data/rbi/context_dev/models/web_web_scrape_md_params.rbi +130 -17
- data/rbi/context_dev/models/web_web_scrape_md_response.rbi +61 -0
- data/rbi/context_dev/models/web_web_scrape_sitemap_params.rbi +127 -13
- data/rbi/context_dev/models/web_web_scrape_sitemap_response.rbi +18 -3
- data/rbi/context_dev/models.rbi +4 -0
- data/rbi/context_dev/resources/ai.rbi +5 -5
- data/rbi/context_dev/resources/brand.rbi +9 -8
- data/rbi/context_dev/resources/industry.rbi +12 -10
- data/rbi/context_dev/resources/people.rbi +5 -5
- data/rbi/context_dev/resources/utility.rbi +5 -5
- data/rbi/context_dev/resources/web.rbi +170 -72
- data/sig/context_dev/models/ai_extract_product_params.rbs +44 -5
- data/sig/context_dev/models/ai_extract_product_response.rbs +7 -0
- data/sig/context_dev/models/ai_extract_products_params.rbs +88 -10
- data/sig/context_dev/models/ai_extract_products_response.rbs +7 -0
- data/sig/context_dev/models/brand_retrieve_params.rbs +264 -30
- data/sig/context_dev/models/brand_retrieve_response.rbs +53 -54
- data/sig/context_dev/models/brand_retrieve_simplified_params.rbs +44 -5
- data/sig/context_dev/models/brand_retrieve_simplified_response.rbs +53 -54
- data/sig/context_dev/models/industry_retrieve_naics_params.rbs +44 -5
- data/sig/context_dev/models/industry_retrieve_naics_response.rbs +7 -0
- data/sig/context_dev/models/industry_retrieve_sic_params.rbs +44 -5
- data/sig/context_dev/models/industry_retrieve_sic_response.rbs +7 -0
- data/sig/context_dev/models/monitor_create_params.rbs +14 -0
- data/sig/context_dev/models/monitor_create_response.rbs +14 -0
- data/sig/context_dev/models/monitor_list_response.rbs +14 -0
- data/sig/context_dev/models/monitor_retrieve_response.rbs +14 -0
- data/sig/context_dev/models/monitor_update_params.rbs +14 -0
- data/sig/context_dev/models/monitor_update_response.rbs +14 -0
- data/sig/context_dev/models/person_enrich_params.rbs +44 -5
- data/sig/context_dev/models/person_enrich_response.rbs +10 -3
- data/sig/context_dev/models/utility_prefetch_params.rbs +43 -5
- data/sig/context_dev/models/web_answers_params.rbs +106 -0
- data/sig/context_dev/models/web_answers_response.rbs +60 -0
- data/sig/context_dev/models/web_extract_competitors_params.rbs +44 -5
- data/sig/context_dev/models/web_extract_competitors_response.rbs +10 -3
- data/sig/context_dev/models/web_extract_fonts_params.rbs +44 -5
- data/sig/context_dev/models/web_extract_fonts_response.rbs +20 -0
- data/sig/context_dev/models/web_extract_params.rbs +44 -5
- data/sig/context_dev/models/web_extract_response.rbs +10 -3
- data/sig/context_dev/models/web_extract_styleguide_params.rbs +44 -5
- data/sig/context_dev/models/web_extract_styleguide_response.rbs +20 -0
- data/sig/context_dev/models/web_screenshot_params.rbs +44 -5
- data/sig/context_dev/models/web_screenshot_response.rbs +20 -0
- data/sig/context_dev/models/web_search_params.rbs +88 -10
- data/sig/context_dev/models/web_search_response.rbs +33 -6
- data/sig/context_dev/models/web_web_crawl_md_params.rbs +44 -5
- data/sig/context_dev/models/web_web_crawl_md_response.rbs +10 -3
- data/sig/context_dev/models/web_web_scrape_bytes_params.rbs +531 -0
- data/sig/context_dev/models/web_web_scrape_bytes_response.rbs +108 -0
- data/sig/context_dev/models/web_web_scrape_html_params.rbs +44 -5
- data/sig/context_dev/models/web_web_scrape_html_response.rbs +16 -0
- data/sig/context_dev/models/web_web_scrape_images_params.rbs +44 -5
- data/sig/context_dev/models/web_web_scrape_images_response.rbs +30 -3
- data/sig/context_dev/models/web_web_scrape_md_params.rbs +44 -5
- data/sig/context_dev/models/web_web_scrape_md_response.rbs +16 -0
- data/sig/context_dev/models/web_web_scrape_sitemap_params.rbs +44 -5
- data/sig/context_dev/models/web_web_scrape_sitemap_response.rbs +10 -3
- data/sig/context_dev/models.rbs +4 -0
- data/sig/context_dev/resources/ai.rbs +1 -1
- data/sig/context_dev/resources/brand.rbs +1 -1
- data/sig/context_dev/resources/industry.rbs +2 -2
- data/sig/context_dev/resources/people.rbs +1 -1
- data/sig/context_dev/resources/utility.rbs +1 -1
- data/sig/context_dev/resources/web.rbs +30 -11
- metadata +14 -2
|
@@ -83,19 +83,26 @@ module ContextDev
|
|
|
83
83
|
sig { params(tags: T::Array[String]).void }
|
|
84
84
|
attr_writer :tags
|
|
85
85
|
|
|
86
|
-
# Optional
|
|
87
|
-
#
|
|
88
|
-
#
|
|
89
|
-
sig
|
|
90
|
-
|
|
86
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
87
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
88
|
+
# timeoutOpts object.
|
|
89
|
+
sig do
|
|
90
|
+
returns(T.nilable(ContextDev::WebWebScrapeImagesParams::TimeoutOpts))
|
|
91
|
+
end
|
|
92
|
+
attr_reader :timeout_opts
|
|
91
93
|
|
|
92
|
-
sig
|
|
93
|
-
|
|
94
|
+
sig do
|
|
95
|
+
params(
|
|
96
|
+
timeout_opts:
|
|
97
|
+
ContextDev::WebWebScrapeImagesParams::TimeoutOpts::OrHash
|
|
98
|
+
).void
|
|
99
|
+
end
|
|
100
|
+
attr_writer :timeout_opts
|
|
94
101
|
|
|
95
102
|
# Optional browser wait time in milliseconds after initial page load before
|
|
96
103
|
# collecting images. Min: 0. Max: 30000 (30 seconds). When combined with
|
|
97
|
-
#
|
|
98
|
-
# is rejected with 400 TIMEOUT_TOO_SHORT_FOR_WAIT.
|
|
104
|
+
# timeoutOpts, timeoutOpts.milliseconds must be at least waitForMs + 10000 ms; a
|
|
105
|
+
# shorter deadline is rejected with 400 TIMEOUT_TOO_SHORT_FOR_WAIT.
|
|
99
106
|
sig { returns(T.nilable(Integer)) }
|
|
100
107
|
attr_accessor :wait_for_ms
|
|
101
108
|
|
|
@@ -118,7 +125,8 @@ module ContextDev
|
|
|
118
125
|
headers: T::Hash[Symbol, String],
|
|
119
126
|
max_age_ms: T.nilable(Integer),
|
|
120
127
|
tags: T::Array[String],
|
|
121
|
-
|
|
128
|
+
timeout_opts:
|
|
129
|
+
ContextDev::WebWebScrapeImagesParams::TimeoutOpts::OrHash,
|
|
122
130
|
wait_for_ms: T.nilable(Integer),
|
|
123
131
|
request_options: ContextDev::RequestOptions::OrHash
|
|
124
132
|
).returns(T.attached_class)
|
|
@@ -148,14 +156,14 @@ module ContextDev
|
|
|
148
156
|
# Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50
|
|
149
157
|
# characters.
|
|
150
158
|
tags: nil,
|
|
151
|
-
# Optional
|
|
152
|
-
#
|
|
153
|
-
#
|
|
154
|
-
|
|
159
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
160
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
161
|
+
# timeoutOpts object.
|
|
162
|
+
timeout_opts: nil,
|
|
155
163
|
# Optional browser wait time in milliseconds after initial page load before
|
|
156
164
|
# collecting images. Min: 0. Max: 30000 (30 seconds). When combined with
|
|
157
|
-
#
|
|
158
|
-
# is rejected with 400 TIMEOUT_TOO_SHORT_FOR_WAIT.
|
|
165
|
+
# timeoutOpts, timeoutOpts.milliseconds must be at least waitForMs + 10000 ms; a
|
|
166
|
+
# shorter deadline is rejected with 400 TIMEOUT_TOO_SHORT_FOR_WAIT.
|
|
159
167
|
wait_for_ms: nil,
|
|
160
168
|
request_options: {}
|
|
161
169
|
)
|
|
@@ -181,7 +189,7 @@ module ContextDev
|
|
|
181
189
|
headers: T::Hash[Symbol, String],
|
|
182
190
|
max_age_ms: T.nilable(Integer),
|
|
183
191
|
tags: T::Array[String],
|
|
184
|
-
|
|
192
|
+
timeout_opts: ContextDev::WebWebScrapeImagesParams::TimeoutOpts,
|
|
185
193
|
wait_for_ms: T.nilable(Integer),
|
|
186
194
|
request_options: ContextDev::RequestOptions
|
|
187
195
|
}
|
|
@@ -549,6 +557,115 @@ module ContextDev
|
|
|
549
557
|
def to_hash
|
|
550
558
|
end
|
|
551
559
|
end
|
|
560
|
+
|
|
561
|
+
class TimeoutOpts < ContextDev::Internal::Type::BaseModel
|
|
562
|
+
OrHash =
|
|
563
|
+
T.type_alias do
|
|
564
|
+
T.any(
|
|
565
|
+
ContextDev::WebWebScrapeImagesParams::TimeoutOpts,
|
|
566
|
+
ContextDev::Internal::AnyHash
|
|
567
|
+
)
|
|
568
|
+
end
|
|
569
|
+
|
|
570
|
+
# Request deadline in milliseconds. Maximum: 300000 (5 minutes).
|
|
571
|
+
sig { returns(Integer) }
|
|
572
|
+
attr_accessor :milliseconds
|
|
573
|
+
|
|
574
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
575
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
576
|
+
# available, the request still fails without charging credits. Partial results are
|
|
577
|
+
# not cached as complete results. "return-partial" requires milliseconds of at
|
|
578
|
+
# least 15000.
|
|
579
|
+
sig do
|
|
580
|
+
returns(
|
|
581
|
+
T.nilable(
|
|
582
|
+
ContextDev::WebWebScrapeImagesParams::TimeoutOpts::Behavior::OrSymbol
|
|
583
|
+
)
|
|
584
|
+
)
|
|
585
|
+
end
|
|
586
|
+
attr_reader :behavior
|
|
587
|
+
|
|
588
|
+
sig do
|
|
589
|
+
params(
|
|
590
|
+
behavior:
|
|
591
|
+
ContextDev::WebWebScrapeImagesParams::TimeoutOpts::Behavior::OrSymbol
|
|
592
|
+
).void
|
|
593
|
+
end
|
|
594
|
+
attr_writer :behavior
|
|
595
|
+
|
|
596
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
597
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
598
|
+
# timeoutOpts object.
|
|
599
|
+
sig do
|
|
600
|
+
params(
|
|
601
|
+
milliseconds: Integer,
|
|
602
|
+
behavior:
|
|
603
|
+
ContextDev::WebWebScrapeImagesParams::TimeoutOpts::Behavior::OrSymbol
|
|
604
|
+
).returns(T.attached_class)
|
|
605
|
+
end
|
|
606
|
+
def self.new(
|
|
607
|
+
# Request deadline in milliseconds. Maximum: 300000 (5 minutes).
|
|
608
|
+
milliseconds:,
|
|
609
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
610
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
611
|
+
# available, the request still fails without charging credits. Partial results are
|
|
612
|
+
# not cached as complete results. "return-partial" requires milliseconds of at
|
|
613
|
+
# least 15000.
|
|
614
|
+
behavior: nil
|
|
615
|
+
)
|
|
616
|
+
end
|
|
617
|
+
|
|
618
|
+
sig do
|
|
619
|
+
override.returns(
|
|
620
|
+
{
|
|
621
|
+
milliseconds: Integer,
|
|
622
|
+
behavior:
|
|
623
|
+
ContextDev::WebWebScrapeImagesParams::TimeoutOpts::Behavior::OrSymbol
|
|
624
|
+
}
|
|
625
|
+
)
|
|
626
|
+
end
|
|
627
|
+
def to_hash
|
|
628
|
+
end
|
|
629
|
+
|
|
630
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
631
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
632
|
+
# available, the request still fails without charging credits. Partial results are
|
|
633
|
+
# not cached as complete results. "return-partial" requires milliseconds of at
|
|
634
|
+
# least 15000.
|
|
635
|
+
module Behavior
|
|
636
|
+
extend ContextDev::Internal::Type::Enum
|
|
637
|
+
|
|
638
|
+
TaggedSymbol =
|
|
639
|
+
T.type_alias do
|
|
640
|
+
T.all(
|
|
641
|
+
Symbol,
|
|
642
|
+
ContextDev::WebWebScrapeImagesParams::TimeoutOpts::Behavior
|
|
643
|
+
)
|
|
644
|
+
end
|
|
645
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
646
|
+
|
|
647
|
+
FAIL =
|
|
648
|
+
T.let(
|
|
649
|
+
:fail,
|
|
650
|
+
ContextDev::WebWebScrapeImagesParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
651
|
+
)
|
|
652
|
+
RETURN_PARTIAL =
|
|
653
|
+
T.let(
|
|
654
|
+
:"return-partial",
|
|
655
|
+
ContextDev::WebWebScrapeImagesParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
656
|
+
)
|
|
657
|
+
|
|
658
|
+
sig do
|
|
659
|
+
override.returns(
|
|
660
|
+
T::Array[
|
|
661
|
+
ContextDev::WebWebScrapeImagesParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
662
|
+
]
|
|
663
|
+
)
|
|
664
|
+
end
|
|
665
|
+
def self.values
|
|
666
|
+
end
|
|
667
|
+
end
|
|
668
|
+
end
|
|
552
669
|
end
|
|
553
670
|
end
|
|
554
671
|
end
|
|
@@ -72,6 +72,28 @@ module ContextDev
|
|
|
72
72
|
end
|
|
73
73
|
attr_writer :actions_applied
|
|
74
74
|
|
|
75
|
+
# How complete the returned content is. `loaded` means the page finished the waits
|
|
76
|
+
# the request asked for. `still-loading` only occurs with
|
|
77
|
+
# timeoutOpts.behavior=return-partial: the timeoutOpts.milliseconds deadline was
|
|
78
|
+
# reached first, so the content reflects the DOM at that moment and late-rendering
|
|
79
|
+
# parts may be missing. Partial results are billed at the base request cost.
|
|
80
|
+
sig do
|
|
81
|
+
returns(
|
|
82
|
+
T.nilable(
|
|
83
|
+
ContextDev::Models::WebWebScrapeImagesResponse::FinalDomState::TaggedSymbol
|
|
84
|
+
)
|
|
85
|
+
)
|
|
86
|
+
end
|
|
87
|
+
attr_reader :final_dom_state
|
|
88
|
+
|
|
89
|
+
sig do
|
|
90
|
+
params(
|
|
91
|
+
final_dom_state:
|
|
92
|
+
ContextDev::Models::WebWebScrapeImagesResponse::FinalDomState::OrSymbol
|
|
93
|
+
).void
|
|
94
|
+
end
|
|
95
|
+
attr_writer :final_dom_state
|
|
96
|
+
|
|
75
97
|
# Credit usage, included whenever a valid API key is provided.
|
|
76
98
|
sig do
|
|
77
99
|
returns(
|
|
@@ -88,6 +110,15 @@ module ContextDev
|
|
|
88
110
|
end
|
|
89
111
|
attr_writer :key_metadata
|
|
90
112
|
|
|
113
|
+
# True when the deadline interrupted rendering or image enrichment. Partial
|
|
114
|
+
# results are billed at the base request cost, without enrichment or actions
|
|
115
|
+
# surcharges.
|
|
116
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
117
|
+
attr_reader :partial
|
|
118
|
+
|
|
119
|
+
sig { params(partial: T::Boolean).void }
|
|
120
|
+
attr_writer :partial
|
|
121
|
+
|
|
91
122
|
sig do
|
|
92
123
|
params(
|
|
93
124
|
cache_metadata:
|
|
@@ -104,8 +135,11 @@ module ContextDev
|
|
|
104
135
|
T::Array[
|
|
105
136
|
ContextDev::Models::WebWebScrapeImagesResponse::ActionsApplied::OrHash
|
|
106
137
|
],
|
|
138
|
+
final_dom_state:
|
|
139
|
+
ContextDev::Models::WebWebScrapeImagesResponse::FinalDomState::OrSymbol,
|
|
107
140
|
key_metadata:
|
|
108
|
-
ContextDev::Models::WebWebScrapeImagesResponse::KeyMetadata::OrHash
|
|
141
|
+
ContextDev::Models::WebWebScrapeImagesResponse::KeyMetadata::OrHash,
|
|
142
|
+
partial: T::Boolean
|
|
109
143
|
).returns(T.attached_class)
|
|
110
144
|
end
|
|
111
145
|
def self.new(
|
|
@@ -124,8 +158,18 @@ module ContextDev
|
|
|
124
158
|
url:,
|
|
125
159
|
# One verified outcome per requested browser action, in request order.
|
|
126
160
|
actions_applied: nil,
|
|
161
|
+
# How complete the returned content is. `loaded` means the page finished the waits
|
|
162
|
+
# the request asked for. `still-loading` only occurs with
|
|
163
|
+
# timeoutOpts.behavior=return-partial: the timeoutOpts.milliseconds deadline was
|
|
164
|
+
# reached first, so the content reflects the DOM at that moment and late-rendering
|
|
165
|
+
# parts may be missing. Partial results are billed at the base request cost.
|
|
166
|
+
final_dom_state: nil,
|
|
127
167
|
# Credit usage, included whenever a valid API key is provided.
|
|
128
|
-
key_metadata: nil
|
|
168
|
+
key_metadata: nil,
|
|
169
|
+
# True when the deadline interrupted rendering or image enrichment. Partial
|
|
170
|
+
# results are billed at the base request cost, without enrichment or actions
|
|
171
|
+
# surcharges.
|
|
172
|
+
partial: nil
|
|
129
173
|
)
|
|
130
174
|
end
|
|
131
175
|
|
|
@@ -144,8 +188,11 @@ module ContextDev
|
|
|
144
188
|
T::Array[
|
|
145
189
|
ContextDev::Models::WebWebScrapeImagesResponse::ActionsApplied
|
|
146
190
|
],
|
|
191
|
+
final_dom_state:
|
|
192
|
+
ContextDev::Models::WebWebScrapeImagesResponse::FinalDomState::TaggedSymbol,
|
|
147
193
|
key_metadata:
|
|
148
|
-
ContextDev::Models::WebWebScrapeImagesResponse::KeyMetadata
|
|
194
|
+
ContextDev::Models::WebWebScrapeImagesResponse::KeyMetadata,
|
|
195
|
+
partial: T::Boolean
|
|
149
196
|
}
|
|
150
197
|
)
|
|
151
198
|
end
|
|
@@ -780,6 +827,45 @@ module ContextDev
|
|
|
780
827
|
end
|
|
781
828
|
end
|
|
782
829
|
|
|
830
|
+
# How complete the returned content is. `loaded` means the page finished the waits
|
|
831
|
+
# the request asked for. `still-loading` only occurs with
|
|
832
|
+
# timeoutOpts.behavior=return-partial: the timeoutOpts.milliseconds deadline was
|
|
833
|
+
# reached first, so the content reflects the DOM at that moment and late-rendering
|
|
834
|
+
# parts may be missing. Partial results are billed at the base request cost.
|
|
835
|
+
module FinalDomState
|
|
836
|
+
extend ContextDev::Internal::Type::Enum
|
|
837
|
+
|
|
838
|
+
TaggedSymbol =
|
|
839
|
+
T.type_alias do
|
|
840
|
+
T.all(
|
|
841
|
+
Symbol,
|
|
842
|
+
ContextDev::Models::WebWebScrapeImagesResponse::FinalDomState
|
|
843
|
+
)
|
|
844
|
+
end
|
|
845
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
846
|
+
|
|
847
|
+
LOADED =
|
|
848
|
+
T.let(
|
|
849
|
+
:loaded,
|
|
850
|
+
ContextDev::Models::WebWebScrapeImagesResponse::FinalDomState::TaggedSymbol
|
|
851
|
+
)
|
|
852
|
+
STILL_LOADING =
|
|
853
|
+
T.let(
|
|
854
|
+
:"still-loading",
|
|
855
|
+
ContextDev::Models::WebWebScrapeImagesResponse::FinalDomState::TaggedSymbol
|
|
856
|
+
)
|
|
857
|
+
|
|
858
|
+
sig do
|
|
859
|
+
override.returns(
|
|
860
|
+
T::Array[
|
|
861
|
+
ContextDev::Models::WebWebScrapeImagesResponse::FinalDomState::TaggedSymbol
|
|
862
|
+
]
|
|
863
|
+
)
|
|
864
|
+
end
|
|
865
|
+
def self.values
|
|
866
|
+
end
|
|
867
|
+
end
|
|
868
|
+
|
|
783
869
|
class KeyMetadata < ContextDev::Internal::Type::BaseModel
|
|
784
870
|
OrHash =
|
|
785
871
|
T.type_alias do
|
|
@@ -137,14 +137,18 @@ module ContextDev
|
|
|
137
137
|
sig { params(tags: T::Array[String]).void }
|
|
138
138
|
attr_writer :tags
|
|
139
139
|
|
|
140
|
-
# Optional
|
|
141
|
-
#
|
|
142
|
-
#
|
|
143
|
-
sig { returns(T.nilable(
|
|
144
|
-
attr_reader :
|
|
140
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
141
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
142
|
+
# timeoutOpts object.
|
|
143
|
+
sig { returns(T.nilable(ContextDev::WebWebScrapeMdParams::TimeoutOpts)) }
|
|
144
|
+
attr_reader :timeout_opts
|
|
145
145
|
|
|
146
|
-
sig
|
|
147
|
-
|
|
146
|
+
sig do
|
|
147
|
+
params(
|
|
148
|
+
timeout_opts: ContextDev::WebWebScrapeMdParams::TimeoutOpts::OrHash
|
|
149
|
+
).void
|
|
150
|
+
end
|
|
151
|
+
attr_writer :timeout_opts
|
|
148
152
|
|
|
149
153
|
# Extract only the main content of the page, excluding headers, footers, sidebars,
|
|
150
154
|
# and navigation
|
|
@@ -156,8 +160,8 @@ module ContextDev
|
|
|
156
160
|
|
|
157
161
|
# Optional browser wait time in milliseconds after initial page load before
|
|
158
162
|
# converting the page to Markdown. Min: 0. Max: 30000 (30 seconds). When combined
|
|
159
|
-
# with
|
|
160
|
-
# deadline is rejected with 400 TIMEOUT_TOO_SHORT_FOR_WAIT.
|
|
163
|
+
# with timeoutOpts, timeoutOpts.milliseconds must be at least waitForMs + 10000
|
|
164
|
+
# ms; a shorter deadline is rejected with 400 TIMEOUT_TOO_SHORT_FOR_WAIT.
|
|
161
165
|
sig { returns(T.nilable(Integer)) }
|
|
162
166
|
attr_accessor :wait_for_ms
|
|
163
167
|
|
|
@@ -199,7 +203,7 @@ module ContextDev
|
|
|
199
203
|
settle_animations: T::Boolean,
|
|
200
204
|
shorten_base64_images: T::Boolean,
|
|
201
205
|
tags: T::Array[String],
|
|
202
|
-
|
|
206
|
+
timeout_opts: ContextDev::WebWebScrapeMdParams::TimeoutOpts::OrHash,
|
|
203
207
|
use_main_content_only: T::Boolean,
|
|
204
208
|
wait_for_ms: T.nilable(Integer),
|
|
205
209
|
zdr: ContextDev::WebWebScrapeMdParams::Zdr::OrSymbol,
|
|
@@ -255,17 +259,17 @@ module ContextDev
|
|
|
255
259
|
# Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50
|
|
256
260
|
# characters.
|
|
257
261
|
tags: nil,
|
|
258
|
-
# Optional
|
|
259
|
-
#
|
|
260
|
-
#
|
|
261
|
-
|
|
262
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
263
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
264
|
+
# timeoutOpts object.
|
|
265
|
+
timeout_opts: nil,
|
|
262
266
|
# Extract only the main content of the page, excluding headers, footers, sidebars,
|
|
263
267
|
# and navigation
|
|
264
268
|
use_main_content_only: nil,
|
|
265
269
|
# Optional browser wait time in milliseconds after initial page load before
|
|
266
270
|
# converting the page to Markdown. Min: 0. Max: 30000 (30 seconds). When combined
|
|
267
|
-
# with
|
|
268
|
-
# deadline is rejected with 400 TIMEOUT_TOO_SHORT_FOR_WAIT.
|
|
271
|
+
# with timeoutOpts, timeoutOpts.milliseconds must be at least waitForMs + 10000
|
|
272
|
+
# ms; a shorter deadline is rejected with 400 TIMEOUT_TOO_SHORT_FOR_WAIT.
|
|
269
273
|
wait_for_ms: nil,
|
|
270
274
|
# Set to enabled to bypass shared caches and omit request and response content
|
|
271
275
|
# from retained usage logs. Requires zero data retention to be enabled for your
|
|
@@ -303,7 +307,7 @@ module ContextDev
|
|
|
303
307
|
settle_animations: T::Boolean,
|
|
304
308
|
shorten_base64_images: T::Boolean,
|
|
305
309
|
tags: T::Array[String],
|
|
306
|
-
|
|
310
|
+
timeout_opts: ContextDev::WebWebScrapeMdParams::TimeoutOpts,
|
|
307
311
|
use_main_content_only: T::Boolean,
|
|
308
312
|
wait_for_ms: T.nilable(Integer),
|
|
309
313
|
zdr: ContextDev::WebWebScrapeMdParams::Zdr::OrSymbol,
|
|
@@ -907,6 +911,115 @@ module ContextDev
|
|
|
907
911
|
end
|
|
908
912
|
end
|
|
909
913
|
|
|
914
|
+
class TimeoutOpts < ContextDev::Internal::Type::BaseModel
|
|
915
|
+
OrHash =
|
|
916
|
+
T.type_alias do
|
|
917
|
+
T.any(
|
|
918
|
+
ContextDev::WebWebScrapeMdParams::TimeoutOpts,
|
|
919
|
+
ContextDev::Internal::AnyHash
|
|
920
|
+
)
|
|
921
|
+
end
|
|
922
|
+
|
|
923
|
+
# Request deadline in milliseconds. Maximum: 300000 (5 minutes).
|
|
924
|
+
sig { returns(Integer) }
|
|
925
|
+
attr_accessor :milliseconds
|
|
926
|
+
|
|
927
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
928
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
929
|
+
# available, the request still fails without charging credits. Partial results are
|
|
930
|
+
# not cached as complete results. "return-partial" requires milliseconds of at
|
|
931
|
+
# least 15000.
|
|
932
|
+
sig do
|
|
933
|
+
returns(
|
|
934
|
+
T.nilable(
|
|
935
|
+
ContextDev::WebWebScrapeMdParams::TimeoutOpts::Behavior::OrSymbol
|
|
936
|
+
)
|
|
937
|
+
)
|
|
938
|
+
end
|
|
939
|
+
attr_reader :behavior
|
|
940
|
+
|
|
941
|
+
sig do
|
|
942
|
+
params(
|
|
943
|
+
behavior:
|
|
944
|
+
ContextDev::WebWebScrapeMdParams::TimeoutOpts::Behavior::OrSymbol
|
|
945
|
+
).void
|
|
946
|
+
end
|
|
947
|
+
attr_writer :behavior
|
|
948
|
+
|
|
949
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
950
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
951
|
+
# timeoutOpts object.
|
|
952
|
+
sig do
|
|
953
|
+
params(
|
|
954
|
+
milliseconds: Integer,
|
|
955
|
+
behavior:
|
|
956
|
+
ContextDev::WebWebScrapeMdParams::TimeoutOpts::Behavior::OrSymbol
|
|
957
|
+
).returns(T.attached_class)
|
|
958
|
+
end
|
|
959
|
+
def self.new(
|
|
960
|
+
# Request deadline in milliseconds. Maximum: 300000 (5 minutes).
|
|
961
|
+
milliseconds:,
|
|
962
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
963
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
964
|
+
# available, the request still fails without charging credits. Partial results are
|
|
965
|
+
# not cached as complete results. "return-partial" requires milliseconds of at
|
|
966
|
+
# least 15000.
|
|
967
|
+
behavior: nil
|
|
968
|
+
)
|
|
969
|
+
end
|
|
970
|
+
|
|
971
|
+
sig do
|
|
972
|
+
override.returns(
|
|
973
|
+
{
|
|
974
|
+
milliseconds: Integer,
|
|
975
|
+
behavior:
|
|
976
|
+
ContextDev::WebWebScrapeMdParams::TimeoutOpts::Behavior::OrSymbol
|
|
977
|
+
}
|
|
978
|
+
)
|
|
979
|
+
end
|
|
980
|
+
def to_hash
|
|
981
|
+
end
|
|
982
|
+
|
|
983
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
984
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
985
|
+
# available, the request still fails without charging credits. Partial results are
|
|
986
|
+
# not cached as complete results. "return-partial" requires milliseconds of at
|
|
987
|
+
# least 15000.
|
|
988
|
+
module Behavior
|
|
989
|
+
extend ContextDev::Internal::Type::Enum
|
|
990
|
+
|
|
991
|
+
TaggedSymbol =
|
|
992
|
+
T.type_alias do
|
|
993
|
+
T.all(
|
|
994
|
+
Symbol,
|
|
995
|
+
ContextDev::WebWebScrapeMdParams::TimeoutOpts::Behavior
|
|
996
|
+
)
|
|
997
|
+
end
|
|
998
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
999
|
+
|
|
1000
|
+
FAIL =
|
|
1001
|
+
T.let(
|
|
1002
|
+
:fail,
|
|
1003
|
+
ContextDev::WebWebScrapeMdParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
1004
|
+
)
|
|
1005
|
+
RETURN_PARTIAL =
|
|
1006
|
+
T.let(
|
|
1007
|
+
:"return-partial",
|
|
1008
|
+
ContextDev::WebWebScrapeMdParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
1009
|
+
)
|
|
1010
|
+
|
|
1011
|
+
sig do
|
|
1012
|
+
override.returns(
|
|
1013
|
+
T::Array[
|
|
1014
|
+
ContextDev::WebWebScrapeMdParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
1015
|
+
]
|
|
1016
|
+
)
|
|
1017
|
+
end
|
|
1018
|
+
def self.values
|
|
1019
|
+
end
|
|
1020
|
+
end
|
|
1021
|
+
end
|
|
1022
|
+
|
|
910
1023
|
# Set to enabled to bypass shared caches and omit request and response content
|
|
911
1024
|
# from retained usage logs. Requires zero data retention to be enabled for your
|
|
912
1025
|
# organization (contact support@context.dev), otherwise the request fails with
|
|
@@ -31,6 +31,18 @@ module ContextDev
|
|
|
31
31
|
sig { returns(Integer) }
|
|
32
32
|
attr_accessor :content_length
|
|
33
33
|
|
|
34
|
+
# How complete the returned content is. `loaded` means the page finished the waits
|
|
35
|
+
# the request asked for. `still-loading` only occurs with
|
|
36
|
+
# timeoutOpts.behavior=return-partial: the timeoutOpts.milliseconds deadline was
|
|
37
|
+
# reached first, so the content reflects the DOM at that moment and late-rendering
|
|
38
|
+
# parts may be missing. Partial results are billed at the base request cost.
|
|
39
|
+
sig do
|
|
40
|
+
returns(
|
|
41
|
+
ContextDev::Models::WebWebScrapeMdResponse::FinalDomState::TaggedSymbol
|
|
42
|
+
)
|
|
43
|
+
end
|
|
44
|
+
attr_accessor :final_dom_state
|
|
45
|
+
|
|
34
46
|
# Page content converted to GitHub Flavored Markdown
|
|
35
47
|
sig { returns(String) }
|
|
36
48
|
attr_accessor :markdown
|
|
@@ -121,6 +133,8 @@ module ContextDev
|
|
|
121
133
|
cache_metadata:
|
|
122
134
|
ContextDev::Models::WebWebScrapeMdResponse::CacheMetadata::OrHash,
|
|
123
135
|
content_length: Integer,
|
|
136
|
+
final_dom_state:
|
|
137
|
+
ContextDev::Models::WebWebScrapeMdResponse::FinalDomState::OrSymbol,
|
|
124
138
|
markdown: String,
|
|
125
139
|
metadata:
|
|
126
140
|
ContextDev::Models::WebWebScrapeMdResponse::Metadata::OrHash,
|
|
@@ -147,6 +161,12 @@ module ContextDev
|
|
|
147
161
|
# and compare small values against your workload's minimum useful-content
|
|
148
162
|
# threshold.
|
|
149
163
|
content_length:,
|
|
164
|
+
# How complete the returned content is. `loaded` means the page finished the waits
|
|
165
|
+
# the request asked for. `still-loading` only occurs with
|
|
166
|
+
# timeoutOpts.behavior=return-partial: the timeoutOpts.milliseconds deadline was
|
|
167
|
+
# reached first, so the content reflects the DOM at that moment and late-rendering
|
|
168
|
+
# parts may be missing. Partial results are billed at the base request cost.
|
|
169
|
+
final_dom_state:,
|
|
150
170
|
# Page content converted to GitHub Flavored Markdown
|
|
151
171
|
markdown:,
|
|
152
172
|
# Metadata extracted from the scraped page HTML.
|
|
@@ -178,6 +198,8 @@ module ContextDev
|
|
|
178
198
|
cache_metadata:
|
|
179
199
|
ContextDev::Models::WebWebScrapeMdResponse::CacheMetadata,
|
|
180
200
|
content_length: Integer,
|
|
201
|
+
final_dom_state:
|
|
202
|
+
ContextDev::Models::WebWebScrapeMdResponse::FinalDomState::TaggedSymbol,
|
|
181
203
|
markdown: String,
|
|
182
204
|
metadata: ContextDev::Models::WebWebScrapeMdResponse::Metadata,
|
|
183
205
|
request_id: String,
|
|
@@ -293,6 +315,45 @@ module ContextDev
|
|
|
293
315
|
end
|
|
294
316
|
end
|
|
295
317
|
|
|
318
|
+
# How complete the returned content is. `loaded` means the page finished the waits
|
|
319
|
+
# the request asked for. `still-loading` only occurs with
|
|
320
|
+
# timeoutOpts.behavior=return-partial: the timeoutOpts.milliseconds deadline was
|
|
321
|
+
# reached first, so the content reflects the DOM at that moment and late-rendering
|
|
322
|
+
# parts may be missing. Partial results are billed at the base request cost.
|
|
323
|
+
module FinalDomState
|
|
324
|
+
extend ContextDev::Internal::Type::Enum
|
|
325
|
+
|
|
326
|
+
TaggedSymbol =
|
|
327
|
+
T.type_alias do
|
|
328
|
+
T.all(
|
|
329
|
+
Symbol,
|
|
330
|
+
ContextDev::Models::WebWebScrapeMdResponse::FinalDomState
|
|
331
|
+
)
|
|
332
|
+
end
|
|
333
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
334
|
+
|
|
335
|
+
LOADED =
|
|
336
|
+
T.let(
|
|
337
|
+
:loaded,
|
|
338
|
+
ContextDev::Models::WebWebScrapeMdResponse::FinalDomState::TaggedSymbol
|
|
339
|
+
)
|
|
340
|
+
STILL_LOADING =
|
|
341
|
+
T.let(
|
|
342
|
+
:"still-loading",
|
|
343
|
+
ContextDev::Models::WebWebScrapeMdResponse::FinalDomState::TaggedSymbol
|
|
344
|
+
)
|
|
345
|
+
|
|
346
|
+
sig do
|
|
347
|
+
override.returns(
|
|
348
|
+
T::Array[
|
|
349
|
+
ContextDev::Models::WebWebScrapeMdResponse::FinalDomState::TaggedSymbol
|
|
350
|
+
]
|
|
351
|
+
)
|
|
352
|
+
end
|
|
353
|
+
def self.values
|
|
354
|
+
end
|
|
355
|
+
end
|
|
356
|
+
|
|
296
357
|
class Metadata < ContextDev::Internal::Type::BaseModel
|
|
297
358
|
OrHash =
|
|
298
359
|
T.type_alias do
|