diff --git a/.release-please-manifest.json b/.release-please-manifest.json index de0960ab..f94eeca2 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "1.12.0" + ".": "1.13.0" } \ No newline at end of file diff --git a/.stats.yml b/.stats.yml index 9cbdb2d3..e1347e42 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 89 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/knock%2Fknock-8d6bb1a0b221b8b9fb9aae94419c46e2e1ca4732281924f24c6539c006d12cb8.yml -openapi_spec_hash: 5dd6c9f3cac4f8cc602c0d1543ec4de4 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/knock%2Fknock-3f1e8172e76e9b64239788a7794aa29d1391e914ee3af7b596a5d1ea62555dd7.yml +openapi_spec_hash: 9ad2e5c838b52d2b7f95bb834fef35c4 config_hash: 5c872aa99cad9b9602e84668f5b38a8a diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d89cb8a..426d9ce0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,17 @@ # Changelog +## 1.13.0 (2025-09-10) + +Full Changelog: [v1.12.0...v1.13.0](https://github.com/knocklabs/knock-ruby/compare/v1.12.0...v1.13.0) + +### Features + +* **api:** api update ([1d41369](https://github.com/knocklabs/knock-ruby/commit/1d41369c045725172e6910a4fb4ee546218e55d3)) +* **api:** api update ([4cbcd27](https://github.com/knocklabs/knock-ruby/commit/4cbcd27c56bf486d159ceefc0890014184aab50d)) +* **api:** api update ([4cd0c7d](https://github.com/knocklabs/knock-ruby/commit/4cd0c7d4541e1da08e5489df81b4732ff995e8cb)) +* **api:** api update ([2435936](https://github.com/knocklabs/knock-ruby/commit/243593653acf3381827206d7c3844350fb395fce)) +* **api:** api update ([ed2ca0f](https://github.com/knocklabs/knock-ruby/commit/ed2ca0f0d3d587b2fca1ff4a0fb3dcfec7b67b75)) + ## 1.12.0 (2025-09-02) Full Changelog: [v1.11.2...v1.12.0](https://github.com/knocklabs/knock-ruby/compare/v1.11.2...v1.12.0) diff --git a/Gemfile.lock b/Gemfile.lock index a0b2cb6f..3875a0f6 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -11,7 +11,7 @@ GIT PATH remote: . specs: - knockapi (1.12.0) + knockapi (1.13.0) connection_pool GEM diff --git a/README.md b/README.md index 5d1cc18a..58f2ad17 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application ```ruby -gem "knockapi", "~> 1.12.0" +gem "knockapi", "~> 1.13.0" ``` diff --git a/lib/knockapi/models/identify_user_request.rb b/lib/knockapi/models/identify_user_request.rb index 8a449a15..37b2256b 100644 --- a/lib/knockapi/models/identify_user_request.rb +++ b/lib/knockapi/models/identify_user_request.rb @@ -12,7 +12,7 @@ class IdentifyUserRequest < Knockapi::Internal::Type::BaseModel # @!attribute channel_data # A request to set channel data for a type of channel inline. # - # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] + # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] optional :channel_data, -> { Knockapi::Internal::Type::HashOf[union: Knockapi::Recipients::InlineChannelDataRequestItem] @@ -79,7 +79,7 @@ class IdentifyUserRequest < Knockapi::Internal::Type::BaseModel # # @param avatar [String, nil] A URL for the avatar of the user. # - # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. + # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. # # @param created_at [Time, nil] The creation date of the user from your system. # diff --git a/lib/knockapi/models/inline_identify_user_request.rb b/lib/knockapi/models/inline_identify_user_request.rb index 98aa2fea..28f3e395 100644 --- a/lib/knockapi/models/inline_identify_user_request.rb +++ b/lib/knockapi/models/inline_identify_user_request.rb @@ -18,7 +18,7 @@ class InlineIdentifyUserRequest < Knockapi::Internal::Type::BaseModel # @!attribute channel_data # A request to set channel data for a type of channel inline. # - # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] + # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] optional :channel_data, -> { Knockapi::Internal::Type::HashOf[union: Knockapi::Recipients::InlineChannelDataRequestItem] @@ -88,7 +88,7 @@ class InlineIdentifyUserRequest < Knockapi::Internal::Type::BaseModel # # @param avatar [String, nil] A URL for the avatar of the user. # - # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. + # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. # # @param created_at [Time, nil] The creation date of the user from your system. # diff --git a/lib/knockapi/models/inline_object_request.rb b/lib/knockapi/models/inline_object_request.rb index 6cab007b..45c0881a 100644 --- a/lib/knockapi/models/inline_object_request.rb +++ b/lib/knockapi/models/inline_object_request.rb @@ -18,7 +18,7 @@ class InlineObjectRequest < Knockapi::Internal::Type::BaseModel # @!attribute channel_data # A request to set channel data for a type of channel inline. # - # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] + # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] optional :channel_data, -> { Knockapi::Internal::Type::HashOf[union: Knockapi::Recipients::InlineChannelDataRequestItem] @@ -51,7 +51,7 @@ class InlineObjectRequest < Knockapi::Internal::Type::BaseModel # # @param collection [String] The collection this object belongs to. # - # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. + # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. # # @param created_at [Time, nil] Timestamp when the resource was created. # diff --git a/lib/knockapi/models/object_set_params.rb b/lib/knockapi/models/object_set_params.rb index e84f52ca..757245b1 100644 --- a/lib/knockapi/models/object_set_params.rb +++ b/lib/knockapi/models/object_set_params.rb @@ -10,7 +10,7 @@ class ObjectSetParams < Knockapi::Internal::Type::BaseModel # @!attribute channel_data # A request to set channel data for a type of channel inline. # - # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] + # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] optional :channel_data, -> { Knockapi::Internal::Type::HashOf[union: Knockapi::Recipients::InlineChannelDataRequestItem] } @@ -42,7 +42,7 @@ class ObjectSetParams < Knockapi::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {Knockapi::Models::ObjectSetParams} for more details. # - # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}] A request to set channel data for a type of channel inline. + # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}] A request to set channel data for a type of channel inline. # # @param locale [String, nil] The locale of the object. Used for [message localization](/concepts/translations # diff --git a/lib/knockapi/models/objects/bulk_set_params.rb b/lib/knockapi/models/objects/bulk_set_params.rb index 18f89ca7..9b8ce706 100644 --- a/lib/knockapi/models/objects/bulk_set_params.rb +++ b/lib/knockapi/models/objects/bulk_set_params.rb @@ -29,7 +29,7 @@ class Object < Knockapi::Internal::Type::BaseModel # @!attribute channel_data # A request to set channel data for a type of channel inline. # - # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] + # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] optional :channel_data, -> { Knockapi::Internal::Type::HashOf[union: Knockapi::Recipients::InlineChannelDataRequestItem] @@ -60,7 +60,7 @@ class Object < Knockapi::Internal::Type::BaseModel # # @param id [String] Unique identifier for the object. # - # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. + # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. # # @param created_at [Time, nil] Timestamp when the resource was created. # diff --git a/lib/knockapi/models/recipients/channel_data.rb b/lib/knockapi/models/recipients/channel_data.rb index 90268ad7..87ea2a7d 100644 --- a/lib/knockapi/models/recipients/channel_data.rb +++ b/lib/knockapi/models/recipients/channel_data.rb @@ -19,7 +19,7 @@ class RecipientsChannelData < Knockapi::Internal::Type::BaseModel # @!attribute data # Channel data for a given channel type. # - # @return [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData, Knockapi::Models::Recipients::OneSignalChannelData] + # @return [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::RecipientsChannelData::Data::AwsSnsPushChannelData] required :data, union: -> { Knockapi::Recipients::RecipientsChannelData::Data } # @!attribute provider @@ -35,7 +35,7 @@ class RecipientsChannelData < Knockapi::Internal::Type::BaseModel # # @param channel_id [String] The unique identifier for the channel. # - # @param data [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData, Knockapi::Models::Recipients::OneSignalChannelData] Channel data for a given channel type. + # @param data [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::RecipientsChannelData::Data::AwsSnsPushChannelData] Channel data for a given channel type. # # @param provider [Symbol, Knockapi::Models::Recipients::RecipientsChannelData::Provider] The type of provider. @@ -60,8 +60,29 @@ module Data # OneSignal channel data. variant -> { Knockapi::Recipients::OneSignalChannelData } + # AWS SNS push channel data. + variant -> { Knockapi::Recipients::RecipientsChannelData::Data::AwsSnsPushChannelData } + + class AwsSnsPushChannelData < Knockapi::Internal::Type::BaseModel + # @!attribute target_arns + # A list of platform endpoint ARNs. See + # [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html). + # + # @return [Array] + required :target_arns, Knockapi::Internal::Type::ArrayOf[String] + + # @!method initialize(target_arns:) + # Some parameter documentations has been truncated, see + # {Knockapi::Models::Recipients::RecipientsChannelData::Data::AwsSnsPushChannelData} + # for more details. + # + # AWS SNS push channel data. + # + # @param target_arns [Array] A list of platform endpoint ARNs. See [Setting up an Amazon SNS platform endpoin + end + # @!method self.variants - # @return [Array(Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData, Knockapi::Models::Recipients::OneSignalChannelData)] + # @return [Array(Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::RecipientsChannelData::Data::AwsSnsPushChannelData)] end # The type of provider. @@ -72,6 +93,7 @@ module Provider PUSH_FCM = :push_fcm PUSH_APNS = :push_apns + PUSH_AWS_SNS = :push_aws_sns PUSH_EXPO = :push_expo PUSH_ONE_SIGNAL = :push_one_signal CHAT_SLACK = :chat_slack diff --git a/lib/knockapi/models/recipients/channel_data_request.rb b/lib/knockapi/models/recipients/channel_data_request.rb index e1dfd93d..a6a25824 100644 --- a/lib/knockapi/models/recipients/channel_data_request.rb +++ b/lib/knockapi/models/recipients/channel_data_request.rb @@ -7,13 +7,13 @@ class ChannelDataRequest < Knockapi::Internal::Type::BaseModel # @!attribute data # Channel data for a given channel type. # - # @return [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData] + # @return [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData] required :data, union: -> { Knockapi::Recipients::ChannelDataRequest::Data } # @!method initialize(data:) # A request to set channel data for a type of channel. # - # @param data [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData] Channel data for a given channel type. + # @param data [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData] Channel data for a given channel type. # Channel data for a given channel type. # @@ -27,6 +27,9 @@ module Data # OneSignal channel data. variant -> { Knockapi::Recipients::OneSignalChannelData } + # AWS SNS push channel data. + variant -> { Knockapi::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData } + # Slack channel data. variant -> { Knockapi::Recipients::SlackChannelData } @@ -36,8 +39,26 @@ module Data # Discord channel data. variant -> { Knockapi::Recipients::DiscordChannelData } + class AwsSnsPushChannelData < Knockapi::Internal::Type::BaseModel + # @!attribute target_arns + # A list of platform endpoint ARNs. See + # [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html). + # + # @return [Array] + required :target_arns, Knockapi::Internal::Type::ArrayOf[String] + + # @!method initialize(target_arns:) + # Some parameter documentations has been truncated, see + # {Knockapi::Models::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData} + # for more details. + # + # AWS SNS push channel data. + # + # @param target_arns [Array] A list of platform endpoint ARNs. See [Setting up an Amazon SNS platform endpoin + end + # @!method self.variants - # @return [Array(Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData)] + # @return [Array(Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData)] end end end diff --git a/lib/knockapi/models/recipients/inline_channel_data_request.rb b/lib/knockapi/models/recipients/inline_channel_data_request.rb index 613f9d3a..6bc83b31 100644 --- a/lib/knockapi/models/recipients/inline_channel_data_request.rb +++ b/lib/knockapi/models/recipients/inline_channel_data_request.rb @@ -13,6 +13,9 @@ module InlineChannelDataRequestItem # OneSignal channel data. variant -> { Knockapi::Recipients::OneSignalChannelData } + # AWS SNS push channel data. + variant -> { Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData } + # Slack channel data. variant -> { Knockapi::Recipients::SlackChannelData } @@ -22,8 +25,26 @@ module InlineChannelDataRequestItem # Discord channel data. variant -> { Knockapi::Recipients::DiscordChannelData } + class AwsSnsPushChannelData < Knockapi::Internal::Type::BaseModel + # @!attribute target_arns + # A list of platform endpoint ARNs. See + # [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html). + # + # @return [Array] + required :target_arns, Knockapi::Internal::Type::ArrayOf[String] + + # @!method initialize(target_arns:) + # Some parameter documentations has been truncated, see + # {Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData} + # for more details. + # + # AWS SNS push channel data. + # + # @param target_arns [Array] A list of platform endpoint ARNs. See [Setting up an Amazon SNS platform endpoin + end + # @!method self.variants - # @return [Array(Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData)] + # @return [Array(Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData)] end # @type [Knockapi::Internal::Type::Converter] diff --git a/lib/knockapi/models/tenant_request.rb b/lib/knockapi/models/tenant_request.rb index d4784dc7..8a4f64d8 100644 --- a/lib/knockapi/models/tenant_request.rb +++ b/lib/knockapi/models/tenant_request.rb @@ -12,7 +12,7 @@ class TenantRequest < Knockapi::Internal::Type::BaseModel # @!attribute channel_data # A request to set channel data for a type of channel inline. # - # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] + # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] optional :channel_data, -> { Knockapi::Internal::Type::HashOf[union: Knockapi::Recipients::InlineChannelDataRequestItem] @@ -44,7 +44,7 @@ class TenantRequest < Knockapi::Internal::Type::BaseModel # # @param id [String] The unique identifier for the tenant. # - # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. + # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. # # @param preferences [Hash{Symbol=>Knockapi::Models::Recipients::PreferenceSetRequest}, nil] Inline set preferences for a recipient, where the key is the preference set id. # diff --git a/lib/knockapi/models/tenant_set_params.rb b/lib/knockapi/models/tenant_set_params.rb index 8716050f..4e88ca89 100644 --- a/lib/knockapi/models/tenant_set_params.rb +++ b/lib/knockapi/models/tenant_set_params.rb @@ -10,7 +10,7 @@ class TenantSetParams < Knockapi::Internal::Type::BaseModel # @!attribute channel_data # A request to set channel data for a type of channel inline. # - # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] + # @return [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] optional :channel_data, -> { Knockapi::Internal::Type::HashOf[union: Knockapi::Recipients::InlineChannelDataRequestItem] @@ -24,7 +24,7 @@ class TenantSetParams < Knockapi::Internal::Type::BaseModel optional :settings, -> { Knockapi::TenantSetParams::Settings } # @!method initialize(channel_data: nil, settings: nil, request_options: {}) - # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. + # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. # # @param settings [Knockapi::Models::TenantSetParams::Settings] The settings for the tenant. Includes branding and preference set. # diff --git a/lib/knockapi/models/users/guide_get_channel_response.rb b/lib/knockapi/models/users/guide_get_channel_response.rb index be2c9680..a96eeb89 100644 --- a/lib/knockapi/models/users/guide_get_channel_response.rb +++ b/lib/knockapi/models/users/guide_get_channel_response.rb @@ -32,6 +32,12 @@ class Guide < Knockapi::Internal::Type::BaseModel # @return [String, nil] optional :id, String + # @!attribute active + # Whether the guide is active. + # + # @return [Boolean, nil] + optional :active, Knockapi::Internal::Type::Boolean + # @!attribute content # The content of the guide. # @@ -50,9 +56,11 @@ class Guide < Knockapi::Internal::Type::BaseModel # @return [String, nil] optional :title, String - # @!method initialize(id: nil, content: nil, metadata: nil, title: nil) + # @!method initialize(id: nil, active: nil, content: nil, metadata: nil, title: nil) # @param id [String] The unique identifier for the guide. # + # @param active [Boolean] Whether the guide is active. + # # @param content [String] The content of the guide. # # @param metadata [Hash{Symbol=>Object}] The metadata of the guide. diff --git a/lib/knockapi/resources/objects.rb b/lib/knockapi/resources/objects.rb index ba90ef31..1f299ef4 100644 --- a/lib/knockapi/resources/objects.rb +++ b/lib/knockapi/resources/objects.rb @@ -368,7 +368,7 @@ def list_subscriptions(collection, object_id_, params = {}) # # @param id [String] Unique identifier for the object. # - # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}] A request to set channel data for a type of channel inline. + # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}] A request to set channel data for a type of channel inline. # # @param locale [String, nil] The locale of the object. Used for [message localization](/concepts/translations # @@ -404,7 +404,7 @@ def set(collection, id, params = {}) # # @param channel_id [String] The unique identifier for the channel. # - # @param data [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData] Channel data for a given channel type. + # @param data [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData] Channel data for a given channel type. # # @param request_options [Knockapi::RequestOptions, Hash{Symbol=>Object}, nil] # diff --git a/lib/knockapi/resources/tenants.rb b/lib/knockapi/resources/tenants.rb index c8ad3e25..63cbd9be 100644 --- a/lib/knockapi/resources/tenants.rb +++ b/lib/knockapi/resources/tenants.rb @@ -84,7 +84,7 @@ def get(id, params = {}) # # @param id [String] The unique identifier for the tenant. # - # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. + # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. # # @param settings [Knockapi::Models::TenantSetParams::Settings] The settings for the tenant. Includes branding and preference set. # diff --git a/lib/knockapi/resources/users.rb b/lib/knockapi/resources/users.rb index 297ef65b..491e5a48 100644 --- a/lib/knockapi/resources/users.rb +++ b/lib/knockapi/resources/users.rb @@ -25,7 +25,7 @@ class Users # # @param avatar [String, nil] A URL for the avatar of the user. # - # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. + # @param channel_data [Hash{Symbol=>Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData}, nil] A request to set channel data for a type of channel inline. # # @param created_at [Time, nil] The creation date of the user from your system. # @@ -354,7 +354,7 @@ def merge(user_id, params) # # @param channel_id [String] The unique identifier for the channel. # - # @param data [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData] Channel data for a given channel type. + # @param data [Knockapi::Models::Recipients::PushChannelData, Knockapi::Models::Recipients::OneSignalChannelData, Knockapi::Models::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData, Knockapi::Models::Recipients::SlackChannelData, Knockapi::Models::Recipients::MsTeamsChannelData, Knockapi::Models::Recipients::DiscordChannelData] Channel data for a given channel type. # # @param request_options [Knockapi::RequestOptions, Hash{Symbol=>Object}, nil] # diff --git a/lib/knockapi/version.rb b/lib/knockapi/version.rb index 34b808d0..71fb0547 100644 --- a/lib/knockapi/version.rb +++ b/lib/knockapi/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module Knockapi - VERSION = "1.12.0" + VERSION = "1.13.0" end diff --git a/rbi/knockapi/models/identify_user_request.rbi b/rbi/knockapi/models/identify_user_request.rbi index c5a6bfd7..f19d7e9b 100644 --- a/rbi/knockapi/models/identify_user_request.rbi +++ b/rbi/knockapi/models/identify_user_request.rbi @@ -21,6 +21,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData @@ -82,6 +83,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash @@ -142,6 +144,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData diff --git a/rbi/knockapi/models/inline_identify_user_request.rbi b/rbi/knockapi/models/inline_identify_user_request.rbi index 4a4c08be..feb3ccc9 100644 --- a/rbi/knockapi/models/inline_identify_user_request.rbi +++ b/rbi/knockapi/models/inline_identify_user_request.rbi @@ -28,6 +28,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData @@ -91,6 +92,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash @@ -154,6 +156,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData diff --git a/rbi/knockapi/models/inline_object_request.rbi b/rbi/knockapi/models/inline_object_request.rbi index fe863c55..ea440d3e 100644 --- a/rbi/knockapi/models/inline_object_request.rbi +++ b/rbi/knockapi/models/inline_object_request.rbi @@ -25,6 +25,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData @@ -61,6 +62,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash @@ -105,6 +107,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData diff --git a/rbi/knockapi/models/object_set_params.rbi b/rbi/knockapi/models/object_set_params.rbi index d8832020..7b3c3214 100644 --- a/rbi/knockapi/models/object_set_params.rbi +++ b/rbi/knockapi/models/object_set_params.rbi @@ -20,6 +20,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData @@ -38,6 +39,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash @@ -85,6 +87,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash @@ -125,6 +128,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData diff --git a/rbi/knockapi/models/objects/bulk_set_params.rbi b/rbi/knockapi/models/objects/bulk_set_params.rbi index e4fffb00..6269dac5 100644 --- a/rbi/knockapi/models/objects/bulk_set_params.rbi +++ b/rbi/knockapi/models/objects/bulk_set_params.rbi @@ -62,6 +62,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData @@ -99,6 +100,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash @@ -140,6 +142,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData diff --git a/rbi/knockapi/models/recipients/channel_data.rbi b/rbi/knockapi/models/recipients/channel_data.rbi index d0459603..b61d8294 100644 --- a/rbi/knockapi/models/recipients/channel_data.rbi +++ b/rbi/knockapi/models/recipients/channel_data.rbi @@ -55,7 +55,8 @@ module Knockapi Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash, - Knockapi::Recipients::OneSignalChannelData::OrHash + Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::RecipientsChannelData::Data::AwsSnsPushChannelData::OrHash ), provider: Knockapi::Recipients::RecipientsChannelData::Provider::OrSymbol @@ -98,10 +99,41 @@ module Knockapi Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData, - Knockapi::Recipients::OneSignalChannelData + Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::RecipientsChannelData::Data::AwsSnsPushChannelData ) end + class AwsSnsPushChannelData < Knockapi::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Knockapi::Recipients::RecipientsChannelData::Data::AwsSnsPushChannelData, + Knockapi::Internal::AnyHash + ) + end + + # A list of platform endpoint ARNs. See + # [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html). + sig { returns(T::Array[String]) } + attr_accessor :target_arns + + # AWS SNS push channel data. + sig do + params(target_arns: T::Array[String]).returns(T.attached_class) + end + def self.new( + # A list of platform endpoint ARNs. See + # [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html). + target_arns: + ) + end + + sig { override.returns({ target_arns: T::Array[String] }) } + def to_hash + end + end + sig do override.returns( T::Array[ @@ -136,6 +168,11 @@ module Knockapi :push_apns, Knockapi::Recipients::RecipientsChannelData::Provider::TaggedSymbol ) + PUSH_AWS_SNS = + T.let( + :push_aws_sns, + Knockapi::Recipients::RecipientsChannelData::Provider::TaggedSymbol + ) PUSH_EXPO = T.let( :push_expo, diff --git a/rbi/knockapi/models/recipients/channel_data_request.rbi b/rbi/knockapi/models/recipients/channel_data_request.rbi index df815dcb..1c9429e6 100644 --- a/rbi/knockapi/models/recipients/channel_data_request.rbi +++ b/rbi/knockapi/models/recipients/channel_data_request.rbi @@ -18,6 +18,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData @@ -33,6 +34,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash @@ -52,6 +54,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData @@ -71,12 +74,43 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData ) end + class AwsSnsPushChannelData < Knockapi::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Knockapi::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData, + Knockapi::Internal::AnyHash + ) + end + + # A list of platform endpoint ARNs. See + # [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html). + sig { returns(T::Array[String]) } + attr_accessor :target_arns + + # AWS SNS push channel data. + sig do + params(target_arns: T::Array[String]).returns(T.attached_class) + end + def self.new( + # A list of platform endpoint ARNs. See + # [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html). + target_arns: + ) + end + + sig { override.returns({ target_arns: T::Array[String] }) } + def to_hash + end + end + sig do override.returns( T::Array[Knockapi::Recipients::ChannelDataRequest::Data::Variants] diff --git a/rbi/knockapi/models/recipients/inline_channel_data_request.rbi b/rbi/knockapi/models/recipients/inline_channel_data_request.rbi index 8dc0189c..67ea4a1a 100644 --- a/rbi/knockapi/models/recipients/inline_channel_data_request.rbi +++ b/rbi/knockapi/models/recipients/inline_channel_data_request.rbi @@ -12,12 +12,43 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData ) end + class AwsSnsPushChannelData < Knockapi::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, + Knockapi::Internal::AnyHash + ) + end + + # A list of platform endpoint ARNs. See + # [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html). + sig { returns(T::Array[String]) } + attr_accessor :target_arns + + # AWS SNS push channel data. + sig do + params(target_arns: T::Array[String]).returns(T.attached_class) + end + def self.new( + # A list of platform endpoint ARNs. See + # [Setting up an Amazon SNS platform endpoint for mobile notifications](https://docs.aws.amazon.com/sns/latest/dg/mobile-platform-endpoint.html). + target_arns: + ) + end + + sig { override.returns({ target_arns: T::Array[String] }) } + def to_hash + end + end + sig do override.returns( T::Array[ diff --git a/rbi/knockapi/models/tenant_request.rbi b/rbi/knockapi/models/tenant_request.rbi index 16c39e00..afe4b43b 100644 --- a/rbi/knockapi/models/tenant_request.rbi +++ b/rbi/knockapi/models/tenant_request.rbi @@ -21,6 +21,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData @@ -60,6 +61,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash @@ -101,6 +103,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData diff --git a/rbi/knockapi/models/tenant_set_params.rbi b/rbi/knockapi/models/tenant_set_params.rbi index 6f4e8e76..e0e34075 100644 --- a/rbi/knockapi/models/tenant_set_params.rbi +++ b/rbi/knockapi/models/tenant_set_params.rbi @@ -20,6 +20,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData @@ -46,6 +47,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash @@ -75,6 +77,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData, Knockapi::Recipients::OneSignalChannelData, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData, Knockapi::Recipients::SlackChannelData, Knockapi::Recipients::MsTeamsChannelData, Knockapi::Recipients::DiscordChannelData diff --git a/rbi/knockapi/models/users/guide_get_channel_response.rbi b/rbi/knockapi/models/users/guide_get_channel_response.rbi index c9938085..071f06bc 100644 --- a/rbi/knockapi/models/users/guide_get_channel_response.rbi +++ b/rbi/knockapi/models/users/guide_get_channel_response.rbi @@ -94,6 +94,13 @@ module Knockapi sig { params(id: String).void } attr_writer :id + # Whether the guide is active. + sig { returns(T.nilable(T::Boolean)) } + attr_reader :active + + sig { params(active: T::Boolean).void } + attr_writer :active + # The content of the guide. sig { returns(T.nilable(String)) } attr_reader :content @@ -118,6 +125,7 @@ module Knockapi sig do params( id: String, + active: T::Boolean, content: String, metadata: T::Hash[Symbol, T.anything], title: String @@ -126,6 +134,8 @@ module Knockapi def self.new( # The unique identifier for the guide. id: nil, + # Whether the guide is active. + active: nil, # The content of the guide. content: nil, # The metadata of the guide. @@ -139,6 +149,7 @@ module Knockapi override.returns( { id: String, + active: T::Boolean, content: String, metadata: T::Hash[Symbol, T.anything], title: String diff --git a/rbi/knockapi/resources/objects.rbi b/rbi/knockapi/resources/objects.rbi index cfbeaa53..ae419c16 100644 --- a/rbi/knockapi/resources/objects.rbi +++ b/rbi/knockapi/resources/objects.rbi @@ -355,6 +355,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash @@ -402,6 +403,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash diff --git a/rbi/knockapi/resources/tenants.rbi b/rbi/knockapi/resources/tenants.rbi index 6ba629ab..f327b61e 100644 --- a/rbi/knockapi/resources/tenants.rbi +++ b/rbi/knockapi/resources/tenants.rbi @@ -72,6 +72,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash diff --git a/rbi/knockapi/resources/users.rbi b/rbi/knockapi/resources/users.rbi index dc33b6a3..754ba5e6 100644 --- a/rbi/knockapi/resources/users.rbi +++ b/rbi/knockapi/resources/users.rbi @@ -26,6 +26,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash @@ -344,6 +345,7 @@ module Knockapi T.any( Knockapi::Recipients::PushChannelData::OrHash, Knockapi::Recipients::OneSignalChannelData::OrHash, + Knockapi::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData::OrHash, Knockapi::Recipients::SlackChannelData::OrHash, Knockapi::Recipients::MsTeamsChannelData::OrHash, Knockapi::Recipients::DiscordChannelData::OrHash diff --git a/sig/knockapi/models/recipients/channel_data.rbs b/sig/knockapi/models/recipients/channel_data.rbs index aa9e2087..a2f6e67f 100644 --- a/sig/knockapi/models/recipients/channel_data.rbs +++ b/sig/knockapi/models/recipients/channel_data.rbs @@ -42,16 +42,28 @@ module Knockapi | Knockapi::Recipients::MsTeamsChannelData | Knockapi::Recipients::DiscordChannelData | Knockapi::Recipients::OneSignalChannelData + | Knockapi::Recipients::RecipientsChannelData::Data::AwsSnsPushChannelData module Data extend Knockapi::Internal::Type::Union + type aws_sns_push_channel_data = { target_arns: ::Array[String] } + + class AwsSnsPushChannelData < Knockapi::Internal::Type::BaseModel + attr_accessor target_arns: ::Array[String] + + def initialize: (target_arns: ::Array[String]) -> void + + def to_hash: -> { target_arns: ::Array[String] } + end + def self?.variants: -> ::Array[Knockapi::Models::Recipients::RecipientsChannelData::data] end type provider = :push_fcm | :push_apns + | :push_aws_sns | :push_expo | :push_one_signal | :chat_slack @@ -64,6 +76,7 @@ module Knockapi PUSH_FCM: :push_fcm PUSH_APNS: :push_apns + PUSH_AWS_SNS: :push_aws_sns PUSH_EXPO: :push_expo PUSH_ONE_SIGNAL: :push_one_signal CHAT_SLACK: :chat_slack diff --git a/sig/knockapi/models/recipients/channel_data_request.rbs b/sig/knockapi/models/recipients/channel_data_request.rbs index 4020802e..6b97bcea 100644 --- a/sig/knockapi/models/recipients/channel_data_request.rbs +++ b/sig/knockapi/models/recipients/channel_data_request.rbs @@ -18,6 +18,7 @@ module Knockapi type data = Knockapi::Recipients::PushChannelData | Knockapi::Recipients::OneSignalChannelData + | Knockapi::Recipients::ChannelDataRequest::Data::AwsSnsPushChannelData | Knockapi::Recipients::SlackChannelData | Knockapi::Recipients::MsTeamsChannelData | Knockapi::Recipients::DiscordChannelData @@ -25,6 +26,16 @@ module Knockapi module Data extend Knockapi::Internal::Type::Union + type aws_sns_push_channel_data = { target_arns: ::Array[String] } + + class AwsSnsPushChannelData < Knockapi::Internal::Type::BaseModel + attr_accessor target_arns: ::Array[String] + + def initialize: (target_arns: ::Array[String]) -> void + + def to_hash: -> { target_arns: ::Array[String] } + end + def self?.variants: -> ::Array[Knockapi::Models::Recipients::ChannelDataRequest::data] end end diff --git a/sig/knockapi/models/recipients/inline_channel_data_request.rbs b/sig/knockapi/models/recipients/inline_channel_data_request.rbs index 29a17aec..a09a18c4 100644 --- a/sig/knockapi/models/recipients/inline_channel_data_request.rbs +++ b/sig/knockapi/models/recipients/inline_channel_data_request.rbs @@ -4,6 +4,7 @@ module Knockapi type inline_channel_data_request_item = Knockapi::Recipients::PushChannelData | Knockapi::Recipients::OneSignalChannelData + | Knockapi::Recipients::InlineChannelDataRequestItem::AwsSnsPushChannelData | Knockapi::Recipients::SlackChannelData | Knockapi::Recipients::MsTeamsChannelData | Knockapi::Recipients::DiscordChannelData @@ -11,6 +12,16 @@ module Knockapi module InlineChannelDataRequestItem extend Knockapi::Internal::Type::Union + type aws_sns_push_channel_data = { target_arns: ::Array[String] } + + class AwsSnsPushChannelData < Knockapi::Internal::Type::BaseModel + attr_accessor target_arns: ::Array[String] + + def initialize: (target_arns: ::Array[String]) -> void + + def to_hash: -> { target_arns: ::Array[String] } + end + def self?.variants: -> ::Array[Knockapi::Models::Recipients::inline_channel_data_request_item] end diff --git a/sig/knockapi/models/users/guide_get_channel_response.rbs b/sig/knockapi/models/users/guide_get_channel_response.rbs index 149c226c..52e52480 100644 --- a/sig/knockapi/models/users/guide_get_channel_response.rbs +++ b/sig/knockapi/models/users/guide_get_channel_response.rbs @@ -25,6 +25,7 @@ module Knockapi type guide = { id: String, + active: bool, content: String, metadata: ::Hash[Symbol, top], title: String @@ -35,6 +36,10 @@ module Knockapi def id=: (String) -> String + attr_reader active: bool? + + def active=: (bool) -> bool + attr_reader content: String? def content=: (String) -> String @@ -49,6 +54,7 @@ module Knockapi def initialize: ( ?id: String, + ?active: bool, ?content: String, ?metadata: ::Hash[Symbol, top], ?title: String @@ -56,6 +62,7 @@ module Knockapi def to_hash: -> { id: String, + active: bool, content: String, metadata: ::Hash[Symbol, top], title: String