brand.dev 0.22.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 73bfa839e4a462bc79f8d9fe6b6d8120ffff7ccc4f9da829328bb081eee1f9ac
4
- data.tar.gz: 9e8e4646335f5c229cfa63c93e192a76dd767965df8714b807f218fed1e65de0
3
+ metadata.gz: 4d62936819f843f3b39b44d3e7ee2dcdb37d8bab316c6dff544032989d4c579e
4
+ data.tar.gz: 0f5406cd25c0db18f69e9b41687c83582274a5aa6954fd776143b3cf2e127707
5
5
  SHA512:
6
- metadata.gz: 3b2512f8069a014412a4f323863a6ef5d4c9a5b9f871758e0990aaac655059cae0168e96d76e34cebf871d018fc905288597df757b01e3a32468ad43497ca4d6
7
- data.tar.gz: 3ba4231e77f884b787073607b2454bc146cf175a44541e5a0c49f406f9e0bfb7332e8711a2dada8ce10c28ed0265c5b422c72d8b396d34631aab24af0b2f9409
6
+ metadata.gz: f90ff68d81d283086db18cdc24be921b97f2fb753049a716599a2a2b908537c45d88fbac9e9909b7824a28557fc34954e41acb4cef8edae0c140033fcc4c266b
7
+ data.tar.gz: 40607397b880852fc184119bae74815d997a88c30d9d07b420ad0e4171e272b4a4f177dcaa2106e4b55cf446ee6a14e804406ecea613ef66b940f1565aa53b29
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
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
+
3
11
  ## 0.22.0 (2026-02-07)
4
12
 
5
13
  Full Changelog: [v0.21.0...v0.22.0](https://github.com/brand-dot-dev/ruby-sdk/compare/v0.21.0...v0.22.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 "brand.dev", "~> 0.22.0"
29
+ gem "brand.dev", "~> 0.23.0"
30
30
  ```
31
31
 
32
32
  <!-- x-release-please-end -->
@@ -7,21 +7,11 @@ module BrandDev
7
7
  extend BrandDev::Internal::Type::RequestParameters::Converter
8
8
  include BrandDev::Internal::Type::RequestParameters
9
9
 
10
- # @!attribute direct_url
11
- # A specific URL to use directly as the starting point for extraction without
12
- # domain resolution. Useful when you want to extract products from a specific page
13
- # rather than discovering the site's product pages automatically. Either 'domain'
14
- # or 'directUrl' must be provided, but not both.
15
- #
16
- # @return [String, nil]
17
- optional :direct_url, String, api_name: :directUrl
18
-
19
10
  # @!attribute domain
20
- # The domain name to analyze. Either 'domain' or 'directUrl' must be provided, but
21
- # not both.
11
+ # The domain name to analyze.
22
12
  #
23
- # @return [String, nil]
24
- optional :domain, String
13
+ # @return [String]
14
+ required :domain, String
25
15
 
26
16
  # @!attribute max_products
27
17
  # Maximum number of products to extract.
@@ -30,24 +20,30 @@ module BrandDev
30
20
  optional :max_products, Integer, api_name: :maxProducts
31
21
 
32
22
  # @!attribute timeout_ms
33
- # Optional timeout in milliseconds for the request. If the request takes longer
34
- # than this value, it will be aborted with a 408 status code. Maximum allowed
35
- # value is 300000ms (5 minutes).
23
+ # Optional timeout in milliseconds for the request. Maximum allowed value is
24
+ # 300000ms (5 minutes).
36
25
  #
37
26
  # @return [Integer, nil]
38
27
  optional :timeout_ms, Integer, api_name: :timeoutMS
39
28
 
40
- # @!method initialize(direct_url: nil, domain: nil, max_products: nil, timeout_ms: nil, request_options: {})
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: {})
41
37
  # Some parameter documentations has been truncated, see
42
38
  # {BrandDev::Models::BrandAIProductsParams} for more details.
43
39
  #
44
- # @param direct_url [String] A specific URL to use directly as the starting point for extraction without doma
40
+ # @param domain [String] The domain name to analyze.
45
41
  #
46
- # @param domain [String] The domain name to analyze. Either 'domain' or 'directUrl' must be provided, but
42
+ # @param direct_url [String] A specific URL to use directly as the starting point for extraction without doma
47
43
  #
48
44
  # @param max_products [Integer] Maximum number of products to extract.
49
45
  #
50
- # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
46
+ # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. Maximum allowed value is 30000
51
47
  #
52
48
  # @param request_options [BrandDev::RequestOptions, Hash{Symbol=>Object}]
53
49
  end
@@ -42,22 +42,22 @@ 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(direct_url: nil, domain: nil, 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 direct_url [String] A specific URL to use directly as the starting point for extraction without doma
47
+ # @param domain [String] The domain name to analyze.
48
48
  #
49
- # @param domain [String] The domain name to analyze. Either 'domain' or 'directUrl' must be provided, but
49
+ # @param direct_url [String] A specific URL to use directly as the starting point for extraction without doma
50
50
  #
51
51
  # @param max_products [Integer] Maximum number of products to extract.
52
52
  #
53
- # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
53
+ # @param timeout_ms [Integer] Optional timeout in milliseconds for the request. Maximum allowed value is 30000
54
54
  #
55
55
  # @param request_options [BrandDev::RequestOptions, Hash{Symbol=>Object}, nil]
56
56
  #
57
57
  # @return [BrandDev::Models::BrandAIProductsResponse]
58
58
  #
59
59
  # @see BrandDev::Models::BrandAIProductsParams
60
- def ai_products(params = {})
60
+ def ai_products(params)
61
61
  parsed, options = BrandDev::BrandAIProductsParams.dump_request(params)
62
62
  @client.request(
63
63
  method: :post,
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module BrandDev
4
- VERSION = "0.22.0"
4
+ VERSION = "0.23.0"
5
5
  end
@@ -11,23 +11,9 @@ module BrandDev
11
11
  T.any(BrandDev::BrandAIProductsParams, BrandDev::Internal::AnyHash)
12
12
  end
13
13
 
14
- # A specific URL to use directly as the starting point for extraction without
15
- # domain resolution. Useful when you want to extract products from a specific page
16
- # rather than discovering the site's product pages automatically. Either 'domain'
17
- # or 'directUrl' must be provided, but not both.
18
- sig { returns(T.nilable(String)) }
19
- attr_reader :direct_url
20
-
21
- sig { params(direct_url: String).void }
22
- attr_writer :direct_url
23
-
24
- # The domain name to analyze. Either 'domain' or 'directUrl' must be provided, but
25
- # not both.
26
- sig { returns(T.nilable(String)) }
27
- attr_reader :domain
28
-
29
- sig { params(domain: String).void }
30
- attr_writer :domain
14
+ # The domain name to analyze.
15
+ sig { returns(String) }
16
+ attr_accessor :domain
31
17
 
32
18
  # Maximum number of products to extract.
33
19
  sig { returns(T.nilable(Integer)) }
@@ -36,38 +22,38 @@ module BrandDev
36
22
  sig { params(max_products: Integer).void }
37
23
  attr_writer :max_products
38
24
 
39
- # Optional timeout in milliseconds for the request. If the request takes longer
40
- # than this value, it will be aborted with a 408 status code. Maximum allowed
41
- # value is 300000ms (5 minutes).
25
+ # Optional timeout in milliseconds for the request. Maximum allowed value is
26
+ # 300000ms (5 minutes).
42
27
  sig { returns(T.nilable(Integer)) }
43
28
  attr_reader :timeout_ms
44
29
 
45
30
  sig { params(timeout_ms: Integer).void }
46
31
  attr_writer :timeout_ms
47
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
+
48
38
  sig do
49
39
  params(
50
- direct_url: String,
51
40
  domain: String,
41
+ direct_url: String,
52
42
  max_products: Integer,
53
43
  timeout_ms: Integer,
54
44
  request_options: BrandDev::RequestOptions::OrHash
55
45
  ).returns(T.attached_class)
56
46
  end
57
47
  def self.new(
48
+ # The domain name to analyze.
49
+ domain:,
58
50
  # A specific URL to use directly as the starting point for extraction without
59
- # domain resolution. Useful when you want to extract products from a specific page
60
- # rather than discovering the site's product pages automatically. Either 'domain'
61
- # or 'directUrl' must be provided, but not both.
62
- direct_url: nil,
63
- # The domain name to analyze. Either 'domain' or 'directUrl' must be provided, but
64
- # not both.
65
- domain: nil,
51
+ # domain resolution.
52
+ direct_url:,
66
53
  # Maximum number of products to extract.
67
54
  max_products: nil,
68
- # Optional timeout in milliseconds for the request. If the request takes longer
69
- # than this value, it will be aborted with a 408 status code. Maximum allowed
70
- # value is 300000ms (5 minutes).
55
+ # Optional timeout in milliseconds for the request. Maximum allowed value is
56
+ # 300000ms (5 minutes).
71
57
  timeout_ms: nil,
72
58
  request_options: {}
73
59
  )
@@ -76,10 +62,10 @@ module BrandDev
76
62
  sig do
77
63
  override.returns(
78
64
  {
79
- direct_url: String,
80
65
  domain: String,
81
66
  max_products: Integer,
82
67
  timeout_ms: Integer,
68
+ direct_url: String,
83
69
  request_options: BrandDev::RequestOptions
84
70
  }
85
71
  )
@@ -39,27 +39,23 @@ module BrandDev
39
39
  # description, image, pricing, features, and more.
40
40
  sig do
41
41
  params(
42
- direct_url: String,
43
42
  domain: String,
43
+ direct_url: String,
44
44
  max_products: Integer,
45
45
  timeout_ms: Integer,
46
46
  request_options: BrandDev::RequestOptions::OrHash
47
47
  ).returns(BrandDev::Models::BrandAIProductsResponse)
48
48
  end
49
49
  def ai_products(
50
+ # The domain name to analyze.
51
+ domain:,
50
52
  # A specific URL to use directly as the starting point for extraction without
51
- # domain resolution. Useful when you want to extract products from a specific page
52
- # rather than discovering the site's product pages automatically. Either 'domain'
53
- # or 'directUrl' must be provided, but not both.
54
- direct_url: nil,
55
- # The domain name to analyze. Either 'domain' or 'directUrl' must be provided, but
56
- # not both.
57
- domain: nil,
53
+ # domain resolution.
54
+ direct_url:,
58
55
  # Maximum number of products to extract.
59
56
  max_products: nil,
60
- # Optional timeout in milliseconds for the request. If the request takes longer
61
- # than this value, it will be aborted with a 408 status code. Maximum allowed
62
- # value is 300000ms (5 minutes).
57
+ # Optional timeout in milliseconds for the request. Maximum allowed value is
58
+ # 300000ms (5 minutes).
63
59
  timeout_ms: nil,
64
60
  request_options: {}
65
61
  )
@@ -2,10 +2,10 @@ module BrandDev
2
2
  module Models
3
3
  type brand_ai_products_params =
4
4
  {
5
- direct_url: String,
6
5
  domain: String,
7
6
  max_products: Integer,
8
- timeout_ms: Integer
7
+ timeout_ms: Integer,
8
+ direct_url: String
9
9
  }
10
10
  & BrandDev::Internal::Type::request_parameters
11
11
 
@@ -13,13 +13,7 @@ module BrandDev
13
13
  extend BrandDev::Internal::Type::RequestParameters::Converter
14
14
  include BrandDev::Internal::Type::RequestParameters
15
15
 
16
- attr_reader direct_url: String?
17
-
18
- def direct_url=: (String) -> String
19
-
20
- attr_reader domain: String?
21
-
22
- def domain=: (String) -> String
16
+ attr_accessor domain: String
23
17
 
24
18
  attr_reader max_products: Integer?
25
19
 
@@ -29,19 +23,21 @@ module BrandDev
29
23
 
30
24
  def timeout_ms=: (Integer) -> Integer
31
25
 
26
+ attr_accessor direct_url: String
27
+
32
28
  def initialize: (
33
- ?direct_url: String,
34
- ?domain: String,
29
+ domain: String,
30
+ direct_url: String,
35
31
  ?max_products: Integer,
36
32
  ?timeout_ms: Integer,
37
33
  ?request_options: BrandDev::request_opts
38
34
  ) -> void
39
35
 
40
36
  def to_hash: -> {
41
- direct_url: String,
42
37
  domain: String,
43
38
  max_products: Integer,
44
39
  timeout_ms: Integer,
40
+ direct_url: String,
45
41
  request_options: BrandDev::RequestOptions
46
42
  }
47
43
  end
@@ -10,8 +10,8 @@ module BrandDev
10
10
  ) -> BrandDev::Models::BrandRetrieveResponse
11
11
 
12
12
  def ai_products: (
13
- ?direct_url: String,
14
- ?domain: String,
13
+ domain: String,
14
+ direct_url: String,
15
15
  ?max_products: Integer,
16
16
  ?timeout_ms: Integer,
17
17
  ?request_options: BrandDev::request_opts
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: brand.dev
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.22.0
4
+ version: 0.23.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brand Dev