trycourier 4.20.0 → 4.22.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 (207) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +24 -0
  3. data/lib/courier/client.rb +39 -4
  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/inbox/message_delete_params.rb +22 -0
  8. data/lib/courier/models/inbox/message_restore_params.rb +22 -0
  9. data/lib/courier/models/journey_cancel_params.rb +13 -1
  10. data/lib/courier/models/journey_create_params.rb +13 -1
  11. data/lib/courier/models/journey_invoke_params.rb +13 -1
  12. data/lib/courier/models/journey_publish_params.rb +13 -1
  13. data/lib/courier/models/journeys/template_create_params.rb +13 -1
  14. data/lib/courier/models/journeys/template_publish_params.rb +13 -1
  15. data/lib/courier/models/lists/subscription_add_params.rb +13 -1
  16. data/lib/courier/models/notification_create_params.rb +13 -1
  17. data/lib/courier/models/notification_publish_params.rb +13 -1
  18. data/lib/courier/models/profile_create_params.rb +13 -1
  19. data/lib/courier/models/profiles/list_subscribe_params.rb +13 -1
  20. data/lib/courier/models/provider_create_params.rb +15 -1
  21. data/lib/courier/models/routing_strategy_create_params.rb +13 -1
  22. data/lib/courier/models/send_message_params.rb +15 -1
  23. data/lib/courier/models/users/preference_bulk_update_params.rb +15 -1
  24. data/lib/courier/models/users/preference_update_or_create_topic_params.rb +14 -4
  25. data/lib/courier/models/users/topic_preference.rb +21 -7
  26. data/lib/courier/models/workspace_preference_create_params.rb +13 -1
  27. data/lib/courier/models/workspace_preference_publish_params.rb +13 -1
  28. data/lib/courier/models/workspace_preferences/topic_create_params.rb +13 -1
  29. data/lib/courier/models.rb +2 -14
  30. data/lib/courier/resources/audiences.rb +12 -5
  31. data/lib/courier/resources/audit_events.rb +5 -2
  32. data/lib/courier/resources/auth.rb +5 -1
  33. data/lib/courier/resources/automations/invoke.rb +47 -23
  34. data/lib/courier/resources/automations.rb +6 -1
  35. data/lib/courier/resources/brands.rb +38 -12
  36. data/lib/courier/resources/digests/schedules.rb +4 -3
  37. data/lib/courier/resources/digests.rb +2 -0
  38. data/lib/courier/resources/inbound.rb +3 -1
  39. data/lib/courier/resources/inbox/messages.rb +58 -0
  40. data/lib/courier/resources/inbox.rb +19 -0
  41. data/lib/courier/resources/journeys/templates.rb +43 -25
  42. data/lib/courier/resources/journeys.rb +73 -44
  43. data/lib/courier/resources/lists/subscriptions.rb +22 -8
  44. data/lib/courier/resources/lists.rb +14 -5
  45. data/lib/courier/resources/messages.rb +14 -14
  46. data/lib/courier/resources/notifications/checks.rb +8 -3
  47. data/lib/courier/resources/notifications.rb +48 -30
  48. data/lib/courier/resources/profiles/lists.rb +19 -8
  49. data/lib/courier/resources/profiles.rb +25 -14
  50. data/lib/courier/resources/providers/catalog.rb +4 -4
  51. data/lib/courier/resources/providers.rb +27 -18
  52. data/lib/courier/resources/requests.rb +4 -1
  53. data/lib/courier/resources/routing_strategies.rb +24 -12
  54. data/lib/courier/resources/send.rb +14 -4
  55. data/lib/courier/resources/tenants/preferences/items.rb +6 -2
  56. data/lib/courier/resources/tenants/preferences.rb +2 -0
  57. data/lib/courier/resources/tenants/templates/versions.rb +4 -7
  58. data/lib/courier/resources/tenants/templates.rb +14 -19
  59. data/lib/courier/resources/tenants.rb +14 -5
  60. data/lib/courier/resources/translations.rb +6 -2
  61. data/lib/courier/resources/users/preferences.rb +23 -42
  62. data/lib/courier/resources/users/tenants.rb +12 -10
  63. data/lib/courier/resources/users/tokens.rb +14 -6
  64. data/lib/courier/resources/users.rb +6 -0
  65. data/lib/courier/resources/workspace_preferences/topics.rb +27 -19
  66. data/lib/courier/resources/workspace_preferences.rb +40 -20
  67. data/lib/courier/version.rb +1 -1
  68. data/lib/courier.rb +4 -11
  69. data/rbi/courier/client.rbi +38 -3
  70. data/rbi/courier/models/automations/invoke_invoke_ad_hoc_params.rbi +18 -0
  71. data/rbi/courier/models/automations/invoke_invoke_by_template_params.rbi +18 -0
  72. data/rbi/courier/models/brand_create_params.rbi +18 -0
  73. data/rbi/courier/models/inbox/message_delete_params.rbi +40 -0
  74. data/rbi/courier/models/inbox/message_restore_params.rbi +40 -0
  75. data/rbi/courier/models/journey_cancel_params.rbi +31 -5
  76. data/rbi/courier/models/journey_create_params.rbi +31 -5
  77. data/rbi/courier/models/journey_invoke_params.rbi +26 -2
  78. data/rbi/courier/models/journey_publish_params.rbi +26 -2
  79. data/rbi/courier/models/journeys/template_create_params.rbi +26 -2
  80. data/rbi/courier/models/journeys/template_publish_params.rbi +23 -1
  81. data/rbi/courier/models/lists/subscription_add_params.rbi +23 -1
  82. data/rbi/courier/models/notification_create_params.rbi +31 -5
  83. data/rbi/courier/models/notification_publish_params.rbi +26 -2
  84. data/rbi/courier/models/profile_create_params.rbi +23 -1
  85. data/rbi/courier/models/profiles/list_subscribe_params.rbi +23 -1
  86. data/rbi/courier/models/provider_create_params.rbi +18 -0
  87. data/rbi/courier/models/routing_strategy_create_params.rbi +31 -5
  88. data/rbi/courier/models/send_message_params.rbi +18 -0
  89. data/rbi/courier/models/users/preference_bulk_update_params.rbi +18 -0
  90. data/rbi/courier/models/users/preference_update_or_create_topic_params.rbi +14 -2
  91. data/rbi/courier/models/users/topic_preference.rbi +24 -2
  92. data/rbi/courier/models/workspace_preference_create_params.rbi +31 -5
  93. data/rbi/courier/models/workspace_preference_publish_params.rbi +31 -5
  94. data/rbi/courier/models/workspace_preferences/topic_create_params.rbi +26 -2
  95. data/rbi/courier/models.rbi +2 -14
  96. data/rbi/courier/resources/audiences.rbi +12 -5
  97. data/rbi/courier/resources/audit_events.rbi +5 -2
  98. data/rbi/courier/resources/auth.rbi +5 -1
  99. data/rbi/courier/resources/automations/invoke.rbi +48 -7
  100. data/rbi/courier/resources/automations.rbi +6 -1
  101. data/rbi/courier/resources/brands.rbi +37 -7
  102. data/rbi/courier/resources/digests/schedules.rbi +4 -3
  103. data/rbi/courier/resources/digests.rbi +2 -0
  104. data/rbi/courier/resources/inbound.rbi +3 -1
  105. data/rbi/courier/resources/inbox/messages.rbi +44 -0
  106. data/rbi/courier/resources/inbox.rbi +16 -0
  107. data/rbi/courier/resources/journeys/templates.rbi +47 -17
  108. data/rbi/courier/resources/journeys.rbi +93 -39
  109. data/rbi/courier/resources/lists/subscriptions.rbi +24 -5
  110. data/rbi/courier/resources/lists.rbi +14 -5
  111. data/rbi/courier/resources/messages.rbi +14 -14
  112. data/rbi/courier/resources/notifications/checks.rbi +8 -3
  113. data/rbi/courier/resources/notifications.rbi +58 -28
  114. data/rbi/courier/resources/profiles/lists.rbi +25 -6
  115. data/rbi/courier/resources/profiles.rbi +31 -11
  116. data/rbi/courier/resources/providers/catalog.rbi +4 -4
  117. data/rbi/courier/resources/providers.rbi +35 -19
  118. data/rbi/courier/resources/requests.rbi +4 -1
  119. data/rbi/courier/resources/routing_strategies.rbi +26 -10
  120. data/rbi/courier/resources/send.rbi +20 -3
  121. data/rbi/courier/resources/tenants/preferences/items.rbi +6 -2
  122. data/rbi/courier/resources/tenants/preferences.rbi +2 -0
  123. data/rbi/courier/resources/tenants/templates/versions.rbi +4 -7
  124. data/rbi/courier/resources/tenants/templates.rbi +14 -19
  125. data/rbi/courier/resources/tenants.rbi +14 -5
  126. data/rbi/courier/resources/translations.rbi +6 -2
  127. data/rbi/courier/resources/users/preferences.rbi +28 -40
  128. data/rbi/courier/resources/users/tenants.rbi +12 -10
  129. data/rbi/courier/resources/users/tokens.rbi +14 -6
  130. data/rbi/courier/resources/users.rbi +6 -0
  131. data/rbi/courier/resources/workspace_preferences/topics.rbi +37 -18
  132. data/rbi/courier/resources/workspace_preferences.rbi +51 -17
  133. data/sig/courier/client.rbs +2 -2
  134. data/sig/courier/models/automations/invoke_invoke_ad_hoc_params.rbs +15 -1
  135. data/sig/courier/models/automations/invoke_invoke_by_template_params.rbs +15 -1
  136. data/sig/courier/models/brand_create_params.rbs +15 -1
  137. data/sig/courier/models/inbox/message_delete_params.rbs +25 -0
  138. data/sig/courier/models/inbox/message_restore_params.rbs +25 -0
  139. data/sig/courier/models/journey_cancel_params.rbs +20 -3
  140. data/sig/courier/models/journey_create_params.rbs +20 -3
  141. data/sig/courier/models/journey_invoke_params.rbs +18 -1
  142. data/sig/courier/models/journey_publish_params.rbs +18 -1
  143. data/sig/courier/models/journeys/template_create_params.rbs +18 -1
  144. data/sig/courier/models/journeys/template_publish_params.rbs +18 -1
  145. data/sig/courier/models/lists/subscription_add_params.rbs +15 -1
  146. data/sig/courier/models/notification_create_params.rbs +20 -3
  147. data/sig/courier/models/notification_publish_params.rbs +18 -2
  148. data/sig/courier/models/profile_create_params.rbs +18 -1
  149. data/sig/courier/models/profiles/list_subscribe_params.rbs +15 -1
  150. data/sig/courier/models/provider_create_params.rbs +15 -1
  151. data/sig/courier/models/routing_strategy_create_params.rbs +20 -3
  152. data/sig/courier/models/send_message_params.rbs +17 -1
  153. data/sig/courier/models/users/preference_bulk_update_params.rbs +15 -1
  154. data/sig/courier/models/workspace_preference_create_params.rbs +20 -3
  155. data/sig/courier/models/workspace_preference_publish_params.rbs +20 -3
  156. data/sig/courier/models/workspace_preferences/topic_create_params.rbs +18 -1
  157. data/sig/courier/models.rbs +2 -14
  158. data/sig/courier/resources/automations/invoke.rbs +4 -0
  159. data/sig/courier/resources/brands.rbs +2 -0
  160. data/sig/courier/resources/inbox/messages.rbs +19 -0
  161. data/sig/courier/resources/inbox.rbs +9 -0
  162. data/sig/courier/resources/journeys/templates.rbs +4 -0
  163. data/sig/courier/resources/journeys.rbs +8 -0
  164. data/sig/courier/resources/lists/subscriptions.rbs +2 -0
  165. data/sig/courier/resources/notifications.rbs +4 -0
  166. data/sig/courier/resources/profiles/lists.rbs +2 -0
  167. data/sig/courier/resources/profiles.rbs +2 -0
  168. data/sig/courier/resources/providers.rbs +2 -0
  169. data/sig/courier/resources/routing_strategies.rbs +2 -0
  170. data/sig/courier/resources/send.rbs +2 -0
  171. data/sig/courier/resources/users/preferences.rbs +2 -0
  172. data/sig/courier/resources/workspace_preferences/topics.rbs +2 -0
  173. data/sig/courier/resources/workspace_preferences.rbs +4 -0
  174. metadata +14 -35
  175. data/lib/courier/models/bulk_add_users_params.rb +0 -26
  176. data/lib/courier/models/bulk_create_job_params.rb +0 -29
  177. data/lib/courier/models/bulk_create_job_response.rb +0 -16
  178. data/lib/courier/models/bulk_list_users_params.rb +0 -33
  179. data/lib/courier/models/bulk_list_users_response.rb +0 -49
  180. data/lib/courier/models/bulk_retrieve_job_params.rb +0 -20
  181. data/lib/courier/models/bulk_retrieve_job_response.rb +0 -76
  182. data/lib/courier/models/bulk_run_job_params.rb +0 -20
  183. data/lib/courier/models/inbound_bulk_message.rb +0 -91
  184. data/lib/courier/models/inbound_bulk_message_user.rb +0 -54
  185. data/lib/courier/resources/bulk.rb +0 -141
  186. data/rbi/courier/models/bulk_add_users_params.rbi +0 -43
  187. data/rbi/courier/models/bulk_create_job_params.rbi +0 -54
  188. data/rbi/courier/models/bulk_create_job_response.rbi +0 -26
  189. data/rbi/courier/models/bulk_list_users_params.rbi +0 -51
  190. data/rbi/courier/models/bulk_list_users_response.rbi +0 -125
  191. data/rbi/courier/models/bulk_retrieve_job_params.rbi +0 -35
  192. data/rbi/courier/models/bulk_retrieve_job_response.rbi +0 -157
  193. data/rbi/courier/models/bulk_run_job_params.rbi +0 -35
  194. data/rbi/courier/models/inbound_bulk_message.rbi +0 -124
  195. data/rbi/courier/models/inbound_bulk_message_user.rbi +0 -88
  196. data/rbi/courier/resources/bulk.rbi +0 -102
  197. data/sig/courier/models/bulk_add_users_params.rbs +0 -28
  198. data/sig/courier/models/bulk_create_job_params.rbs +0 -24
  199. data/sig/courier/models/bulk_create_job_response.rbs +0 -13
  200. data/sig/courier/models/bulk_list_users_params.rbs +0 -28
  201. data/sig/courier/models/bulk_list_users_response.rbs +0 -65
  202. data/sig/courier/models/bulk_retrieve_job_params.rbs +0 -23
  203. data/sig/courier/models/bulk_retrieve_job_response.rbs +0 -66
  204. data/sig/courier/models/bulk_run_job_params.rbs +0 -23
  205. data/sig/courier/models/inbound_bulk_message.rbs +0 -58
  206. data/sig/courier/models/inbound_bulk_message_user.rbs +0 -42
  207. data/sig/courier/resources/bulk.rbs +0 -34
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6a432e5519e4d84dc11a93b4a0f4801f76ce5a0f3ef2f898304335a29c2dab09
4
- data.tar.gz: 1267ecc520dd85dc4953f658a9a251dad688d8eb3668e1cd666f8f8829c1b1c0
3
+ metadata.gz: 0af9de60ad16c83c8fd9376ca8b10f3647d7673932ad891b5570534a7b061b47
4
+ data.tar.gz: e978830eee9f6617bcc0871ad4741b1f33af873bfa5be4f9dcb1313aae343d52
5
5
  SHA512:
6
- metadata.gz: a43868c8bb50e8dc543ecb1c9224e85149294f7f88bae99c7e5e4e3625189e2c8b60186ff221c7f76b000cadf10b6a03ea80c1bea123ed07598ba4e7fa9019ba
7
- data.tar.gz: c65e517247b08d26f7e21a7725ce12eb212654e1627635d5ad1523bc99656dd8864ba7f2debc75a65b6e405317b9c2b845d995c111e509a8a12cd9faefc386f3
6
+ metadata.gz: a00a9043cbbf7ed380707868a3949fcb99ad614224411458167a8bc5d818efe799a5938eeee91f019d88f6e37e794761262f4e7d608792961b76719348c99ee5
7
+ data.tar.gz: '08205fc11ce3a0f9bbf3ad3fa20b17f5f8640504ce79973848d162e8be66f7b684c1f8a3d63322c79c2a6952eaccaa9b49581a659a68892bf7af5fb2cf69e961'
data/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.22.0 (2026-07-29)
4
+
5
+ Full Changelog: [v4.21.0...v4.22.0](https://github.com/trycourier/courier-ruby/compare/v4.21.0...v4.22.0)
6
+
7
+ ### Features
8
+
9
+ * Document DELETE/PUT restore for inbox messages (C-19268) ([#175](https://github.com/trycourier/courier-ruby/issues/175)) ([36c1d01](https://github.com/trycourier/courier-ruby/commit/36c1d0116770621edfefe94781e72a8061e43781))
10
+ * spec: rename and reorder the API reference sections ([#179](https://github.com/trycourier/courier-ruby/issues/179)) ([997010e](https://github.com/trycourier/courier-ruby/commit/997010e32d3e0aed0ac138c67a8383ba1f99d416))
11
+
12
+
13
+ ### Documentation
14
+
15
+ * **openapi:** describe user topic-preference fields explicitly ([#172](https://github.com/trycourier/courier-ruby/issues/172)) ([c540bdb](https://github.com/trycourier/courier-ruby/commit/c540bdb855f180d850feeabf1a30ed4394092b50))
16
+ * **openapi:** document Idempotency-Key header on idempotent POST endpoints ([#176](https://github.com/trycourier/courier-ruby/issues/176)) ([b76b6bb](https://github.com/trycourier/courier-ruby/commit/b76b6bbbd0e856d486037d7d140b2d934eb150ea))
17
+ * **openapi:** rewrite operation descriptions for agents and SEO ([#174](https://github.com/trycourier/courier-ruby/issues/174)) ([8a8c25b](https://github.com/trycourier/courier-ruby/commit/8a8c25b54b9a8db2cd906ab09ac8729423fa35b8))
18
+
19
+ ## 4.21.0 (2026-07-23)
20
+
21
+ Full Changelog: [v4.20.0...v4.21.0](https://github.com/trycourier/courier-ruby/compare/v4.20.0...v4.21.0)
22
+
23
+ ### Features
24
+
25
+ * Remove /bulk endpoints from api-spec (C-19507) ([#171](https://github.com/trycourier/courier-ruby/issues/171)) ([e10d767](https://github.com/trycourier/courier-ruby/commit/e10d767174c28e0ae756041d7d2f1f78f2c72241))
26
+
3
27
  ## 4.20.0 (2026-07-20)
4
28
 
5
29
  Full Changelog: [v4.19.2...v4.20.0](https://github.com/trycourier/courier-ruby/compare/v4.19.2...v4.20.0)
@@ -18,63 +18,98 @@ module Courier
18
18
  # @return [String]
19
19
  attr_reader :api_key
20
20
 
21
+ # Send a message to one or more recipients — users, lists, audiences, or tenants —
22
+ # across every channel you have configured.
21
23
  # @return [Courier::Resources::Send]
22
24
  attr_reader :send_
23
25
 
26
+ # Define filter-based groups whose membership Courier recalculates as user
27
+ # profiles change.
24
28
  # @return [Courier::Resources::Audiences]
25
29
  attr_reader :audiences
26
30
 
31
+ # Configure the channel providers Courier delivers through, and browse the
32
+ # provider types it supports.
27
33
  # @return [Courier::Resources::Providers]
28
34
  attr_reader :providers
29
35
 
36
+ # Read the audit trail of configuration and access changes in your workspace.
30
37
  # @return [Courier::Resources::AuditEvents]
31
38
  attr_reader :audit_events
32
39
 
40
+ # Issue scoped, short-lived JWTs so client-side SDKs — Inbox, Preferences, and the
41
+ # embedded designer — can call Courier as a single user. Server-side requests
42
+ # authenticate with your workspace API key instead.
33
43
  # @return [Courier::Resources::Auth]
34
44
  attr_reader :auth
35
45
 
46
+ # Invoke a stored automation template or an ad hoc automation defined in the
47
+ # request.
36
48
  # @return [Courier::Resources::Automations]
37
49
  attr_reader :automations
38
50
 
51
+ # Build, version, publish, invoke, and cancel multi-step notification workflows,
52
+ # along with the templates scoped to them.
39
53
  # @return [Courier::Resources::Journeys]
40
54
  attr_reader :journeys
41
55
 
56
+ # Manage the logos, colors, and layout that give the templates you send a
57
+ # consistent look.
42
58
  # @return [Courier::Resources::Brands]
43
59
  attr_reader :brands
44
60
 
45
- # @return [Courier::Resources::Bulk]
46
- attr_reader :bulk
47
-
48
61
  # @return [Courier::Resources::Digests]
49
62
  attr_reader :digests
50
63
 
64
+ # Record an inbound event that triggers the journeys and automations mapped to it.
51
65
  # @return [Courier::Resources::Inbound]
52
66
  attr_reader :inbound
53
67
 
68
+ # Manage static groups of users that you subscribe explicitly, and send to them by
69
+ # list id or list pattern.
54
70
  # @return [Courier::Resources::Lists]
55
71
  attr_reader :lists
56
72
 
73
+ # @return [Courier::Resources::Inbox]
74
+ attr_reader :inbox
75
+
76
+ # Look up the messages Courier has accepted, inspect their delivery history and
77
+ # rendered output, and cancel, resend, or archive them.
57
78
  # @return [Courier::Resources::Messages]
58
79
  attr_reader :messages
59
80
 
81
+ # Look up the messages Courier has accepted, inspect their delivery history and
82
+ # rendered output, and cancel, resend, or archive them.
60
83
  # @return [Courier::Resources::Requests]
61
84
  attr_reader :requests
62
85
 
86
+ # Create, update, version, publish, and localize notification templates and their
87
+ # content.
63
88
  # @return [Courier::Resources::Notifications]
64
89
  attr_reader :notifications
65
90
 
91
+ # Define reusable channel routing and failover strategies, and see which templates
92
+ # use them.
66
93
  # @return [Courier::Resources::RoutingStrategies]
67
94
  attr_reader :routing_strategies
68
95
 
96
+ # Manage the workspace catalog of subscription topics, the sections that group
97
+ # them, and publishing the preference page.
69
98
  # @return [Courier::Resources::WorkspacePreferences]
70
99
  attr_reader :workspace_preferences
71
100
 
101
+ # Store the contact information Courier delivers to for each user — email, phone
102
+ # number, push tokens, and any custom data you send to.
72
103
  # @return [Courier::Resources::Profiles]
73
104
  attr_reader :profiles
74
105
 
106
+ # Manage tenants — the organizations, teams, or accounts your users belong to —
107
+ # along with their users and default preferences.
75
108
  # @return [Courier::Resources::Tenants]
76
109
  attr_reader :tenants
77
110
 
111
+ # Store and retrieve the translation strings Courier uses to render localized
112
+ # template content.
78
113
  # @return [Courier::Resources::Translations]
79
114
  attr_reader :translations
80
115
 
@@ -150,10 +185,10 @@ module Courier
150
185
  @automations = Courier::Resources::Automations.new(client: self)
151
186
  @journeys = Courier::Resources::Journeys.new(client: self)
152
187
  @brands = Courier::Resources::Brands.new(client: self)
153
- @bulk = Courier::Resources::Bulk.new(client: self)
154
188
  @digests = Courier::Resources::Digests.new(client: self)
155
189
  @inbound = Courier::Resources::Inbound.new(client: self)
156
190
  @lists = Courier::Resources::Lists.new(client: self)
191
+ @inbox = Courier::Resources::Inbox.new(client: self)
157
192
  @messages = Courier::Resources::Messages.new(client: self)
158
193
  @requests = Courier::Resources::Requests.new(client: self)
159
194
  @notifications = Courier::Resources::Notifications.new(client: self)
@@ -38,13 +38,25 @@ module Courier
38
38
  # @return [String, nil]
39
39
  optional :template, String, nil?: true
40
40
 
41
- # @!method initialize(automation:, brand: nil, data: nil, profile: nil, recipient: nil, template: nil, request_options: {})
41
+ # @!attribute idempotency_key
42
+ #
43
+ # @return [String, nil]
44
+ optional :idempotency_key, String
45
+
46
+ # @!attribute x_idempotency_expiration
47
+ #
48
+ # @return [String, nil]
49
+ optional :x_idempotency_expiration, String
50
+
51
+ # @!method initialize(automation:, brand: nil, data: nil, profile: nil, recipient: nil, template: nil, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
42
52
  # @param automation [Courier::Models::Automations::InvokeInvokeAdHocParams::Automation]
43
53
  # @param brand [String, nil]
44
54
  # @param data [Hash{Symbol=>Object}, nil]
45
55
  # @param profile [Hash{Symbol=>Object}, nil]
46
56
  # @param recipient [String, nil]
47
57
  # @param template [String, nil]
58
+ # @param idempotency_key [String]
59
+ # @param x_idempotency_expiration [String]
48
60
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
49
61
 
50
62
  class Automation < Courier::Internal::Type::BaseModel
@@ -38,13 +38,25 @@ module Courier
38
38
  # @return [String, nil]
39
39
  optional :template, String, nil?: true
40
40
 
41
- # @!method initialize(template_id:, recipient:, brand: nil, data: nil, profile: nil, template: nil, request_options: {})
41
+ # @!attribute idempotency_key
42
+ #
43
+ # @return [String, nil]
44
+ optional :idempotency_key, String
45
+
46
+ # @!attribute x_idempotency_expiration
47
+ #
48
+ # @return [String, nil]
49
+ optional :x_idempotency_expiration, String
50
+
51
+ # @!method initialize(template_id:, recipient:, brand: nil, data: nil, profile: nil, template: nil, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
42
52
  # @param template_id [String]
43
53
  # @param recipient [String, nil]
44
54
  # @param brand [String, nil]
45
55
  # @param data [Hash{Symbol=>Object}, nil]
46
56
  # @param profile [Hash{Symbol=>Object}, nil]
47
57
  # @param template [String, nil]
58
+ # @param idempotency_key [String]
59
+ # @param x_idempotency_expiration [String]
48
60
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
49
61
  end
50
62
  end
@@ -27,11 +27,23 @@ module Courier
27
27
  # @return [Courier::Models::BrandSnippets, nil]
28
28
  optional :snippets, -> { Courier::BrandSnippets }, nil?: true
29
29
 
30
- # @!method initialize(name:, settings:, id: nil, snippets: nil, request_options: {})
30
+ # @!attribute idempotency_key
31
+ #
32
+ # @return [String, nil]
33
+ optional :idempotency_key, String
34
+
35
+ # @!attribute x_idempotency_expiration
36
+ #
37
+ # @return [String, nil]
38
+ optional :x_idempotency_expiration, String
39
+
40
+ # @!method initialize(name:, settings:, id: nil, snippets: nil, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
31
41
  # @param name [String]
32
42
  # @param settings [Courier::Models::BrandSettings]
33
43
  # @param id [String, nil]
34
44
  # @param snippets [Courier::Models::BrandSnippets, nil]
45
+ # @param idempotency_key [String]
46
+ # @param x_idempotency_expiration [String]
35
47
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
36
48
  end
37
49
  end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Courier
4
+ module Models
5
+ module Inbox
6
+ # @see Courier::Resources::Inbox::Messages#delete
7
+ class MessageDeleteParams < Courier::Internal::Type::BaseModel
8
+ extend Courier::Internal::Type::RequestParameters::Converter
9
+ include Courier::Internal::Type::RequestParameters
10
+
11
+ # @!attribute message_id
12
+ #
13
+ # @return [String]
14
+ required :message_id, String
15
+
16
+ # @!method initialize(message_id:, request_options: {})
17
+ # @param message_id [String]
18
+ # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Courier
4
+ module Models
5
+ module Inbox
6
+ # @see Courier::Resources::Inbox::Messages#restore
7
+ class MessageRestoreParams < Courier::Internal::Type::BaseModel
8
+ extend Courier::Internal::Type::RequestParameters::Converter
9
+ include Courier::Internal::Type::RequestParameters
10
+
11
+ # @!attribute message_id
12
+ #
13
+ # @return [String]
14
+ required :message_id, String
15
+
16
+ # @!method initialize(message_id:, request_options: {})
17
+ # @param message_id [String]
18
+ # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
19
+ end
20
+ end
21
+ end
22
+ end
@@ -7,7 +7,19 @@ module Courier
7
7
  extend Courier::Internal::Type::RequestParameters::Converter
8
8
  include Courier::Internal::Type::RequestParameters
9
9
 
10
- # @!method initialize(request_options: {})
10
+ # @!attribute idempotency_key
11
+ #
12
+ # @return [String, nil]
13
+ optional :idempotency_key, String
14
+
15
+ # @!attribute x_idempotency_expiration
16
+ #
17
+ # @return [String, nil]
18
+ optional :x_idempotency_expiration, String
19
+
20
+ # @!method initialize(idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
21
+ # @param idempotency_key [String]
22
+ # @param x_idempotency_expiration [String]
11
23
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
12
24
  end
13
25
  end
@@ -7,7 +7,19 @@ module Courier
7
7
  extend Courier::Internal::Type::RequestParameters::Converter
8
8
  include Courier::Internal::Type::RequestParameters
9
9
 
10
- # @!method initialize(request_options: {})
10
+ # @!attribute idempotency_key
11
+ #
12
+ # @return [String, nil]
13
+ optional :idempotency_key, String
14
+
15
+ # @!attribute x_idempotency_expiration
16
+ #
17
+ # @return [String, nil]
18
+ optional :x_idempotency_expiration, String
19
+
20
+ # @!method initialize(idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
21
+ # @param idempotency_key [String]
22
+ # @param x_idempotency_expiration [String]
11
23
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
12
24
  end
13
25
  end
@@ -12,8 +12,20 @@ module Courier
12
12
  # @return [String]
13
13
  required :template_id, String
14
14
 
15
- # @!method initialize(template_id:, request_options: {})
15
+ # @!attribute idempotency_key
16
+ #
17
+ # @return [String, nil]
18
+ optional :idempotency_key, String
19
+
20
+ # @!attribute x_idempotency_expiration
21
+ #
22
+ # @return [String, nil]
23
+ optional :x_idempotency_expiration, String
24
+
25
+ # @!method initialize(template_id:, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
16
26
  # @param template_id [String]
27
+ # @param idempotency_key [String]
28
+ # @param x_idempotency_expiration [String]
17
29
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
18
30
  end
19
31
  end
@@ -12,8 +12,20 @@ module Courier
12
12
  # @return [String]
13
13
  required :template_id, String
14
14
 
15
- # @!method initialize(template_id:, request_options: {})
15
+ # @!attribute idempotency_key
16
+ #
17
+ # @return [String, nil]
18
+ optional :idempotency_key, String
19
+
20
+ # @!attribute x_idempotency_expiration
21
+ #
22
+ # @return [String, nil]
23
+ optional :x_idempotency_expiration, String
24
+
25
+ # @!method initialize(template_id:, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
16
26
  # @param template_id [String]
27
+ # @param idempotency_key [String]
28
+ # @param x_idempotency_expiration [String]
17
29
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
18
30
  end
19
31
  end
@@ -13,8 +13,20 @@ module Courier
13
13
  # @return [String]
14
14
  required :template_id, String
15
15
 
16
- # @!method initialize(template_id:, request_options: {})
16
+ # @!attribute idempotency_key
17
+ #
18
+ # @return [String, nil]
19
+ optional :idempotency_key, String
20
+
21
+ # @!attribute x_idempotency_expiration
22
+ #
23
+ # @return [String, nil]
24
+ optional :x_idempotency_expiration, String
25
+
26
+ # @!method initialize(template_id:, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
17
27
  # @param template_id [String]
28
+ # @param idempotency_key [String]
29
+ # @param x_idempotency_expiration [String]
18
30
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
19
31
  end
20
32
  end
@@ -18,9 +18,21 @@ module Courier
18
18
  # @return [String]
19
19
  required :notification_id, String
20
20
 
21
- # @!method initialize(template_id:, notification_id:, request_options: {})
21
+ # @!attribute idempotency_key
22
+ #
23
+ # @return [String, nil]
24
+ optional :idempotency_key, String
25
+
26
+ # @!attribute x_idempotency_expiration
27
+ #
28
+ # @return [String, nil]
29
+ optional :x_idempotency_expiration, String
30
+
31
+ # @!method initialize(template_id:, notification_id:, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
22
32
  # @param template_id [String]
23
33
  # @param notification_id [String]
34
+ # @param idempotency_key [String]
35
+ # @param x_idempotency_expiration [String]
24
36
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
25
37
  end
26
38
  end
@@ -18,9 +18,21 @@ module Courier
18
18
  # @return [Array<Courier::Models::PutSubscriptionsRecipient>]
19
19
  required :recipients, -> { Courier::Internal::Type::ArrayOf[Courier::PutSubscriptionsRecipient] }
20
20
 
21
- # @!method initialize(list_id:, recipients:, request_options: {})
21
+ # @!attribute idempotency_key
22
+ #
23
+ # @return [String, nil]
24
+ optional :idempotency_key, String
25
+
26
+ # @!attribute x_idempotency_expiration
27
+ #
28
+ # @return [String, nil]
29
+ optional :x_idempotency_expiration, String
30
+
31
+ # @!method initialize(list_id:, recipients:, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
22
32
  # @param list_id [String]
23
33
  # @param recipients [Array<Courier::Models::PutSubscriptionsRecipient>]
34
+ # @param idempotency_key [String]
35
+ # @param x_idempotency_expiration [String]
24
36
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
25
37
  end
26
38
  end
@@ -7,7 +7,19 @@ module Courier
7
7
  extend Courier::Internal::Type::RequestParameters::Converter
8
8
  include Courier::Internal::Type::RequestParameters
9
9
 
10
- # @!method initialize(request_options: {})
10
+ # @!attribute idempotency_key
11
+ #
12
+ # @return [String, nil]
13
+ optional :idempotency_key, String
14
+
15
+ # @!attribute x_idempotency_expiration
16
+ #
17
+ # @return [String, nil]
18
+ optional :x_idempotency_expiration, String
19
+
20
+ # @!method initialize(idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
21
+ # @param idempotency_key [String]
22
+ # @param x_idempotency_expiration [String]
11
23
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
12
24
  end
13
25
  end
@@ -12,8 +12,20 @@ module Courier
12
12
  # @return [String]
13
13
  required :id, String
14
14
 
15
- # @!method initialize(id:, request_options: {})
15
+ # @!attribute idempotency_key
16
+ #
17
+ # @return [String, nil]
18
+ optional :idempotency_key, String
19
+
20
+ # @!attribute x_idempotency_expiration
21
+ #
22
+ # @return [String, nil]
23
+ optional :x_idempotency_expiration, String
24
+
25
+ # @!method initialize(id:, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
16
26
  # @param id [String]
27
+ # @param idempotency_key [String]
28
+ # @param x_idempotency_expiration [String]
17
29
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
18
30
  end
19
31
  end
@@ -17,9 +17,21 @@ module Courier
17
17
  # @return [Hash{Symbol=>Object}]
18
18
  required :profile, Courier::Internal::Type::HashOf[Courier::Internal::Type::Unknown]
19
19
 
20
- # @!method initialize(user_id:, profile:, request_options: {})
20
+ # @!attribute idempotency_key
21
+ #
22
+ # @return [String, nil]
23
+ optional :idempotency_key, String
24
+
25
+ # @!attribute x_idempotency_expiration
26
+ #
27
+ # @return [String, nil]
28
+ optional :x_idempotency_expiration, String
29
+
30
+ # @!method initialize(user_id:, profile:, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
21
31
  # @param user_id [String]
22
32
  # @param profile [Hash{Symbol=>Object}]
33
+ # @param idempotency_key [String]
34
+ # @param x_idempotency_expiration [String]
23
35
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
24
36
  end
25
37
  end
@@ -18,9 +18,21 @@ module Courier
18
18
  # @return [Array<Courier::Models::SubscribeToListsRequestItem>]
19
19
  required :lists, -> { Courier::Internal::Type::ArrayOf[Courier::SubscribeToListsRequestItem] }
20
20
 
21
- # @!method initialize(user_id:, lists:, request_options: {})
21
+ # @!attribute idempotency_key
22
+ #
23
+ # @return [String, nil]
24
+ optional :idempotency_key, String
25
+
26
+ # @!attribute x_idempotency_expiration
27
+ #
28
+ # @return [String, nil]
29
+ optional :x_idempotency_expiration, String
30
+
31
+ # @!method initialize(user_id:, lists:, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
22
32
  # @param user_id [String]
23
33
  # @param lists [Array<Courier::Models::SubscribeToListsRequestItem>]
34
+ # @param idempotency_key [String]
35
+ # @param x_idempotency_expiration [String]
24
36
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
25
37
  end
26
38
  end
@@ -34,7 +34,17 @@ module Courier
34
34
  # @return [String, nil]
35
35
  optional :title, String
36
36
 
37
- # @!method initialize(provider:, alias_: nil, settings: nil, title: nil, request_options: {})
37
+ # @!attribute idempotency_key
38
+ #
39
+ # @return [String, nil]
40
+ optional :idempotency_key, String
41
+
42
+ # @!attribute x_idempotency_expiration
43
+ #
44
+ # @return [String, nil]
45
+ optional :x_idempotency_expiration, String
46
+
47
+ # @!method initialize(provider:, alias_: nil, settings: nil, title: nil, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
38
48
  # Some parameter documentations has been truncated, see
39
49
  # {Courier::Models::ProviderCreateParams} for more details.
40
50
  #
@@ -46,6 +56,10 @@ module Courier
46
56
  #
47
57
  # @param title [String] Optional display title. Omit to use "Default Configuration".
48
58
  #
59
+ # @param idempotency_key [String]
60
+ #
61
+ # @param x_idempotency_expiration [String]
62
+ #
49
63
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
50
64
  end
51
65
  end
@@ -7,7 +7,19 @@ module Courier
7
7
  extend Courier::Internal::Type::RequestParameters::Converter
8
8
  include Courier::Internal::Type::RequestParameters
9
9
 
10
- # @!method initialize(request_options: {})
10
+ # @!attribute idempotency_key
11
+ #
12
+ # @return [String, nil]
13
+ optional :idempotency_key, String
14
+
15
+ # @!attribute x_idempotency_expiration
16
+ #
17
+ # @return [String, nil]
18
+ optional :x_idempotency_expiration, String
19
+
20
+ # @!method initialize(idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
21
+ # @param idempotency_key [String]
22
+ # @param x_idempotency_expiration [String]
11
23
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
12
24
  end
13
25
  end
@@ -14,12 +14,26 @@ module Courier
14
14
  # @return [Courier::Models::SendMessageParams::Message]
15
15
  required :message, -> { Courier::SendMessageParams::Message }
16
16
 
17
- # @!method initialize(message:, request_options: {})
17
+ # @!attribute idempotency_key
18
+ #
19
+ # @return [String, nil]
20
+ optional :idempotency_key, String
21
+
22
+ # @!attribute x_idempotency_expiration
23
+ #
24
+ # @return [String, nil]
25
+ optional :x_idempotency_expiration, String
26
+
27
+ # @!method initialize(message:, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
18
28
  # Some parameter documentations has been truncated, see
19
29
  # {Courier::Models::SendMessageParams} for more details.
20
30
  #
21
31
  # @param message [Courier::Models::SendMessageParams::Message] The message property has the following primary top-level properties. They define
22
32
  #
33
+ # @param idempotency_key [String]
34
+ #
35
+ # @param x_idempotency_expiration [String]
36
+ #
23
37
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
24
38
 
25
39
  class Message < Courier::Internal::Type::BaseModel
@@ -27,7 +27,17 @@ module Courier
27
27
  # @return [String, nil]
28
28
  optional :tenant_id, String, nil?: true
29
29
 
30
- # @!method initialize(user_id:, topics:, tenant_id: nil, request_options: {})
30
+ # @!attribute idempotency_key
31
+ #
32
+ # @return [String, nil]
33
+ optional :idempotency_key, String
34
+
35
+ # @!attribute x_idempotency_expiration
36
+ #
37
+ # @return [String, nil]
38
+ optional :x_idempotency_expiration, String
39
+
40
+ # @!method initialize(user_id:, topics:, tenant_id: nil, idempotency_key: nil, x_idempotency_expiration: nil, request_options: {})
31
41
  # Some parameter documentations has been truncated, see
32
42
  # {Courier::Models::Users::PreferenceBulkUpdateParams} for more details.
33
43
  #
@@ -37,6 +47,10 @@ module Courier
37
47
  #
38
48
  # @param tenant_id [String, nil] Update the preferences of a user for this specific tenant context.
39
49
  #
50
+ # @param idempotency_key [String]
51
+ #
52
+ # @param x_idempotency_expiration [String]
53
+ #
40
54
  # @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
41
55
 
42
56
  class Topic < Courier::Internal::Type::BaseModel