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
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module ContextDev
|
|
4
|
+
module Models
|
|
5
|
+
class WebAnswersParams < ContextDev::Internal::Type::BaseModel
|
|
6
|
+
extend ContextDev::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include ContextDev::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(ContextDev::WebAnswersParams, ContextDev::Internal::AnyHash)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# What to research and answer, in plain language. Naming a domain in the task (for
|
|
15
|
+
# example "pricing on context.dev") makes the agent read that site before it
|
|
16
|
+
# searches.
|
|
17
|
+
sig { returns(String) }
|
|
18
|
+
attr_accessor :task
|
|
19
|
+
|
|
20
|
+
# An example object with placeholder values (for example {"pricing_page_url": "",
|
|
21
|
+
# "plans": [{"name": "", "price": 0}]}). Object keys and value types are
|
|
22
|
+
# preserved; unknown values may be null. Empty arrays accept any JSON items.
|
|
23
|
+
# Defaults to {"result": ""}. Maximum 8 levels, 500 values, and 16000 characters.
|
|
24
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
25
|
+
attr_reader :json_format
|
|
26
|
+
|
|
27
|
+
sig { params(json_format: T::Hash[Symbol, T.anything]).void }
|
|
28
|
+
attr_writer :json_format
|
|
29
|
+
|
|
30
|
+
# Research level: fast uses a smaller model and research budget for 10 credits;
|
|
31
|
+
# ultra uses deeper reasoning and research for 100 credits. Defaults to ultra.
|
|
32
|
+
# Only successful requests consume credits.
|
|
33
|
+
sig { returns(T.nilable(ContextDev::WebAnswersParams::Mode::OrSymbol)) }
|
|
34
|
+
attr_reader :mode
|
|
35
|
+
|
|
36
|
+
sig { params(mode: ContextDev::WebAnswersParams::Mode::OrSymbol).void }
|
|
37
|
+
attr_writer :mode
|
|
38
|
+
|
|
39
|
+
# Optional tags for tracking usage. Up to 20 tags, each 1 to 50 characters.
|
|
40
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
41
|
+
attr_reader :tags
|
|
42
|
+
|
|
43
|
+
sig { params(tags: T::Array[String]).void }
|
|
44
|
+
attr_writer :tags
|
|
45
|
+
|
|
46
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
47
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
48
|
+
# timeoutOpts object.
|
|
49
|
+
sig { returns(T.nilable(ContextDev::WebAnswersParams::TimeoutOpts)) }
|
|
50
|
+
attr_reader :timeout_opts
|
|
51
|
+
|
|
52
|
+
sig do
|
|
53
|
+
params(
|
|
54
|
+
timeout_opts: ContextDev::WebAnswersParams::TimeoutOpts::OrHash
|
|
55
|
+
).void
|
|
56
|
+
end
|
|
57
|
+
attr_writer :timeout_opts
|
|
58
|
+
|
|
59
|
+
sig do
|
|
60
|
+
params(
|
|
61
|
+
task: String,
|
|
62
|
+
json_format: T::Hash[Symbol, T.anything],
|
|
63
|
+
mode: ContextDev::WebAnswersParams::Mode::OrSymbol,
|
|
64
|
+
tags: T::Array[String],
|
|
65
|
+
timeout_opts: ContextDev::WebAnswersParams::TimeoutOpts::OrHash,
|
|
66
|
+
request_options: ContextDev::RequestOptions::OrHash
|
|
67
|
+
).returns(T.attached_class)
|
|
68
|
+
end
|
|
69
|
+
def self.new(
|
|
70
|
+
# What to research and answer, in plain language. Naming a domain in the task (for
|
|
71
|
+
# example "pricing on context.dev") makes the agent read that site before it
|
|
72
|
+
# searches.
|
|
73
|
+
task:,
|
|
74
|
+
# An example object with placeholder values (for example {"pricing_page_url": "",
|
|
75
|
+
# "plans": [{"name": "", "price": 0}]}). Object keys and value types are
|
|
76
|
+
# preserved; unknown values may be null. Empty arrays accept any JSON items.
|
|
77
|
+
# Defaults to {"result": ""}. Maximum 8 levels, 500 values, and 16000 characters.
|
|
78
|
+
json_format: nil,
|
|
79
|
+
# Research level: fast uses a smaller model and research budget for 10 credits;
|
|
80
|
+
# ultra uses deeper reasoning and research for 100 credits. Defaults to ultra.
|
|
81
|
+
# Only successful requests consume credits.
|
|
82
|
+
mode: nil,
|
|
83
|
+
# Optional tags for tracking usage. Up to 20 tags, each 1 to 50 characters.
|
|
84
|
+
tags: nil,
|
|
85
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
86
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
87
|
+
# timeoutOpts object.
|
|
88
|
+
timeout_opts: nil,
|
|
89
|
+
request_options: {}
|
|
90
|
+
)
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
sig do
|
|
94
|
+
override.returns(
|
|
95
|
+
{
|
|
96
|
+
task: String,
|
|
97
|
+
json_format: T::Hash[Symbol, T.anything],
|
|
98
|
+
mode: ContextDev::WebAnswersParams::Mode::OrSymbol,
|
|
99
|
+
tags: T::Array[String],
|
|
100
|
+
timeout_opts: ContextDev::WebAnswersParams::TimeoutOpts,
|
|
101
|
+
request_options: ContextDev::RequestOptions
|
|
102
|
+
}
|
|
103
|
+
)
|
|
104
|
+
end
|
|
105
|
+
def to_hash
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
# Research level: fast uses a smaller model and research budget for 10 credits;
|
|
109
|
+
# ultra uses deeper reasoning and research for 100 credits. Defaults to ultra.
|
|
110
|
+
# Only successful requests consume credits.
|
|
111
|
+
module Mode
|
|
112
|
+
extend ContextDev::Internal::Type::Enum
|
|
113
|
+
|
|
114
|
+
TaggedSymbol =
|
|
115
|
+
T.type_alias { T.all(Symbol, ContextDev::WebAnswersParams::Mode) }
|
|
116
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
117
|
+
|
|
118
|
+
FAST = T.let(:fast, ContextDev::WebAnswersParams::Mode::TaggedSymbol)
|
|
119
|
+
ULTRA = T.let(:ultra, ContextDev::WebAnswersParams::Mode::TaggedSymbol)
|
|
120
|
+
|
|
121
|
+
sig do
|
|
122
|
+
override.returns(
|
|
123
|
+
T::Array[ContextDev::WebAnswersParams::Mode::TaggedSymbol]
|
|
124
|
+
)
|
|
125
|
+
end
|
|
126
|
+
def self.values
|
|
127
|
+
end
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
class TimeoutOpts < ContextDev::Internal::Type::BaseModel
|
|
131
|
+
OrHash =
|
|
132
|
+
T.type_alias do
|
|
133
|
+
T.any(
|
|
134
|
+
ContextDev::WebAnswersParams::TimeoutOpts,
|
|
135
|
+
ContextDev::Internal::AnyHash
|
|
136
|
+
)
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
# Request deadline in milliseconds. Maximum: 300000 (5 minutes).
|
|
140
|
+
sig { returns(Integer) }
|
|
141
|
+
attr_accessor :milliseconds
|
|
142
|
+
|
|
143
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
144
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
145
|
+
# available, the request still fails without charging credits. Partial results are
|
|
146
|
+
# not cached as complete results.
|
|
147
|
+
sig do
|
|
148
|
+
returns(
|
|
149
|
+
T.nilable(
|
|
150
|
+
ContextDev::WebAnswersParams::TimeoutOpts::Behavior::OrSymbol
|
|
151
|
+
)
|
|
152
|
+
)
|
|
153
|
+
end
|
|
154
|
+
attr_reader :behavior
|
|
155
|
+
|
|
156
|
+
sig do
|
|
157
|
+
params(
|
|
158
|
+
behavior:
|
|
159
|
+
ContextDev::WebAnswersParams::TimeoutOpts::Behavior::OrSymbol
|
|
160
|
+
).void
|
|
161
|
+
end
|
|
162
|
+
attr_writer :behavior
|
|
163
|
+
|
|
164
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
165
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
166
|
+
# timeoutOpts object.
|
|
167
|
+
sig do
|
|
168
|
+
params(
|
|
169
|
+
milliseconds: Integer,
|
|
170
|
+
behavior:
|
|
171
|
+
ContextDev::WebAnswersParams::TimeoutOpts::Behavior::OrSymbol
|
|
172
|
+
).returns(T.attached_class)
|
|
173
|
+
end
|
|
174
|
+
def self.new(
|
|
175
|
+
# Request deadline in milliseconds. Maximum: 300000 (5 minutes).
|
|
176
|
+
milliseconds:,
|
|
177
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
178
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
179
|
+
# available, the request still fails without charging credits. Partial results are
|
|
180
|
+
# not cached as complete results.
|
|
181
|
+
behavior: nil
|
|
182
|
+
)
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
sig do
|
|
186
|
+
override.returns(
|
|
187
|
+
{
|
|
188
|
+
milliseconds: Integer,
|
|
189
|
+
behavior:
|
|
190
|
+
ContextDev::WebAnswersParams::TimeoutOpts::Behavior::OrSymbol
|
|
191
|
+
}
|
|
192
|
+
)
|
|
193
|
+
end
|
|
194
|
+
def to_hash
|
|
195
|
+
end
|
|
196
|
+
|
|
197
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
198
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
199
|
+
# available, the request still fails without charging credits. Partial results are
|
|
200
|
+
# not cached as complete results.
|
|
201
|
+
module Behavior
|
|
202
|
+
extend ContextDev::Internal::Type::Enum
|
|
203
|
+
|
|
204
|
+
TaggedSymbol =
|
|
205
|
+
T.type_alias do
|
|
206
|
+
T.all(Symbol, ContextDev::WebAnswersParams::TimeoutOpts::Behavior)
|
|
207
|
+
end
|
|
208
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
209
|
+
|
|
210
|
+
FAIL =
|
|
211
|
+
T.let(
|
|
212
|
+
:fail,
|
|
213
|
+
ContextDev::WebAnswersParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
214
|
+
)
|
|
215
|
+
RETURN_PARTIAL =
|
|
216
|
+
T.let(
|
|
217
|
+
:"return-partial",
|
|
218
|
+
ContextDev::WebAnswersParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
219
|
+
)
|
|
220
|
+
|
|
221
|
+
sig do
|
|
222
|
+
override.returns(
|
|
223
|
+
T::Array[
|
|
224
|
+
ContextDev::WebAnswersParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
225
|
+
]
|
|
226
|
+
)
|
|
227
|
+
end
|
|
228
|
+
def self.values
|
|
229
|
+
end
|
|
230
|
+
end
|
|
231
|
+
end
|
|
232
|
+
end
|
|
233
|
+
end
|
|
234
|
+
end
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module ContextDev
|
|
4
|
+
module Models
|
|
5
|
+
class WebAnswersResponse < ContextDev::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
ContextDev::Models::WebAnswersResponse,
|
|
10
|
+
ContextDev::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# The answer, in the shape requested by json_format.
|
|
15
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
16
|
+
attr_accessor :json_content
|
|
17
|
+
|
|
18
|
+
# URLs that supplied search results or readable page content, in first-seen order.
|
|
19
|
+
# Unreadable pages are excluded.
|
|
20
|
+
sig { returns(T::Array[String]) }
|
|
21
|
+
attr_accessor :sources
|
|
22
|
+
|
|
23
|
+
# Credit usage, included whenever a valid API key is provided.
|
|
24
|
+
sig do
|
|
25
|
+
returns(T.nilable(ContextDev::Models::WebAnswersResponse::KeyMetadata))
|
|
26
|
+
end
|
|
27
|
+
attr_reader :key_metadata
|
|
28
|
+
|
|
29
|
+
sig do
|
|
30
|
+
params(
|
|
31
|
+
key_metadata:
|
|
32
|
+
ContextDev::Models::WebAnswersResponse::KeyMetadata::OrHash
|
|
33
|
+
).void
|
|
34
|
+
end
|
|
35
|
+
attr_writer :key_metadata
|
|
36
|
+
|
|
37
|
+
# True when the request deadline ended research and the answer uses the evidence
|
|
38
|
+
# collected so far.
|
|
39
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
40
|
+
attr_reader :partial
|
|
41
|
+
|
|
42
|
+
sig { params(partial: T::Boolean).void }
|
|
43
|
+
attr_writer :partial
|
|
44
|
+
|
|
45
|
+
sig do
|
|
46
|
+
params(
|
|
47
|
+
json_content: T::Hash[Symbol, T.anything],
|
|
48
|
+
sources: T::Array[String],
|
|
49
|
+
key_metadata:
|
|
50
|
+
ContextDev::Models::WebAnswersResponse::KeyMetadata::OrHash,
|
|
51
|
+
partial: T::Boolean
|
|
52
|
+
).returns(T.attached_class)
|
|
53
|
+
end
|
|
54
|
+
def self.new(
|
|
55
|
+
# The answer, in the shape requested by json_format.
|
|
56
|
+
json_content:,
|
|
57
|
+
# URLs that supplied search results or readable page content, in first-seen order.
|
|
58
|
+
# Unreadable pages are excluded.
|
|
59
|
+
sources:,
|
|
60
|
+
# Credit usage, included whenever a valid API key is provided.
|
|
61
|
+
key_metadata: nil,
|
|
62
|
+
# True when the request deadline ended research and the answer uses the evidence
|
|
63
|
+
# collected so far.
|
|
64
|
+
partial: nil
|
|
65
|
+
)
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
sig do
|
|
69
|
+
override.returns(
|
|
70
|
+
{
|
|
71
|
+
json_content: T::Hash[Symbol, T.anything],
|
|
72
|
+
sources: T::Array[String],
|
|
73
|
+
key_metadata: ContextDev::Models::WebAnswersResponse::KeyMetadata,
|
|
74
|
+
partial: T::Boolean
|
|
75
|
+
}
|
|
76
|
+
)
|
|
77
|
+
end
|
|
78
|
+
def to_hash
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
class KeyMetadata < ContextDev::Internal::Type::BaseModel
|
|
82
|
+
OrHash =
|
|
83
|
+
T.type_alias do
|
|
84
|
+
T.any(
|
|
85
|
+
ContextDev::Models::WebAnswersResponse::KeyMetadata,
|
|
86
|
+
ContextDev::Internal::AnyHash
|
|
87
|
+
)
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
# Credits used by this request.
|
|
91
|
+
sig { returns(Integer) }
|
|
92
|
+
attr_accessor :credits_consumed
|
|
93
|
+
|
|
94
|
+
# Credits remaining for your organization.
|
|
95
|
+
sig { returns(Integer) }
|
|
96
|
+
attr_accessor :credits_remaining
|
|
97
|
+
|
|
98
|
+
# Credit usage, included whenever a valid API key is provided.
|
|
99
|
+
sig do
|
|
100
|
+
params(credits_consumed: Integer, credits_remaining: Integer).returns(
|
|
101
|
+
T.attached_class
|
|
102
|
+
)
|
|
103
|
+
end
|
|
104
|
+
def self.new(
|
|
105
|
+
# Credits used by this request.
|
|
106
|
+
credits_consumed:,
|
|
107
|
+
# Credits remaining for your organization.
|
|
108
|
+
credits_remaining:
|
|
109
|
+
)
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
sig do
|
|
113
|
+
override.returns(
|
|
114
|
+
{ credits_consumed: Integer, credits_remaining: Integer }
|
|
115
|
+
)
|
|
116
|
+
end
|
|
117
|
+
def to_hash
|
|
118
|
+
end
|
|
119
|
+
end
|
|
120
|
+
end
|
|
121
|
+
end
|
|
122
|
+
end
|
|
@@ -34,21 +34,29 @@ module ContextDev
|
|
|
34
34
|
sig { params(tags: T::Array[String]).void }
|
|
35
35
|
attr_writer :tags
|
|
36
36
|
|
|
37
|
-
# Optional
|
|
38
|
-
#
|
|
39
|
-
#
|
|
40
|
-
sig
|
|
41
|
-
|
|
37
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
38
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
39
|
+
# timeoutOpts object.
|
|
40
|
+
sig do
|
|
41
|
+
returns(T.nilable(ContextDev::WebExtractCompetitorsParams::TimeoutOpts))
|
|
42
|
+
end
|
|
43
|
+
attr_reader :timeout_opts
|
|
42
44
|
|
|
43
|
-
sig
|
|
44
|
-
|
|
45
|
+
sig do
|
|
46
|
+
params(
|
|
47
|
+
timeout_opts:
|
|
48
|
+
ContextDev::WebExtractCompetitorsParams::TimeoutOpts::OrHash
|
|
49
|
+
).void
|
|
50
|
+
end
|
|
51
|
+
attr_writer :timeout_opts
|
|
45
52
|
|
|
46
53
|
sig do
|
|
47
54
|
params(
|
|
48
55
|
domain: String,
|
|
49
56
|
num_competitors: Integer,
|
|
50
57
|
tags: T::Array[String],
|
|
51
|
-
|
|
58
|
+
timeout_opts:
|
|
59
|
+
ContextDev::WebExtractCompetitorsParams::TimeoutOpts::OrHash,
|
|
52
60
|
request_options: ContextDev::RequestOptions::OrHash
|
|
53
61
|
).returns(T.attached_class)
|
|
54
62
|
end
|
|
@@ -61,10 +69,10 @@ module ContextDev
|
|
|
61
69
|
# Comma-separated tags for tracking request usage. Up to 20 tags, each 1-50
|
|
62
70
|
# characters.
|
|
63
71
|
tags: nil,
|
|
64
|
-
# Optional
|
|
65
|
-
#
|
|
66
|
-
#
|
|
67
|
-
|
|
72
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
73
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
74
|
+
# timeoutOpts object.
|
|
75
|
+
timeout_opts: nil,
|
|
68
76
|
request_options: {}
|
|
69
77
|
)
|
|
70
78
|
end
|
|
@@ -75,13 +83,119 @@ module ContextDev
|
|
|
75
83
|
domain: String,
|
|
76
84
|
num_competitors: Integer,
|
|
77
85
|
tags: T::Array[String],
|
|
78
|
-
|
|
86
|
+
timeout_opts: ContextDev::WebExtractCompetitorsParams::TimeoutOpts,
|
|
79
87
|
request_options: ContextDev::RequestOptions
|
|
80
88
|
}
|
|
81
89
|
)
|
|
82
90
|
end
|
|
83
91
|
def to_hash
|
|
84
92
|
end
|
|
93
|
+
|
|
94
|
+
class TimeoutOpts < ContextDev::Internal::Type::BaseModel
|
|
95
|
+
OrHash =
|
|
96
|
+
T.type_alias do
|
|
97
|
+
T.any(
|
|
98
|
+
ContextDev::WebExtractCompetitorsParams::TimeoutOpts,
|
|
99
|
+
ContextDev::Internal::AnyHash
|
|
100
|
+
)
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
# Request deadline in milliseconds. Maximum: 300000 (5 minutes).
|
|
104
|
+
sig { returns(Integer) }
|
|
105
|
+
attr_accessor :milliseconds
|
|
106
|
+
|
|
107
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
108
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
109
|
+
# available, the request still fails without charging credits. Partial results are
|
|
110
|
+
# not cached as complete results.
|
|
111
|
+
sig do
|
|
112
|
+
returns(
|
|
113
|
+
T.nilable(
|
|
114
|
+
ContextDev::WebExtractCompetitorsParams::TimeoutOpts::Behavior::OrSymbol
|
|
115
|
+
)
|
|
116
|
+
)
|
|
117
|
+
end
|
|
118
|
+
attr_reader :behavior
|
|
119
|
+
|
|
120
|
+
sig do
|
|
121
|
+
params(
|
|
122
|
+
behavior:
|
|
123
|
+
ContextDev::WebExtractCompetitorsParams::TimeoutOpts::Behavior::OrSymbol
|
|
124
|
+
).void
|
|
125
|
+
end
|
|
126
|
+
attr_writer :behavior
|
|
127
|
+
|
|
128
|
+
# Optional request deadline and behavior on timeout. For GET requests, use
|
|
129
|
+
# timeoutOpts[milliseconds]=30000&timeoutOpts[behavior]=fail or a JSON-encoded
|
|
130
|
+
# timeoutOpts object.
|
|
131
|
+
sig do
|
|
132
|
+
params(
|
|
133
|
+
milliseconds: Integer,
|
|
134
|
+
behavior:
|
|
135
|
+
ContextDev::WebExtractCompetitorsParams::TimeoutOpts::Behavior::OrSymbol
|
|
136
|
+
).returns(T.attached_class)
|
|
137
|
+
end
|
|
138
|
+
def self.new(
|
|
139
|
+
# Request deadline in milliseconds. Maximum: 300000 (5 minutes).
|
|
140
|
+
milliseconds:,
|
|
141
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
142
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
143
|
+
# available, the request still fails without charging credits. Partial results are
|
|
144
|
+
# not cached as complete results.
|
|
145
|
+
behavior: nil
|
|
146
|
+
)
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
sig do
|
|
150
|
+
override.returns(
|
|
151
|
+
{
|
|
152
|
+
milliseconds: Integer,
|
|
153
|
+
behavior:
|
|
154
|
+
ContextDev::WebExtractCompetitorsParams::TimeoutOpts::Behavior::OrSymbol
|
|
155
|
+
}
|
|
156
|
+
)
|
|
157
|
+
end
|
|
158
|
+
def to_hash
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
# What to do at the deadline. "fail" returns 408 REQUEST_TIMEOUT without charging
|
|
162
|
+
# credits. "return-partial" returns usable results collected so far; if none are
|
|
163
|
+
# available, the request still fails without charging credits. Partial results are
|
|
164
|
+
# not cached as complete results.
|
|
165
|
+
module Behavior
|
|
166
|
+
extend ContextDev::Internal::Type::Enum
|
|
167
|
+
|
|
168
|
+
TaggedSymbol =
|
|
169
|
+
T.type_alias do
|
|
170
|
+
T.all(
|
|
171
|
+
Symbol,
|
|
172
|
+
ContextDev::WebExtractCompetitorsParams::TimeoutOpts::Behavior
|
|
173
|
+
)
|
|
174
|
+
end
|
|
175
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
176
|
+
|
|
177
|
+
FAIL =
|
|
178
|
+
T.let(
|
|
179
|
+
:fail,
|
|
180
|
+
ContextDev::WebExtractCompetitorsParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
181
|
+
)
|
|
182
|
+
RETURN_PARTIAL =
|
|
183
|
+
T.let(
|
|
184
|
+
:"return-partial",
|
|
185
|
+
ContextDev::WebExtractCompetitorsParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
186
|
+
)
|
|
187
|
+
|
|
188
|
+
sig do
|
|
189
|
+
override.returns(
|
|
190
|
+
T::Array[
|
|
191
|
+
ContextDev::WebExtractCompetitorsParams::TimeoutOpts::Behavior::TaggedSymbol
|
|
192
|
+
]
|
|
193
|
+
)
|
|
194
|
+
end
|
|
195
|
+
def self.values
|
|
196
|
+
end
|
|
197
|
+
end
|
|
198
|
+
end
|
|
85
199
|
end
|
|
86
200
|
end
|
|
87
201
|
end
|
|
@@ -68,6 +68,14 @@ module ContextDev
|
|
|
68
68
|
end
|
|
69
69
|
attr_writer :key_metadata
|
|
70
70
|
|
|
71
|
+
# True when the timeout ended processing and this response contains only usable
|
|
72
|
+
# results completed so far. Unfinished results are omitted.
|
|
73
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
74
|
+
attr_reader :partial
|
|
75
|
+
|
|
76
|
+
sig { params(partial: T::Boolean).void }
|
|
77
|
+
attr_writer :partial
|
|
78
|
+
|
|
71
79
|
sig do
|
|
72
80
|
params(
|
|
73
81
|
competitors:
|
|
@@ -81,7 +89,8 @@ module ContextDev
|
|
|
81
89
|
target:
|
|
82
90
|
ContextDev::Models::WebExtractCompetitorsResponse::Target::OrHash,
|
|
83
91
|
key_metadata:
|
|
84
|
-
ContextDev::Models::WebExtractCompetitorsResponse::KeyMetadata::OrHash
|
|
92
|
+
ContextDev::Models::WebExtractCompetitorsResponse::KeyMetadata::OrHash,
|
|
93
|
+
partial: T::Boolean
|
|
85
94
|
).returns(T.attached_class)
|
|
86
95
|
end
|
|
87
96
|
def self.new(
|
|
@@ -97,7 +106,10 @@ module ContextDev
|
|
|
97
106
|
# Target company profile inferred from the landing page.
|
|
98
107
|
target:,
|
|
99
108
|
# Credit usage, included whenever a valid API key is provided.
|
|
100
|
-
key_metadata: nil
|
|
109
|
+
key_metadata: nil,
|
|
110
|
+
# True when the timeout ended processing and this response contains only usable
|
|
111
|
+
# results completed so far. Unfinished results are omitted.
|
|
112
|
+
partial: nil
|
|
101
113
|
)
|
|
102
114
|
end
|
|
103
115
|
|
|
@@ -114,7 +126,8 @@ module ContextDev
|
|
|
114
126
|
ContextDev::Models::WebExtractCompetitorsResponse::Status::TaggedSymbol,
|
|
115
127
|
target: ContextDev::Models::WebExtractCompetitorsResponse::Target,
|
|
116
128
|
key_metadata:
|
|
117
|
-
ContextDev::Models::WebExtractCompetitorsResponse::KeyMetadata
|
|
129
|
+
ContextDev::Models::WebExtractCompetitorsResponse::KeyMetadata,
|
|
130
|
+
partial: T::Boolean
|
|
118
131
|
}
|
|
119
132
|
)
|
|
120
133
|
end
|