trycourier 4.21.0 → 4.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.
Files changed (231) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +24 -0
  3. data/lib/courier/client.rb +43 -0
  4. data/lib/courier/models/automations/invoke_invoke_ad_hoc_params.rb +13 -1
  5. data/lib/courier/models/automations/invoke_invoke_by_template_params.rb +13 -1
  6. data/lib/courier/models/brand_create_params.rb +13 -1
  7. data/lib/courier/models/broadcast.rb +132 -0
  8. data/lib/courier/models/broadcast_archive_params.rb +20 -0
  9. data/lib/courier/models/broadcast_cancel_params.rb +20 -0
  10. data/lib/courier/models/broadcast_create_params.rb +14 -0
  11. data/lib/courier/models/broadcast_duplicate_params.rb +20 -0
  12. data/lib/courier/models/broadcast_list_params.rb +30 -0
  13. data/lib/courier/models/broadcast_list_response.rb +24 -0
  14. data/lib/courier/models/broadcast_put_content_params.rb +20 -0
  15. data/lib/courier/models/broadcast_retrieve_content_params.rb +33 -0
  16. data/lib/courier/models/broadcast_retrieve_params.rb +20 -0
  17. data/lib/courier/models/broadcast_schedule.rb +59 -0
  18. data/lib/courier/models/broadcast_schedule_params.rb +20 -0
  19. data/lib/courier/models/broadcast_send_params.rb +20 -0
  20. data/lib/courier/models/broadcast_update_params.rb +20 -0
  21. data/lib/courier/models/create_broadcast_request.rb +43 -0
  22. data/lib/courier/models/inbox/message_delete_params.rb +22 -0
  23. data/lib/courier/models/inbox/message_restore_params.rb +22 -0
  24. data/lib/courier/models/journey_cancel_params.rb +13 -1
  25. data/lib/courier/models/journey_create_params.rb +13 -1
  26. data/lib/courier/models/journey_invoke_params.rb +13 -1
  27. data/lib/courier/models/journey_publish_params.rb +13 -1
  28. data/lib/courier/models/journeys/template_create_params.rb +13 -1
  29. data/lib/courier/models/journeys/template_publish_params.rb +13 -1
  30. data/lib/courier/models/lists/subscription_add_params.rb +13 -1
  31. data/lib/courier/models/notification_create_params.rb +13 -1
  32. data/lib/courier/models/notification_publish_params.rb +13 -1
  33. data/lib/courier/models/profile_create_params.rb +13 -1
  34. data/lib/courier/models/profiles/list_subscribe_params.rb +13 -1
  35. data/lib/courier/models/provider_create_params.rb +15 -1
  36. data/lib/courier/models/routing_strategy_create_params.rb +13 -1
  37. data/lib/courier/models/schedule_broadcast_request.rb +59 -0
  38. data/lib/courier/models/send_broadcast_request.rb +39 -0
  39. data/lib/courier/models/send_message_params.rb +15 -1
  40. data/lib/courier/models/update_broadcast_request.rb +18 -0
  41. data/lib/courier/models/users/preference_bulk_update_params.rb +15 -1
  42. data/lib/courier/models/users/preference_update_or_create_topic_params.rb +14 -4
  43. data/lib/courier/models/users/topic_preference.rb +21 -7
  44. data/lib/courier/models/workspace_preference_create_params.rb +13 -1
  45. data/lib/courier/models/workspace_preference_publish_params.rb +13 -1
  46. data/lib/courier/models/workspace_preferences/topic_create_params.rb +13 -1
  47. data/lib/courier/models.rb +38 -0
  48. data/lib/courier/resources/audiences.rb +12 -5
  49. data/lib/courier/resources/audit_events.rb +5 -2
  50. data/lib/courier/resources/auth.rb +5 -1
  51. data/lib/courier/resources/automations/invoke.rb +47 -23
  52. data/lib/courier/resources/automations.rb +6 -1
  53. data/lib/courier/resources/brands.rb +38 -12
  54. data/lib/courier/resources/broadcasts.rb +290 -0
  55. data/lib/courier/resources/digests/schedules.rb +4 -3
  56. data/lib/courier/resources/digests.rb +2 -0
  57. data/lib/courier/resources/inbound.rb +3 -1
  58. data/lib/courier/resources/inbox/messages.rb +58 -0
  59. data/lib/courier/resources/inbox.rb +19 -0
  60. data/lib/courier/resources/journeys/templates.rb +43 -25
  61. data/lib/courier/resources/journeys.rb +73 -44
  62. data/lib/courier/resources/lists/subscriptions.rb +22 -8
  63. data/lib/courier/resources/lists.rb +14 -5
  64. data/lib/courier/resources/messages.rb +14 -14
  65. data/lib/courier/resources/notifications/checks.rb +8 -3
  66. data/lib/courier/resources/notifications.rb +48 -30
  67. data/lib/courier/resources/profiles/lists.rb +19 -8
  68. data/lib/courier/resources/profiles.rb +25 -14
  69. data/lib/courier/resources/providers/catalog.rb +4 -4
  70. data/lib/courier/resources/providers.rb +27 -18
  71. data/lib/courier/resources/requests.rb +4 -1
  72. data/lib/courier/resources/routing_strategies.rb +24 -12
  73. data/lib/courier/resources/send.rb +14 -4
  74. data/lib/courier/resources/tenants/preferences/items.rb +6 -2
  75. data/lib/courier/resources/tenants/preferences.rb +2 -0
  76. data/lib/courier/resources/tenants/templates/versions.rb +4 -7
  77. data/lib/courier/resources/tenants/templates.rb +14 -19
  78. data/lib/courier/resources/tenants.rb +14 -5
  79. data/lib/courier/resources/translations.rb +6 -2
  80. data/lib/courier/resources/users/preferences.rb +23 -42
  81. data/lib/courier/resources/users/tenants.rb +12 -10
  82. data/lib/courier/resources/users/tokens.rb +14 -6
  83. data/lib/courier/resources/users.rb +6 -0
  84. data/lib/courier/resources/workspace_preferences/topics.rb +27 -19
  85. data/lib/courier/resources/workspace_preferences.rb +40 -20
  86. data/lib/courier/version.rb +1 -1
  87. data/lib/courier.rb +24 -1
  88. data/rbi/courier/client.rbi +41 -0
  89. data/rbi/courier/models/automations/invoke_invoke_ad_hoc_params.rbi +18 -0
  90. data/rbi/courier/models/automations/invoke_invoke_by_template_params.rbi +18 -0
  91. data/rbi/courier/models/brand_create_params.rbi +18 -0
  92. data/rbi/courier/models/broadcast.rbi +164 -0
  93. data/rbi/courier/models/broadcast_archive_params.rbi +35 -0
  94. data/rbi/courier/models/broadcast_cancel_params.rbi +35 -0
  95. data/rbi/courier/models/broadcast_create_params.rbi +27 -0
  96. data/rbi/courier/models/broadcast_duplicate_params.rbi +35 -0
  97. data/rbi/courier/models/broadcast_list_params.rbi +54 -0
  98. data/rbi/courier/models/broadcast_list_response.rbi +39 -0
  99. data/rbi/courier/models/broadcast_put_content_params.rbi +35 -0
  100. data/rbi/courier/models/broadcast_retrieve_content_params.rbi +57 -0
  101. data/rbi/courier/models/broadcast_retrieve_params.rbi +35 -0
  102. data/rbi/courier/models/broadcast_schedule.rbi +92 -0
  103. data/rbi/courier/models/broadcast_schedule_params.rbi +35 -0
  104. data/rbi/courier/models/broadcast_send_params.rbi +35 -0
  105. data/rbi/courier/models/broadcast_update_params.rbi +35 -0
  106. data/rbi/courier/models/create_broadcast_request.rbi +81 -0
  107. data/rbi/courier/models/inbox/message_delete_params.rbi +40 -0
  108. data/rbi/courier/models/inbox/message_restore_params.rbi +40 -0
  109. data/rbi/courier/models/journey_cancel_params.rbi +31 -5
  110. data/rbi/courier/models/journey_create_params.rbi +31 -5
  111. data/rbi/courier/models/journey_invoke_params.rbi +26 -2
  112. data/rbi/courier/models/journey_publish_params.rbi +26 -2
  113. data/rbi/courier/models/journeys/template_create_params.rbi +26 -2
  114. data/rbi/courier/models/journeys/template_publish_params.rbi +23 -1
  115. data/rbi/courier/models/lists/subscription_add_params.rbi +23 -1
  116. data/rbi/courier/models/notification_create_params.rbi +31 -5
  117. data/rbi/courier/models/notification_publish_params.rbi +26 -2
  118. data/rbi/courier/models/profile_create_params.rbi +23 -1
  119. data/rbi/courier/models/profiles/list_subscribe_params.rbi +23 -1
  120. data/rbi/courier/models/provider_create_params.rbi +18 -0
  121. data/rbi/courier/models/routing_strategy_create_params.rbi +31 -5
  122. data/rbi/courier/models/schedule_broadcast_request.rbi +103 -0
  123. data/rbi/courier/models/send_broadcast_request.rbi +77 -0
  124. data/rbi/courier/models/send_message_params.rbi +18 -0
  125. data/rbi/courier/models/update_broadcast_request.rbi +28 -0
  126. data/rbi/courier/models/users/preference_bulk_update_params.rbi +18 -0
  127. data/rbi/courier/models/users/preference_update_or_create_topic_params.rbi +14 -2
  128. data/rbi/courier/models/users/topic_preference.rbi +24 -2
  129. data/rbi/courier/models/workspace_preference_create_params.rbi +31 -5
  130. data/rbi/courier/models/workspace_preference_publish_params.rbi +31 -5
  131. data/rbi/courier/models/workspace_preferences/topic_create_params.rbi +26 -2
  132. data/rbi/courier/models.rbi +39 -0
  133. data/rbi/courier/resources/audiences.rbi +12 -5
  134. data/rbi/courier/resources/audit_events.rbi +5 -2
  135. data/rbi/courier/resources/auth.rbi +5 -1
  136. data/rbi/courier/resources/automations/invoke.rbi +48 -7
  137. data/rbi/courier/resources/automations.rbi +6 -1
  138. data/rbi/courier/resources/brands.rbi +37 -7
  139. data/rbi/courier/resources/broadcasts.rbi +199 -0
  140. data/rbi/courier/resources/digests/schedules.rbi +4 -3
  141. data/rbi/courier/resources/digests.rbi +2 -0
  142. data/rbi/courier/resources/inbound.rbi +3 -1
  143. data/rbi/courier/resources/inbox/messages.rbi +44 -0
  144. data/rbi/courier/resources/inbox.rbi +16 -0
  145. data/rbi/courier/resources/journeys/templates.rbi +47 -17
  146. data/rbi/courier/resources/journeys.rbi +93 -39
  147. data/rbi/courier/resources/lists/subscriptions.rbi +24 -5
  148. data/rbi/courier/resources/lists.rbi +14 -5
  149. data/rbi/courier/resources/messages.rbi +14 -14
  150. data/rbi/courier/resources/notifications/checks.rbi +8 -3
  151. data/rbi/courier/resources/notifications.rbi +58 -28
  152. data/rbi/courier/resources/profiles/lists.rbi +25 -6
  153. data/rbi/courier/resources/profiles.rbi +31 -11
  154. data/rbi/courier/resources/providers/catalog.rbi +4 -4
  155. data/rbi/courier/resources/providers.rbi +35 -19
  156. data/rbi/courier/resources/requests.rbi +4 -1
  157. data/rbi/courier/resources/routing_strategies.rbi +26 -10
  158. data/rbi/courier/resources/send.rbi +20 -3
  159. data/rbi/courier/resources/tenants/preferences/items.rbi +6 -2
  160. data/rbi/courier/resources/tenants/preferences.rbi +2 -0
  161. data/rbi/courier/resources/tenants/templates/versions.rbi +4 -7
  162. data/rbi/courier/resources/tenants/templates.rbi +14 -19
  163. data/rbi/courier/resources/tenants.rbi +14 -5
  164. data/rbi/courier/resources/translations.rbi +6 -2
  165. data/rbi/courier/resources/users/preferences.rbi +28 -40
  166. data/rbi/courier/resources/users/tenants.rbi +12 -10
  167. data/rbi/courier/resources/users/tokens.rbi +14 -6
  168. data/rbi/courier/resources/users.rbi +6 -0
  169. data/rbi/courier/resources/workspace_preferences/topics.rbi +37 -18
  170. data/rbi/courier/resources/workspace_preferences.rbi +51 -17
  171. data/sig/courier/client.rbs +4 -0
  172. data/sig/courier/models/automations/invoke_invoke_ad_hoc_params.rbs +15 -1
  173. data/sig/courier/models/automations/invoke_invoke_by_template_params.rbs +15 -1
  174. data/sig/courier/models/brand_create_params.rbs +15 -1
  175. data/sig/courier/models/broadcast.rbs +98 -0
  176. data/sig/courier/models/broadcast_archive_params.rbs +23 -0
  177. data/sig/courier/models/broadcast_cancel_params.rbs +23 -0
  178. data/sig/courier/models/broadcast_create_params.rbs +15 -0
  179. data/sig/courier/models/broadcast_duplicate_params.rbs +23 -0
  180. data/sig/courier/models/broadcast_list_params.rbs +30 -0
  181. data/sig/courier/models/broadcast_list_response.rbs +22 -0
  182. data/sig/courier/models/broadcast_put_content_params.rbs +25 -0
  183. data/sig/courier/models/broadcast_retrieve_content_params.rbs +30 -0
  184. data/sig/courier/models/broadcast_retrieve_params.rbs +23 -0
  185. data/sig/courier/models/broadcast_schedule.rbs +46 -0
  186. data/sig/courier/models/broadcast_schedule_params.rbs +25 -0
  187. data/sig/courier/models/broadcast_send_params.rbs +25 -0
  188. data/sig/courier/models/broadcast_update_params.rbs +25 -0
  189. data/sig/courier/models/create_broadcast_request.rbs +40 -0
  190. data/sig/courier/models/inbox/message_delete_params.rbs +25 -0
  191. data/sig/courier/models/inbox/message_restore_params.rbs +25 -0
  192. data/sig/courier/models/journey_cancel_params.rbs +20 -3
  193. data/sig/courier/models/journey_create_params.rbs +20 -3
  194. data/sig/courier/models/journey_invoke_params.rbs +18 -1
  195. data/sig/courier/models/journey_publish_params.rbs +18 -1
  196. data/sig/courier/models/journeys/template_create_params.rbs +18 -1
  197. data/sig/courier/models/journeys/template_publish_params.rbs +18 -1
  198. data/sig/courier/models/lists/subscription_add_params.rbs +15 -1
  199. data/sig/courier/models/notification_create_params.rbs +20 -3
  200. data/sig/courier/models/notification_publish_params.rbs +18 -2
  201. data/sig/courier/models/profile_create_params.rbs +18 -1
  202. data/sig/courier/models/profiles/list_subscribe_params.rbs +15 -1
  203. data/sig/courier/models/provider_create_params.rbs +15 -1
  204. data/sig/courier/models/routing_strategy_create_params.rbs +20 -3
  205. data/sig/courier/models/schedule_broadcast_request.rbs +48 -0
  206. data/sig/courier/models/send_broadcast_request.rbs +36 -0
  207. data/sig/courier/models/send_message_params.rbs +17 -1
  208. data/sig/courier/models/update_broadcast_request.rbs +13 -0
  209. data/sig/courier/models/users/preference_bulk_update_params.rbs +15 -1
  210. data/sig/courier/models/workspace_preference_create_params.rbs +20 -3
  211. data/sig/courier/models/workspace_preference_publish_params.rbs +20 -3
  212. data/sig/courier/models/workspace_preferences/topic_create_params.rbs +18 -1
  213. data/sig/courier/models.rbs +38 -0
  214. data/sig/courier/resources/automations/invoke.rbs +4 -0
  215. data/sig/courier/resources/brands.rbs +2 -0
  216. data/sig/courier/resources/broadcasts.rbs +74 -0
  217. data/sig/courier/resources/inbox/messages.rbs +19 -0
  218. data/sig/courier/resources/inbox.rbs +9 -0
  219. data/sig/courier/resources/journeys/templates.rbs +4 -0
  220. data/sig/courier/resources/journeys.rbs +8 -0
  221. data/sig/courier/resources/lists/subscriptions.rbs +2 -0
  222. data/sig/courier/resources/notifications.rbs +4 -0
  223. data/sig/courier/resources/profiles/lists.rbs +2 -0
  224. data/sig/courier/resources/profiles.rbs +2 -0
  225. data/sig/courier/resources/providers.rbs +2 -0
  226. data/sig/courier/resources/routing_strategies.rbs +2 -0
  227. data/sig/courier/resources/send.rbs +2 -0
  228. data/sig/courier/resources/users/preferences.rbs +2 -0
  229. data/sig/courier/resources/workspace_preferences/topics.rbs +2 -0
  230. data/sig/courier/resources/workspace_preferences.rbs +4 -0
  231. metadata +71 -2
@@ -1,7 +1,12 @@
1
1
  module Courier
2
2
  module Models
3
3
  type profile_create_params =
4
- { user_id: String, profile: ::Hash[Symbol, top] }
4
+ {
5
+ user_id: String,
6
+ profile: ::Hash[Symbol, top],
7
+ idempotency_key: String,
8
+ x_idempotency_expiration: String
9
+ }
5
10
  & Courier::Internal::Type::request_parameters
6
11
 
7
12
  class ProfileCreateParams < Courier::Internal::Type::BaseModel
@@ -12,15 +17,27 @@ module Courier
12
17
 
13
18
  attr_accessor profile: ::Hash[Symbol, top]
14
19
 
20
+ attr_reader idempotency_key: String?
21
+
22
+ def idempotency_key=: (String) -> String
23
+
24
+ attr_reader x_idempotency_expiration: String?
25
+
26
+ def x_idempotency_expiration=: (String) -> String
27
+
15
28
  def initialize: (
16
29
  user_id: String,
17
30
  profile: ::Hash[Symbol, top],
31
+ ?idempotency_key: String,
32
+ ?x_idempotency_expiration: String,
18
33
  ?request_options: Courier::request_opts
19
34
  ) -> void
20
35
 
21
36
  def to_hash: -> {
22
37
  user_id: String,
23
38
  profile: ::Hash[Symbol, top],
39
+ idempotency_key: String,
40
+ x_idempotency_expiration: String,
24
41
  request_options: Courier::RequestOptions
25
42
  }
26
43
  end
@@ -4,7 +4,9 @@ module Courier
4
4
  type list_subscribe_params =
5
5
  {
6
6
  user_id: String,
7
- lists: ::Array[Courier::SubscribeToListsRequestItem]
7
+ lists: ::Array[Courier::SubscribeToListsRequestItem],
8
+ idempotency_key: String,
9
+ x_idempotency_expiration: String
8
10
  }
9
11
  & Courier::Internal::Type::request_parameters
10
12
 
@@ -16,15 +18,27 @@ module Courier
16
18
 
17
19
  attr_accessor lists: ::Array[Courier::SubscribeToListsRequestItem]
18
20
 
21
+ attr_reader idempotency_key: String?
22
+
23
+ def idempotency_key=: (String) -> String
24
+
25
+ attr_reader x_idempotency_expiration: String?
26
+
27
+ def x_idempotency_expiration=: (String) -> String
28
+
19
29
  def initialize: (
20
30
  user_id: String,
21
31
  lists: ::Array[Courier::SubscribeToListsRequestItem],
32
+ ?idempotency_key: String,
33
+ ?x_idempotency_expiration: String,
22
34
  ?request_options: Courier::request_opts
23
35
  ) -> void
24
36
 
25
37
  def to_hash: -> {
26
38
  user_id: String,
27
39
  lists: ::Array[Courier::SubscribeToListsRequestItem],
40
+ idempotency_key: String,
41
+ x_idempotency_expiration: String,
28
42
  request_options: Courier::RequestOptions
29
43
  }
30
44
  end
@@ -5,7 +5,9 @@ module Courier
5
5
  provider: String,
6
6
  alias_: String,
7
7
  settings: ::Hash[Symbol, top],
8
- title: String
8
+ title: String,
9
+ idempotency_key: String,
10
+ x_idempotency_expiration: String
9
11
  }
10
12
  & Courier::Internal::Type::request_parameters
11
13
 
@@ -27,11 +29,21 @@ module Courier
27
29
 
28
30
  def title=: (String) -> String
29
31
 
32
+ attr_reader idempotency_key: String?
33
+
34
+ def idempotency_key=: (String) -> String
35
+
36
+ attr_reader x_idempotency_expiration: String?
37
+
38
+ def x_idempotency_expiration=: (String) -> String
39
+
30
40
  def initialize: (
31
41
  provider: String,
32
42
  ?alias_: String,
33
43
  ?settings: ::Hash[Symbol, top],
34
44
  ?title: String,
45
+ ?idempotency_key: String,
46
+ ?x_idempotency_expiration: String,
35
47
  ?request_options: Courier::request_opts
36
48
  ) -> void
37
49
 
@@ -40,6 +52,8 @@ module Courier
40
52
  alias_: String,
41
53
  settings: ::Hash[Symbol, top],
42
54
  title: String,
55
+ idempotency_key: String,
56
+ x_idempotency_expiration: String,
43
57
  request_options: Courier::RequestOptions
44
58
  }
45
59
  end
@@ -1,15 +1,32 @@
1
1
  module Courier
2
2
  module Models
3
3
  type routing_strategy_create_params =
4
- { } & Courier::Internal::Type::request_parameters
4
+ { idempotency_key: String, x_idempotency_expiration: String }
5
+ & Courier::Internal::Type::request_parameters
5
6
 
6
7
  class RoutingStrategyCreateParams < Courier::Models::RoutingStrategyCreateRequest
7
8
  extend Courier::Internal::Type::RequestParameters::Converter
8
9
  include Courier::Internal::Type::RequestParameters
9
10
 
10
- def initialize: (?request_options: Courier::request_opts) -> void
11
+ def idempotency_key: -> String?
11
12
 
12
- def to_hash: -> { request_options: Courier::RequestOptions }
13
+ def idempotency_key=: (String _) -> String
14
+
15
+ def x_idempotency_expiration: -> String?
16
+
17
+ def x_idempotency_expiration=: (String _) -> String
18
+
19
+ def initialize: (
20
+ ?idempotency_key: String,
21
+ ?x_idempotency_expiration: String,
22
+ ?request_options: Courier::request_opts
23
+ ) -> void
24
+
25
+ def to_hash: -> {
26
+ idempotency_key: String,
27
+ x_idempotency_expiration: String,
28
+ request_options: Courier::RequestOptions
29
+ }
13
30
  end
14
31
  end
15
32
  end
@@ -0,0 +1,48 @@
1
+ module Courier
2
+ module Models
3
+ type schedule_broadcast_request =
4
+ {
5
+ recipient_id: String,
6
+ recipient_type: Courier::Models::ScheduleBroadcastRequest::recipient_type,
7
+ scheduled_to: String,
8
+ timezone: String
9
+ }
10
+
11
+ class ScheduleBroadcastRequest < Courier::Internal::Type::BaseModel
12
+ attr_accessor recipient_id: String
13
+
14
+ attr_accessor recipient_type: Courier::Models::ScheduleBroadcastRequest::recipient_type
15
+
16
+ attr_accessor scheduled_to: String
17
+
18
+ attr_reader timezone: String?
19
+
20
+ def timezone=: (String) -> String
21
+
22
+ def initialize: (
23
+ recipient_id: String,
24
+ recipient_type: Courier::Models::ScheduleBroadcastRequest::recipient_type,
25
+ scheduled_to: String,
26
+ ?timezone: String
27
+ ) -> void
28
+
29
+ def to_hash: -> {
30
+ recipient_id: String,
31
+ recipient_type: Courier::Models::ScheduleBroadcastRequest::recipient_type,
32
+ scheduled_to: String,
33
+ timezone: String
34
+ }
35
+
36
+ type recipient_type = :list | :audience
37
+
38
+ module RecipientType
39
+ extend Courier::Internal::Type::Enum
40
+
41
+ LIST: :list
42
+ AUDIENCE: :audience
43
+
44
+ def self?.values: -> ::Array[Courier::Models::ScheduleBroadcastRequest::recipient_type]
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,36 @@
1
+ module Courier
2
+ module Models
3
+ type send_broadcast_request =
4
+ {
5
+ recipient_id: String,
6
+ recipient_type: Courier::Models::SendBroadcastRequest::recipient_type
7
+ }
8
+
9
+ class SendBroadcastRequest < Courier::Internal::Type::BaseModel
10
+ attr_accessor recipient_id: String
11
+
12
+ attr_accessor recipient_type: Courier::Models::SendBroadcastRequest::recipient_type
13
+
14
+ def initialize: (
15
+ recipient_id: String,
16
+ recipient_type: Courier::Models::SendBroadcastRequest::recipient_type
17
+ ) -> void
18
+
19
+ def to_hash: -> {
20
+ recipient_id: String,
21
+ recipient_type: Courier::Models::SendBroadcastRequest::recipient_type
22
+ }
23
+
24
+ type recipient_type = :list | :audience
25
+
26
+ module RecipientType
27
+ extend Courier::Internal::Type::Enum
28
+
29
+ LIST: :list
30
+ AUDIENCE: :audience
31
+
32
+ def self?.values: -> ::Array[Courier::Models::SendBroadcastRequest::recipient_type]
33
+ end
34
+ end
35
+ end
36
+ end
@@ -1,7 +1,11 @@
1
1
  module Courier
2
2
  module Models
3
3
  type send_message_params =
4
- { message: Courier::SendMessageParams::Message }
4
+ {
5
+ message: Courier::SendMessageParams::Message,
6
+ idempotency_key: String,
7
+ x_idempotency_expiration: String
8
+ }
5
9
  & Courier::Internal::Type::request_parameters
6
10
 
7
11
  class SendMessageParams < Courier::Internal::Type::BaseModel
@@ -10,13 +14,25 @@ module Courier
10
14
 
11
15
  attr_accessor message: Courier::SendMessageParams::Message
12
16
 
17
+ attr_reader idempotency_key: String?
18
+
19
+ def idempotency_key=: (String) -> String
20
+
21
+ attr_reader x_idempotency_expiration: String?
22
+
23
+ def x_idempotency_expiration=: (String) -> String
24
+
13
25
  def initialize: (
14
26
  message: Courier::SendMessageParams::Message,
27
+ ?idempotency_key: String,
28
+ ?x_idempotency_expiration: String,
15
29
  ?request_options: Courier::request_opts
16
30
  ) -> void
17
31
 
18
32
  def to_hash: -> {
19
33
  message: Courier::SendMessageParams::Message,
34
+ idempotency_key: String,
35
+ x_idempotency_expiration: String,
20
36
  request_options: Courier::RequestOptions
21
37
  }
22
38
 
@@ -0,0 +1,13 @@
1
+ module Courier
2
+ module Models
3
+ type update_broadcast_request = { name: String }
4
+
5
+ class UpdateBroadcastRequest < Courier::Internal::Type::BaseModel
6
+ attr_accessor name: String
7
+
8
+ def initialize: (name: String) -> void
9
+
10
+ def to_hash: -> { name: String }
11
+ end
12
+ end
13
+ end
@@ -5,7 +5,9 @@ module Courier
5
5
  {
6
6
  user_id: String,
7
7
  topics: ::Array[Courier::Users::PreferenceBulkUpdateParams::Topic],
8
- tenant_id: String?
8
+ tenant_id: String?,
9
+ idempotency_key: String,
10
+ x_idempotency_expiration: String
9
11
  }
10
12
  & Courier::Internal::Type::request_parameters
11
13
 
@@ -19,10 +21,20 @@ module Courier
19
21
 
20
22
  attr_accessor tenant_id: String?
21
23
 
24
+ attr_reader idempotency_key: String?
25
+
26
+ def idempotency_key=: (String) -> String
27
+
28
+ attr_reader x_idempotency_expiration: String?
29
+
30
+ def x_idempotency_expiration=: (String) -> String
31
+
22
32
  def initialize: (
23
33
  user_id: String,
24
34
  topics: ::Array[Courier::Users::PreferenceBulkUpdateParams::Topic],
25
35
  ?tenant_id: String?,
36
+ ?idempotency_key: String,
37
+ ?x_idempotency_expiration: String,
26
38
  ?request_options: Courier::request_opts
27
39
  ) -> void
28
40
 
@@ -30,6 +42,8 @@ module Courier
30
42
  user_id: String,
31
43
  topics: ::Array[Courier::Users::PreferenceBulkUpdateParams::Topic],
32
44
  tenant_id: String?,
45
+ idempotency_key: String,
46
+ x_idempotency_expiration: String,
33
47
  request_options: Courier::RequestOptions
34
48
  }
35
49
 
@@ -1,15 +1,32 @@
1
1
  module Courier
2
2
  module Models
3
3
  type workspace_preference_create_params =
4
- { } & Courier::Internal::Type::request_parameters
4
+ { idempotency_key: String, x_idempotency_expiration: String }
5
+ & Courier::Internal::Type::request_parameters
5
6
 
6
7
  class WorkspacePreferenceCreateParams < Courier::Models::WorkspacePreferenceCreateRequest
7
8
  extend Courier::Internal::Type::RequestParameters::Converter
8
9
  include Courier::Internal::Type::RequestParameters
9
10
 
10
- def initialize: (?request_options: Courier::request_opts) -> void
11
+ def idempotency_key: -> String?
11
12
 
12
- def to_hash: -> { request_options: Courier::RequestOptions }
13
+ def idempotency_key=: (String _) -> String
14
+
15
+ def x_idempotency_expiration: -> String?
16
+
17
+ def x_idempotency_expiration=: (String _) -> String
18
+
19
+ def initialize: (
20
+ ?idempotency_key: String,
21
+ ?x_idempotency_expiration: String,
22
+ ?request_options: Courier::request_opts
23
+ ) -> void
24
+
25
+ def to_hash: -> {
26
+ idempotency_key: String,
27
+ x_idempotency_expiration: String,
28
+ request_options: Courier::RequestOptions
29
+ }
13
30
  end
14
31
  end
15
32
  end
@@ -1,15 +1,32 @@
1
1
  module Courier
2
2
  module Models
3
3
  type workspace_preference_publish_params =
4
- { } & Courier::Internal::Type::request_parameters
4
+ { idempotency_key: String, x_idempotency_expiration: String }
5
+ & Courier::Internal::Type::request_parameters
5
6
 
6
7
  class WorkspacePreferencePublishParams < Courier::Models::PublishPreferencesRequest
7
8
  extend Courier::Internal::Type::RequestParameters::Converter
8
9
  include Courier::Internal::Type::RequestParameters
9
10
 
10
- def initialize: (?request_options: Courier::request_opts) -> void
11
+ def idempotency_key: -> String?
11
12
 
12
- def to_hash: -> { request_options: Courier::RequestOptions }
13
+ def idempotency_key=: (String _) -> String
14
+
15
+ def x_idempotency_expiration: -> String?
16
+
17
+ def x_idempotency_expiration=: (String _) -> String
18
+
19
+ def initialize: (
20
+ ?idempotency_key: String,
21
+ ?x_idempotency_expiration: String,
22
+ ?request_options: Courier::request_opts
23
+ ) -> void
24
+
25
+ def to_hash: -> {
26
+ idempotency_key: String,
27
+ x_idempotency_expiration: String,
28
+ request_options: Courier::RequestOptions
29
+ }
13
30
  end
14
31
  end
15
32
  end
@@ -2,7 +2,12 @@ module Courier
2
2
  module Models
3
3
  module WorkspacePreferences
4
4
  type topic_create_params =
5
- { section_id: String } & Courier::Internal::Type::request_parameters
5
+ {
6
+ section_id: String,
7
+ idempotency_key: String,
8
+ x_idempotency_expiration: String
9
+ }
10
+ & Courier::Internal::Type::request_parameters
6
11
 
7
12
  class TopicCreateParams < Courier::Models::WorkspacePreferenceTopicCreateRequest
8
13
  extend Courier::Internal::Type::RequestParameters::Converter
@@ -12,13 +17,25 @@ module Courier
12
17
 
13
18
  def section_id=: (String _) -> String
14
19
 
20
+ def idempotency_key: -> String?
21
+
22
+ def idempotency_key=: (String _) -> String
23
+
24
+ def x_idempotency_expiration: -> String?
25
+
26
+ def x_idempotency_expiration=: (String _) -> String
27
+
15
28
  def initialize: (
16
29
  section_id: String,
30
+ ?idempotency_key: String,
31
+ ?x_idempotency_expiration: String,
17
32
  ?request_options: Courier::request_opts
18
33
  ) -> void
19
34
 
20
35
  def to_hash: -> {
21
36
  section_id: String,
37
+ idempotency_key: String,
38
+ x_idempotency_expiration: String,
22
39
  request_options: Courier::RequestOptions
23
40
  }
24
41
  end
@@ -73,6 +73,34 @@ module Courier
73
73
 
74
74
  class BrandUpdateParams = Courier::Models::BrandUpdateParams
75
75
 
76
+ class Broadcast = Courier::Models::Broadcast
77
+
78
+ class BroadcastArchiveParams = Courier::Models::BroadcastArchiveParams
79
+
80
+ class BroadcastCancelParams = Courier::Models::BroadcastCancelParams
81
+
82
+ class BroadcastCreateParams = Courier::Models::BroadcastCreateParams
83
+
84
+ class BroadcastDuplicateParams = Courier::Models::BroadcastDuplicateParams
85
+
86
+ class BroadcastListParams = Courier::Models::BroadcastListParams
87
+
88
+ class BroadcastListResponse = Courier::Models::BroadcastListResponse
89
+
90
+ class BroadcastPutContentParams = Courier::Models::BroadcastPutContentParams
91
+
92
+ class BroadcastRetrieveContentParams = Courier::Models::BroadcastRetrieveContentParams
93
+
94
+ class BroadcastRetrieveParams = Courier::Models::BroadcastRetrieveParams
95
+
96
+ class BroadcastSchedule = Courier::Models::BroadcastSchedule
97
+
98
+ class BroadcastScheduleParams = Courier::Models::BroadcastScheduleParams
99
+
100
+ class BroadcastSendParams = Courier::Models::BroadcastSendParams
101
+
102
+ class BroadcastUpdateParams = Courier::Models::BroadcastUpdateParams
103
+
76
104
  module CancelJourneyRequest = Courier::Models::CancelJourneyRequest
77
105
 
78
106
  module CancelJourneyResponse = Courier::Models::CancelJourneyResponse
@@ -87,6 +115,8 @@ module Courier
87
115
 
88
116
  class Check = Courier::Models::Check
89
117
 
118
+ class CreateBroadcastRequest = Courier::Models::CreateBroadcastRequest
119
+
90
120
  class CreateJourneyRequest = Courier::Models::CreateJourneyRequest
91
121
 
92
122
  class DefaultPreferences = Courier::Models::DefaultPreferences
@@ -145,6 +175,8 @@ module Courier
145
175
 
146
176
  class InboundTrackEventParams = Courier::Models::InboundTrackEventParams
147
177
 
178
+ module Inbox = Courier::Models::Inbox
179
+
148
180
  class Intercom = Courier::Models::Intercom
149
181
 
150
182
  class IntercomRecipient = Courier::Models::IntercomRecipient
@@ -429,6 +461,10 @@ module Courier
429
461
 
430
462
  class Rule = Courier::Models::Rule
431
463
 
464
+ class ScheduleBroadcastRequest = Courier::Models::ScheduleBroadcastRequest
465
+
466
+ class SendBroadcastRequest = Courier::Models::SendBroadcastRequest
467
+
432
468
  class SendDirectMessage = Courier::Models::SendDirectMessage
433
469
 
434
470
  class SendMessageParams = Courier::Models::SendMessageParams
@@ -491,6 +527,8 @@ module Courier
491
527
 
492
528
  class TranslationUpdateParams = Courier::Models::TranslationUpdateParams
493
529
 
530
+ class UpdateBroadcastRequest = Courier::Models::UpdateBroadcastRequest
531
+
494
532
  class UserProfile = Courier::Models::UserProfile
495
533
 
496
534
  module UserProfileFirebaseToken = Courier::Models::UserProfileFirebaseToken
@@ -9,6 +9,8 @@ module Courier
9
9
  ?profile: ::Hash[Symbol, top]?,
10
10
  ?recipient: String?,
11
11
  ?template: String?,
12
+ ?idempotency_key: String,
13
+ ?x_idempotency_expiration: String,
12
14
  ?request_options: Courier::request_opts
13
15
  ) -> Courier::AutomationInvokeResponse
14
16
 
@@ -19,6 +21,8 @@ module Courier
19
21
  ?data: ::Hash[Symbol, top]?,
20
22
  ?profile: ::Hash[Symbol, top]?,
21
23
  ?template: String?,
24
+ ?idempotency_key: String,
25
+ ?x_idempotency_expiration: String,
22
26
  ?request_options: Courier::request_opts
23
27
  ) -> Courier::AutomationInvokeResponse
24
28
 
@@ -6,6 +6,8 @@ module Courier
6
6
  settings: Courier::BrandSettings,
7
7
  ?id: String?,
8
8
  ?snippets: Courier::BrandSnippets?,
9
+ ?idempotency_key: String,
10
+ ?x_idempotency_expiration: String,
9
11
  ?request_options: Courier::request_opts
10
12
  ) -> Courier::Brand
11
13
 
@@ -0,0 +1,74 @@
1
+ module Courier
2
+ module Resources
3
+ class Broadcasts
4
+ def create: (
5
+ channel: Courier::Models::CreateBroadcastRequest::channel,
6
+ name: String,
7
+ ?request_options: Courier::request_opts
8
+ ) -> Courier::Broadcast
9
+
10
+ def retrieve: (
11
+ String broadcast_id,
12
+ ?request_options: Courier::request_opts
13
+ ) -> Courier::Broadcast
14
+
15
+ def update: (
16
+ String broadcast_id,
17
+ name: String,
18
+ ?request_options: Courier::request_opts
19
+ ) -> Courier::Broadcast
20
+
21
+ def list: (
22
+ ?cursor: String?,
23
+ ?limit: Integer,
24
+ ?request_options: Courier::request_opts
25
+ ) -> Courier::BroadcastListResponse
26
+
27
+ def archive: (
28
+ String broadcast_id,
29
+ ?request_options: Courier::request_opts
30
+ ) -> Courier::Broadcast
31
+
32
+ def cancel: (
33
+ String broadcast_id,
34
+ ?request_options: Courier::request_opts
35
+ ) -> Courier::Broadcast
36
+
37
+ def duplicate: (
38
+ String broadcast_id,
39
+ ?request_options: Courier::request_opts
40
+ ) -> Courier::Broadcast
41
+
42
+ def put_content: (
43
+ String broadcast_id,
44
+ content: Courier::NotificationContentPutRequest::Content,
45
+ ?state: Courier::Models::notification_template_state,
46
+ ?request_options: Courier::request_opts
47
+ ) -> Courier::NotificationContentMutationResponse
48
+
49
+ def retrieve_content: (
50
+ String broadcast_id,
51
+ ?version: String,
52
+ ?request_options: Courier::request_opts
53
+ ) -> Courier::NotificationContentGetResponse
54
+
55
+ def schedule: (
56
+ String broadcast_id,
57
+ recipient_id: String,
58
+ recipient_type: Courier::Models::ScheduleBroadcastRequest::recipient_type,
59
+ scheduled_to: String,
60
+ ?timezone: String,
61
+ ?request_options: Courier::request_opts
62
+ ) -> Courier::Broadcast
63
+
64
+ def send_: (
65
+ String broadcast_id,
66
+ recipient_id: String,
67
+ recipient_type: Courier::Models::SendBroadcastRequest::recipient_type,
68
+ ?request_options: Courier::request_opts
69
+ ) -> Courier::Broadcast
70
+
71
+ def initialize: (client: Courier::Client) -> void
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,19 @@
1
+ module Courier
2
+ module Resources
3
+ class Inbox
4
+ class Messages
5
+ def delete: (
6
+ String message_id,
7
+ ?request_options: Courier::request_opts
8
+ ) -> nil
9
+
10
+ def restore: (
11
+ String message_id,
12
+ ?request_options: Courier::request_opts
13
+ ) -> nil
14
+
15
+ def initialize: (client: Courier::Client) -> void
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,9 @@
1
+ module Courier
2
+ module Resources
3
+ class Inbox
4
+ attr_reader messages: Courier::Resources::Inbox::Messages
5
+
6
+ def initialize: (client: Courier::Client) -> void
7
+ end
8
+ end
9
+ end
@@ -8,6 +8,8 @@ module Courier
8
8
  notification: Courier::JourneyTemplateCreateRequest::Notification,
9
9
  ?provider_key: String,
10
10
  ?state: String,
11
+ ?idempotency_key: String,
12
+ ?x_idempotency_expiration: String,
11
13
  ?request_options: Courier::request_opts
12
14
  ) -> Courier::JourneyTemplateGetResponse
13
15
 
@@ -40,6 +42,8 @@ module Courier
40
42
  String notification_id,
41
43
  template_id: String,
42
44
  ?version: String,
45
+ ?idempotency_key: String,
46
+ ?x_idempotency_expiration: String,
43
47
  ?request_options: Courier::request_opts
44
48
  ) -> nil
45
49