context.dev 1.31.0 → 1.34.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 +30 -0
- data/README.md +1 -1
- data/lib/context_dev/internal/transport/base_client.rb +4 -1
- data/lib/context_dev/models/ai_ai_query_response.rb +36 -1
- data/lib/context_dev/models/ai_extract_product_response.rb +36 -1
- data/lib/context_dev/models/ai_extract_products_response.rb +36 -1
- data/lib/context_dev/models/brand_identify_from_transaction_response.rb +36 -1
- data/lib/context_dev/models/brand_retrieve_by_email_response.rb +36 -1
- data/lib/context_dev/models/brand_retrieve_by_isin_response.rb +36 -1
- data/lib/context_dev/models/brand_retrieve_by_name_response.rb +36 -1
- data/lib/context_dev/models/brand_retrieve_by_ticker_response.rb +36 -1
- data/lib/context_dev/models/brand_retrieve_response.rb +36 -1
- data/lib/context_dev/models/brand_retrieve_simplified_response.rb +36 -1
- data/lib/context_dev/models/industry_retrieve_naics_response.rb +36 -1
- data/lib/context_dev/models/industry_retrieve_sic_response.rb +33 -1
- data/lib/context_dev/models/utility_prefetch_by_email_response.rb +36 -1
- data/lib/context_dev/models/utility_prefetch_response.rb +36 -1
- data/lib/context_dev/models/web_extract_competitors_response.rb +36 -1
- data/lib/context_dev/models/web_extract_fonts_response.rb +33 -1
- data/lib/context_dev/models/web_extract_params.rb +18 -1
- data/lib/context_dev/models/web_extract_response.rb +36 -1
- data/lib/context_dev/models/web_extract_styleguide_response.rb +36 -1
- data/lib/context_dev/models/web_screenshot_response.rb +36 -1
- data/lib/context_dev/models/web_search_response.rb +36 -1
- data/lib/context_dev/models/web_web_crawl_md_response.rb +275 -6
- data/lib/context_dev/models/web_web_scrape_html_response.rb +290 -1
- data/lib/context_dev/models/web_web_scrape_images_response.rb +36 -1
- data/lib/context_dev/models/web_web_scrape_md_response.rb +291 -1
- data/lib/context_dev/models/web_web_scrape_sitemap_response.rb +36 -1
- data/lib/context_dev/resources/web.rb +5 -1
- data/lib/context_dev/version.rb +1 -1
- data/rbi/context_dev/models/ai_ai_query_response.rbi +62 -0
- data/rbi/context_dev/models/ai_extract_product_response.rbi +65 -0
- data/rbi/context_dev/models/ai_extract_products_response.rbi +65 -0
- data/rbi/context_dev/models/brand_identify_from_transaction_response.rbi +67 -0
- data/rbi/context_dev/models/brand_retrieve_by_email_response.rbi +67 -0
- data/rbi/context_dev/models/brand_retrieve_by_isin_response.rbi +67 -0
- data/rbi/context_dev/models/brand_retrieve_by_name_response.rbi +67 -0
- data/rbi/context_dev/models/brand_retrieve_by_ticker_response.rbi +67 -0
- data/rbi/context_dev/models/brand_retrieve_response.rbi +65 -0
- data/rbi/context_dev/models/brand_retrieve_simplified_response.rbi +67 -0
- data/rbi/context_dev/models/industry_retrieve_naics_response.rbi +67 -0
- data/rbi/context_dev/models/industry_retrieve_sic_response.rbi +67 -0
- data/rbi/context_dev/models/utility_prefetch_by_email_response.rbi +79 -4
- data/rbi/context_dev/models/utility_prefetch_response.rbi +77 -4
- data/rbi/context_dev/models/web_extract_competitors_response.rbi +70 -3
- data/rbi/context_dev/models/web_extract_fonts_response.rbi +68 -3
- data/rbi/context_dev/models/web_extract_params.rbi +24 -0
- data/rbi/context_dev/models/web_extract_response.rbi +65 -3
- data/rbi/context_dev/models/web_extract_styleguide_response.rbi +67 -0
- data/rbi/context_dev/models/web_screenshot_response.rbi +65 -0
- data/rbi/context_dev/models/web_search_response.rbi +65 -3
- data/rbi/context_dev/models/web_web_crawl_md_response.rbi +497 -10
- data/rbi/context_dev/models/web_web_scrape_html_response.rbi +553 -3
- data/rbi/context_dev/models/web_web_scrape_images_response.rbi +68 -3
- data/rbi/context_dev/models/web_web_scrape_md_response.rbi +542 -3
- data/rbi/context_dev/models/web_web_scrape_sitemap_response.rbi +70 -3
- data/rbi/context_dev/resources/web.rbi +7 -0
- data/sig/context_dev/models/ai_ai_query_response.rbs +28 -0
- data/sig/context_dev/models/ai_extract_product_response.rbs +28 -0
- data/sig/context_dev/models/ai_extract_products_response.rbs +28 -0
- data/sig/context_dev/models/brand_identify_from_transaction_response.rbs +28 -0
- data/sig/context_dev/models/brand_retrieve_by_email_response.rbs +28 -0
- data/sig/context_dev/models/brand_retrieve_by_isin_response.rbs +28 -0
- data/sig/context_dev/models/brand_retrieve_by_name_response.rbs +28 -0
- data/sig/context_dev/models/brand_retrieve_by_ticker_response.rbs +28 -0
- data/sig/context_dev/models/brand_retrieve_response.rbs +28 -0
- data/sig/context_dev/models/brand_retrieve_simplified_response.rbs +28 -0
- data/sig/context_dev/models/industry_retrieve_naics_response.rbs +28 -0
- data/sig/context_dev/models/industry_retrieve_sic_response.rbs +28 -0
- data/sig/context_dev/models/utility_prefetch_by_email_response.rbs +38 -2
- data/sig/context_dev/models/utility_prefetch_response.rbs +38 -2
- data/sig/context_dev/models/web_extract_competitors_response.rbs +31 -3
- data/sig/context_dev/models/web_extract_fonts_response.rbs +31 -3
- data/sig/context_dev/models/web_extract_params.rbs +14 -0
- data/sig/context_dev/models/web_extract_response.rbs +31 -3
- data/sig/context_dev/models/web_extract_styleguide_response.rbs +28 -0
- data/sig/context_dev/models/web_screenshot_response.rbs +28 -0
- data/sig/context_dev/models/web_search_response.rbs +31 -3
- data/sig/context_dev/models/web_web_crawl_md_response.rbs +229 -6
- data/sig/context_dev/models/web_web_scrape_html_response.rbs +263 -4
- data/sig/context_dev/models/web_web_scrape_images_response.rbs +31 -3
- data/sig/context_dev/models/web_web_scrape_md_response.rbs +250 -3
- data/sig/context_dev/models/web_web_scrape_sitemap_response.rbs +31 -3
- data/sig/context_dev/resources/web.rbs +2 -0
- metadata +2 -2
|
@@ -23,12 +23,24 @@ module ContextDev
|
|
|
23
23
|
# @return [String]
|
|
24
24
|
required :url, String
|
|
25
25
|
|
|
26
|
-
# @!
|
|
26
|
+
# @!attribute key_metadata
|
|
27
|
+
# Metadata about the API key used for the request. Included in every response
|
|
28
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
29
|
+
#
|
|
30
|
+
# @return [ContextDev::Models::WebWebScrapeImagesResponse::KeyMetadata, nil]
|
|
31
|
+
optional :key_metadata, -> { ContextDev::Models::WebWebScrapeImagesResponse::KeyMetadata }
|
|
32
|
+
|
|
33
|
+
# @!method initialize(images:, success:, url:, key_metadata: nil)
|
|
34
|
+
# Some parameter documentations has been truncated, see
|
|
35
|
+
# {ContextDev::Models::WebWebScrapeImagesResponse} for more details.
|
|
36
|
+
#
|
|
27
37
|
# @param images [Array<ContextDev::Models::WebWebScrapeImagesResponse::Image>] Images found on the page.
|
|
28
38
|
#
|
|
29
39
|
# @param success [Boolean, ContextDev::Models::WebWebScrapeImagesResponse::Success] Always true on success.
|
|
30
40
|
#
|
|
31
41
|
# @param url [String] Page URL that was scraped.
|
|
42
|
+
#
|
|
43
|
+
# @param key_metadata [ContextDev::Models::WebWebScrapeImagesResponse::KeyMetadata] Metadata about the API key used for the request. Included in every response when
|
|
32
44
|
|
|
33
45
|
class Image < ContextDev::Internal::Type::BaseModel
|
|
34
46
|
# @!attribute alt
|
|
@@ -183,6 +195,29 @@ module ContextDev
|
|
|
183
195
|
# @!method self.values
|
|
184
196
|
# @return [Array<Boolean>]
|
|
185
197
|
end
|
|
198
|
+
|
|
199
|
+
# @see ContextDev::Models::WebWebScrapeImagesResponse#key_metadata
|
|
200
|
+
class KeyMetadata < ContextDev::Internal::Type::BaseModel
|
|
201
|
+
# @!attribute credits_consumed
|
|
202
|
+
# The number of credits consumed by this request.
|
|
203
|
+
#
|
|
204
|
+
# @return [Integer]
|
|
205
|
+
required :credits_consumed, Integer
|
|
206
|
+
|
|
207
|
+
# @!attribute credits_remaining
|
|
208
|
+
# The number of credits remaining for your organization after this request.
|
|
209
|
+
#
|
|
210
|
+
# @return [Integer]
|
|
211
|
+
required :credits_remaining, Integer
|
|
212
|
+
|
|
213
|
+
# @!method initialize(credits_consumed:, credits_remaining:)
|
|
214
|
+
# Metadata about the API key used for the request. Included in every response
|
|
215
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
216
|
+
#
|
|
217
|
+
# @param credits_consumed [Integer] The number of credits consumed by this request.
|
|
218
|
+
#
|
|
219
|
+
# @param credits_remaining [Integer] The number of credits remaining for your organization after this request.
|
|
220
|
+
end
|
|
186
221
|
end
|
|
187
222
|
end
|
|
188
223
|
end
|
|
@@ -10,6 +10,12 @@ module ContextDev
|
|
|
10
10
|
# @return [String]
|
|
11
11
|
required :markdown, String
|
|
12
12
|
|
|
13
|
+
# @!attribute metadata
|
|
14
|
+
# Metadata extracted from the scraped page HTML.
|
|
15
|
+
#
|
|
16
|
+
# @return [ContextDev::Models::WebWebScrapeMdResponse::Metadata]
|
|
17
|
+
required :metadata, -> { ContextDev::Models::WebWebScrapeMdResponse::Metadata }
|
|
18
|
+
|
|
13
19
|
# @!attribute success
|
|
14
20
|
# Indicates success
|
|
15
21
|
#
|
|
@@ -22,12 +28,273 @@ module ContextDev
|
|
|
22
28
|
# @return [String]
|
|
23
29
|
required :url, String
|
|
24
30
|
|
|
25
|
-
# @!
|
|
31
|
+
# @!attribute key_metadata
|
|
32
|
+
# Metadata about the API key used for the request. Included in every response
|
|
33
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
34
|
+
#
|
|
35
|
+
# @return [ContextDev::Models::WebWebScrapeMdResponse::KeyMetadata, nil]
|
|
36
|
+
optional :key_metadata, -> { ContextDev::Models::WebWebScrapeMdResponse::KeyMetadata }
|
|
37
|
+
|
|
38
|
+
# @!method initialize(markdown:, metadata:, success:, url:, key_metadata: nil)
|
|
39
|
+
# Some parameter documentations has been truncated, see
|
|
40
|
+
# {ContextDev::Models::WebWebScrapeMdResponse} for more details.
|
|
41
|
+
#
|
|
26
42
|
# @param markdown [String] Page content converted to GitHub Flavored Markdown
|
|
27
43
|
#
|
|
44
|
+
# @param metadata [ContextDev::Models::WebWebScrapeMdResponse::Metadata] Metadata extracted from the scraped page HTML.
|
|
45
|
+
#
|
|
28
46
|
# @param success [Boolean, ContextDev::Models::WebWebScrapeMdResponse::Success] Indicates success
|
|
29
47
|
#
|
|
30
48
|
# @param url [String] The URL that was scraped
|
|
49
|
+
#
|
|
50
|
+
# @param key_metadata [ContextDev::Models::WebWebScrapeMdResponse::KeyMetadata] Metadata about the API key used for the request. Included in every response when
|
|
51
|
+
|
|
52
|
+
# @see ContextDev::Models::WebWebScrapeMdResponse#metadata
|
|
53
|
+
class Metadata < ContextDev::Internal::Type::BaseModel
|
|
54
|
+
# @!attribute final_url
|
|
55
|
+
# Final URL scraped after redirects or scraper fallback, when known. Falls back to
|
|
56
|
+
# sourceUrl when unavailable.
|
|
57
|
+
#
|
|
58
|
+
# @return [String]
|
|
59
|
+
required :final_url, String, api_name: :finalUrl
|
|
60
|
+
|
|
61
|
+
# @!attribute source_url
|
|
62
|
+
# Original URL requested by the caller.
|
|
63
|
+
#
|
|
64
|
+
# @return [String]
|
|
65
|
+
required :source_url, String, api_name: :sourceUrl
|
|
66
|
+
|
|
67
|
+
# @!attribute additional_meta
|
|
68
|
+
# Additional non-social meta tags not promoted to top-level metadata fields.
|
|
69
|
+
#
|
|
70
|
+
# @return [Hash{Symbol=>String, Array<String>}, nil]
|
|
71
|
+
optional :additional_meta,
|
|
72
|
+
-> { ContextDev::Internal::Type::HashOf[union: ContextDev::Models::WebWebScrapeMdResponse::Metadata::AdditionalMeta] },
|
|
73
|
+
api_name: :additionalMeta
|
|
74
|
+
|
|
75
|
+
# @!attribute alternates
|
|
76
|
+
# Resolved alternate links from link rel=alternate tags.
|
|
77
|
+
#
|
|
78
|
+
# @return [Array<ContextDev::Models::WebWebScrapeMdResponse::Metadata::Alternate>, nil]
|
|
79
|
+
optional :alternates,
|
|
80
|
+
-> { ContextDev::Internal::Type::ArrayOf[ContextDev::Models::WebWebScrapeMdResponse::Metadata::Alternate] }
|
|
81
|
+
|
|
82
|
+
# @!attribute author
|
|
83
|
+
# Author metadata, when present.
|
|
84
|
+
#
|
|
85
|
+
# @return [String, nil]
|
|
86
|
+
optional :author, String
|
|
87
|
+
|
|
88
|
+
# @!attribute canonical_url
|
|
89
|
+
# Resolved canonical URL, when present.
|
|
90
|
+
#
|
|
91
|
+
# @return [String, nil]
|
|
92
|
+
optional :canonical_url, String, api_name: :canonicalUrl
|
|
93
|
+
|
|
94
|
+
# @!attribute description
|
|
95
|
+
# Best description extracted from standard, Open Graph, or Twitter metadata.
|
|
96
|
+
#
|
|
97
|
+
# @return [String, nil]
|
|
98
|
+
optional :description, String
|
|
99
|
+
|
|
100
|
+
# @!attribute favicon
|
|
101
|
+
# Resolved favicon URL, when present.
|
|
102
|
+
#
|
|
103
|
+
# @return [String, nil]
|
|
104
|
+
optional :favicon, String
|
|
105
|
+
|
|
106
|
+
# @!attribute image
|
|
107
|
+
# Primary resolved preview image from Open Graph, Twitter, or image metadata.
|
|
108
|
+
#
|
|
109
|
+
# @return [String, nil]
|
|
110
|
+
optional :image, String
|
|
111
|
+
|
|
112
|
+
# @!attribute json_ld
|
|
113
|
+
# JSON-LD structured data blocks parsed from the page.
|
|
114
|
+
#
|
|
115
|
+
# @return [Array<Hash{Symbol=>Object}>, nil]
|
|
116
|
+
optional :json_ld,
|
|
117
|
+
ContextDev::Internal::Type::ArrayOf[ContextDev::Internal::Type::HashOf[ContextDev::Internal::Type::Unknown]],
|
|
118
|
+
api_name: :jsonLd
|
|
119
|
+
|
|
120
|
+
# @!attribute keywords
|
|
121
|
+
# Keywords extracted from the page's keywords meta tag.
|
|
122
|
+
#
|
|
123
|
+
# @return [Array<String>, nil]
|
|
124
|
+
optional :keywords, ContextDev::Internal::Type::ArrayOf[String]
|
|
125
|
+
|
|
126
|
+
# @!attribute language
|
|
127
|
+
# Language extracted from html lang or language meta tags.
|
|
128
|
+
#
|
|
129
|
+
# @return [String, nil]
|
|
130
|
+
optional :language, String
|
|
131
|
+
|
|
132
|
+
# @!attribute modified_time
|
|
133
|
+
# Modified timestamp/date from page metadata, when present.
|
|
134
|
+
#
|
|
135
|
+
# @return [String, nil]
|
|
136
|
+
optional :modified_time, String, api_name: :modifiedTime
|
|
137
|
+
|
|
138
|
+
# @!attribute open_graph
|
|
139
|
+
# Open Graph metadata with the og: prefix removed and keys camel-cased.
|
|
140
|
+
#
|
|
141
|
+
# @return [Hash{Symbol=>String, Array<String>}, nil]
|
|
142
|
+
optional :open_graph,
|
|
143
|
+
-> { ContextDev::Internal::Type::HashOf[union: ContextDev::Models::WebWebScrapeMdResponse::Metadata::OpenGraph] },
|
|
144
|
+
api_name: :openGraph
|
|
145
|
+
|
|
146
|
+
# @!attribute published_time
|
|
147
|
+
# Published timestamp/date from page metadata, when present.
|
|
148
|
+
#
|
|
149
|
+
# @return [String, nil]
|
|
150
|
+
optional :published_time, String, api_name: :publishedTime
|
|
151
|
+
|
|
152
|
+
# @!attribute robots
|
|
153
|
+
# Robots meta directive, when present.
|
|
154
|
+
#
|
|
155
|
+
# @return [String, nil]
|
|
156
|
+
optional :robots, String
|
|
157
|
+
|
|
158
|
+
# @!attribute site_name
|
|
159
|
+
# Site or application name from page metadata.
|
|
160
|
+
#
|
|
161
|
+
# @return [String, nil]
|
|
162
|
+
optional :site_name, String, api_name: :siteName
|
|
163
|
+
|
|
164
|
+
# @!attribute title
|
|
165
|
+
# Best title extracted from the page.
|
|
166
|
+
#
|
|
167
|
+
# @return [String, nil]
|
|
168
|
+
optional :title, String
|
|
169
|
+
|
|
170
|
+
# @!attribute twitter
|
|
171
|
+
# Twitter card metadata with the twitter: prefix removed and keys camel-cased.
|
|
172
|
+
#
|
|
173
|
+
# @return [Hash{Symbol=>String, Array<String>}, nil]
|
|
174
|
+
optional :twitter,
|
|
175
|
+
-> { ContextDev::Internal::Type::HashOf[union: ContextDev::Models::WebWebScrapeMdResponse::Metadata::Twitter] }
|
|
176
|
+
|
|
177
|
+
# @!method initialize(final_url:, source_url:, additional_meta: nil, alternates: nil, author: nil, canonical_url: nil, description: nil, favicon: nil, image: nil, json_ld: nil, keywords: nil, language: nil, modified_time: nil, open_graph: nil, published_time: nil, robots: nil, site_name: nil, title: nil, twitter: nil)
|
|
178
|
+
# Some parameter documentations has been truncated, see
|
|
179
|
+
# {ContextDev::Models::WebWebScrapeMdResponse::Metadata} for more details.
|
|
180
|
+
#
|
|
181
|
+
# Metadata extracted from the scraped page HTML.
|
|
182
|
+
#
|
|
183
|
+
# @param final_url [String] Final URL scraped after redirects or scraper fallback, when known. Falls back to
|
|
184
|
+
#
|
|
185
|
+
# @param source_url [String] Original URL requested by the caller.
|
|
186
|
+
#
|
|
187
|
+
# @param additional_meta [Hash{Symbol=>String, Array<String>}] Additional non-social meta tags not promoted to top-level metadata fields.
|
|
188
|
+
#
|
|
189
|
+
# @param alternates [Array<ContextDev::Models::WebWebScrapeMdResponse::Metadata::Alternate>] Resolved alternate links from link rel=alternate tags.
|
|
190
|
+
#
|
|
191
|
+
# @param author [String] Author metadata, when present.
|
|
192
|
+
#
|
|
193
|
+
# @param canonical_url [String] Resolved canonical URL, when present.
|
|
194
|
+
#
|
|
195
|
+
# @param description [String] Best description extracted from standard, Open Graph, or Twitter metadata.
|
|
196
|
+
#
|
|
197
|
+
# @param favicon [String] Resolved favicon URL, when present.
|
|
198
|
+
#
|
|
199
|
+
# @param image [String] Primary resolved preview image from Open Graph, Twitter, or image metadata.
|
|
200
|
+
#
|
|
201
|
+
# @param json_ld [Array<Hash{Symbol=>Object}>] JSON-LD structured data blocks parsed from the page.
|
|
202
|
+
#
|
|
203
|
+
# @param keywords [Array<String>] Keywords extracted from the page's keywords meta tag.
|
|
204
|
+
#
|
|
205
|
+
# @param language [String] Language extracted from html lang or language meta tags.
|
|
206
|
+
#
|
|
207
|
+
# @param modified_time [String] Modified timestamp/date from page metadata, when present.
|
|
208
|
+
#
|
|
209
|
+
# @param open_graph [Hash{Symbol=>String, Array<String>}] Open Graph metadata with the og: prefix removed and keys camel-cased.
|
|
210
|
+
#
|
|
211
|
+
# @param published_time [String] Published timestamp/date from page metadata, when present.
|
|
212
|
+
#
|
|
213
|
+
# @param robots [String] Robots meta directive, when present.
|
|
214
|
+
#
|
|
215
|
+
# @param site_name [String] Site or application name from page metadata.
|
|
216
|
+
#
|
|
217
|
+
# @param title [String] Best title extracted from the page.
|
|
218
|
+
#
|
|
219
|
+
# @param twitter [Hash{Symbol=>String, Array<String>}] Twitter card metadata with the twitter: prefix removed and keys camel-cased.
|
|
220
|
+
|
|
221
|
+
module AdditionalMeta
|
|
222
|
+
extend ContextDev::Internal::Type::Union
|
|
223
|
+
|
|
224
|
+
variant String
|
|
225
|
+
|
|
226
|
+
variant -> { ContextDev::Models::WebWebScrapeMdResponse::Metadata::AdditionalMeta::StringArray }
|
|
227
|
+
|
|
228
|
+
# @!method self.variants
|
|
229
|
+
# @return [Array(String, Array<String>)]
|
|
230
|
+
|
|
231
|
+
# @type [ContextDev::Internal::Type::Converter]
|
|
232
|
+
StringArray = ContextDev::Internal::Type::ArrayOf[String]
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
class Alternate < ContextDev::Internal::Type::BaseModel
|
|
236
|
+
# @!attribute href
|
|
237
|
+
# Resolved alternate URL.
|
|
238
|
+
#
|
|
239
|
+
# @return [String]
|
|
240
|
+
required :href, String
|
|
241
|
+
|
|
242
|
+
# @!attribute hreflang
|
|
243
|
+
# Language or locale for the alternate URL, when present.
|
|
244
|
+
#
|
|
245
|
+
# @return [String, nil]
|
|
246
|
+
optional :hreflang, String
|
|
247
|
+
|
|
248
|
+
# @!attribute title
|
|
249
|
+
# Alternate resource title, when present.
|
|
250
|
+
#
|
|
251
|
+
# @return [String, nil]
|
|
252
|
+
optional :title, String
|
|
253
|
+
|
|
254
|
+
# @!attribute type
|
|
255
|
+
# Alternate resource MIME type, when present.
|
|
256
|
+
#
|
|
257
|
+
# @return [String, nil]
|
|
258
|
+
optional :type, String
|
|
259
|
+
|
|
260
|
+
# @!method initialize(href:, hreflang: nil, title: nil, type: nil)
|
|
261
|
+
# @param href [String] Resolved alternate URL.
|
|
262
|
+
#
|
|
263
|
+
# @param hreflang [String] Language or locale for the alternate URL, when present.
|
|
264
|
+
#
|
|
265
|
+
# @param title [String] Alternate resource title, when present.
|
|
266
|
+
#
|
|
267
|
+
# @param type [String] Alternate resource MIME type, when present.
|
|
268
|
+
end
|
|
269
|
+
|
|
270
|
+
module OpenGraph
|
|
271
|
+
extend ContextDev::Internal::Type::Union
|
|
272
|
+
|
|
273
|
+
variant String
|
|
274
|
+
|
|
275
|
+
variant -> { ContextDev::Models::WebWebScrapeMdResponse::Metadata::OpenGraph::StringArray }
|
|
276
|
+
|
|
277
|
+
# @!method self.variants
|
|
278
|
+
# @return [Array(String, Array<String>)]
|
|
279
|
+
|
|
280
|
+
# @type [ContextDev::Internal::Type::Converter]
|
|
281
|
+
StringArray = ContextDev::Internal::Type::ArrayOf[String]
|
|
282
|
+
end
|
|
283
|
+
|
|
284
|
+
module Twitter
|
|
285
|
+
extend ContextDev::Internal::Type::Union
|
|
286
|
+
|
|
287
|
+
variant String
|
|
288
|
+
|
|
289
|
+
variant -> { ContextDev::Models::WebWebScrapeMdResponse::Metadata::Twitter::StringArray }
|
|
290
|
+
|
|
291
|
+
# @!method self.variants
|
|
292
|
+
# @return [Array(String, Array<String>)]
|
|
293
|
+
|
|
294
|
+
# @type [ContextDev::Internal::Type::Converter]
|
|
295
|
+
StringArray = ContextDev::Internal::Type::ArrayOf[String]
|
|
296
|
+
end
|
|
297
|
+
end
|
|
31
298
|
|
|
32
299
|
# Indicates success
|
|
33
300
|
#
|
|
@@ -40,6 +307,29 @@ module ContextDev
|
|
|
40
307
|
# @!method self.values
|
|
41
308
|
# @return [Array<Boolean>]
|
|
42
309
|
end
|
|
310
|
+
|
|
311
|
+
# @see ContextDev::Models::WebWebScrapeMdResponse#key_metadata
|
|
312
|
+
class KeyMetadata < ContextDev::Internal::Type::BaseModel
|
|
313
|
+
# @!attribute credits_consumed
|
|
314
|
+
# The number of credits consumed by this request.
|
|
315
|
+
#
|
|
316
|
+
# @return [Integer]
|
|
317
|
+
required :credits_consumed, Integer
|
|
318
|
+
|
|
319
|
+
# @!attribute credits_remaining
|
|
320
|
+
# The number of credits remaining for your organization after this request.
|
|
321
|
+
#
|
|
322
|
+
# @return [Integer]
|
|
323
|
+
required :credits_remaining, Integer
|
|
324
|
+
|
|
325
|
+
# @!method initialize(credits_consumed:, credits_remaining:)
|
|
326
|
+
# Metadata about the API key used for the request. Included in every response
|
|
327
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
328
|
+
#
|
|
329
|
+
# @param credits_consumed [Integer] The number of credits consumed by this request.
|
|
330
|
+
#
|
|
331
|
+
# @param credits_remaining [Integer] The number of credits remaining for your organization after this request.
|
|
332
|
+
end
|
|
43
333
|
end
|
|
44
334
|
end
|
|
45
335
|
end
|
|
@@ -28,7 +28,17 @@ module ContextDev
|
|
|
28
28
|
# @return [Array<String>]
|
|
29
29
|
required :urls, ContextDev::Internal::Type::ArrayOf[String]
|
|
30
30
|
|
|
31
|
-
# @!
|
|
31
|
+
# @!attribute key_metadata
|
|
32
|
+
# Metadata about the API key used for the request. Included in every response
|
|
33
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
34
|
+
#
|
|
35
|
+
# @return [ContextDev::Models::WebWebScrapeSitemapResponse::KeyMetadata, nil]
|
|
36
|
+
optional :key_metadata, -> { ContextDev::Models::WebWebScrapeSitemapResponse::KeyMetadata }
|
|
37
|
+
|
|
38
|
+
# @!method initialize(domain:, meta:, success:, urls:, key_metadata: nil)
|
|
39
|
+
# Some parameter documentations has been truncated, see
|
|
40
|
+
# {ContextDev::Models::WebWebScrapeSitemapResponse} for more details.
|
|
41
|
+
#
|
|
32
42
|
# @param domain [String] The normalized domain that was crawled
|
|
33
43
|
#
|
|
34
44
|
# @param meta [ContextDev::Models::WebWebScrapeSitemapResponse::Meta] Metadata about the sitemap crawl operation
|
|
@@ -36,6 +46,8 @@ module ContextDev
|
|
|
36
46
|
# @param success [Boolean, ContextDev::Models::WebWebScrapeSitemapResponse::Success] Indicates success
|
|
37
47
|
#
|
|
38
48
|
# @param urls [Array<String>] Array of discovered page URLs from the sitemap (max 500)
|
|
49
|
+
#
|
|
50
|
+
# @param key_metadata [ContextDev::Models::WebWebScrapeSitemapResponse::KeyMetadata] Metadata about the API key used for the request. Included in every response when
|
|
39
51
|
|
|
40
52
|
# @see ContextDev::Models::WebWebScrapeSitemapResponse#meta
|
|
41
53
|
class Meta < ContextDev::Internal::Type::BaseModel
|
|
@@ -86,6 +98,29 @@ module ContextDev
|
|
|
86
98
|
# @!method self.values
|
|
87
99
|
# @return [Array<Boolean>]
|
|
88
100
|
end
|
|
101
|
+
|
|
102
|
+
# @see ContextDev::Models::WebWebScrapeSitemapResponse#key_metadata
|
|
103
|
+
class KeyMetadata < ContextDev::Internal::Type::BaseModel
|
|
104
|
+
# @!attribute credits_consumed
|
|
105
|
+
# The number of credits consumed by this request.
|
|
106
|
+
#
|
|
107
|
+
# @return [Integer]
|
|
108
|
+
required :credits_consumed, Integer
|
|
109
|
+
|
|
110
|
+
# @!attribute credits_remaining
|
|
111
|
+
# The number of credits remaining for your organization after this request.
|
|
112
|
+
#
|
|
113
|
+
# @return [Integer]
|
|
114
|
+
required :credits_remaining, Integer
|
|
115
|
+
|
|
116
|
+
# @!method initialize(credits_consumed:, credits_remaining:)
|
|
117
|
+
# Metadata about the API key used for the request. Included in every response
|
|
118
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
119
|
+
#
|
|
120
|
+
# @param credits_consumed [Integer] The number of credits consumed by this request.
|
|
121
|
+
#
|
|
122
|
+
# @param credits_remaining [Integer] The number of credits remaining for your organization after this request.
|
|
123
|
+
end
|
|
89
124
|
end
|
|
90
125
|
end
|
|
91
126
|
end
|
|
@@ -9,7 +9,7 @@ module ContextDev
|
|
|
9
9
|
# Crawl a website, use the provided JSON Schema and instructions to prioritize
|
|
10
10
|
# relevant internal links, and extract structured data from the selected pages.
|
|
11
11
|
#
|
|
12
|
-
# @overload extract(schema:, url:, fact_check: nil, follow_subdomains: nil, include_frames: nil, instructions: nil, max_age_ms: nil, pdf: nil, stop_after_ms: nil, timeout_ms: nil, wait_for_ms: nil, request_options: {})
|
|
12
|
+
# @overload extract(schema:, url:, fact_check: nil, follow_subdomains: nil, include_frames: nil, instructions: nil, max_age_ms: nil, max_depth: nil, max_pages: nil, pdf: nil, stop_after_ms: nil, timeout_ms: nil, wait_for_ms: nil, request_options: {})
|
|
13
13
|
#
|
|
14
14
|
# @param schema [Hash{Symbol=>Object}] JSON Schema for the returned data object. TypeScript Zod users can pass a JSON S
|
|
15
15
|
#
|
|
@@ -25,6 +25,10 @@ module ContextDev
|
|
|
25
25
|
#
|
|
26
26
|
# @param max_age_ms [Integer] Return cached scrape results if a prior scrape for the same parameters is younge
|
|
27
27
|
#
|
|
28
|
+
# @param max_depth [Integer] Optional maximum link depth from the starting URL (0 = only the starting page).
|
|
29
|
+
#
|
|
30
|
+
# @param max_pages [Integer] Maximum number of pages to analyze for extraction. Hard cap: 50. Defaults to 5.
|
|
31
|
+
#
|
|
28
32
|
# @param pdf [ContextDev::Models::WebExtractParams::Pdf]
|
|
29
33
|
#
|
|
30
34
|
# @param stop_after_ms [Integer] Soft time budget for the crawl in milliseconds. Min: 10000 (10s). Max: 110000 (1
|
data/lib/context_dev/version.rb
CHANGED
|
@@ -38,6 +38,21 @@ module ContextDev
|
|
|
38
38
|
sig { params(domain: String).void }
|
|
39
39
|
attr_writer :domain
|
|
40
40
|
|
|
41
|
+
# Metadata about the API key used for the request. Included in every response
|
|
42
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
43
|
+
sig do
|
|
44
|
+
returns(T.nilable(ContextDev::Models::AIAIQueryResponse::KeyMetadata))
|
|
45
|
+
end
|
|
46
|
+
attr_reader :key_metadata
|
|
47
|
+
|
|
48
|
+
sig do
|
|
49
|
+
params(
|
|
50
|
+
key_metadata:
|
|
51
|
+
ContextDev::Models::AIAIQueryResponse::KeyMetadata::OrHash
|
|
52
|
+
).void
|
|
53
|
+
end
|
|
54
|
+
attr_writer :key_metadata
|
|
55
|
+
|
|
41
56
|
# Status of the response, e.g., 'ok'
|
|
42
57
|
sig { returns(T.nilable(String)) }
|
|
43
58
|
attr_reader :status
|
|
@@ -59,6 +74,8 @@ module ContextDev
|
|
|
59
74
|
ContextDev::Models::AIAIQueryResponse::DataExtracted::OrHash
|
|
60
75
|
],
|
|
61
76
|
domain: String,
|
|
77
|
+
key_metadata:
|
|
78
|
+
ContextDev::Models::AIAIQueryResponse::KeyMetadata::OrHash,
|
|
62
79
|
status: String,
|
|
63
80
|
urls_analyzed: T::Array[String]
|
|
64
81
|
).returns(T.attached_class)
|
|
@@ -68,6 +85,9 @@ module ContextDev
|
|
|
68
85
|
data_extracted: nil,
|
|
69
86
|
# The domain that was analyzed
|
|
70
87
|
domain: nil,
|
|
88
|
+
# Metadata about the API key used for the request. Included in every response
|
|
89
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
90
|
+
key_metadata: nil,
|
|
71
91
|
# Status of the response, e.g., 'ok'
|
|
72
92
|
status: nil,
|
|
73
93
|
# List of URLs that were analyzed
|
|
@@ -81,6 +101,7 @@ module ContextDev
|
|
|
81
101
|
data_extracted:
|
|
82
102
|
T::Array[ContextDev::Models::AIAIQueryResponse::DataExtracted],
|
|
83
103
|
domain: String,
|
|
104
|
+
key_metadata: ContextDev::Models::AIAIQueryResponse::KeyMetadata,
|
|
84
105
|
status: String,
|
|
85
106
|
urls_analyzed: T::Array[String]
|
|
86
107
|
}
|
|
@@ -200,6 +221,47 @@ module ContextDev
|
|
|
200
221
|
)
|
|
201
222
|
end
|
|
202
223
|
end
|
|
224
|
+
|
|
225
|
+
class KeyMetadata < ContextDev::Internal::Type::BaseModel
|
|
226
|
+
OrHash =
|
|
227
|
+
T.type_alias do
|
|
228
|
+
T.any(
|
|
229
|
+
ContextDev::Models::AIAIQueryResponse::KeyMetadata,
|
|
230
|
+
ContextDev::Internal::AnyHash
|
|
231
|
+
)
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
# The number of credits consumed by this request.
|
|
235
|
+
sig { returns(Integer) }
|
|
236
|
+
attr_accessor :credits_consumed
|
|
237
|
+
|
|
238
|
+
# The number of credits remaining for your organization after this request.
|
|
239
|
+
sig { returns(Integer) }
|
|
240
|
+
attr_accessor :credits_remaining
|
|
241
|
+
|
|
242
|
+
# Metadata about the API key used for the request. Included in every response
|
|
243
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
244
|
+
sig do
|
|
245
|
+
params(credits_consumed: Integer, credits_remaining: Integer).returns(
|
|
246
|
+
T.attached_class
|
|
247
|
+
)
|
|
248
|
+
end
|
|
249
|
+
def self.new(
|
|
250
|
+
# The number of credits consumed by this request.
|
|
251
|
+
credits_consumed:,
|
|
252
|
+
# The number of credits remaining for your organization after this request.
|
|
253
|
+
credits_remaining:
|
|
254
|
+
)
|
|
255
|
+
end
|
|
256
|
+
|
|
257
|
+
sig do
|
|
258
|
+
override.returns(
|
|
259
|
+
{ credits_consumed: Integer, credits_remaining: Integer }
|
|
260
|
+
)
|
|
261
|
+
end
|
|
262
|
+
def to_hash
|
|
263
|
+
end
|
|
264
|
+
end
|
|
203
265
|
end
|
|
204
266
|
end
|
|
205
267
|
end
|
|
@@ -18,6 +18,23 @@ module ContextDev
|
|
|
18
18
|
sig { params(is_product_page: T::Boolean).void }
|
|
19
19
|
attr_writer :is_product_page
|
|
20
20
|
|
|
21
|
+
# Metadata about the API key used for the request. Included in every response
|
|
22
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
23
|
+
sig do
|
|
24
|
+
returns(
|
|
25
|
+
T.nilable(ContextDev::Models::AIExtractProductResponse::KeyMetadata)
|
|
26
|
+
)
|
|
27
|
+
end
|
|
28
|
+
attr_reader :key_metadata
|
|
29
|
+
|
|
30
|
+
sig do
|
|
31
|
+
params(
|
|
32
|
+
key_metadata:
|
|
33
|
+
ContextDev::Models::AIExtractProductResponse::KeyMetadata::OrHash
|
|
34
|
+
).void
|
|
35
|
+
end
|
|
36
|
+
attr_writer :key_metadata
|
|
37
|
+
|
|
21
38
|
# The detected ecommerce platform, or null if not a product page
|
|
22
39
|
sig do
|
|
23
40
|
returns(
|
|
@@ -49,6 +66,8 @@ module ContextDev
|
|
|
49
66
|
sig do
|
|
50
67
|
params(
|
|
51
68
|
is_product_page: T::Boolean,
|
|
69
|
+
key_metadata:
|
|
70
|
+
ContextDev::Models::AIExtractProductResponse::KeyMetadata::OrHash,
|
|
52
71
|
platform:
|
|
53
72
|
T.nilable(
|
|
54
73
|
ContextDev::Models::AIExtractProductResponse::Platform::OrSymbol
|
|
@@ -62,6 +81,9 @@ module ContextDev
|
|
|
62
81
|
def self.new(
|
|
63
82
|
# Whether the given URL is a product detail page
|
|
64
83
|
is_product_page: nil,
|
|
84
|
+
# Metadata about the API key used for the request. Included in every response
|
|
85
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
86
|
+
key_metadata: nil,
|
|
65
87
|
# The detected ecommerce platform, or null if not a product page
|
|
66
88
|
platform: nil,
|
|
67
89
|
# The extracted product data, or null if not a product page
|
|
@@ -73,6 +95,8 @@ module ContextDev
|
|
|
73
95
|
override.returns(
|
|
74
96
|
{
|
|
75
97
|
is_product_page: T::Boolean,
|
|
98
|
+
key_metadata:
|
|
99
|
+
ContextDev::Models::AIExtractProductResponse::KeyMetadata,
|
|
76
100
|
platform:
|
|
77
101
|
T.nilable(
|
|
78
102
|
ContextDev::Models::AIExtractProductResponse::Platform::TaggedSymbol
|
|
@@ -85,6 +109,47 @@ module ContextDev
|
|
|
85
109
|
def to_hash
|
|
86
110
|
end
|
|
87
111
|
|
|
112
|
+
class KeyMetadata < ContextDev::Internal::Type::BaseModel
|
|
113
|
+
OrHash =
|
|
114
|
+
T.type_alias do
|
|
115
|
+
T.any(
|
|
116
|
+
ContextDev::Models::AIExtractProductResponse::KeyMetadata,
|
|
117
|
+
ContextDev::Internal::AnyHash
|
|
118
|
+
)
|
|
119
|
+
end
|
|
120
|
+
|
|
121
|
+
# The number of credits consumed by this request.
|
|
122
|
+
sig { returns(Integer) }
|
|
123
|
+
attr_accessor :credits_consumed
|
|
124
|
+
|
|
125
|
+
# The number of credits remaining for your organization after this request.
|
|
126
|
+
sig { returns(Integer) }
|
|
127
|
+
attr_accessor :credits_remaining
|
|
128
|
+
|
|
129
|
+
# Metadata about the API key used for the request. Included in every response
|
|
130
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
131
|
+
sig do
|
|
132
|
+
params(credits_consumed: Integer, credits_remaining: Integer).returns(
|
|
133
|
+
T.attached_class
|
|
134
|
+
)
|
|
135
|
+
end
|
|
136
|
+
def self.new(
|
|
137
|
+
# The number of credits consumed by this request.
|
|
138
|
+
credits_consumed:,
|
|
139
|
+
# The number of credits remaining for your organization after this request.
|
|
140
|
+
credits_remaining:
|
|
141
|
+
)
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
sig do
|
|
145
|
+
override.returns(
|
|
146
|
+
{ credits_consumed: Integer, credits_remaining: Integer }
|
|
147
|
+
)
|
|
148
|
+
end
|
|
149
|
+
def to_hash
|
|
150
|
+
end
|
|
151
|
+
end
|
|
152
|
+
|
|
88
153
|
# The detected ecommerce platform, or null if not a product page
|
|
89
154
|
module Platform
|
|
90
155
|
extend ContextDev::Internal::Type::Enum
|