context.dev 2.10.0 → 2.11.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 957da1f890d69d74fb2ed96452e243e381b8f8d62c3d1e045af683c0d1ad63ae
4
- data.tar.gz: f409eac79ba1943d0d893c67a98e8ef75451e3d3f58a61846bbf28fa5d4a73ae
3
+ metadata.gz: 366622603821e809f6f9eedf42ab688325b500d9dcae8e9cea5ff059edf08d53
4
+ data.tar.gz: deb733e2b4bb0a4def45544a438a143f799bb74e1cd51412fd4881d7f4cd83fc
5
5
  SHA512:
6
- metadata.gz: 692920e430fdb930aed928a519a7929827f06096bcbc103a5a3f739dfb89d578994d194d29f04090fba777f8092216343965bd6357661189acad4e5fbbcaeea1
7
- data.tar.gz: 3f50327bbb61beec6319feba1844da0d4d8a40c8533a95859a93a2e359bf87390e77f21844d2c2983bcc1698b241017c262a581bd2f4edd6879a20cc4a62d71b
6
+ metadata.gz: fc24b4ae331e3ac3097c98f525783b79062620de5c4bd761569358ffe8a33b092da8a102baf2e777e0912d56fa981d11aa066daae83024e50d8684c5d07225d5
7
+ data.tar.gz: 2ccea91ca85c5a826930ceaae09cd8eb04cfef0dc8cdac14c7b616007fa0a1fff6d0079993d192781afdcdd23f8558030faf5b287a2952fe5438b611f65ae476
data/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.11.0 (2026-08-18)
4
+
5
+ Full Changelog: [v2.10.0...v2.11.0](https://github.com/context-dot-dev/context-ruby-sdk/compare/v2.10.0...v2.11.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([9bff49f](https://github.com/context-dot-dev/context-ruby-sdk/commit/9bff49f9a966fd40691f2cd7a41ba96ec7679243))
10
+ * **api:** api update ([5b19e0c](https://github.com/context-dot-dev/context-ruby-sdk/commit/5b19e0ce1f7ad615a92e28440bec6ab3703ffe02))
11
+ * **api:** api update ([f4ccf22](https://github.com/context-dot-dev/context-ruby-sdk/commit/f4ccf220f130672950d3231a6b9952c166168ef9))
12
+
3
13
  ## 2.10.0 (2026-08-17)
4
14
 
5
15
  Full Changelog: [v2.9.0...v2.10.0](https://github.com/context-dot-dev/context-ruby-sdk/compare/v2.9.0...v2.10.0)
data/README.md CHANGED
@@ -26,7 +26,7 @@ To use this gem, install via Bundler by adding the following to your application
26
26
  <!-- x-release-please-start-version -->
27
27
 
28
28
  ```ruby
29
- gem "context.dev", "~> 2.10.0"
29
+ gem "context.dev", "~> 2.11.0"
30
30
  ```
31
31
 
32
32
  <!-- x-release-please-end -->
@@ -344,10 +344,38 @@ module ContextDev
344
344
  # @return [String, nil]
345
345
  optional :name, String
346
346
 
347
- # @!method initialize(hex: nil, name: nil)
347
+ # @!attribute source
348
+ # Where the color was observed: 'site' colors come from the website's own theme
349
+ # signals (rendered page colors, manifest, theme-color meta), 'logo' colors from
350
+ # logo image pixels.
351
+ #
352
+ # @return [Symbol, ContextDev::Models::BrandRetrieveResponse::Brand::Color::Source, nil]
353
+ optional :source, enum: -> { ContextDev::Models::BrandRetrieveResponse::Brand::Color::Source }
354
+
355
+ # @!method initialize(hex: nil, name: nil, source: nil)
356
+ # Some parameter documentations has been truncated, see
357
+ # {ContextDev::Models::BrandRetrieveResponse::Brand::Color} for more details.
358
+ #
348
359
  # @param hex [String] Color in hexadecimal format
349
360
  #
350
361
  # @param name [String] Name of the color
362
+ #
363
+ # @param source [Symbol, ContextDev::Models::BrandRetrieveResponse::Brand::Color::Source] Where the color was observed: 'site' colors come from the website's own theme si
364
+
365
+ # Where the color was observed: 'site' colors come from the website's own theme
366
+ # signals (rendered page colors, manifest, theme-color meta), 'logo' colors from
367
+ # logo image pixels.
368
+ #
369
+ # @see ContextDev::Models::BrandRetrieveResponse::Brand::Color#source
370
+ module Source
371
+ extend ContextDev::Internal::Type::Enum
372
+
373
+ SITE = :site
374
+ LOGO = :logo
375
+
376
+ # @!method self.values
377
+ # @return [Array<Symbol>]
378
+ end
351
379
  end
352
380
 
353
381
  # @see ContextDev::Models::BrandRetrieveResponse::Brand#employees
@@ -180,10 +180,39 @@ module ContextDev
180
180
  # @return [String, nil]
181
181
  optional :name, String
182
182
 
183
- # @!method initialize(hex: nil, name: nil)
183
+ # @!attribute source
184
+ # Where the color was observed: 'site' colors come from the website's own theme
185
+ # signals (rendered page colors, manifest, theme-color meta), 'logo' colors from
186
+ # logo image pixels.
187
+ #
188
+ # @return [Symbol, ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::Source, nil]
189
+ optional :source, enum: -> { ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::Source }
190
+
191
+ # @!method initialize(hex: nil, name: nil, source: nil)
192
+ # Some parameter documentations has been truncated, see
193
+ # {ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color} for more
194
+ # details.
195
+ #
184
196
  # @param hex [String] Color in hexadecimal format
185
197
  #
186
198
  # @param name [String] Name of the color
199
+ #
200
+ # @param source [Symbol, ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::Source] Where the color was observed: 'site' colors come from the website's own theme si
201
+
202
+ # Where the color was observed: 'site' colors come from the website's own theme
203
+ # signals (rendered page colors, manifest, theme-color meta), 'logo' colors from
204
+ # logo image pixels.
205
+ #
206
+ # @see ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color#source
207
+ module Source
208
+ extend ContextDev::Internal::Type::Enum
209
+
210
+ SITE = :site
211
+ LOGO = :logo
212
+
213
+ # @!method self.values
214
+ # @return [Array<Symbol>]
215
+ end
187
216
  end
188
217
 
189
218
  class Logo < ContextDev::Internal::Type::BaseModel
@@ -5,21 +5,26 @@ module ContextDev
5
5
  # @see ContextDev::Resources::News#search
6
6
  class NewsSearchResponse < ContextDev::Internal::Type::BaseModel
7
7
  # @!attribute data
8
+ # Articles matching the search, in the requested order.
8
9
  #
9
10
  # @return [Array<ContextDev::Models::NewsSearchResponse::Data>]
10
11
  required :data, -> { ContextDev::Internal::Type::ArrayOf[ContextDev::Models::NewsSearchResponse::Data] }
11
12
 
12
13
  # @!attribute has_more
14
+ # True when more results are available beyond this page.
13
15
  #
14
16
  # @return [Boolean]
15
17
  required :has_more, ContextDev::Internal::Type::Boolean
16
18
 
17
19
  # @!attribute meta
20
+ # Summary information about this response.
18
21
  #
19
22
  # @return [ContextDev::Models::NewsSearchResponse::Meta]
20
23
  required :meta, -> { ContextDev::Models::NewsSearchResponse::Meta }
21
24
 
22
25
  # @!attribute next_cursor
26
+ # Pass as cursor in the next request to fetch the following page. Null when there
27
+ # are no more results.
23
28
  #
24
29
  # @return [String, nil]
25
30
  required :next_cursor, String, nil?: true
@@ -35,119 +40,150 @@ module ContextDev
35
40
  # Some parameter documentations has been truncated, see
36
41
  # {ContextDev::Models::NewsSearchResponse} for more details.
37
42
  #
38
- # @param data [Array<ContextDev::Models::NewsSearchResponse::Data>]
43
+ # @param data [Array<ContextDev::Models::NewsSearchResponse::Data>] Articles matching the search, in the requested order.
39
44
  #
40
- # @param has_more [Boolean]
45
+ # @param has_more [Boolean] True when more results are available beyond this page.
41
46
  #
42
- # @param meta [ContextDev::Models::NewsSearchResponse::Meta]
47
+ # @param meta [ContextDev::Models::NewsSearchResponse::Meta] Summary information about this response.
43
48
  #
44
- # @param next_cursor [String, nil]
49
+ # @param next_cursor [String, nil] Pass as cursor in the next request to fetch the following page. Null when there
45
50
  #
46
51
  # @param key_metadata [ContextDev::Models::NewsSearchResponse::KeyMetadata] Metadata about the API key used for the request. Included in every response when
47
52
 
48
53
  class Data < ContextDev::Internal::Type::BaseModel
49
54
  # @!attribute id
55
+ # Stable unique identifier for this article. Use it to deduplicate or reference an
56
+ # article across requests.
50
57
  #
51
58
  # @return [String]
52
59
  required :id, String
53
60
 
54
61
  # @!attribute authors
62
+ # Bylined authors. Empty when no byline is available.
55
63
  #
56
64
  # @return [Array<String>]
57
65
  required :authors, ContextDev::Internal::Type::ArrayOf[String]
58
66
 
59
67
  # @!attribute description
68
+ # Short summary or excerpt of the article, when the publisher provides one.
60
69
  #
61
70
  # @return [String, nil]
62
71
  required :description, String, nil?: true
63
72
 
64
73
  # @!attribute image_url
74
+ # Lead image for the article, when one is available.
65
75
  #
66
76
  # @return [String, nil]
67
77
  required :image_url, String, nil?: true
68
78
 
69
79
  # @!attribute language
80
+ # Language the article is written in, as a lowercase ISO 639-1 code such as en.
81
+ # Null when unknown.
70
82
  #
71
83
  # @return [String, nil]
72
84
  required :language, String, nil?: true
73
85
 
74
86
  # @!attribute match
87
+ # How the article relates to the company you searched for.
75
88
  #
76
89
  # @return [ContextDev::Models::NewsSearchResponse::Data::Match]
77
90
  required :match, -> { ContextDev::Models::NewsSearchResponse::Data::Match }
78
91
 
79
92
  # @!attribute published_at
93
+ # When the article was published, as an ISO 8601 timestamp. Null when the
94
+ # publisher does not state a reliable date.
80
95
  #
81
96
  # @return [Time, nil]
82
97
  required :published_at, Time, nil?: true
83
98
 
84
99
  # @!attribute source
100
+ # The publication that published the article.
85
101
  #
86
102
  # @return [ContextDev::Models::NewsSearchResponse::Data::Source]
87
103
  required :source, -> { ContextDev::Models::NewsSearchResponse::Data::Source }
88
104
 
89
105
  # @!attribute story_id
90
- # Groups matching normalized headlines published on the same UTC day.
106
+ # Shared by articles covering the same story on the same day. Use it to group or
107
+ # collapse syndicated copies of one announcement across outlets.
91
108
  #
92
109
  # @return [String]
93
110
  required :story_id, String
94
111
 
95
112
  # @!attribute title
113
+ # Article headline.
96
114
  #
97
115
  # @return [String]
98
116
  required :title, String
99
117
 
100
118
  # @!attribute type
119
+ # Kind of coverage. Use it to separate independent reporting (editorial) from
120
+ # company-issued content (press_release, regulatory_filing, advisory).
101
121
  #
102
122
  # @return [Symbol, ContextDev::Models::NewsSearchResponse::Data::Type]
103
123
  required :type, enum: -> { ContextDev::Models::NewsSearchResponse::Data::Type }
104
124
 
105
125
  # @!attribute url
126
+ # Link to the article on the publisher site.
106
127
  #
107
128
  # @return [String]
108
129
  required :url, String
109
130
 
110
131
  # @!method initialize(id:, authors:, description:, image_url:, language:, match:, published_at:, source:, story_id:, title:, type:, url:)
111
- # @param id [String]
132
+ # Some parameter documentations has been truncated, see
133
+ # {ContextDev::Models::NewsSearchResponse::Data} for more details.
112
134
  #
113
- # @param authors [Array<String>]
135
+ # @param id [String] Stable unique identifier for this article. Use it to deduplicate or reference an
114
136
  #
115
- # @param description [String, nil]
137
+ # @param authors [Array<String>] Bylined authors. Empty when no byline is available.
116
138
  #
117
- # @param image_url [String, nil]
139
+ # @param description [String, nil] Short summary or excerpt of the article, when the publisher provides one.
118
140
  #
119
- # @param language [String, nil]
141
+ # @param image_url [String, nil] Lead image for the article, when one is available.
120
142
  #
121
- # @param match [ContextDev::Models::NewsSearchResponse::Data::Match]
143
+ # @param language [String, nil] Language the article is written in, as a lowercase ISO 639-1 code such as en. Nu
122
144
  #
123
- # @param published_at [Time, nil]
145
+ # @param match [ContextDev::Models::NewsSearchResponse::Data::Match] How the article relates to the company you searched for.
124
146
  #
125
- # @param source [ContextDev::Models::NewsSearchResponse::Data::Source]
147
+ # @param published_at [Time, nil] When the article was published, as an ISO 8601 timestamp. Null when the publishe
126
148
  #
127
- # @param story_id [String] Groups matching normalized headlines published on the same UTC day.
149
+ # @param source [ContextDev::Models::NewsSearchResponse::Data::Source] The publication that published the article.
128
150
  #
129
- # @param title [String]
151
+ # @param story_id [String] Shared by articles covering the same story on the same day. Use it to group or c
130
152
  #
131
- # @param type [Symbol, ContextDev::Models::NewsSearchResponse::Data::Type]
153
+ # @param title [String] Article headline.
132
154
  #
133
- # @param url [String]
155
+ # @param type [Symbol, ContextDev::Models::NewsSearchResponse::Data::Type] Kind of coverage. Use it to separate independent reporting (editorial) from comp
156
+ #
157
+ # @param url [String] Link to the article on the publisher site.
134
158
 
135
159
  # @see ContextDev::Models::NewsSearchResponse::Data#match
136
160
  class Match < ContextDev::Internal::Type::BaseModel
137
161
  # @!attribute confidence
162
+ # How confident the match is, from 0 to 1. Null when a score is unavailable.
138
163
  #
139
164
  # @return [Float, nil]
140
165
  required :confidence, Float, nil?: true
141
166
 
142
167
  # @!attribute level
168
+ # primary when the article is mainly about the company, secondary when the company
169
+ # is mentioned but is not the main subject.
143
170
  #
144
171
  # @return [Symbol, ContextDev::Models::NewsSearchResponse::Data::Match::Level]
145
172
  required :level, enum: -> { ContextDev::Models::NewsSearchResponse::Data::Match::Level }
146
173
 
147
174
  # @!method initialize(confidence:, level:)
148
- # @param confidence [Float, nil]
149
- # @param level [Symbol, ContextDev::Models::NewsSearchResponse::Data::Match::Level]
175
+ # Some parameter documentations has been truncated, see
176
+ # {ContextDev::Models::NewsSearchResponse::Data::Match} for more details.
177
+ #
178
+ # How the article relates to the company you searched for.
179
+ #
180
+ # @param confidence [Float, nil] How confident the match is, from 0 to 1. Null when a score is unavailable.
181
+ #
182
+ # @param level [Symbol, ContextDev::Models::NewsSearchResponse::Data::Match::Level] primary when the article is mainly about the company, secondary when the company
150
183
 
184
+ # primary when the article is mainly about the company, secondary when the company
185
+ # is mentioned but is not the main subject.
186
+ #
151
187
  # @see ContextDev::Models::NewsSearchResponse::Data::Match#level
152
188
  module Level
153
189
  extend ContextDev::Internal::Type::Enum
@@ -169,23 +205,30 @@ module ContextDev
169
205
  required :direct, ContextDev::Internal::Type::Boolean
170
206
 
171
207
  # @!attribute domain
208
+ # Website domain of the publication.
172
209
  #
173
210
  # @return [String]
174
211
  required :domain, String
175
212
 
176
213
  # @!attribute name
214
+ # Name of the publication, such as Reuters.
177
215
  #
178
216
  # @return [String]
179
217
  required :name, String
180
218
 
181
219
  # @!method initialize(direct:, domain:, name:)
220
+ # The publication that published the article.
221
+ #
182
222
  # @param direct [Boolean] True when Context observed this article in the publisher-owned feed.
183
223
  #
184
- # @param domain [String]
224
+ # @param domain [String] Website domain of the publication.
185
225
  #
186
- # @param name [String]
226
+ # @param name [String] Name of the publication, such as Reuters.
187
227
  end
188
228
 
229
+ # Kind of coverage. Use it to separate independent reporting (editorial) from
230
+ # company-issued content (press_release, regulatory_filing, advisory).
231
+ #
189
232
  # @see ContextDev::Models::NewsSearchResponse::Data#type
190
233
  module Type
191
234
  extend ContextDev::Internal::Type::Enum
@@ -203,12 +246,15 @@ module ContextDev
203
246
  # @see ContextDev::Models::NewsSearchResponse#meta
204
247
  class Meta < ContextDev::Internal::Type::BaseModel
205
248
  # @!attribute count
249
+ # Number of articles in this page.
206
250
  #
207
251
  # @return [Integer]
208
252
  required :count, Integer
209
253
 
210
254
  # @!method initialize(count:)
211
- # @param count [Integer]
255
+ # Summary information about this response.
256
+ #
257
+ # @param count [Integer] Number of articles in this page.
212
258
  end
213
259
 
214
260
  # @see ContextDev::Models::NewsSearchResponse#key_metadata
@@ -7,6 +7,16 @@ module ContextDev
7
7
  extend ContextDev::Internal::Type::RequestParameters::Converter
8
8
  include ContextDev::Internal::Type::RequestParameters
9
9
 
10
+ # @!attribute clear_popups
11
+ # Optional parameter for comprehensive popup cleanup. If 'true', the browser
12
+ # dismisses detected cookie/consent UI and clears other detected obstructive
13
+ # popups and overlays before capture. If 'false' or not provided, this parameter
14
+ # requests no cleanup; handleCookiePopup can still request cookie/consent handling
15
+ # independently.
16
+ #
17
+ # @return [Boolean, nil]
18
+ optional :clear_popups, ContextDev::Internal::Type::Boolean
19
+
10
20
  # @!attribute color_scheme
11
21
  # Optional parameter to choose the site's visual theme in the screenshot. Use
12
22
  # 'light' or 'dark' when the site offers both appearances.
@@ -121,10 +131,12 @@ module ContextDev
121
131
  # @return [Symbol, ContextDev::Models::WebScreenshotParams::Zdr, nil]
122
132
  optional :zdr, enum: -> { ContextDev::WebScreenshotParams::Zdr }
123
133
 
124
- # @!method initialize(color_scheme: nil, country: nil, direct_url: nil, domain: nil, full_screenshot: nil, handle_cookie_popup: nil, max_age_ms: nil, page: nil, scroll_offset: nil, tags: nil, timeout_ms: nil, viewport: nil, wait_for_ms: nil, zdr: nil, request_options: {})
134
+ # @!method initialize(clear_popups: nil, color_scheme: nil, country: nil, direct_url: nil, domain: nil, full_screenshot: nil, handle_cookie_popup: nil, max_age_ms: nil, page: nil, scroll_offset: nil, tags: nil, timeout_ms: nil, viewport: nil, wait_for_ms: nil, zdr: nil, request_options: {})
125
135
  # Some parameter documentations has been truncated, see
126
136
  # {ContextDev::Models::WebScreenshotParams} for more details.
127
137
  #
138
+ # @param clear_popups [Boolean] Optional parameter for comprehensive popup cleanup. If 'true', the browser dismi
139
+ #
128
140
  # @param color_scheme [Symbol, ContextDev::Models::WebScreenshotParams::ColorScheme] Optional parameter to choose the site's visual theme in the screenshot. Use 'lig
129
141
  #
130
142
  # @param country [Symbol, ContextDev::Models::WebScreenshotParams::Country] Fetch the target page through a residential proxy in this country (ISO 3166-1 al
@@ -176,7 +176,9 @@ module ContextDev
176
176
  #
177
177
  # Capture a screenshot of a website.
178
178
  #
179
- # @overload screenshot(color_scheme: nil, country: nil, direct_url: nil, domain: nil, full_screenshot: nil, handle_cookie_popup: nil, max_age_ms: nil, page: nil, scroll_offset: nil, tags: nil, timeout_ms: nil, viewport: nil, wait_for_ms: nil, zdr: nil, request_options: {})
179
+ # @overload screenshot(clear_popups: nil, color_scheme: nil, country: nil, direct_url: nil, domain: nil, full_screenshot: nil, handle_cookie_popup: nil, max_age_ms: nil, page: nil, scroll_offset: nil, tags: nil, timeout_ms: nil, viewport: nil, wait_for_ms: nil, zdr: nil, request_options: {})
180
+ #
181
+ # @param clear_popups [Boolean] Optional parameter for comprehensive popup cleanup. If 'true', the browser dismi
180
182
  #
181
183
  # @param color_scheme [Symbol, ContextDev::Models::WebScreenshotParams::ColorScheme] Optional parameter to choose the site's visual theme in the screenshot. Use 'lig
182
184
  #
@@ -218,6 +220,7 @@ module ContextDev
218
220
  method: :get,
219
221
  path: "web/screenshot",
220
222
  query: query.transform_keys(
223
+ clear_popups: "clearPopups",
221
224
  color_scheme: "colorScheme",
222
225
  direct_url: "directUrl",
223
226
  full_screenshot: "fullScreenshot",
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ContextDev
4
- VERSION = "2.10.0"
4
+ VERSION = "2.11.0"
5
5
  end
@@ -767,18 +767,95 @@ module ContextDev
767
767
  sig { params(name: String).void }
768
768
  attr_writer :name
769
769
 
770
- sig { params(hex: String, name: String).returns(T.attached_class) }
770
+ # Where the color was observed: 'site' colors come from the website's own theme
771
+ # signals (rendered page colors, manifest, theme-color meta), 'logo' colors from
772
+ # logo image pixels.
773
+ sig do
774
+ returns(
775
+ T.nilable(
776
+ ContextDev::Models::BrandRetrieveResponse::Brand::Color::Source::TaggedSymbol
777
+ )
778
+ )
779
+ end
780
+ attr_reader :source
781
+
782
+ sig do
783
+ params(
784
+ source:
785
+ ContextDev::Models::BrandRetrieveResponse::Brand::Color::Source::OrSymbol
786
+ ).void
787
+ end
788
+ attr_writer :source
789
+
790
+ sig do
791
+ params(
792
+ hex: String,
793
+ name: String,
794
+ source:
795
+ ContextDev::Models::BrandRetrieveResponse::Brand::Color::Source::OrSymbol
796
+ ).returns(T.attached_class)
797
+ end
771
798
  def self.new(
772
799
  # Color in hexadecimal format
773
800
  hex: nil,
774
801
  # Name of the color
775
- name: nil
802
+ name: nil,
803
+ # Where the color was observed: 'site' colors come from the website's own theme
804
+ # signals (rendered page colors, manifest, theme-color meta), 'logo' colors from
805
+ # logo image pixels.
806
+ source: nil
776
807
  )
777
808
  end
778
809
 
779
- sig { override.returns({ hex: String, name: String }) }
810
+ sig do
811
+ override.returns(
812
+ {
813
+ hex: String,
814
+ name: String,
815
+ source:
816
+ ContextDev::Models::BrandRetrieveResponse::Brand::Color::Source::TaggedSymbol
817
+ }
818
+ )
819
+ end
780
820
  def to_hash
781
821
  end
822
+
823
+ # Where the color was observed: 'site' colors come from the website's own theme
824
+ # signals (rendered page colors, manifest, theme-color meta), 'logo' colors from
825
+ # logo image pixels.
826
+ module Source
827
+ extend ContextDev::Internal::Type::Enum
828
+
829
+ TaggedSymbol =
830
+ T.type_alias do
831
+ T.all(
832
+ Symbol,
833
+ ContextDev::Models::BrandRetrieveResponse::Brand::Color::Source
834
+ )
835
+ end
836
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
837
+
838
+ SITE =
839
+ T.let(
840
+ :site,
841
+ ContextDev::Models::BrandRetrieveResponse::Brand::Color::Source::TaggedSymbol
842
+ )
843
+ LOGO =
844
+ T.let(
845
+ :logo,
846
+ ContextDev::Models::BrandRetrieveResponse::Brand::Color::Source::TaggedSymbol
847
+ )
848
+
849
+ sig do
850
+ override.returns(
851
+ T::Array[
852
+ ContextDev::Models::BrandRetrieveResponse::Brand::Color::Source::TaggedSymbol
853
+ ]
854
+ )
855
+ end
856
+ def self.values
857
+ end
858
+ end
782
859
  end
783
860
 
784
861
  class Employees < ContextDev::Internal::Type::BaseModel
@@ -453,18 +453,95 @@ module ContextDev
453
453
  sig { params(name: String).void }
454
454
  attr_writer :name
455
455
 
456
- sig { params(hex: String, name: String).returns(T.attached_class) }
456
+ # Where the color was observed: 'site' colors come from the website's own theme
457
+ # signals (rendered page colors, manifest, theme-color meta), 'logo' colors from
458
+ # logo image pixels.
459
+ sig do
460
+ returns(
461
+ T.nilable(
462
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::Source::TaggedSymbol
463
+ )
464
+ )
465
+ end
466
+ attr_reader :source
467
+
468
+ sig do
469
+ params(
470
+ source:
471
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::Source::OrSymbol
472
+ ).void
473
+ end
474
+ attr_writer :source
475
+
476
+ sig do
477
+ params(
478
+ hex: String,
479
+ name: String,
480
+ source:
481
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::Source::OrSymbol
482
+ ).returns(T.attached_class)
483
+ end
457
484
  def self.new(
458
485
  # Color in hexadecimal format
459
486
  hex: nil,
460
487
  # Name of the color
461
- name: nil
488
+ name: nil,
489
+ # Where the color was observed: 'site' colors come from the website's own theme
490
+ # signals (rendered page colors, manifest, theme-color meta), 'logo' colors from
491
+ # logo image pixels.
492
+ source: nil
462
493
  )
463
494
  end
464
495
 
465
- sig { override.returns({ hex: String, name: String }) }
496
+ sig do
497
+ override.returns(
498
+ {
499
+ hex: String,
500
+ name: String,
501
+ source:
502
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::Source::TaggedSymbol
503
+ }
504
+ )
505
+ end
466
506
  def to_hash
467
507
  end
508
+
509
+ # Where the color was observed: 'site' colors come from the website's own theme
510
+ # signals (rendered page colors, manifest, theme-color meta), 'logo' colors from
511
+ # logo image pixels.
512
+ module Source
513
+ extend ContextDev::Internal::Type::Enum
514
+
515
+ TaggedSymbol =
516
+ T.type_alias do
517
+ T.all(
518
+ Symbol,
519
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::Source
520
+ )
521
+ end
522
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
523
+
524
+ SITE =
525
+ T.let(
526
+ :site,
527
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::Source::TaggedSymbol
528
+ )
529
+ LOGO =
530
+ T.let(
531
+ :logo,
532
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::Source::TaggedSymbol
533
+ )
534
+
535
+ sig do
536
+ override.returns(
537
+ T::Array[
538
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::Source::TaggedSymbol
539
+ ]
540
+ )
541
+ end
542
+ def self.values
543
+ end
544
+ end
468
545
  end
469
546
 
470
547
  class Logo < ContextDev::Internal::Type::BaseModel
@@ -11,12 +11,15 @@ module ContextDev
11
11
  )
12
12
  end
13
13
 
14
+ # Articles matching the search, in the requested order.
14
15
  sig { returns(T::Array[ContextDev::Models::NewsSearchResponse::Data]) }
15
16
  attr_accessor :data
16
17
 
18
+ # True when more results are available beyond this page.
17
19
  sig { returns(T::Boolean) }
18
20
  attr_accessor :has_more
19
21
 
22
+ # Summary information about this response.
20
23
  sig { returns(ContextDev::Models::NewsSearchResponse::Meta) }
21
24
  attr_reader :meta
22
25
 
@@ -25,6 +28,8 @@ module ContextDev
25
28
  end
26
29
  attr_writer :meta
27
30
 
31
+ # Pass as cursor in the next request to fetch the following page. Null when there
32
+ # are no more results.
28
33
  sig { returns(T.nilable(String)) }
29
34
  attr_accessor :next_cursor
30
35
 
@@ -54,9 +59,14 @@ module ContextDev
54
59
  ).returns(T.attached_class)
55
60
  end
56
61
  def self.new(
62
+ # Articles matching the search, in the requested order.
57
63
  data:,
64
+ # True when more results are available beyond this page.
58
65
  has_more:,
66
+ # Summary information about this response.
59
67
  meta:,
68
+ # Pass as cursor in the next request to fetch the following page. Null when there
69
+ # are no more results.
60
70
  next_cursor:,
61
71
  # Metadata about the API key used for the request. Included in every response
62
72
  # whenever a valid API key is provided, even when the response status is not 200.
@@ -87,21 +97,29 @@ module ContextDev
87
97
  )
88
98
  end
89
99
 
100
+ # Stable unique identifier for this article. Use it to deduplicate or reference an
101
+ # article across requests.
90
102
  sig { returns(String) }
91
103
  attr_accessor :id
92
104
 
105
+ # Bylined authors. Empty when no byline is available.
93
106
  sig { returns(T::Array[String]) }
94
107
  attr_accessor :authors
95
108
 
109
+ # Short summary or excerpt of the article, when the publisher provides one.
96
110
  sig { returns(T.nilable(String)) }
97
111
  attr_accessor :description
98
112
 
113
+ # Lead image for the article, when one is available.
99
114
  sig { returns(T.nilable(String)) }
100
115
  attr_accessor :image_url
101
116
 
117
+ # Language the article is written in, as a lowercase ISO 639-1 code such as en.
118
+ # Null when unknown.
102
119
  sig { returns(T.nilable(String)) }
103
120
  attr_accessor :language
104
121
 
122
+ # How the article relates to the company you searched for.
105
123
  sig { returns(ContextDev::Models::NewsSearchResponse::Data::Match) }
106
124
  attr_reader :match
107
125
 
@@ -112,9 +130,12 @@ module ContextDev
112
130
  end
113
131
  attr_writer :match
114
132
 
133
+ # When the article was published, as an ISO 8601 timestamp. Null when the
134
+ # publisher does not state a reliable date.
115
135
  sig { returns(T.nilable(Time)) }
116
136
  attr_accessor :published_at
117
137
 
138
+ # The publication that published the article.
118
139
  sig { returns(ContextDev::Models::NewsSearchResponse::Data::Source) }
119
140
  attr_reader :source
120
141
 
@@ -125,13 +146,17 @@ module ContextDev
125
146
  end
126
147
  attr_writer :source
127
148
 
128
- # Groups matching normalized headlines published on the same UTC day.
149
+ # Shared by articles covering the same story on the same day. Use it to group or
150
+ # collapse syndicated copies of one announcement across outlets.
129
151
  sig { returns(String) }
130
152
  attr_accessor :story_id
131
153
 
154
+ # Article headline.
132
155
  sig { returns(String) }
133
156
  attr_accessor :title
134
157
 
158
+ # Kind of coverage. Use it to separate independent reporting (editorial) from
159
+ # company-issued content (press_release, regulatory_filing, advisory).
135
160
  sig do
136
161
  returns(
137
162
  ContextDev::Models::NewsSearchResponse::Data::Type::TaggedSymbol
@@ -139,6 +164,7 @@ module ContextDev
139
164
  end
140
165
  attr_accessor :type
141
166
 
167
+ # Link to the article on the publisher site.
142
168
  sig { returns(String) }
143
169
  attr_accessor :url
144
170
 
@@ -160,18 +186,34 @@ module ContextDev
160
186
  ).returns(T.attached_class)
161
187
  end
162
188
  def self.new(
189
+ # Stable unique identifier for this article. Use it to deduplicate or reference an
190
+ # article across requests.
163
191
  id:,
192
+ # Bylined authors. Empty when no byline is available.
164
193
  authors:,
194
+ # Short summary or excerpt of the article, when the publisher provides one.
165
195
  description:,
196
+ # Lead image for the article, when one is available.
166
197
  image_url:,
198
+ # Language the article is written in, as a lowercase ISO 639-1 code such as en.
199
+ # Null when unknown.
167
200
  language:,
201
+ # How the article relates to the company you searched for.
168
202
  match:,
203
+ # When the article was published, as an ISO 8601 timestamp. Null when the
204
+ # publisher does not state a reliable date.
169
205
  published_at:,
206
+ # The publication that published the article.
170
207
  source:,
171
- # Groups matching normalized headlines published on the same UTC day.
208
+ # Shared by articles covering the same story on the same day. Use it to group or
209
+ # collapse syndicated copies of one announcement across outlets.
172
210
  story_id:,
211
+ # Article headline.
173
212
  title:,
213
+ # Kind of coverage. Use it to separate independent reporting (editorial) from
214
+ # company-issued content (press_release, regulatory_filing, advisory).
174
215
  type:,
216
+ # Link to the article on the publisher site.
175
217
  url:
176
218
  )
177
219
  end
@@ -207,9 +249,12 @@ module ContextDev
207
249
  )
208
250
  end
209
251
 
252
+ # How confident the match is, from 0 to 1. Null when a score is unavailable.
210
253
  sig { returns(T.nilable(Float)) }
211
254
  attr_accessor :confidence
212
255
 
256
+ # primary when the article is mainly about the company, secondary when the company
257
+ # is mentioned but is not the main subject.
213
258
  sig do
214
259
  returns(
215
260
  ContextDev::Models::NewsSearchResponse::Data::Match::Level::TaggedSymbol
@@ -217,6 +262,7 @@ module ContextDev
217
262
  end
218
263
  attr_accessor :level
219
264
 
265
+ # How the article relates to the company you searched for.
220
266
  sig do
221
267
  params(
222
268
  confidence: T.nilable(Float),
@@ -224,7 +270,13 @@ module ContextDev
224
270
  ContextDev::Models::NewsSearchResponse::Data::Match::Level::OrSymbol
225
271
  ).returns(T.attached_class)
226
272
  end
227
- def self.new(confidence:, level:)
273
+ def self.new(
274
+ # How confident the match is, from 0 to 1. Null when a score is unavailable.
275
+ confidence:,
276
+ # primary when the article is mainly about the company, secondary when the company
277
+ # is mentioned but is not the main subject.
278
+ level:
279
+ )
228
280
  end
229
281
 
230
282
  sig do
@@ -239,6 +291,8 @@ module ContextDev
239
291
  def to_hash
240
292
  end
241
293
 
294
+ # primary when the article is mainly about the company, secondary when the company
295
+ # is mentioned but is not the main subject.
242
296
  module Level
243
297
  extend ContextDev::Internal::Type::Enum
244
298
 
@@ -287,12 +341,15 @@ module ContextDev
287
341
  sig { returns(T::Boolean) }
288
342
  attr_accessor :direct
289
343
 
344
+ # Website domain of the publication.
290
345
  sig { returns(String) }
291
346
  attr_accessor :domain
292
347
 
348
+ # Name of the publication, such as Reuters.
293
349
  sig { returns(String) }
294
350
  attr_accessor :name
295
351
 
352
+ # The publication that published the article.
296
353
  sig do
297
354
  params(direct: T::Boolean, domain: String, name: String).returns(
298
355
  T.attached_class
@@ -301,7 +358,9 @@ module ContextDev
301
358
  def self.new(
302
359
  # True when Context observed this article in the publisher-owned feed.
303
360
  direct:,
361
+ # Website domain of the publication.
304
362
  domain:,
363
+ # Name of the publication, such as Reuters.
305
364
  name:
306
365
  )
307
366
  end
@@ -315,6 +374,8 @@ module ContextDev
315
374
  end
316
375
  end
317
376
 
377
+ # Kind of coverage. Use it to separate independent reporting (editorial) from
378
+ # company-issued content (press_release, regulatory_filing, advisory).
318
379
  module Type
319
380
  extend ContextDev::Internal::Type::Enum
320
381
 
@@ -366,11 +427,16 @@ module ContextDev
366
427
  )
367
428
  end
368
429
 
430
+ # Number of articles in this page.
369
431
  sig { returns(Integer) }
370
432
  attr_accessor :count
371
433
 
434
+ # Summary information about this response.
372
435
  sig { params(count: Integer).returns(T.attached_class) }
373
- def self.new(count:)
436
+ def self.new(
437
+ # Number of articles in this page.
438
+ count:
439
+ )
374
440
  end
375
441
 
376
442
  sig { override.returns({ count: Integer }) }
@@ -11,6 +11,17 @@ module ContextDev
11
11
  T.any(ContextDev::WebScreenshotParams, ContextDev::Internal::AnyHash)
12
12
  end
13
13
 
14
+ # Optional parameter for comprehensive popup cleanup. If 'true', the browser
15
+ # dismisses detected cookie/consent UI and clears other detected obstructive
16
+ # popups and overlays before capture. If 'false' or not provided, this parameter
17
+ # requests no cleanup; handleCookiePopup can still request cookie/consent handling
18
+ # independently.
19
+ sig { returns(T.nilable(T::Boolean)) }
20
+ attr_reader :clear_popups
21
+
22
+ sig { params(clear_popups: T::Boolean).void }
23
+ attr_writer :clear_popups
24
+
14
25
  # Optional parameter to choose the site's visual theme in the screenshot. Use
15
26
  # 'light' or 'dark' when the site offers both appearances.
16
27
  sig do
@@ -157,6 +168,7 @@ module ContextDev
157
168
 
158
169
  sig do
159
170
  params(
171
+ clear_popups: T::Boolean,
160
172
  color_scheme: ContextDev::WebScreenshotParams::ColorScheme::OrSymbol,
161
173
  country: ContextDev::WebScreenshotParams::Country::OrSymbol,
162
174
  direct_url: String,
@@ -176,6 +188,12 @@ module ContextDev
176
188
  ).returns(T.attached_class)
177
189
  end
178
190
  def self.new(
191
+ # Optional parameter for comprehensive popup cleanup. If 'true', the browser
192
+ # dismisses detected cookie/consent UI and clears other detected obstructive
193
+ # popups and overlays before capture. If 'false' or not provided, this parameter
194
+ # requests no cleanup; handleCookiePopup can still request cookie/consent handling
195
+ # independently.
196
+ clear_popups: nil,
179
197
  # Optional parameter to choose the site's visual theme in the screenshot. Use
180
198
  # 'light' or 'dark' when the site offers both appearances.
181
199
  color_scheme: nil,
@@ -241,6 +259,7 @@ module ContextDev
241
259
  sig do
242
260
  override.returns(
243
261
  {
262
+ clear_popups: T::Boolean,
244
263
  color_scheme:
245
264
  ContextDev::WebScreenshotParams::ColorScheme::OrSymbol,
246
265
  country: ContextDev::WebScreenshotParams::Country::OrSymbol,
@@ -190,6 +190,7 @@ module ContextDev
190
190
  # Capture a screenshot of a website.
191
191
  sig do
192
192
  params(
193
+ clear_popups: T::Boolean,
193
194
  color_scheme: ContextDev::WebScreenshotParams::ColorScheme::OrSymbol,
194
195
  country: ContextDev::WebScreenshotParams::Country::OrSymbol,
195
196
  direct_url: String,
@@ -209,6 +210,12 @@ module ContextDev
209
210
  ).returns(ContextDev::Models::WebScreenshotResponse)
210
211
  end
211
212
  def screenshot(
213
+ # Optional parameter for comprehensive popup cleanup. If 'true', the browser
214
+ # dismisses detected cookie/consent UI and clears other detected obstructive
215
+ # popups and overlays before capture. If 'false' or not provided, this parameter
216
+ # requests no cleanup; handleCookiePopup can still request cookie/consent handling
217
+ # independently.
218
+ clear_popups: nil,
212
219
  # Optional parameter to choose the site's visual theme in the screenshot. Use
213
220
  # 'light' or 'dark' when the site offers both appearances.
214
221
  color_scheme: nil,
@@ -332,7 +332,12 @@ module ContextDev
332
332
  end
333
333
  end
334
334
 
335
- type color = { hex: String, name: String }
335
+ type color =
336
+ {
337
+ hex: String,
338
+ name: String,
339
+ source: ContextDev::Models::BrandRetrieveResponse::Brand::Color::source
340
+ }
336
341
 
337
342
  class Color < ContextDev::Internal::Type::BaseModel
338
343
  attr_reader hex: String?
@@ -343,9 +348,34 @@ module ContextDev
343
348
 
344
349
  def name=: (String) -> String
345
350
 
346
- def initialize: (?hex: String, ?name: String) -> void
351
+ attr_reader source: ContextDev::Models::BrandRetrieveResponse::Brand::Color::source?
352
+
353
+ def source=: (
354
+ ContextDev::Models::BrandRetrieveResponse::Brand::Color::source
355
+ ) -> ContextDev::Models::BrandRetrieveResponse::Brand::Color::source
356
+
357
+ def initialize: (
358
+ ?hex: String,
359
+ ?name: String,
360
+ ?source: ContextDev::Models::BrandRetrieveResponse::Brand::Color::source
361
+ ) -> void
347
362
 
348
- def to_hash: -> { hex: String, name: String }
363
+ def to_hash: -> {
364
+ hex: String,
365
+ name: String,
366
+ source: ContextDev::Models::BrandRetrieveResponse::Brand::Color::source
367
+ }
368
+
369
+ type source = :site | :logo
370
+
371
+ module Source
372
+ extend ContextDev::Internal::Type::Enum
373
+
374
+ SITE: :site
375
+ LOGO: :logo
376
+
377
+ def self?.values: -> ::Array[ContextDev::Models::BrandRetrieveResponse::Brand::Color::source]
378
+ end
349
379
  end
350
380
 
351
381
  type employees =
@@ -177,7 +177,12 @@ module ContextDev
177
177
  end
178
178
  end
179
179
 
180
- type color = { hex: String, name: String }
180
+ type color =
181
+ {
182
+ hex: String,
183
+ name: String,
184
+ source: ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::source
185
+ }
181
186
 
182
187
  class Color < ContextDev::Internal::Type::BaseModel
183
188
  attr_reader hex: String?
@@ -188,9 +193,34 @@ module ContextDev
188
193
 
189
194
  def name=: (String) -> String
190
195
 
191
- def initialize: (?hex: String, ?name: String) -> void
196
+ attr_reader source: ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::source?
197
+
198
+ def source=: (
199
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::source
200
+ ) -> ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::source
201
+
202
+ def initialize: (
203
+ ?hex: String,
204
+ ?name: String,
205
+ ?source: ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::source
206
+ ) -> void
192
207
 
193
- def to_hash: -> { hex: String, name: String }
208
+ def to_hash: -> {
209
+ hex: String,
210
+ name: String,
211
+ source: ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::source
212
+ }
213
+
214
+ type source = :site | :logo
215
+
216
+ module Source
217
+ extend ContextDev::Internal::Type::Enum
218
+
219
+ SITE: :site
220
+ LOGO: :logo
221
+
222
+ def self?.values: -> ::Array[ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::source]
223
+ end
194
224
  end
195
225
 
196
226
  type logo =
@@ -2,6 +2,7 @@ module ContextDev
2
2
  module Models
3
3
  type web_screenshot_params =
4
4
  {
5
+ clear_popups: bool,
5
6
  color_scheme: ContextDev::Models::WebScreenshotParams::color_scheme,
6
7
  country: ContextDev::Models::WebScreenshotParams::country,
7
8
  direct_url: String,
@@ -23,6 +24,10 @@ module ContextDev
23
24
  extend ContextDev::Internal::Type::RequestParameters::Converter
24
25
  include ContextDev::Internal::Type::RequestParameters
25
26
 
27
+ attr_reader clear_popups: bool?
28
+
29
+ def clear_popups=: (bool) -> bool
30
+
26
31
  attr_reader color_scheme: ContextDev::Models::WebScreenshotParams::color_scheme?
27
32
 
28
33
  def color_scheme=: (
@@ -86,6 +91,7 @@ module ContextDev
86
91
  ) -> ContextDev::Models::WebScreenshotParams::zdr
87
92
 
88
93
  def initialize: (
94
+ ?clear_popups: bool,
89
95
  ?color_scheme: ContextDev::Models::WebScreenshotParams::color_scheme,
90
96
  ?country: ContextDev::Models::WebScreenshotParams::country,
91
97
  ?direct_url: String,
@@ -104,6 +110,7 @@ module ContextDev
104
110
  ) -> void
105
111
 
106
112
  def to_hash: -> {
113
+ clear_popups: bool,
107
114
  color_scheme: ContextDev::Models::WebScreenshotParams::color_scheme,
108
115
  country: ContextDev::Models::WebScreenshotParams::country,
109
116
  direct_url: String,
@@ -48,6 +48,7 @@ module ContextDev
48
48
  ) -> ContextDev::Models::WebExtractStyleguideResponse
49
49
 
50
50
  def screenshot: (
51
+ ?clear_popups: bool,
51
52
  ?color_scheme: ContextDev::Models::WebScreenshotParams::color_scheme,
52
53
  ?country: ContextDev::Models::WebScreenshotParams::country,
53
54
  ?direct_url: String,
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: context.dev
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.10.0
4
+ version: 2.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Context Dev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-08-17 00:00:00.000000000 Z
11
+ date: 2026-08-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi