Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "1.29.0"
".": "1.30.0"
}
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 90
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/knock%2Fknock-1847c4ab086e290a4e3a698f3bc55605fa5c24cbdef663a51a8b84d260312491.yml
openapi_spec_hash: 6ecef3ce2fc44f77781c835fefe1aa82
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/knock%2Fknock-6458a8bd2021d6d33af7b8b477bd0bdef7270dd2f78fa7891048d519f0d65b22.yml
openapi_spec_hash: 37319ec82d920729dab3ab05ff75f4fc
config_hash: 2b42d138d85c524e65fa7e205d36cc4a
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
# Changelog

## 1.30.0 (2026-01-29)

Full Changelog: [v1.29.0...v1.30.0](https://github.com/knocklabs/knock-ruby/compare/v1.29.0...v1.30.0)

### Features

* **api:** api update ([5082dcb](https://github.com/knocklabs/knock-ruby/commit/5082dcb9d09ef3a3bc3d496f94fd31ee018ac4ee))
* **api:** api update ([41c7881](https://github.com/knocklabs/knock-ruby/commit/41c78811817cdc595674b56381e396b8a5c6f96a))
* **api:** api update ([e4c9e2b](https://github.com/knocklabs/knock-ruby/commit/e4c9e2bbf5664f057addd6c2b8013c11de97f193))
* **api:** api update ([3ba6399](https://github.com/knocklabs/knock-ruby/commit/3ba63996dab0c2047a0e019a0bfd844513e0600f))
* **api:** api update ([3a1d05d](https://github.com/knocklabs/knock-ruby/commit/3a1d05d96b3dbf0abe14f9f4c58e2b16f2ffbbd0))

## 1.29.0 (2026-01-23)

Full Changelog: [v1.28.0...v1.29.0](https://github.com/knocklabs/knock-ruby/compare/v1.28.0...v1.29.0)
Expand Down
2 changes: 1 addition & 1 deletion Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ GIT
PATH
remote: .
specs:
knockapi (1.29.0)
knockapi (1.30.0)
cgi
connection_pool

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
<!-- x-release-please-start-version -->

```ruby
gem "knockapi", "~> 1.29.0"
gem "knockapi", "~> 1.30.0"
```

<!-- x-release-please-end -->
Expand Down
14 changes: 11 additions & 3 deletions lib/knockapi/models/users/guide_get_channel_response.rb
Original file line number Diff line number Diff line change
Expand Up @@ -164,10 +164,18 @@ class ActivationURLPattern < Knockapi::Internal::Type::BaseModel
# @return [String, nil]
optional :pathname, String

# @!method initialize(directive: nil, pathname: nil)
# @!attribute search
# The search query params to match
#
# @return [String, nil]
optional :search, String

# @!method initialize(directive: nil, pathname: nil, search: nil)
# @param directive [String] The directive for the URL pattern ('allow' or 'block')
#
# @param pathname [String] The pathname pattern to match (supports wildcards like /\*)
#
# @param search [String] The search query params to match
end

class ActivationURLRule < Knockapi::Internal::Type::BaseModel
Expand All @@ -178,7 +186,7 @@ class ActivationURLRule < Knockapi::Internal::Type::BaseModel
optional :argument, String

# @!attribute directive
# The directive for the URL pattern ('allow' or 'block')
# The directive for the URL rule ('allow' or 'block')
#
# @return [String, nil]
optional :directive, String
Expand All @@ -198,7 +206,7 @@ class ActivationURLRule < Knockapi::Internal::Type::BaseModel
# @!method initialize(argument: nil, directive: nil, operator: nil, variable: nil)
# @param argument [String] The value to compare against
#
# @param directive [String] The directive for the URL pattern ('allow' or 'block')
# @param directive [String] The directive for the URL rule ('allow' or 'block')
#
# @param operator [String] The comparison operator ('contains' or 'equal_to')
#
Expand Down
3 changes: 3 additions & 0 deletions lib/knockapi/resources/users/feeds.rb
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,9 @@ def get_settings(user_id, id, params = {})
# along with a user token.
# - This endpoint’s rate limit is always scoped per-user and per-environment. This
# is true even for requests made without a signed user token.
# - Any [attachments](/integrations/email/attachments) present in trigger data are
# automatically excluded from both the `data` and `activities` fields of
# `UserInAppFeedResponse`.
#
# @overload list_items(user_id, id, after: nil, archived: nil, before: nil, has_tenant: nil, locale: nil, page_size: nil, source: nil, status: nil, tenant: nil, trigger_data: nil, workflow_categories: nil, request_options: {})
#
Expand Down
2 changes: 1 addition & 1 deletion lib/knockapi/version.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# frozen_string_literal: true

module Knockapi
VERSION = "1.29.0"
VERSION = "1.30.0"
end
29 changes: 22 additions & 7 deletions rbi/knockapi/models/users/guide_get_channel_response.rbi
Original file line number Diff line number Diff line change
Expand Up @@ -343,20 +343,35 @@ module Knockapi
sig { params(pathname: String).void }
attr_writer :pathname

# The search query params to match
sig { returns(T.nilable(String)) }
attr_reader :search

sig { params(search: String).void }
attr_writer :search

sig do
params(directive: String, pathname: String).returns(
T.attached_class
)
params(
directive: String,
pathname: String,
search: String
).returns(T.attached_class)
end
def self.new(
# The directive for the URL pattern ('allow' or 'block')
directive: nil,
# The pathname pattern to match (supports wildcards like /\*)
pathname: nil
pathname: nil,
# The search query params to match
search: nil
)
end

sig { override.returns({ directive: String, pathname: String }) }
sig do
override.returns(
{ directive: String, pathname: String, search: String }
)
end
def to_hash
end
end
Expand All @@ -377,7 +392,7 @@ module Knockapi
sig { params(argument: String).void }
attr_writer :argument

# The directive for the URL pattern ('allow' or 'block')
# The directive for the URL rule ('allow' or 'block')
sig { returns(T.nilable(String)) }
attr_reader :directive

Expand Down Expand Up @@ -409,7 +424,7 @@ module Knockapi
def self.new(
# The value to compare against
argument: nil,
# The directive for the URL pattern ('allow' or 'block')
# The directive for the URL rule ('allow' or 'block')
directive: nil,
# The comparison operator ('contains' or 'equal_to')
operator: nil,
Expand Down
3 changes: 3 additions & 0 deletions rbi/knockapi/resources/users/feeds.rbi
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,9 @@ module Knockapi
# along with a user token.
# - This endpoint’s rate limit is always scoped per-user and per-environment. This
# is true even for requests made without a signed user token.
# - Any [attachments](/integrations/email/attachments) present in trigger data are
# automatically excluded from both the `data` and `activities` fields of
# `UserInAppFeedResponse`.
sig do
params(
user_id: String,
Expand Down
19 changes: 16 additions & 3 deletions sig/knockapi/models/users/guide_get_channel_response.rbs
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,8 @@ module Knockapi
updated_at: Time
}

type activation_url_pattern = { directive: String, pathname: String }
type activation_url_pattern =
{ directive: String, pathname: String, search: String }

class ActivationURLPattern < Knockapi::Internal::Type::BaseModel
attr_reader directive: String?
Expand All @@ -151,9 +152,21 @@ module Knockapi

def pathname=: (String) -> String

def initialize: (?directive: String, ?pathname: String) -> void
attr_reader search: String?

def to_hash: -> { directive: String, pathname: String }
def search=: (String) -> String

def initialize: (
?directive: String,
?pathname: String,
?search: String
) -> void

def to_hash: -> {
directive: String,
pathname: String,
search: String
}
end

type activation_url_rule =
Expand Down