trycourier 4.16.0 → 4.17.1

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 (79) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/lib/courier/client.rb +4 -0
  4. data/lib/courier/models/publish_preferences_response.rb +51 -0
  5. data/lib/courier/models/workspace_preference_archive_params.rb +20 -0
  6. data/lib/courier/models/workspace_preference_create_params.rb +14 -0
  7. data/lib/courier/models/workspace_preference_create_request.rb +36 -0
  8. data/lib/courier/models/workspace_preference_get_response.rb +83 -0
  9. data/lib/courier/models/workspace_preference_list_params.rb +14 -0
  10. data/lib/courier/models/workspace_preference_list_response.rb +18 -0
  11. data/lib/courier/models/workspace_preference_publish_params.rb +14 -0
  12. data/lib/courier/models/workspace_preference_replace_params.rb +20 -0
  13. data/lib/courier/models/workspace_preference_replace_request.rb +37 -0
  14. data/lib/courier/models/workspace_preference_retrieve_params.rb +20 -0
  15. data/lib/courier/models/workspace_preference_topic_create_request.rb +93 -0
  16. data/lib/courier/models/workspace_preference_topic_get_response.rb +124 -0
  17. data/lib/courier/models/workspace_preference_topic_list_response.rb +17 -0
  18. data/lib/courier/models/workspace_preference_topic_replace_request.rb +90 -0
  19. data/lib/courier/models/workspace_preferences/topic_archive_params.rb +28 -0
  20. data/lib/courier/models/workspace_preferences/topic_create_params.rb +22 -0
  21. data/lib/courier/models/workspace_preferences/topic_list_params.rb +22 -0
  22. data/lib/courier/models/workspace_preferences/topic_replace_params.rb +28 -0
  23. data/lib/courier/models/workspace_preferences/topic_retrieve_params.rb +28 -0
  24. data/lib/courier/models.rb +32 -0
  25. data/lib/courier/resources/notifications/checks.rb +3 -3
  26. data/lib/courier/resources/workspace_preferences/topics.rb +176 -0
  27. data/lib/courier/resources/workspace_preferences.rb +155 -0
  28. data/lib/courier/version.rb +1 -1
  29. data/lib/courier.rb +22 -0
  30. data/rbi/courier/client.rbi +3 -0
  31. data/rbi/courier/models/publish_preferences_response.rbi +70 -0
  32. data/rbi/courier/models/workspace_preference_archive_params.rbi +38 -0
  33. data/rbi/courier/models/workspace_preference_create_params.rbi +30 -0
  34. data/rbi/courier/models/workspace_preference_create_request.rbi +61 -0
  35. data/rbi/courier/models/workspace_preference_get_response.rbi +107 -0
  36. data/rbi/courier/models/workspace_preference_list_params.rbi +30 -0
  37. data/rbi/courier/models/workspace_preference_list_response.rbi +35 -0
  38. data/rbi/courier/models/workspace_preference_publish_params.rbi +30 -0
  39. data/rbi/courier/models/workspace_preference_replace_params.rbi +38 -0
  40. data/rbi/courier/models/workspace_preference_replace_request.rbi +62 -0
  41. data/rbi/courier/models/workspace_preference_retrieve_params.rbi +38 -0
  42. data/rbi/courier/models/workspace_preference_topic_create_request.rbi +186 -0
  43. data/rbi/courier/models/workspace_preference_topic_get_response.rbi +215 -0
  44. data/rbi/courier/models/workspace_preference_topic_list_response.rbi +36 -0
  45. data/rbi/courier/models/workspace_preference_topic_replace_request.rbi +185 -0
  46. data/rbi/courier/models/workspace_preferences/topic_archive_params.rbi +48 -0
  47. data/rbi/courier/models/workspace_preferences/topic_create_params.rbi +40 -0
  48. data/rbi/courier/models/workspace_preferences/topic_list_params.rbi +40 -0
  49. data/rbi/courier/models/workspace_preferences/topic_replace_params.rbi +48 -0
  50. data/rbi/courier/models/workspace_preferences/topic_retrieve_params.rbi +48 -0
  51. data/rbi/courier/models.rbi +45 -0
  52. data/rbi/courier/resources/notifications/checks.rbi +3 -3
  53. data/rbi/courier/resources/workspace_preferences/topics.rbi +152 -0
  54. data/rbi/courier/resources/workspace_preferences.rbi +113 -0
  55. data/sig/courier/client.rbs +2 -0
  56. data/sig/courier/models/publish_preferences_response.rbs +40 -0
  57. data/sig/courier/models/workspace_preference_archive_params.rbs +23 -0
  58. data/sig/courier/models/workspace_preference_create_params.rbs +15 -0
  59. data/sig/courier/models/workspace_preference_create_request.rbs +30 -0
  60. data/sig/courier/models/workspace_preference_get_response.rbs +60 -0
  61. data/sig/courier/models/workspace_preference_list_params.rbs +15 -0
  62. data/sig/courier/models/workspace_preference_list_response.rbs +18 -0
  63. data/sig/courier/models/workspace_preference_publish_params.rbs +15 -0
  64. data/sig/courier/models/workspace_preference_replace_params.rbs +25 -0
  65. data/sig/courier/models/workspace_preference_replace_request.rbs +30 -0
  66. data/sig/courier/models/workspace_preference_retrieve_params.rbs +23 -0
  67. data/sig/courier/models/workspace_preference_topic_create_request.rbs +68 -0
  68. data/sig/courier/models/workspace_preference_topic_get_response.rbs +93 -0
  69. data/sig/courier/models/workspace_preference_topic_list_response.rbs +18 -0
  70. data/sig/courier/models/workspace_preference_topic_replace_request.rbs +68 -0
  71. data/sig/courier/models/workspace_preferences/topic_archive_params.rbs +30 -0
  72. data/sig/courier/models/workspace_preferences/topic_create_params.rbs +27 -0
  73. data/sig/courier/models/workspace_preferences/topic_list_params.rbs +25 -0
  74. data/sig/courier/models/workspace_preferences/topic_replace_params.rbs +34 -0
  75. data/sig/courier/models/workspace_preferences/topic_retrieve_params.rbs +30 -0
  76. data/sig/courier/models.rbs +32 -0
  77. data/sig/courier/resources/workspace_preferences/topics.rbs +49 -0
  78. data/sig/courier/resources/workspace_preferences.rbs +42 -0
  79. metadata +68 -2
@@ -0,0 +1,18 @@
1
+ module Courier
2
+ module Models
3
+ type workspace_preference_list_response =
4
+ { results: ::Array[Courier::WorkspacePreferenceGetResponse] }
5
+
6
+ class WorkspacePreferenceListResponse < Courier::Internal::Type::BaseModel
7
+ attr_accessor results: ::Array[Courier::WorkspacePreferenceGetResponse]
8
+
9
+ def initialize: (
10
+ results: ::Array[Courier::WorkspacePreferenceGetResponse]
11
+ ) -> void
12
+
13
+ def to_hash: -> {
14
+ results: ::Array[Courier::WorkspacePreferenceGetResponse]
15
+ }
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,15 @@
1
+ module Courier
2
+ module Models
3
+ type workspace_preference_publish_params =
4
+ { } & Courier::Internal::Type::request_parameters
5
+
6
+ class WorkspacePreferencePublishParams < Courier::Internal::Type::BaseModel
7
+ extend Courier::Internal::Type::RequestParameters::Converter
8
+ include Courier::Internal::Type::RequestParameters
9
+
10
+ def initialize: (?request_options: Courier::request_opts) -> void
11
+
12
+ def to_hash: -> { request_options: Courier::RequestOptions }
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,25 @@
1
+ module Courier
2
+ module Models
3
+ type workspace_preference_replace_params =
4
+ { section_id: String } & Courier::Internal::Type::request_parameters
5
+
6
+ class WorkspacePreferenceReplaceParams < Courier::Models::WorkspacePreferenceReplaceRequest
7
+ extend Courier::Internal::Type::RequestParameters::Converter
8
+ include Courier::Internal::Type::RequestParameters
9
+
10
+ def section_id: -> String
11
+
12
+ def section_id=: (String _) -> String
13
+
14
+ def initialize: (
15
+ section_id: String,
16
+ ?request_options: Courier::request_opts
17
+ ) -> void
18
+
19
+ def to_hash: -> {
20
+ section_id: String,
21
+ request_options: Courier::RequestOptions
22
+ }
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,30 @@
1
+ module Courier
2
+ module Models
3
+ type workspace_preference_replace_request =
4
+ {
5
+ name: String,
6
+ has_custom_routing: bool?,
7
+ routing_options: ::Array[Courier::Models::channel_classification]?
8
+ }
9
+
10
+ class WorkspacePreferenceReplaceRequest < Courier::Internal::Type::BaseModel
11
+ attr_accessor name: String
12
+
13
+ attr_accessor has_custom_routing: bool?
14
+
15
+ attr_accessor routing_options: ::Array[Courier::Models::channel_classification]?
16
+
17
+ def initialize: (
18
+ name: String,
19
+ ?has_custom_routing: bool?,
20
+ ?routing_options: ::Array[Courier::Models::channel_classification]?
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ name: String,
25
+ has_custom_routing: bool?,
26
+ routing_options: ::Array[Courier::Models::channel_classification]?
27
+ }
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,23 @@
1
+ module Courier
2
+ module Models
3
+ type workspace_preference_retrieve_params =
4
+ { section_id: String } & Courier::Internal::Type::request_parameters
5
+
6
+ class WorkspacePreferenceRetrieveParams < Courier::Internal::Type::BaseModel
7
+ extend Courier::Internal::Type::RequestParameters::Converter
8
+ include Courier::Internal::Type::RequestParameters
9
+
10
+ attr_accessor section_id: String
11
+
12
+ def initialize: (
13
+ section_id: String,
14
+ ?request_options: Courier::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ section_id: String,
19
+ request_options: Courier::RequestOptions
20
+ }
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,68 @@
1
+ module Courier
2
+ module Models
3
+ type workspace_preference_topic_create_request =
4
+ {
5
+ default_status: Courier::Models::WorkspacePreferenceTopicCreateRequest::default_status,
6
+ name: String,
7
+ allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicCreateRequest::allowed_preference]?,
8
+ include_unsubscribe_header: bool?,
9
+ routing_options: ::Array[Courier::Models::channel_classification]?,
10
+ topic_data: ::Hash[Symbol, top]?
11
+ }
12
+
13
+ class WorkspacePreferenceTopicCreateRequest < Courier::Internal::Type::BaseModel
14
+ attr_accessor default_status: Courier::Models::WorkspacePreferenceTopicCreateRequest::default_status
15
+
16
+ attr_accessor name: String
17
+
18
+ attr_accessor allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicCreateRequest::allowed_preference]?
19
+
20
+ attr_accessor include_unsubscribe_header: bool?
21
+
22
+ attr_accessor routing_options: ::Array[Courier::Models::channel_classification]?
23
+
24
+ attr_accessor topic_data: ::Hash[Symbol, top]?
25
+
26
+ def initialize: (
27
+ default_status: Courier::Models::WorkspacePreferenceTopicCreateRequest::default_status,
28
+ name: String,
29
+ ?allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicCreateRequest::allowed_preference]?,
30
+ ?include_unsubscribe_header: bool?,
31
+ ?routing_options: ::Array[Courier::Models::channel_classification]?,
32
+ ?topic_data: ::Hash[Symbol, top]?
33
+ ) -> void
34
+
35
+ def to_hash: -> {
36
+ default_status: Courier::Models::WorkspacePreferenceTopicCreateRequest::default_status,
37
+ name: String,
38
+ allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicCreateRequest::allowed_preference]?,
39
+ include_unsubscribe_header: bool?,
40
+ routing_options: ::Array[Courier::Models::channel_classification]?,
41
+ topic_data: ::Hash[Symbol, top]?
42
+ }
43
+
44
+ type default_status = :OPTED_OUT | :OPTED_IN | :REQUIRED
45
+
46
+ module DefaultStatus
47
+ extend Courier::Internal::Type::Enum
48
+
49
+ OPTED_OUT: :OPTED_OUT
50
+ OPTED_IN: :OPTED_IN
51
+ REQUIRED: :REQUIRED
52
+
53
+ def self?.values: -> ::Array[Courier::Models::WorkspacePreferenceTopicCreateRequest::default_status]
54
+ end
55
+
56
+ type allowed_preference = :snooze | :channel_preferences
57
+
58
+ module AllowedPreference
59
+ extend Courier::Internal::Type::Enum
60
+
61
+ SNOOZE: :snooze
62
+ CHANNEL_PREFERENCES: :channel_preferences
63
+
64
+ def self?.values: -> ::Array[Courier::Models::WorkspacePreferenceTopicCreateRequest::allowed_preference]
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,93 @@
1
+ module Courier
2
+ module Models
3
+ type workspace_preference_topic_get_response =
4
+ {
5
+ id: String,
6
+ allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicGetResponse::allowed_preference],
7
+ created: String,
8
+ default_status: Courier::Models::WorkspacePreferenceTopicGetResponse::default_status,
9
+ include_unsubscribe_header: bool,
10
+ name: String,
11
+ routing_options: ::Array[Courier::Models::channel_classification],
12
+ topic_data: ::Hash[Symbol, top],
13
+ updated: String,
14
+ creator: String?,
15
+ updater: String?
16
+ }
17
+
18
+ class WorkspacePreferenceTopicGetResponse < Courier::Internal::Type::BaseModel
19
+ attr_accessor id: String
20
+
21
+ attr_accessor allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicGetResponse::allowed_preference]
22
+
23
+ attr_accessor created: String
24
+
25
+ attr_accessor default_status: Courier::Models::WorkspacePreferenceTopicGetResponse::default_status
26
+
27
+ attr_accessor include_unsubscribe_header: bool
28
+
29
+ attr_accessor name: String
30
+
31
+ attr_accessor routing_options: ::Array[Courier::Models::channel_classification]
32
+
33
+ attr_accessor topic_data: ::Hash[Symbol, top]
34
+
35
+ attr_accessor updated: String
36
+
37
+ attr_accessor creator: String?
38
+
39
+ attr_accessor updater: String?
40
+
41
+ def initialize: (
42
+ id: String,
43
+ allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicGetResponse::allowed_preference],
44
+ created: String,
45
+ default_status: Courier::Models::WorkspacePreferenceTopicGetResponse::default_status,
46
+ include_unsubscribe_header: bool,
47
+ name: String,
48
+ routing_options: ::Array[Courier::Models::channel_classification],
49
+ topic_data: ::Hash[Symbol, top],
50
+ updated: String,
51
+ ?creator: String?,
52
+ ?updater: String?
53
+ ) -> void
54
+
55
+ def to_hash: -> {
56
+ id: String,
57
+ allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicGetResponse::allowed_preference],
58
+ created: String,
59
+ default_status: Courier::Models::WorkspacePreferenceTopicGetResponse::default_status,
60
+ include_unsubscribe_header: bool,
61
+ name: String,
62
+ routing_options: ::Array[Courier::Models::channel_classification],
63
+ topic_data: ::Hash[Symbol, top],
64
+ updated: String,
65
+ creator: String?,
66
+ updater: String?
67
+ }
68
+
69
+ type allowed_preference = :snooze | :channel_preferences
70
+
71
+ module AllowedPreference
72
+ extend Courier::Internal::Type::Enum
73
+
74
+ SNOOZE: :snooze
75
+ CHANNEL_PREFERENCES: :channel_preferences
76
+
77
+ def self?.values: -> ::Array[Courier::Models::WorkspacePreferenceTopicGetResponse::allowed_preference]
78
+ end
79
+
80
+ type default_status = :OPTED_OUT | :OPTED_IN | :REQUIRED
81
+
82
+ module DefaultStatus
83
+ extend Courier::Internal::Type::Enum
84
+
85
+ OPTED_OUT: :OPTED_OUT
86
+ OPTED_IN: :OPTED_IN
87
+ REQUIRED: :REQUIRED
88
+
89
+ def self?.values: -> ::Array[Courier::Models::WorkspacePreferenceTopicGetResponse::default_status]
90
+ end
91
+ end
92
+ end
93
+ end
@@ -0,0 +1,18 @@
1
+ module Courier
2
+ module Models
3
+ type workspace_preference_topic_list_response =
4
+ { results: ::Array[Courier::WorkspacePreferenceTopicGetResponse] }
5
+
6
+ class WorkspacePreferenceTopicListResponse < Courier::Internal::Type::BaseModel
7
+ attr_accessor results: ::Array[Courier::WorkspacePreferenceTopicGetResponse]
8
+
9
+ def initialize: (
10
+ results: ::Array[Courier::WorkspacePreferenceTopicGetResponse]
11
+ ) -> void
12
+
13
+ def to_hash: -> {
14
+ results: ::Array[Courier::WorkspacePreferenceTopicGetResponse]
15
+ }
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,68 @@
1
+ module Courier
2
+ module Models
3
+ type workspace_preference_topic_replace_request =
4
+ {
5
+ default_status: Courier::Models::WorkspacePreferenceTopicReplaceRequest::default_status,
6
+ name: String,
7
+ allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicReplaceRequest::allowed_preference]?,
8
+ include_unsubscribe_header: bool?,
9
+ routing_options: ::Array[Courier::Models::channel_classification]?,
10
+ topic_data: ::Hash[Symbol, top]?
11
+ }
12
+
13
+ class WorkspacePreferenceTopicReplaceRequest < Courier::Internal::Type::BaseModel
14
+ attr_accessor default_status: Courier::Models::WorkspacePreferenceTopicReplaceRequest::default_status
15
+
16
+ attr_accessor name: String
17
+
18
+ attr_accessor allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicReplaceRequest::allowed_preference]?
19
+
20
+ attr_accessor include_unsubscribe_header: bool?
21
+
22
+ attr_accessor routing_options: ::Array[Courier::Models::channel_classification]?
23
+
24
+ attr_accessor topic_data: ::Hash[Symbol, top]?
25
+
26
+ def initialize: (
27
+ default_status: Courier::Models::WorkspacePreferenceTopicReplaceRequest::default_status,
28
+ name: String,
29
+ ?allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicReplaceRequest::allowed_preference]?,
30
+ ?include_unsubscribe_header: bool?,
31
+ ?routing_options: ::Array[Courier::Models::channel_classification]?,
32
+ ?topic_data: ::Hash[Symbol, top]?
33
+ ) -> void
34
+
35
+ def to_hash: -> {
36
+ default_status: Courier::Models::WorkspacePreferenceTopicReplaceRequest::default_status,
37
+ name: String,
38
+ allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicReplaceRequest::allowed_preference]?,
39
+ include_unsubscribe_header: bool?,
40
+ routing_options: ::Array[Courier::Models::channel_classification]?,
41
+ topic_data: ::Hash[Symbol, top]?
42
+ }
43
+
44
+ type default_status = :OPTED_OUT | :OPTED_IN | :REQUIRED
45
+
46
+ module DefaultStatus
47
+ extend Courier::Internal::Type::Enum
48
+
49
+ OPTED_OUT: :OPTED_OUT
50
+ OPTED_IN: :OPTED_IN
51
+ REQUIRED: :REQUIRED
52
+
53
+ def self?.values: -> ::Array[Courier::Models::WorkspacePreferenceTopicReplaceRequest::default_status]
54
+ end
55
+
56
+ type allowed_preference = :snooze | :channel_preferences
57
+
58
+ module AllowedPreference
59
+ extend Courier::Internal::Type::Enum
60
+
61
+ SNOOZE: :snooze
62
+ CHANNEL_PREFERENCES: :channel_preferences
63
+
64
+ def self?.values: -> ::Array[Courier::Models::WorkspacePreferenceTopicReplaceRequest::allowed_preference]
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,30 @@
1
+ module Courier
2
+ module Models
3
+ module WorkspacePreferences
4
+ type topic_archive_params =
5
+ { section_id: String, topic_id: String }
6
+ & Courier::Internal::Type::request_parameters
7
+
8
+ class TopicArchiveParams < Courier::Internal::Type::BaseModel
9
+ extend Courier::Internal::Type::RequestParameters::Converter
10
+ include Courier::Internal::Type::RequestParameters
11
+
12
+ attr_accessor section_id: String
13
+
14
+ attr_accessor topic_id: String
15
+
16
+ def initialize: (
17
+ section_id: String,
18
+ topic_id: String,
19
+ ?request_options: Courier::request_opts
20
+ ) -> void
21
+
22
+ def to_hash: -> {
23
+ section_id: String,
24
+ topic_id: String,
25
+ request_options: Courier::RequestOptions
26
+ }
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,27 @@
1
+ module Courier
2
+ module Models
3
+ module WorkspacePreferences
4
+ type topic_create_params =
5
+ { section_id: String } & Courier::Internal::Type::request_parameters
6
+
7
+ class TopicCreateParams < Courier::Models::WorkspacePreferenceTopicCreateRequest
8
+ extend Courier::Internal::Type::RequestParameters::Converter
9
+ include Courier::Internal::Type::RequestParameters
10
+
11
+ def section_id: -> String
12
+
13
+ def section_id=: (String _) -> String
14
+
15
+ def initialize: (
16
+ section_id: String,
17
+ ?request_options: Courier::request_opts
18
+ ) -> void
19
+
20
+ def to_hash: -> {
21
+ section_id: String,
22
+ request_options: Courier::RequestOptions
23
+ }
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,25 @@
1
+ module Courier
2
+ module Models
3
+ module WorkspacePreferences
4
+ type topic_list_params =
5
+ { section_id: String } & Courier::Internal::Type::request_parameters
6
+
7
+ class TopicListParams < Courier::Internal::Type::BaseModel
8
+ extend Courier::Internal::Type::RequestParameters::Converter
9
+ include Courier::Internal::Type::RequestParameters
10
+
11
+ attr_accessor section_id: String
12
+
13
+ def initialize: (
14
+ section_id: String,
15
+ ?request_options: Courier::request_opts
16
+ ) -> void
17
+
18
+ def to_hash: -> {
19
+ section_id: String,
20
+ request_options: Courier::RequestOptions
21
+ }
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,34 @@
1
+ module Courier
2
+ module Models
3
+ module WorkspacePreferences
4
+ type topic_replace_params =
5
+ { section_id: String, topic_id: String }
6
+ & Courier::Internal::Type::request_parameters
7
+
8
+ class TopicReplaceParams < Courier::Models::WorkspacePreferenceTopicReplaceRequest
9
+ extend Courier::Internal::Type::RequestParameters::Converter
10
+ include Courier::Internal::Type::RequestParameters
11
+
12
+ def section_id: -> String
13
+
14
+ def section_id=: (String _) -> String
15
+
16
+ def topic_id: -> String
17
+
18
+ def topic_id=: (String _) -> String
19
+
20
+ def initialize: (
21
+ section_id: String,
22
+ topic_id: String,
23
+ ?request_options: Courier::request_opts
24
+ ) -> void
25
+
26
+ def to_hash: -> {
27
+ section_id: String,
28
+ topic_id: String,
29
+ request_options: Courier::RequestOptions
30
+ }
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,30 @@
1
+ module Courier
2
+ module Models
3
+ module WorkspacePreferences
4
+ type topic_retrieve_params =
5
+ { section_id: String, topic_id: String }
6
+ & Courier::Internal::Type::request_parameters
7
+
8
+ class TopicRetrieveParams < Courier::Internal::Type::BaseModel
9
+ extend Courier::Internal::Type::RequestParameters::Converter
10
+ include Courier::Internal::Type::RequestParameters
11
+
12
+ attr_accessor section_id: String
13
+
14
+ attr_accessor topic_id: String
15
+
16
+ def initialize: (
17
+ section_id: String,
18
+ topic_id: String,
19
+ ?request_options: Courier::request_opts
20
+ ) -> void
21
+
22
+ def to_hash: -> {
23
+ section_id: String,
24
+ topic_id: String,
25
+ request_options: Courier::RequestOptions
26
+ }
27
+ end
28
+ end
29
+ end
30
+ end
@@ -391,6 +391,8 @@ module Courier
391
391
 
392
392
  class ProviderUpdateParams = Courier::Models::ProviderUpdateParams
393
393
 
394
+ class PublishPreferencesResponse = Courier::Models::PublishPreferencesResponse
395
+
394
396
  class PutSubscriptionsRecipient = Courier::Models::PutSubscriptionsRecipient
395
397
 
396
398
  class PutTenantTemplateRequest = Courier::Models::PutTenantTemplateRequest
@@ -512,4 +514,34 @@ module Courier
512
514
  class WebhookRecipient = Courier::Models::WebhookRecipient
513
515
 
514
516
  class WidgetBackground = Courier::Models::WidgetBackground
517
+
518
+ class WorkspacePreferenceArchiveParams = Courier::Models::WorkspacePreferenceArchiveParams
519
+
520
+ class WorkspacePreferenceCreateParams = Courier::Models::WorkspacePreferenceCreateParams
521
+
522
+ class WorkspacePreferenceCreateRequest = Courier::Models::WorkspacePreferenceCreateRequest
523
+
524
+ class WorkspacePreferenceGetResponse = Courier::Models::WorkspacePreferenceGetResponse
525
+
526
+ class WorkspacePreferenceListParams = Courier::Models::WorkspacePreferenceListParams
527
+
528
+ class WorkspacePreferenceListResponse = Courier::Models::WorkspacePreferenceListResponse
529
+
530
+ class WorkspacePreferencePublishParams = Courier::Models::WorkspacePreferencePublishParams
531
+
532
+ class WorkspacePreferenceReplaceParams = Courier::Models::WorkspacePreferenceReplaceParams
533
+
534
+ class WorkspacePreferenceReplaceRequest = Courier::Models::WorkspacePreferenceReplaceRequest
535
+
536
+ class WorkspacePreferenceRetrieveParams = Courier::Models::WorkspacePreferenceRetrieveParams
537
+
538
+ module WorkspacePreferences = Courier::Models::WorkspacePreferences
539
+
540
+ class WorkspacePreferenceTopicCreateRequest = Courier::Models::WorkspacePreferenceTopicCreateRequest
541
+
542
+ class WorkspacePreferenceTopicGetResponse = Courier::Models::WorkspacePreferenceTopicGetResponse
543
+
544
+ class WorkspacePreferenceTopicListResponse = Courier::Models::WorkspacePreferenceTopicListResponse
545
+
546
+ class WorkspacePreferenceTopicReplaceRequest = Courier::Models::WorkspacePreferenceTopicReplaceRequest
515
547
  end
@@ -0,0 +1,49 @@
1
+ module Courier
2
+ module Resources
3
+ class WorkspacePreferences
4
+ class Topics
5
+ def create: (
6
+ String section_id,
7
+ default_status: Courier::Models::WorkspacePreferenceTopicCreateRequest::default_status,
8
+ name: String,
9
+ ?allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicCreateRequest::allowed_preference]?,
10
+ ?include_unsubscribe_header: bool?,
11
+ ?routing_options: ::Array[Courier::Models::channel_classification]?,
12
+ ?topic_data: ::Hash[Symbol, top]?,
13
+ ?request_options: Courier::request_opts
14
+ ) -> Courier::WorkspacePreferenceTopicGetResponse
15
+
16
+ def retrieve: (
17
+ String topic_id,
18
+ section_id: String,
19
+ ?request_options: Courier::request_opts
20
+ ) -> Courier::WorkspacePreferenceTopicGetResponse
21
+
22
+ def list: (
23
+ String section_id,
24
+ ?request_options: Courier::request_opts
25
+ ) -> Courier::WorkspacePreferenceTopicListResponse
26
+
27
+ def archive: (
28
+ String topic_id,
29
+ section_id: String,
30
+ ?request_options: Courier::request_opts
31
+ ) -> nil
32
+
33
+ def replace: (
34
+ String topic_id,
35
+ section_id: String,
36
+ default_status: Courier::Models::WorkspacePreferenceTopicReplaceRequest::default_status,
37
+ name: String,
38
+ ?allowed_preferences: ::Array[Courier::Models::WorkspacePreferenceTopicReplaceRequest::allowed_preference]?,
39
+ ?include_unsubscribe_header: bool?,
40
+ ?routing_options: ::Array[Courier::Models::channel_classification]?,
41
+ ?topic_data: ::Hash[Symbol, top]?,
42
+ ?request_options: Courier::request_opts
43
+ ) -> Courier::WorkspacePreferenceTopicGetResponse
44
+
45
+ def initialize: (client: Courier::Client) -> void
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,42 @@
1
+ module Courier
2
+ module Resources
3
+ class WorkspacePreferences
4
+ attr_reader topics: Courier::Resources::WorkspacePreferences::Topics
5
+
6
+ def create: (
7
+ name: String,
8
+ ?has_custom_routing: bool?,
9
+ ?routing_options: ::Array[Courier::Models::channel_classification]?,
10
+ ?request_options: Courier::request_opts
11
+ ) -> Courier::WorkspacePreferenceGetResponse
12
+
13
+ def retrieve: (
14
+ String section_id,
15
+ ?request_options: Courier::request_opts
16
+ ) -> Courier::WorkspacePreferenceGetResponse
17
+
18
+ def list: (
19
+ ?request_options: Courier::request_opts
20
+ ) -> Courier::WorkspacePreferenceListResponse
21
+
22
+ def archive: (
23
+ String section_id,
24
+ ?request_options: Courier::request_opts
25
+ ) -> nil
26
+
27
+ def publish: (
28
+ ?request_options: Courier::request_opts
29
+ ) -> Courier::PublishPreferencesResponse
30
+
31
+ def replace: (
32
+ String section_id,
33
+ name: String,
34
+ ?has_custom_routing: bool?,
35
+ ?routing_options: ::Array[Courier::Models::channel_classification]?,
36
+ ?request_options: Courier::request_opts
37
+ ) -> Courier::WorkspacePreferenceGetResponse
38
+
39
+ def initialize: (client: Courier::Client) -> void
40
+ end
41
+ end
42
+ end