brand.dev 0.21.0 → 0.23.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 +27 -0
- data/README.md +1 -1
- data/lib/brand_dev/internal/transport/pooled_net_requester.rb +1 -1
- data/lib/brand_dev/internal/util.rb +1 -1
- data/lib/brand_dev/models/brand_ai_products_params.rb +15 -7
- data/lib/brand_dev/resources/brand.rb +5 -3
- data/lib/brand_dev/version.rb +1 -1
- data/rbi/brand_dev/internal/util.rbi +1 -1
- data/rbi/brand_dev/models/brand_ai_products_params.rbi +16 -8
- data/rbi/brand_dev/resources/brand.rbi +7 -4
- data/sig/brand_dev/models/brand_ai_products_params.rbs +10 -1
- data/sig/brand_dev/resources/brand.rbs +1 -0
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4d62936819f843f3b39b44d3e7ee2dcdb37d8bab316c6dff544032989d4c579e
|
|
4
|
+
data.tar.gz: 0f5406cd25c0db18f69e9b41687c83582274a5aa6954fd776143b3cf2e127707
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f90ff68d81d283086db18cdc24be921b97f2fb753049a716599a2a2b908537c45d88fbac9e9909b7824a28557fc34954e41acb4cef8edae0c140033fcc4c266b
|
|
7
|
+
data.tar.gz: 40607397b880852fc184119bae74815d997a88c30d9d07b420ad0e4171e272b4a4f177dcaa2106e4b55cf446ee6a14e804406ecea613ef66b940f1565aa53b29
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.23.0 (2026-02-07)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.22.0...v0.23.0](https://github.com/brand-dot-dev/ruby-sdk/compare/v0.22.0...v0.23.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** api update ([c1d523e](https://github.com/brand-dot-dev/ruby-sdk/commit/c1d523ebcc0e29a2a3231a2df3f755e2e02b4616))
|
|
10
|
+
|
|
11
|
+
## 0.22.0 (2026-02-07)
|
|
12
|
+
|
|
13
|
+
Full Changelog: [v0.21.0...v0.22.0](https://github.com/brand-dot-dev/ruby-sdk/compare/v0.21.0...v0.22.0)
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* **api:** api update ([f61453c](https://github.com/brand-dot-dev/ruby-sdk/commit/f61453cacff28784915b193547f730b8eb76cf92))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Bug Fixes
|
|
21
|
+
|
|
22
|
+
* **client:** always add content-length to post body, even when empty ([6d12b11](https://github.com/brand-dot-dev/ruby-sdk/commit/6d12b114daabfd7ca3afc167a18adbe1fe347a36))
|
|
23
|
+
* **client:** loosen json header parsing ([3739920](https://github.com/brand-dot-dev/ruby-sdk/commit/37399200e8e055ed11e83489cdf2674a2a9e6aa8))
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
### Chores
|
|
27
|
+
|
|
28
|
+
* **docs:** remove www prefix ([5b8d2c8](https://github.com/brand-dot-dev/ruby-sdk/commit/5b8d2c8b141d6bc47c5ac75aa640d620bfd3ada2))
|
|
29
|
+
|
|
3
30
|
## 0.21.0 (2026-02-02)
|
|
4
31
|
|
|
5
32
|
Full Changelog: [v0.20.0...v0.21.0](https://github.com/brand-dot-dev/ruby-sdk/compare/v0.20.0...v0.21.0)
|
data/README.md
CHANGED
|
@@ -75,7 +75,7 @@ module BrandDev
|
|
|
75
75
|
|
|
76
76
|
case body
|
|
77
77
|
in nil
|
|
78
|
-
|
|
78
|
+
req["content-length"] ||= 0 unless req["transfer-encoding"]
|
|
79
79
|
in String
|
|
80
80
|
req["content-length"] ||= body.bytesize.to_s unless req["transfer-encoding"]
|
|
81
81
|
req.body_stream = BrandDev::Internal::Util::ReadIOAdapter.new(body, &blk)
|
|
@@ -485,7 +485,7 @@ module BrandDev
|
|
|
485
485
|
end
|
|
486
486
|
|
|
487
487
|
# @type [Regexp]
|
|
488
|
-
JSON_CONTENT = %r{^application/(?:
|
|
488
|
+
JSON_CONTENT = %r{^application/(?:[a-zA-Z0-9.-]+\+)?json(?!l)}
|
|
489
489
|
# @type [Regexp]
|
|
490
490
|
JSONL_CONTENT = %r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}
|
|
491
491
|
|
|
@@ -8,7 +8,7 @@ module BrandDev
|
|
|
8
8
|
include BrandDev::Internal::Type::RequestParameters
|
|
9
9
|
|
|
10
10
|
# @!attribute domain
|
|
11
|
-
# The domain name to analyze
|
|
11
|
+
# The domain name to analyze.
|
|
12
12
|
#
|
|
13
13
|
# @return [String]
|
|
14
14
|
required :domain, String
|
|
@@ -20,22 +20,30 @@ module BrandDev
|
|
|
20
20
|
optional :max_products, Integer, api_name: :maxProducts
|
|
21
21
|
|
|
22
22
|
# @!attribute timeout_ms
|
|
23
|
-
# Optional timeout in milliseconds for the request.
|
|
24
|
-
#
|
|
25
|
-
# value is 300000ms (5 minutes).
|
|
23
|
+
# Optional timeout in milliseconds for the request. Maximum allowed value is
|
|
24
|
+
# 300000ms (5 minutes).
|
|
26
25
|
#
|
|
27
26
|
# @return [Integer, nil]
|
|
28
27
|
optional :timeout_ms, Integer, api_name: :timeoutMS
|
|
29
28
|
|
|
30
|
-
# @!
|
|
29
|
+
# @!attribute direct_url
|
|
30
|
+
# A specific URL to use directly as the starting point for extraction without
|
|
31
|
+
# domain resolution.
|
|
32
|
+
#
|
|
33
|
+
# @return [String]
|
|
34
|
+
required :direct_url, String, api_name: :directUrl
|
|
35
|
+
|
|
36
|
+
# @!method initialize(domain:, direct_url:, max_products: nil, timeout_ms: nil, request_options: {})
|
|
31
37
|
# Some parameter documentations has been truncated, see
|
|
32
38
|
# {BrandDev::Models::BrandAIProductsParams} for more details.
|
|
33
39
|
#
|
|
34
|
-
# @param domain [String] The domain name to analyze
|
|
40
|
+
# @param domain [String] The domain name to analyze.
|
|
41
|
+
#
|
|
42
|
+
# @param direct_url [String] A specific URL to use directly as the starting point for extraction without doma
|
|
35
43
|
#
|
|
36
44
|
# @param max_products [Integer] Maximum number of products to extract.
|
|
37
45
|
#
|
|
38
|
-
# @param timeout_ms [Integer] Optional timeout in milliseconds for the request.
|
|
46
|
+
# @param timeout_ms [Integer] Optional timeout in milliseconds for the request. Maximum allowed value is 30000
|
|
39
47
|
#
|
|
40
48
|
# @param request_options [BrandDev::RequestOptions, Hash{Symbol=>Object}]
|
|
41
49
|
end
|
|
@@ -42,13 +42,15 @@ module BrandDev
|
|
|
42
42
|
# analyze the website and return a list of products with details such as name,
|
|
43
43
|
# description, image, pricing, features, and more.
|
|
44
44
|
#
|
|
45
|
-
# @overload ai_products(domain:, max_products: nil, timeout_ms: nil, request_options: {})
|
|
45
|
+
# @overload ai_products(domain:, direct_url:, max_products: nil, timeout_ms: nil, request_options: {})
|
|
46
46
|
#
|
|
47
|
-
# @param domain [String] The domain name to analyze
|
|
47
|
+
# @param domain [String] The domain name to analyze.
|
|
48
|
+
#
|
|
49
|
+
# @param direct_url [String] A specific URL to use directly as the starting point for extraction without doma
|
|
48
50
|
#
|
|
49
51
|
# @param max_products [Integer] Maximum number of products to extract.
|
|
50
52
|
#
|
|
51
|
-
# @param timeout_ms [Integer] Optional timeout in milliseconds for the request.
|
|
53
|
+
# @param timeout_ms [Integer] Optional timeout in milliseconds for the request. Maximum allowed value is 30000
|
|
52
54
|
#
|
|
53
55
|
# @param request_options [BrandDev::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
54
56
|
#
|
data/lib/brand_dev/version.rb
CHANGED
|
@@ -296,7 +296,7 @@ module BrandDev
|
|
|
296
296
|
end
|
|
297
297
|
|
|
298
298
|
JSON_CONTENT =
|
|
299
|
-
T.let(%r{^application/(?:
|
|
299
|
+
T.let(%r{^application/(?:[a-zA-Z0-9.-]+\+)?json(?!l)}, Regexp)
|
|
300
300
|
JSONL_CONTENT =
|
|
301
301
|
T.let(%r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}, Regexp)
|
|
302
302
|
|
|
@@ -11,7 +11,7 @@ module BrandDev
|
|
|
11
11
|
T.any(BrandDev::BrandAIProductsParams, BrandDev::Internal::AnyHash)
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
-
# The domain name to analyze
|
|
14
|
+
# The domain name to analyze.
|
|
15
15
|
sig { returns(String) }
|
|
16
16
|
attr_accessor :domain
|
|
17
17
|
|
|
@@ -22,31 +22,38 @@ module BrandDev
|
|
|
22
22
|
sig { params(max_products: Integer).void }
|
|
23
23
|
attr_writer :max_products
|
|
24
24
|
|
|
25
|
-
# Optional timeout in milliseconds for the request.
|
|
26
|
-
#
|
|
27
|
-
# value is 300000ms (5 minutes).
|
|
25
|
+
# Optional timeout in milliseconds for the request. Maximum allowed value is
|
|
26
|
+
# 300000ms (5 minutes).
|
|
28
27
|
sig { returns(T.nilable(Integer)) }
|
|
29
28
|
attr_reader :timeout_ms
|
|
30
29
|
|
|
31
30
|
sig { params(timeout_ms: Integer).void }
|
|
32
31
|
attr_writer :timeout_ms
|
|
33
32
|
|
|
33
|
+
# A specific URL to use directly as the starting point for extraction without
|
|
34
|
+
# domain resolution.
|
|
35
|
+
sig { returns(String) }
|
|
36
|
+
attr_accessor :direct_url
|
|
37
|
+
|
|
34
38
|
sig do
|
|
35
39
|
params(
|
|
36
40
|
domain: String,
|
|
41
|
+
direct_url: String,
|
|
37
42
|
max_products: Integer,
|
|
38
43
|
timeout_ms: Integer,
|
|
39
44
|
request_options: BrandDev::RequestOptions::OrHash
|
|
40
45
|
).returns(T.attached_class)
|
|
41
46
|
end
|
|
42
47
|
def self.new(
|
|
43
|
-
# The domain name to analyze
|
|
48
|
+
# The domain name to analyze.
|
|
44
49
|
domain:,
|
|
50
|
+
# A specific URL to use directly as the starting point for extraction without
|
|
51
|
+
# domain resolution.
|
|
52
|
+
direct_url:,
|
|
45
53
|
# Maximum number of products to extract.
|
|
46
54
|
max_products: nil,
|
|
47
|
-
# Optional timeout in milliseconds for the request.
|
|
48
|
-
#
|
|
49
|
-
# value is 300000ms (5 minutes).
|
|
55
|
+
# Optional timeout in milliseconds for the request. Maximum allowed value is
|
|
56
|
+
# 300000ms (5 minutes).
|
|
50
57
|
timeout_ms: nil,
|
|
51
58
|
request_options: {}
|
|
52
59
|
)
|
|
@@ -58,6 +65,7 @@ module BrandDev
|
|
|
58
65
|
domain: String,
|
|
59
66
|
max_products: Integer,
|
|
60
67
|
timeout_ms: Integer,
|
|
68
|
+
direct_url: String,
|
|
61
69
|
request_options: BrandDev::RequestOptions
|
|
62
70
|
}
|
|
63
71
|
)
|
|
@@ -40,19 +40,22 @@ module BrandDev
|
|
|
40
40
|
sig do
|
|
41
41
|
params(
|
|
42
42
|
domain: String,
|
|
43
|
+
direct_url: String,
|
|
43
44
|
max_products: Integer,
|
|
44
45
|
timeout_ms: Integer,
|
|
45
46
|
request_options: BrandDev::RequestOptions::OrHash
|
|
46
47
|
).returns(BrandDev::Models::BrandAIProductsResponse)
|
|
47
48
|
end
|
|
48
49
|
def ai_products(
|
|
49
|
-
# The domain name to analyze
|
|
50
|
+
# The domain name to analyze.
|
|
50
51
|
domain:,
|
|
52
|
+
# A specific URL to use directly as the starting point for extraction without
|
|
53
|
+
# domain resolution.
|
|
54
|
+
direct_url:,
|
|
51
55
|
# Maximum number of products to extract.
|
|
52
56
|
max_products: nil,
|
|
53
|
-
# Optional timeout in milliseconds for the request.
|
|
54
|
-
#
|
|
55
|
-
# value is 300000ms (5 minutes).
|
|
57
|
+
# Optional timeout in milliseconds for the request. Maximum allowed value is
|
|
58
|
+
# 300000ms (5 minutes).
|
|
56
59
|
timeout_ms: nil,
|
|
57
60
|
request_options: {}
|
|
58
61
|
)
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
module BrandDev
|
|
2
2
|
module Models
|
|
3
3
|
type brand_ai_products_params =
|
|
4
|
-
{
|
|
4
|
+
{
|
|
5
|
+
domain: String,
|
|
6
|
+
max_products: Integer,
|
|
7
|
+
timeout_ms: Integer,
|
|
8
|
+
direct_url: String
|
|
9
|
+
}
|
|
5
10
|
& BrandDev::Internal::Type::request_parameters
|
|
6
11
|
|
|
7
12
|
class BrandAIProductsParams < BrandDev::Internal::Type::BaseModel
|
|
@@ -18,8 +23,11 @@ module BrandDev
|
|
|
18
23
|
|
|
19
24
|
def timeout_ms=: (Integer) -> Integer
|
|
20
25
|
|
|
26
|
+
attr_accessor direct_url: String
|
|
27
|
+
|
|
21
28
|
def initialize: (
|
|
22
29
|
domain: String,
|
|
30
|
+
direct_url: String,
|
|
23
31
|
?max_products: Integer,
|
|
24
32
|
?timeout_ms: Integer,
|
|
25
33
|
?request_options: BrandDev::request_opts
|
|
@@ -29,6 +37,7 @@ module BrandDev
|
|
|
29
37
|
domain: String,
|
|
30
38
|
max_products: Integer,
|
|
31
39
|
timeout_ms: Integer,
|
|
40
|
+
direct_url: String,
|
|
32
41
|
request_options: BrandDev::RequestOptions
|
|
33
42
|
}
|
|
34
43
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: brand.dev
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.23.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Brand Dev
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-02-
|
|
11
|
+
date: 2026-02-07 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: cgi
|