Skip to content

Commit d0a8241

Browse files
authored
Merge pull request #41 from brand-dot-dev/release-please--branches--main--changes--next
release: 0.20.0
2 parents 4827262 + 5852f34 commit d0a8241

21 files changed

+846
-33
lines changed

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "0.19.0"
2+
".": "0.20.0"
33
}

.stats.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
configured_endpoints: 14
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/brand-dev%2Fbrand.dev-1391c1e69bcdce517f71265a2f22f4e8d35c3f12a224899e64f85e25897b743a.yml
3-
openapi_spec_hash: f8a2917cc425300d272ae943f88d7bb7
4-
config_hash: 7f48d078645cb8331328bcd6f6ab3281
1+
configured_endpoints: 15
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/brand-dev%2Fbrand.dev-863ddc13e032497459a639cf02a16349831dda7e39557cbd5ce33da34d086b02.yml
3+
openapi_spec_hash: f972aac9618fe8df340d96344b3d0578
4+
config_hash: 6f10592c7d0c3bafefc1271472283217

CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
# Changelog
22

3+
## 0.20.0 (2026-01-05)
4+
5+
Full Changelog: [v0.19.0...v0.20.0](https://github.com/brand-dot-dev/ruby-sdk/compare/v0.19.0...v0.20.0)
6+
7+
### Features
8+
9+
* **api:** api update ([0e16540](https://github.com/brand-dot-dev/ruby-sdk/commit/0e1654086ce29b4db61d42d680f5c837723200c8))
10+
* **api:** api update ([25e7a5a](https://github.com/brand-dot-dev/ruby-sdk/commit/25e7a5a8d67e1a1f6d12ea45c9e5f8c3d0172419))
11+
* **api:** manual updates ([58d3d58](https://github.com/brand-dot-dev/ruby-sdk/commit/58d3d58d2f482c0b7e173dd3c1805c09af80a2c8))
12+
313
## 0.19.0 (2025-12-22)
414

515
Full Changelog: [v0.18.0...v0.19.0](https://github.com/brand-dot-dev/ruby-sdk/compare/v0.18.0...v0.19.0)

Gemfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ GIT
1111
PATH
1212
remote: .
1313
specs:
14-
brand.dev (0.19.0)
14+
brand.dev (0.20.0)
1515
connection_pool
1616

1717
GEM

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@
186186
same "printed page" as the copyright notice for easier
187187
identification within third-party archives.
188188

189-
Copyright 2025 Brand Dev
189+
Copyright 2026 Brand Dev
190190

191191
Licensed under the Apache License, Version 2.0 (the "License");
192192
you may not use this file except in compliance with the License.

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
1717
<!-- x-release-please-start-version -->
1818

1919
```ruby
20-
gem "brand.dev", "~> 0.19.0"
20+
gem "brand.dev", "~> 0.20.0"
2121
```
2222

2323
<!-- x-release-please-end -->

lib/brand_dev.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@
5252
require_relative "brand_dev/internal/transport/base_client"
5353
require_relative "brand_dev/internal/transport/pooled_net_requester"
5454
require_relative "brand_dev/client"
55+
require_relative "brand_dev/models/brand_ai_products_params"
56+
require_relative "brand_dev/models/brand_ai_products_response"
5557
require_relative "brand_dev/models/brand_ai_query_params"
5658
require_relative "brand_dev/models/brand_ai_query_response"
5759
require_relative "brand_dev/models/brand_fonts_params"

lib/brand_dev/models.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ module BrandDev
3939
mod.define_sorbet_constant!(const) { T.type_alias { mod.to_sorbet_type } }
4040
end
4141

42+
BrandAIProductsParams = BrandDev::Models::BrandAIProductsParams
43+
4244
BrandAIQueryParams = BrandDev::Models::BrandAIQueryParams
4345

4446
BrandFontsParams = BrandDev::Models::BrandFontsParams
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# frozen_string_literal: true
2+
3+
module BrandDev
4+
module Models
5+
# @see BrandDev::Resources::Brand#ai_products
6+
class BrandAIProductsParams < BrandDev::Internal::Type::BaseModel
7+
extend BrandDev::Internal::Type::RequestParameters::Converter
8+
include BrandDev::Internal::Type::RequestParameters
9+
10+
# @!attribute domain
11+
# The domain name to analyze
12+
#
13+
# @return [String]
14+
required :domain, String
15+
16+
# @!attribute max_products
17+
# Maximum number of products to extract.
18+
#
19+
# @return [Integer, nil]
20+
optional :max_products, Integer, api_name: :maxProducts
21+
22+
# @!attribute timeout_ms
23+
# Optional timeout in milliseconds for the request. If the request takes longer
24+
# than this value, it will be aborted with a 408 status code. Maximum allowed
25+
# value is 300000ms (5 minutes).
26+
#
27+
# @return [Integer, nil]
28+
optional :timeout_ms, Integer, api_name: :timeoutMS
29+
30+
# @!method initialize(domain:, max_products: nil, timeout_ms: nil, request_options: {})
31+
# Some parameter documentations has been truncated, see
32+
# {BrandDev::Models::BrandAIProductsParams} for more details.
33+
#
34+
# @param domain [String] The domain name to analyze
35+
#
36+
# @param max_products [Integer] Maximum number of products to extract.
37+
#
38+
# @param timeout_ms [Integer] Optional timeout in milliseconds for the request. If the request takes longer th
39+
#
40+
# @param request_options [BrandDev::RequestOptions, Hash{Symbol=>Object}]
41+
end
42+
end
43+
end
Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
# frozen_string_literal: true
2+
3+
module BrandDev
4+
module Models
5+
# @see BrandDev::Resources::Brand#ai_products
6+
class BrandAIProductsResponse < BrandDev::Internal::Type::BaseModel
7+
# @!attribute products
8+
# Array of products extracted from the website
9+
#
10+
# @return [Array<BrandDev::Models::BrandAIProductsResponse::Product>, nil]
11+
optional :products,
12+
-> { BrandDev::Internal::Type::ArrayOf[BrandDev::Models::BrandAIProductsResponse::Product] }
13+
14+
# @!method initialize(products: nil)
15+
# @param products [Array<BrandDev::Models::BrandAIProductsResponse::Product>] Array of products extracted from the website
16+
17+
class Product < BrandDev::Internal::Type::BaseModel
18+
# @!attribute description
19+
# Description of the product
20+
#
21+
# @return [String]
22+
required :description, String
23+
24+
# @!attribute features
25+
# List of product features
26+
#
27+
# @return [Array<String>]
28+
required :features, BrandDev::Internal::Type::ArrayOf[String]
29+
30+
# @!attribute name
31+
# Name of the product
32+
#
33+
# @return [String]
34+
required :name, String
35+
36+
# @!attribute tags
37+
# Tags associated with the product
38+
#
39+
# @return [Array<String>]
40+
required :tags, BrandDev::Internal::Type::ArrayOf[String]
41+
42+
# @!attribute target_audience
43+
# Target audience for the product (array of strings)
44+
#
45+
# @return [Array<String>]
46+
required :target_audience, BrandDev::Internal::Type::ArrayOf[String]
47+
48+
# @!attribute billing_frequency
49+
# Billing frequency for the product
50+
#
51+
# @return [Symbol, BrandDev::Models::BrandAIProductsResponse::Product::BillingFrequency, nil]
52+
optional :billing_frequency,
53+
enum: -> { BrandDev::Models::BrandAIProductsResponse::Product::BillingFrequency },
54+
nil?: true
55+
56+
# @!attribute category
57+
# Category of the product
58+
#
59+
# @return [String, nil]
60+
optional :category, String, nil?: true
61+
62+
# @!attribute currency
63+
# Currency code for the price (e.g., USD, EUR)
64+
#
65+
# @return [String, nil]
66+
optional :currency, String, nil?: true
67+
68+
# @!attribute image_url
69+
# URL to the product image
70+
#
71+
# @return [String, nil]
72+
optional :image_url, String, nil?: true
73+
74+
# @!attribute price
75+
# Price of the product
76+
#
77+
# @return [Float, nil]
78+
optional :price, Float, nil?: true
79+
80+
# @!attribute pricing_model
81+
# Pricing model for the product
82+
#
83+
# @return [Symbol, BrandDev::Models::BrandAIProductsResponse::Product::PricingModel, nil]
84+
optional :pricing_model,
85+
enum: -> { BrandDev::Models::BrandAIProductsResponse::Product::PricingModel },
86+
nil?: true
87+
88+
# @!attribute url
89+
# URL to the product page
90+
#
91+
# @return [String, nil]
92+
optional :url, String, nil?: true
93+
94+
# @!method initialize(description:, features:, name:, tags:, target_audience:, billing_frequency: nil, category: nil, currency: nil, image_url: nil, price: nil, pricing_model: nil, url: nil)
95+
# @param description [String] Description of the product
96+
#
97+
# @param features [Array<String>] List of product features
98+
#
99+
# @param name [String] Name of the product
100+
#
101+
# @param tags [Array<String>] Tags associated with the product
102+
#
103+
# @param target_audience [Array<String>] Target audience for the product (array of strings)
104+
#
105+
# @param billing_frequency [Symbol, BrandDev::Models::BrandAIProductsResponse::Product::BillingFrequency, nil] Billing frequency for the product
106+
#
107+
# @param category [String, nil] Category of the product
108+
#
109+
# @param currency [String, nil] Currency code for the price (e.g., USD, EUR)
110+
#
111+
# @param image_url [String, nil] URL to the product image
112+
#
113+
# @param price [Float, nil] Price of the product
114+
#
115+
# @param pricing_model [Symbol, BrandDev::Models::BrandAIProductsResponse::Product::PricingModel, nil] Pricing model for the product
116+
#
117+
# @param url [String, nil] URL to the product page
118+
119+
# Billing frequency for the product
120+
#
121+
# @see BrandDev::Models::BrandAIProductsResponse::Product#billing_frequency
122+
module BillingFrequency
123+
extend BrandDev::Internal::Type::Enum
124+
125+
MONTHLY = :monthly
126+
YEARLY = :yearly
127+
ONE_TIME = :one_time
128+
USAGE_BASED = :usage_based
129+
130+
# @!method self.values
131+
# @return [Array<Symbol>]
132+
end
133+
134+
# Pricing model for the product
135+
#
136+
# @see BrandDev::Models::BrandAIProductsResponse::Product#pricing_model
137+
module PricingModel
138+
extend BrandDev::Internal::Type::Enum
139+
140+
PER_SEAT = :per_seat
141+
FLAT = :flat
142+
TIERED = :tiered
143+
FREEMIUM = :freemium
144+
CUSTOM = :custom
145+
146+
# @!method self.values
147+
# @return [Array<Symbol>]
148+
end
149+
end
150+
end
151+
end
152+
end

0 commit comments

Comments
 (0)