trycourier 4.19.2 → 4.21.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +19 -0
- data/lib/courier/client.rb +0 -4
- data/lib/courier/models/{bulk_run_job_params.rb → notification_duplicate_params.rb} +6 -6
- data/lib/courier/models/notification_template_summary.rb +22 -1
- data/lib/courier/models.rb +2 -14
- data/lib/courier/resources/notifications.rb +25 -0
- data/lib/courier/version.rb +1 -1
- data/lib/courier.rb +1 -11
- data/rbi/courier/client.rbi +0 -3
- data/rbi/courier/models/{bulk_retrieve_job_params.rbi → notification_duplicate_params.rbi} +9 -6
- data/rbi/courier/models/notification_template_summary.rbi +26 -0
- data/rbi/courier/models.rbi +2 -14
- data/rbi/courier/resources/notifications.rbi +19 -0
- data/sig/courier/client.rbs +0 -2
- data/sig/courier/models/notification_duplicate_params.rbs +20 -0
- data/sig/courier/models/notification_template_summary.rbs +14 -0
- data/sig/courier/models.rbs +2 -14
- data/sig/courier/resources/notifications.rbs +5 -0
- metadata +5 -35
- data/lib/courier/models/bulk_add_users_params.rb +0 -26
- data/lib/courier/models/bulk_create_job_params.rb +0 -29
- data/lib/courier/models/bulk_create_job_response.rb +0 -16
- data/lib/courier/models/bulk_list_users_params.rb +0 -33
- data/lib/courier/models/bulk_list_users_response.rb +0 -49
- data/lib/courier/models/bulk_retrieve_job_params.rb +0 -20
- data/lib/courier/models/bulk_retrieve_job_response.rb +0 -76
- data/lib/courier/models/inbound_bulk_message.rb +0 -91
- data/lib/courier/models/inbound_bulk_message_user.rb +0 -54
- data/lib/courier/resources/bulk.rb +0 -141
- data/rbi/courier/models/bulk_add_users_params.rbi +0 -43
- data/rbi/courier/models/bulk_create_job_params.rbi +0 -54
- data/rbi/courier/models/bulk_create_job_response.rbi +0 -26
- data/rbi/courier/models/bulk_list_users_params.rbi +0 -51
- data/rbi/courier/models/bulk_list_users_response.rbi +0 -125
- data/rbi/courier/models/bulk_retrieve_job_response.rbi +0 -157
- data/rbi/courier/models/bulk_run_job_params.rbi +0 -35
- data/rbi/courier/models/inbound_bulk_message.rbi +0 -124
- data/rbi/courier/models/inbound_bulk_message_user.rbi +0 -88
- data/rbi/courier/resources/bulk.rbi +0 -102
- data/sig/courier/models/bulk_add_users_params.rbs +0 -28
- data/sig/courier/models/bulk_create_job_params.rbs +0 -24
- data/sig/courier/models/bulk_create_job_response.rbs +0 -13
- data/sig/courier/models/bulk_list_users_params.rbs +0 -28
- data/sig/courier/models/bulk_list_users_response.rbs +0 -65
- data/sig/courier/models/bulk_retrieve_job_params.rbs +0 -23
- data/sig/courier/models/bulk_retrieve_job_response.rbs +0 -66
- data/sig/courier/models/bulk_run_job_params.rbs +0 -23
- data/sig/courier/models/inbound_bulk_message.rbs +0 -58
- data/sig/courier/models/inbound_bulk_message_user.rbs +0 -42
- data/sig/courier/resources/bulk.rbs +0 -34
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Courier
|
|
4
|
-
module Models
|
|
5
|
-
class BulkAddUsersParams < Courier::Internal::Type::BaseModel
|
|
6
|
-
extend Courier::Internal::Type::RequestParameters::Converter
|
|
7
|
-
include Courier::Internal::Type::RequestParameters
|
|
8
|
-
|
|
9
|
-
OrHash =
|
|
10
|
-
T.type_alias do
|
|
11
|
-
T.any(Courier::BulkAddUsersParams, Courier::Internal::AnyHash)
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
sig { returns(String) }
|
|
15
|
-
attr_accessor :job_id
|
|
16
|
-
|
|
17
|
-
sig { returns(T::Array[Courier::InboundBulkMessageUser]) }
|
|
18
|
-
attr_accessor :users
|
|
19
|
-
|
|
20
|
-
sig do
|
|
21
|
-
params(
|
|
22
|
-
job_id: String,
|
|
23
|
-
users: T::Array[Courier::InboundBulkMessageUser::OrHash],
|
|
24
|
-
request_options: Courier::RequestOptions::OrHash
|
|
25
|
-
).returns(T.attached_class)
|
|
26
|
-
end
|
|
27
|
-
def self.new(job_id:, users:, request_options: {})
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
sig do
|
|
31
|
-
override.returns(
|
|
32
|
-
{
|
|
33
|
-
job_id: String,
|
|
34
|
-
users: T::Array[Courier::InboundBulkMessageUser],
|
|
35
|
-
request_options: Courier::RequestOptions
|
|
36
|
-
}
|
|
37
|
-
)
|
|
38
|
-
end
|
|
39
|
-
def to_hash
|
|
40
|
-
end
|
|
41
|
-
end
|
|
42
|
-
end
|
|
43
|
-
end
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Courier
|
|
4
|
-
module Models
|
|
5
|
-
class BulkCreateJobParams < Courier::Internal::Type::BaseModel
|
|
6
|
-
extend Courier::Internal::Type::RequestParameters::Converter
|
|
7
|
-
include Courier::Internal::Type::RequestParameters
|
|
8
|
-
|
|
9
|
-
OrHash =
|
|
10
|
-
T.type_alias do
|
|
11
|
-
T.any(Courier::BulkCreateJobParams, Courier::Internal::AnyHash)
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
# Bulk message definition. Supports two formats:
|
|
15
|
-
#
|
|
16
|
-
# - V1 format: Requires `event` field (event ID or notification ID)
|
|
17
|
-
# - V2 format: Optionally use `template` (notification ID) or `content` (Elemental
|
|
18
|
-
# content) in addition to `event`
|
|
19
|
-
sig { returns(Courier::InboundBulkMessage) }
|
|
20
|
-
attr_reader :message
|
|
21
|
-
|
|
22
|
-
sig { params(message: Courier::InboundBulkMessage::OrHash).void }
|
|
23
|
-
attr_writer :message
|
|
24
|
-
|
|
25
|
-
sig do
|
|
26
|
-
params(
|
|
27
|
-
message: Courier::InboundBulkMessage::OrHash,
|
|
28
|
-
request_options: Courier::RequestOptions::OrHash
|
|
29
|
-
).returns(T.attached_class)
|
|
30
|
-
end
|
|
31
|
-
def self.new(
|
|
32
|
-
# Bulk message definition. Supports two formats:
|
|
33
|
-
#
|
|
34
|
-
# - V1 format: Requires `event` field (event ID or notification ID)
|
|
35
|
-
# - V2 format: Optionally use `template` (notification ID) or `content` (Elemental
|
|
36
|
-
# content) in addition to `event`
|
|
37
|
-
message:,
|
|
38
|
-
request_options: {}
|
|
39
|
-
)
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
sig do
|
|
43
|
-
override.returns(
|
|
44
|
-
{
|
|
45
|
-
message: Courier::InboundBulkMessage,
|
|
46
|
-
request_options: Courier::RequestOptions
|
|
47
|
-
}
|
|
48
|
-
)
|
|
49
|
-
end
|
|
50
|
-
def to_hash
|
|
51
|
-
end
|
|
52
|
-
end
|
|
53
|
-
end
|
|
54
|
-
end
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Courier
|
|
4
|
-
module Models
|
|
5
|
-
class BulkCreateJobResponse < Courier::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(
|
|
9
|
-
Courier::Models::BulkCreateJobResponse,
|
|
10
|
-
Courier::Internal::AnyHash
|
|
11
|
-
)
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
sig { returns(String) }
|
|
15
|
-
attr_accessor :job_id
|
|
16
|
-
|
|
17
|
-
sig { params(job_id: String).returns(T.attached_class) }
|
|
18
|
-
def self.new(job_id:)
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
sig { override.returns({ job_id: String }) }
|
|
22
|
-
def to_hash
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
end
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Courier
|
|
4
|
-
module Models
|
|
5
|
-
class BulkListUsersParams < Courier::Internal::Type::BaseModel
|
|
6
|
-
extend Courier::Internal::Type::RequestParameters::Converter
|
|
7
|
-
include Courier::Internal::Type::RequestParameters
|
|
8
|
-
|
|
9
|
-
OrHash =
|
|
10
|
-
T.type_alias do
|
|
11
|
-
T.any(Courier::BulkListUsersParams, Courier::Internal::AnyHash)
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
sig { returns(String) }
|
|
15
|
-
attr_accessor :job_id
|
|
16
|
-
|
|
17
|
-
# A unique identifier that allows for fetching the next set of users added to the
|
|
18
|
-
# bulk job
|
|
19
|
-
sig { returns(T.nilable(String)) }
|
|
20
|
-
attr_accessor :cursor
|
|
21
|
-
|
|
22
|
-
sig do
|
|
23
|
-
params(
|
|
24
|
-
job_id: String,
|
|
25
|
-
cursor: T.nilable(String),
|
|
26
|
-
request_options: Courier::RequestOptions::OrHash
|
|
27
|
-
).returns(T.attached_class)
|
|
28
|
-
end
|
|
29
|
-
def self.new(
|
|
30
|
-
job_id:,
|
|
31
|
-
# A unique identifier that allows for fetching the next set of users added to the
|
|
32
|
-
# bulk job
|
|
33
|
-
cursor: nil,
|
|
34
|
-
request_options: {}
|
|
35
|
-
)
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
sig do
|
|
39
|
-
override.returns(
|
|
40
|
-
{
|
|
41
|
-
job_id: String,
|
|
42
|
-
cursor: T.nilable(String),
|
|
43
|
-
request_options: Courier::RequestOptions
|
|
44
|
-
}
|
|
45
|
-
)
|
|
46
|
-
end
|
|
47
|
-
def to_hash
|
|
48
|
-
end
|
|
49
|
-
end
|
|
50
|
-
end
|
|
51
|
-
end
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Courier
|
|
4
|
-
module Models
|
|
5
|
-
class BulkListUsersResponse < Courier::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(
|
|
9
|
-
Courier::Models::BulkListUsersResponse,
|
|
10
|
-
Courier::Internal::AnyHash
|
|
11
|
-
)
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
sig { returns(T::Array[Courier::Models::BulkListUsersResponse::Item]) }
|
|
15
|
-
attr_accessor :items
|
|
16
|
-
|
|
17
|
-
sig { returns(Courier::Paging) }
|
|
18
|
-
attr_reader :paging
|
|
19
|
-
|
|
20
|
-
sig { params(paging: Courier::Paging::OrHash).void }
|
|
21
|
-
attr_writer :paging
|
|
22
|
-
|
|
23
|
-
sig do
|
|
24
|
-
params(
|
|
25
|
-
items: T::Array[Courier::Models::BulkListUsersResponse::Item::OrHash],
|
|
26
|
-
paging: Courier::Paging::OrHash
|
|
27
|
-
).returns(T.attached_class)
|
|
28
|
-
end
|
|
29
|
-
def self.new(items:, paging:)
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
sig do
|
|
33
|
-
override.returns(
|
|
34
|
-
{
|
|
35
|
-
items: T::Array[Courier::Models::BulkListUsersResponse::Item],
|
|
36
|
-
paging: Courier::Paging
|
|
37
|
-
}
|
|
38
|
-
)
|
|
39
|
-
end
|
|
40
|
-
def to_hash
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
class Item < Courier::Models::InboundBulkMessageUser
|
|
44
|
-
OrHash =
|
|
45
|
-
T.type_alias do
|
|
46
|
-
T.any(
|
|
47
|
-
Courier::Models::BulkListUsersResponse::Item,
|
|
48
|
-
Courier::Internal::AnyHash
|
|
49
|
-
)
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
sig do
|
|
53
|
-
returns(
|
|
54
|
-
Courier::Models::BulkListUsersResponse::Item::Status::TaggedSymbol
|
|
55
|
-
)
|
|
56
|
-
end
|
|
57
|
-
attr_accessor :status
|
|
58
|
-
|
|
59
|
-
sig { returns(T.nilable(String)) }
|
|
60
|
-
attr_accessor :message_id
|
|
61
|
-
|
|
62
|
-
sig do
|
|
63
|
-
params(
|
|
64
|
-
status:
|
|
65
|
-
Courier::Models::BulkListUsersResponse::Item::Status::OrSymbol,
|
|
66
|
-
message_id: T.nilable(String)
|
|
67
|
-
).returns(T.attached_class)
|
|
68
|
-
end
|
|
69
|
-
def self.new(status:, message_id: nil)
|
|
70
|
-
end
|
|
71
|
-
|
|
72
|
-
sig do
|
|
73
|
-
override.returns(
|
|
74
|
-
{
|
|
75
|
-
status:
|
|
76
|
-
Courier::Models::BulkListUsersResponse::Item::Status::TaggedSymbol,
|
|
77
|
-
message_id: T.nilable(String)
|
|
78
|
-
}
|
|
79
|
-
)
|
|
80
|
-
end
|
|
81
|
-
def to_hash
|
|
82
|
-
end
|
|
83
|
-
|
|
84
|
-
module Status
|
|
85
|
-
extend Courier::Internal::Type::Enum
|
|
86
|
-
|
|
87
|
-
TaggedSymbol =
|
|
88
|
-
T.type_alias do
|
|
89
|
-
T.all(
|
|
90
|
-
Symbol,
|
|
91
|
-
Courier::Models::BulkListUsersResponse::Item::Status
|
|
92
|
-
)
|
|
93
|
-
end
|
|
94
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
95
|
-
|
|
96
|
-
PENDING =
|
|
97
|
-
T.let(
|
|
98
|
-
:PENDING,
|
|
99
|
-
Courier::Models::BulkListUsersResponse::Item::Status::TaggedSymbol
|
|
100
|
-
)
|
|
101
|
-
ENQUEUED =
|
|
102
|
-
T.let(
|
|
103
|
-
:ENQUEUED,
|
|
104
|
-
Courier::Models::BulkListUsersResponse::Item::Status::TaggedSymbol
|
|
105
|
-
)
|
|
106
|
-
ERROR =
|
|
107
|
-
T.let(
|
|
108
|
-
:ERROR,
|
|
109
|
-
Courier::Models::BulkListUsersResponse::Item::Status::TaggedSymbol
|
|
110
|
-
)
|
|
111
|
-
|
|
112
|
-
sig do
|
|
113
|
-
override.returns(
|
|
114
|
-
T::Array[
|
|
115
|
-
Courier::Models::BulkListUsersResponse::Item::Status::TaggedSymbol
|
|
116
|
-
]
|
|
117
|
-
)
|
|
118
|
-
end
|
|
119
|
-
def self.values
|
|
120
|
-
end
|
|
121
|
-
end
|
|
122
|
-
end
|
|
123
|
-
end
|
|
124
|
-
end
|
|
125
|
-
end
|
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Courier
|
|
4
|
-
module Models
|
|
5
|
-
class BulkRetrieveJobResponse < Courier::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(
|
|
9
|
-
Courier::Models::BulkRetrieveJobResponse,
|
|
10
|
-
Courier::Internal::AnyHash
|
|
11
|
-
)
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
sig { returns(Courier::Models::BulkRetrieveJobResponse::Job) }
|
|
15
|
-
attr_reader :job
|
|
16
|
-
|
|
17
|
-
sig do
|
|
18
|
-
params(job: Courier::Models::BulkRetrieveJobResponse::Job::OrHash).void
|
|
19
|
-
end
|
|
20
|
-
attr_writer :job
|
|
21
|
-
|
|
22
|
-
sig do
|
|
23
|
-
params(
|
|
24
|
-
job: Courier::Models::BulkRetrieveJobResponse::Job::OrHash
|
|
25
|
-
).returns(T.attached_class)
|
|
26
|
-
end
|
|
27
|
-
def self.new(job:)
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
sig do
|
|
31
|
-
override.returns({ job: Courier::Models::BulkRetrieveJobResponse::Job })
|
|
32
|
-
end
|
|
33
|
-
def to_hash
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
class Job < Courier::Internal::Type::BaseModel
|
|
37
|
-
OrHash =
|
|
38
|
-
T.type_alias do
|
|
39
|
-
T.any(
|
|
40
|
-
Courier::Models::BulkRetrieveJobResponse::Job,
|
|
41
|
-
Courier::Internal::AnyHash
|
|
42
|
-
)
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
# Bulk message definition. Supports two formats:
|
|
46
|
-
#
|
|
47
|
-
# - V1 format: Requires `event` field (event ID or notification ID)
|
|
48
|
-
# - V2 format: Optionally use `template` (notification ID) or `content` (Elemental
|
|
49
|
-
# content) in addition to `event`
|
|
50
|
-
sig { returns(Courier::InboundBulkMessage) }
|
|
51
|
-
attr_reader :definition
|
|
52
|
-
|
|
53
|
-
sig { params(definition: Courier::InboundBulkMessage::OrHash).void }
|
|
54
|
-
attr_writer :definition
|
|
55
|
-
|
|
56
|
-
sig { returns(Integer) }
|
|
57
|
-
attr_accessor :enqueued
|
|
58
|
-
|
|
59
|
-
sig { returns(Integer) }
|
|
60
|
-
attr_accessor :failures
|
|
61
|
-
|
|
62
|
-
sig { returns(Integer) }
|
|
63
|
-
attr_accessor :received
|
|
64
|
-
|
|
65
|
-
sig do
|
|
66
|
-
returns(
|
|
67
|
-
Courier::Models::BulkRetrieveJobResponse::Job::Status::TaggedSymbol
|
|
68
|
-
)
|
|
69
|
-
end
|
|
70
|
-
attr_accessor :status
|
|
71
|
-
|
|
72
|
-
sig do
|
|
73
|
-
params(
|
|
74
|
-
definition: Courier::InboundBulkMessage::OrHash,
|
|
75
|
-
enqueued: Integer,
|
|
76
|
-
failures: Integer,
|
|
77
|
-
received: Integer,
|
|
78
|
-
status:
|
|
79
|
-
Courier::Models::BulkRetrieveJobResponse::Job::Status::OrSymbol
|
|
80
|
-
).returns(T.attached_class)
|
|
81
|
-
end
|
|
82
|
-
def self.new(
|
|
83
|
-
# Bulk message definition. Supports two formats:
|
|
84
|
-
#
|
|
85
|
-
# - V1 format: Requires `event` field (event ID or notification ID)
|
|
86
|
-
# - V2 format: Optionally use `template` (notification ID) or `content` (Elemental
|
|
87
|
-
# content) in addition to `event`
|
|
88
|
-
definition:,
|
|
89
|
-
enqueued:,
|
|
90
|
-
failures:,
|
|
91
|
-
received:,
|
|
92
|
-
status:
|
|
93
|
-
)
|
|
94
|
-
end
|
|
95
|
-
|
|
96
|
-
sig do
|
|
97
|
-
override.returns(
|
|
98
|
-
{
|
|
99
|
-
definition: Courier::InboundBulkMessage,
|
|
100
|
-
enqueued: Integer,
|
|
101
|
-
failures: Integer,
|
|
102
|
-
received: Integer,
|
|
103
|
-
status:
|
|
104
|
-
Courier::Models::BulkRetrieveJobResponse::Job::Status::TaggedSymbol
|
|
105
|
-
}
|
|
106
|
-
)
|
|
107
|
-
end
|
|
108
|
-
def to_hash
|
|
109
|
-
end
|
|
110
|
-
|
|
111
|
-
module Status
|
|
112
|
-
extend Courier::Internal::Type::Enum
|
|
113
|
-
|
|
114
|
-
TaggedSymbol =
|
|
115
|
-
T.type_alias do
|
|
116
|
-
T.all(
|
|
117
|
-
Symbol,
|
|
118
|
-
Courier::Models::BulkRetrieveJobResponse::Job::Status
|
|
119
|
-
)
|
|
120
|
-
end
|
|
121
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
122
|
-
|
|
123
|
-
CREATED =
|
|
124
|
-
T.let(
|
|
125
|
-
:CREATED,
|
|
126
|
-
Courier::Models::BulkRetrieveJobResponse::Job::Status::TaggedSymbol
|
|
127
|
-
)
|
|
128
|
-
PROCESSING =
|
|
129
|
-
T.let(
|
|
130
|
-
:PROCESSING,
|
|
131
|
-
Courier::Models::BulkRetrieveJobResponse::Job::Status::TaggedSymbol
|
|
132
|
-
)
|
|
133
|
-
COMPLETED =
|
|
134
|
-
T.let(
|
|
135
|
-
:COMPLETED,
|
|
136
|
-
Courier::Models::BulkRetrieveJobResponse::Job::Status::TaggedSymbol
|
|
137
|
-
)
|
|
138
|
-
ERROR =
|
|
139
|
-
T.let(
|
|
140
|
-
:ERROR,
|
|
141
|
-
Courier::Models::BulkRetrieveJobResponse::Job::Status::TaggedSymbol
|
|
142
|
-
)
|
|
143
|
-
|
|
144
|
-
sig do
|
|
145
|
-
override.returns(
|
|
146
|
-
T::Array[
|
|
147
|
-
Courier::Models::BulkRetrieveJobResponse::Job::Status::TaggedSymbol
|
|
148
|
-
]
|
|
149
|
-
)
|
|
150
|
-
end
|
|
151
|
-
def self.values
|
|
152
|
-
end
|
|
153
|
-
end
|
|
154
|
-
end
|
|
155
|
-
end
|
|
156
|
-
end
|
|
157
|
-
end
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Courier
|
|
4
|
-
module Models
|
|
5
|
-
class BulkRunJobParams < Courier::Internal::Type::BaseModel
|
|
6
|
-
extend Courier::Internal::Type::RequestParameters::Converter
|
|
7
|
-
include Courier::Internal::Type::RequestParameters
|
|
8
|
-
|
|
9
|
-
OrHash =
|
|
10
|
-
T.type_alias do
|
|
11
|
-
T.any(Courier::BulkRunJobParams, Courier::Internal::AnyHash)
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
sig { returns(String) }
|
|
15
|
-
attr_accessor :job_id
|
|
16
|
-
|
|
17
|
-
sig do
|
|
18
|
-
params(
|
|
19
|
-
job_id: String,
|
|
20
|
-
request_options: Courier::RequestOptions::OrHash
|
|
21
|
-
).returns(T.attached_class)
|
|
22
|
-
end
|
|
23
|
-
def self.new(job_id:, request_options: {})
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
sig do
|
|
27
|
-
override.returns(
|
|
28
|
-
{ job_id: String, request_options: Courier::RequestOptions }
|
|
29
|
-
)
|
|
30
|
-
end
|
|
31
|
-
def to_hash
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
end
|
|
35
|
-
end
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Courier
|
|
4
|
-
module Models
|
|
5
|
-
class InboundBulkMessage < Courier::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(Courier::InboundBulkMessage, Courier::Internal::AnyHash)
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
# Event ID or Notification ID (required). Can be either a Notification ID (e.g.,
|
|
12
|
-
# "FRH3QXM9E34W4RKP7MRC8NZ1T8V8") or a custom Event ID (e.g., "welcome-email")
|
|
13
|
-
# mapped to a notification.
|
|
14
|
-
sig { returns(String) }
|
|
15
|
-
attr_accessor :event
|
|
16
|
-
|
|
17
|
-
sig { returns(T.nilable(String)) }
|
|
18
|
-
attr_accessor :brand
|
|
19
|
-
|
|
20
|
-
# Elemental content (optional, for V2 format). When provided, this will be used
|
|
21
|
-
# instead of the notification associated with the `event` field.
|
|
22
|
-
sig do
|
|
23
|
-
returns(
|
|
24
|
-
T.nilable(
|
|
25
|
-
T.any(Courier::ElementalContentSugar, Courier::ElementalContent)
|
|
26
|
-
)
|
|
27
|
-
)
|
|
28
|
-
end
|
|
29
|
-
attr_accessor :content
|
|
30
|
-
|
|
31
|
-
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
32
|
-
attr_accessor :data
|
|
33
|
-
|
|
34
|
-
sig { returns(T.nilable(T::Hash[Symbol, T::Hash[Symbol, T.anything]])) }
|
|
35
|
-
attr_accessor :locale
|
|
36
|
-
|
|
37
|
-
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
38
|
-
attr_accessor :override
|
|
39
|
-
|
|
40
|
-
# Notification ID or template ID (optional, for V2 format). When provided, this
|
|
41
|
-
# will be used instead of the notification associated with the `event` field.
|
|
42
|
-
sig { returns(T.nilable(String)) }
|
|
43
|
-
attr_accessor :template
|
|
44
|
-
|
|
45
|
-
# Bulk message definition. Supports two formats:
|
|
46
|
-
#
|
|
47
|
-
# - V1 format: Requires `event` field (event ID or notification ID)
|
|
48
|
-
# - V2 format: Optionally use `template` (notification ID) or `content` (Elemental
|
|
49
|
-
# content) in addition to `event`
|
|
50
|
-
sig do
|
|
51
|
-
params(
|
|
52
|
-
event: String,
|
|
53
|
-
brand: T.nilable(String),
|
|
54
|
-
content:
|
|
55
|
-
T.nilable(
|
|
56
|
-
T.any(
|
|
57
|
-
Courier::ElementalContentSugar::OrHash,
|
|
58
|
-
Courier::ElementalContent::OrHash
|
|
59
|
-
)
|
|
60
|
-
),
|
|
61
|
-
data: T.nilable(T::Hash[Symbol, T.anything]),
|
|
62
|
-
locale: T.nilable(T::Hash[Symbol, T::Hash[Symbol, T.anything]]),
|
|
63
|
-
override: T.nilable(T::Hash[Symbol, T.anything]),
|
|
64
|
-
template: T.nilable(String)
|
|
65
|
-
).returns(T.attached_class)
|
|
66
|
-
end
|
|
67
|
-
def self.new(
|
|
68
|
-
# Event ID or Notification ID (required). Can be either a Notification ID (e.g.,
|
|
69
|
-
# "FRH3QXM9E34W4RKP7MRC8NZ1T8V8") or a custom Event ID (e.g., "welcome-email")
|
|
70
|
-
# mapped to a notification.
|
|
71
|
-
event:,
|
|
72
|
-
brand: nil,
|
|
73
|
-
# Elemental content (optional, for V2 format). When provided, this will be used
|
|
74
|
-
# instead of the notification associated with the `event` field.
|
|
75
|
-
content: nil,
|
|
76
|
-
data: nil,
|
|
77
|
-
locale: nil,
|
|
78
|
-
override: nil,
|
|
79
|
-
# Notification ID or template ID (optional, for V2 format). When provided, this
|
|
80
|
-
# will be used instead of the notification associated with the `event` field.
|
|
81
|
-
template: nil
|
|
82
|
-
)
|
|
83
|
-
end
|
|
84
|
-
|
|
85
|
-
sig do
|
|
86
|
-
override.returns(
|
|
87
|
-
{
|
|
88
|
-
event: String,
|
|
89
|
-
brand: T.nilable(String),
|
|
90
|
-
content:
|
|
91
|
-
T.nilable(
|
|
92
|
-
T.any(Courier::ElementalContentSugar, Courier::ElementalContent)
|
|
93
|
-
),
|
|
94
|
-
data: T.nilable(T::Hash[Symbol, T.anything]),
|
|
95
|
-
locale: T.nilable(T::Hash[Symbol, T::Hash[Symbol, T.anything]]),
|
|
96
|
-
override: T.nilable(T::Hash[Symbol, T.anything]),
|
|
97
|
-
template: T.nilable(String)
|
|
98
|
-
}
|
|
99
|
-
)
|
|
100
|
-
end
|
|
101
|
-
def to_hash
|
|
102
|
-
end
|
|
103
|
-
|
|
104
|
-
# Elemental content (optional, for V2 format). When provided, this will be used
|
|
105
|
-
# instead of the notification associated with the `event` field.
|
|
106
|
-
module Content
|
|
107
|
-
extend Courier::Internal::Type::Union
|
|
108
|
-
|
|
109
|
-
Variants =
|
|
110
|
-
T.type_alias do
|
|
111
|
-
T.any(Courier::ElementalContentSugar, Courier::ElementalContent)
|
|
112
|
-
end
|
|
113
|
-
|
|
114
|
-
sig do
|
|
115
|
-
override.returns(
|
|
116
|
-
T::Array[Courier::InboundBulkMessage::Content::Variants]
|
|
117
|
-
)
|
|
118
|
-
end
|
|
119
|
-
def self.variants
|
|
120
|
-
end
|
|
121
|
-
end
|
|
122
|
-
end
|
|
123
|
-
end
|
|
124
|
-
end
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Courier
|
|
4
|
-
module Models
|
|
5
|
-
class InboundBulkMessageUser < Courier::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(Courier::InboundBulkMessageUser, Courier::Internal::AnyHash)
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
# User-specific data that will be merged with message.data
|
|
12
|
-
sig { returns(T.nilable(T.anything)) }
|
|
13
|
-
attr_reader :data
|
|
14
|
-
|
|
15
|
-
sig { params(data: T.anything).void }
|
|
16
|
-
attr_writer :data
|
|
17
|
-
|
|
18
|
-
sig { returns(T.nilable(Courier::RecipientPreferences)) }
|
|
19
|
-
attr_reader :preferences
|
|
20
|
-
|
|
21
|
-
sig do
|
|
22
|
-
params(
|
|
23
|
-
preferences: T.nilable(Courier::RecipientPreferences::OrHash)
|
|
24
|
-
).void
|
|
25
|
-
end
|
|
26
|
-
attr_writer :preferences
|
|
27
|
-
|
|
28
|
-
# User profile information. For email-based bulk jobs, `profile.email` is required
|
|
29
|
-
# for provider routing to determine if the message can be delivered. The email
|
|
30
|
-
# address should be provided here rather than in `to.email`.
|
|
31
|
-
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
32
|
-
attr_accessor :profile
|
|
33
|
-
|
|
34
|
-
# User ID (legacy field, use profile or to.user_id instead)
|
|
35
|
-
sig { returns(T.nilable(String)) }
|
|
36
|
-
attr_accessor :recipient
|
|
37
|
-
|
|
38
|
-
# Optional recipient information. Note: For email provider routing, use
|
|
39
|
-
# `profile.email` instead of `to.email`. The `to` field is primarily used for
|
|
40
|
-
# recipient identification and data merging.
|
|
41
|
-
sig { returns(T.nilable(Courier::UserRecipient)) }
|
|
42
|
-
attr_reader :to
|
|
43
|
-
|
|
44
|
-
sig { params(to: T.nilable(Courier::UserRecipient::OrHash)).void }
|
|
45
|
-
attr_writer :to
|
|
46
|
-
|
|
47
|
-
sig do
|
|
48
|
-
params(
|
|
49
|
-
data: T.anything,
|
|
50
|
-
preferences: T.nilable(Courier::RecipientPreferences::OrHash),
|
|
51
|
-
profile: T.nilable(T::Hash[Symbol, T.anything]),
|
|
52
|
-
recipient: T.nilable(String),
|
|
53
|
-
to: T.nilable(Courier::UserRecipient::OrHash)
|
|
54
|
-
).returns(T.attached_class)
|
|
55
|
-
end
|
|
56
|
-
def self.new(
|
|
57
|
-
# User-specific data that will be merged with message.data
|
|
58
|
-
data: nil,
|
|
59
|
-
preferences: nil,
|
|
60
|
-
# User profile information. For email-based bulk jobs, `profile.email` is required
|
|
61
|
-
# for provider routing to determine if the message can be delivered. The email
|
|
62
|
-
# address should be provided here rather than in `to.email`.
|
|
63
|
-
profile: nil,
|
|
64
|
-
# User ID (legacy field, use profile or to.user_id instead)
|
|
65
|
-
recipient: nil,
|
|
66
|
-
# Optional recipient information. Note: For email provider routing, use
|
|
67
|
-
# `profile.email` instead of `to.email`. The `to` field is primarily used for
|
|
68
|
-
# recipient identification and data merging.
|
|
69
|
-
to: nil
|
|
70
|
-
)
|
|
71
|
-
end
|
|
72
|
-
|
|
73
|
-
sig do
|
|
74
|
-
override.returns(
|
|
75
|
-
{
|
|
76
|
-
data: T.anything,
|
|
77
|
-
preferences: T.nilable(Courier::RecipientPreferences),
|
|
78
|
-
profile: T.nilable(T::Hash[Symbol, T.anything]),
|
|
79
|
-
recipient: T.nilable(String),
|
|
80
|
-
to: T.nilable(Courier::UserRecipient)
|
|
81
|
-
}
|
|
82
|
-
)
|
|
83
|
-
end
|
|
84
|
-
def to_hash
|
|
85
|
-
end
|
|
86
|
-
end
|
|
87
|
-
end
|
|
88
|
-
end
|