ark-email 0.15.0 → 0.16.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 (29) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/README.md +1 -1
  4. data/lib/ark_email/models/email_list_response.rb +3 -10
  5. data/lib/ark_email/models/email_retrieve_deliveries_response.rb +11 -19
  6. data/lib/ark_email/models/email_retrieve_response.rb +3 -13
  7. data/lib/ark_email/models/email_retry_response.rb +9 -1
  8. data/lib/ark_email/models/email_send_batch_response.rb +3 -10
  9. data/lib/ark_email/models/email_send_raw_response.rb +2 -2
  10. data/lib/ark_email/models/email_send_response.rb +2 -2
  11. data/lib/ark_email/models/log_entry.rb +2 -2
  12. data/lib/ark_email/resources/emails.rb +15 -14
  13. data/lib/ark_email/version.rb +1 -1
  14. data/rbi/ark_email/models/email_list_response.rbi +2 -8
  15. data/rbi/ark_email/models/email_retrieve_deliveries_response.rbi +10 -18
  16. data/rbi/ark_email/models/email_retrieve_response.rbi +2 -14
  17. data/rbi/ark_email/models/email_retry_response.rbi +11 -3
  18. data/rbi/ark_email/models/email_send_batch_response.rbi +5 -9
  19. data/rbi/ark_email/models/email_send_raw_response.rbi +2 -2
  20. data/rbi/ark_email/models/email_send_response.rbi +2 -2
  21. data/rbi/ark_email/models/log_entry.rbi +2 -2
  22. data/rbi/ark_email/resources/emails.rbi +14 -14
  23. data/sig/ark_email/models/email_list_response.rbs +0 -5
  24. data/sig/ark_email/models/email_retrieve_deliveries_response.rbs +5 -10
  25. data/sig/ark_email/models/email_retrieve_response.rbs +0 -5
  26. data/sig/ark_email/models/email_retry_response.rbs +5 -3
  27. data/sig/ark_email/models/email_send_batch_response.rbs +3 -5
  28. data/sig/ark_email/resources/emails.rbs +3 -3
  29. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2ab2c267c0272df886fd6e21d8c157bf1534777bdf72da459141654a96e31866
4
- data.tar.gz: 84150c3d0ec9b98e472fd7e76f584dd380122359adab410691ab95efb9beb887
3
+ metadata.gz: eca12e0e4bd38dc3db2e524b44d3f6ac39c1747b64636fc5b6e5022cb3b471de
4
+ data.tar.gz: e8173cd50604520b2379e28555896c2414cbb87182cfb9c700ad79411de6b80c
5
5
  SHA512:
6
- metadata.gz: 0400a57909216e295f59867461f74717a4815f8e2b3db006d5afe0625e6683c74281069c2db3e3888ce5c7acaccc9f6472a7c7f9952cc1fb3024eb1acf8bb226
7
- data.tar.gz: 00aaabff41043bc684fcb450aff04f3367927068d6500fd8e3ff67d62b34bcfbd48cfa3f6b071ea1da24c0094d8198feadb06942e721eef441000769b0f209fb
6
+ metadata.gz: 8075f779365578d7000b62549af9479c9a8540119445ecd5be89d00a0f80719bad83bb7f45429ebca6d2f08aab3dc0a2ee9645ce18c1ea65dd73ced2ac90861d
7
+ data.tar.gz: 60b135d8b1e9fd878a90760159f221daa0735d908546e19b81b4692100584c5e2b445932161d330b40bab49d859cb95e720ea1e48c018955bbf89c7f140db088
data/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.16.0 (2026-01-30)
4
+
5
+ Full Changelog: [v0.15.0...v0.16.0](https://github.com/ArkHQ-io/ark-ruby/compare/v0.15.0...v0.16.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([24d1b7c](https://github.com/ArkHQ-io/ark-ruby/commit/24d1b7cfc75815134bd692975d49f69a365367f5))
10
+ * **api:** api update ([0c5fd82](https://github.com/ArkHQ-io/ark-ruby/commit/0c5fd82bca7538e3cc09bceae1750294c8e26086))
11
+ * **api:** manual updates ([b1d3c51](https://github.com/ArkHQ-io/ark-ruby/commit/b1d3c51060018d21e352e3b04df38e7e63607904))
12
+ * **api:** manual updates ([5df18a4](https://github.com/ArkHQ-io/ark-ruby/commit/5df18a423121faf13af16e92f59ece007861539f))
13
+ * **api:** manual updates ([51801ab](https://github.com/ArkHQ-io/ark-ruby/commit/51801ab3fb1e6752733194c8b0982e85eed46881))
14
+
3
15
  ## 0.15.0 (2026-01-29)
4
16
 
5
17
  Full Changelog: [v0.14.0...v0.15.0](https://github.com/ArkHQ-io/ark-ruby/compare/v0.14.0...v0.15.0)
data/README.md CHANGED
@@ -26,7 +26,7 @@ To use this gem, install via Bundler by adding the following to your application
26
26
  <!-- x-release-please-start-version -->
27
27
 
28
28
  ```ruby
29
- gem "ark-email", "~> 0.15.0"
29
+ gem "ark-email", "~> 0.16.0"
30
30
  ```
31
31
 
32
32
  <!-- x-release-please-end -->
@@ -5,16 +5,11 @@ module ArkEmail
5
5
  # @see ArkEmail::Resources::Emails#list
6
6
  class EmailListResponse < ArkEmail::Internal::Type::BaseModel
7
7
  # @!attribute id
8
- # Internal message ID
8
+ # Unique message identifier (token)
9
9
  #
10
10
  # @return [String]
11
11
  required :id, String
12
12
 
13
- # @!attribute token
14
- #
15
- # @return [String]
16
- required :token, String
17
-
18
13
  # @!attribute from
19
14
  #
20
15
  # @return [String]
@@ -58,13 +53,11 @@ module ArkEmail
58
53
  # @return [String, nil]
59
54
  optional :tag, String
60
55
 
61
- # @!method initialize(id:, token:, from:, status:, subject:, timestamp:, timestamp_iso:, to:, tag: nil)
56
+ # @!method initialize(id:, from:, status:, subject:, timestamp:, timestamp_iso:, to:, tag: nil)
62
57
  # Some parameter documentations has been truncated, see
63
58
  # {ArkEmail::Models::EmailListResponse} for more details.
64
59
  #
65
- # @param id [String] Internal message ID
66
- #
67
- # @param token [String]
60
+ # @param id [String] Unique message identifier (token)
68
61
  #
69
62
  # @param from [String]
70
63
  #
@@ -26,8 +26,14 @@ module ArkEmail
26
26
 
27
27
  # @see ArkEmail::Models::EmailRetrieveDeliveriesResponse#data
28
28
  class Data < ArkEmail::Internal::Type::BaseModel
29
+ # @!attribute id
30
+ # Message identifier (token)
31
+ #
32
+ # @return [String]
33
+ required :id, String
34
+
29
35
  # @!attribute can_retry_manually
30
- # Whether the message can be manually retried via `POST /emails/{emailId}/retry`.
36
+ # Whether the message can be manually retried via `POST /emails/{id}/retry`.
31
37
  # `true` when the raw message content is still available (not expired). Messages
32
38
  # older than the retention period cannot be retried.
33
39
  #
@@ -42,18 +48,6 @@ module ArkEmail
42
48
  required :deliveries,
43
49
  -> { ArkEmail::Internal::Type::ArrayOf[ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::Delivery] }
44
50
 
45
- # @!attribute message_id
46
- # Internal numeric message ID
47
- #
48
- # @return [Integer]
49
- required :message_id, Integer, api_name: :messageId
50
-
51
- # @!attribute message_token
52
- # Unique message token for API references
53
- #
54
- # @return [String]
55
- required :message_token, String, api_name: :messageToken
56
-
57
51
  # @!attribute retry_state
58
52
  # Information about the current retry state of a message that is queued for
59
53
  # delivery. Only present when the message is in the delivery queue.
@@ -77,17 +71,15 @@ module ArkEmail
77
71
  # @return [Symbol, ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::Status]
78
72
  required :status, enum: -> { ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::Status }
79
73
 
80
- # @!method initialize(can_retry_manually:, deliveries:, message_id:, message_token:, retry_state:, status:)
74
+ # @!method initialize(id:, can_retry_manually:, deliveries:, retry_state:, status:)
81
75
  # Some parameter documentations has been truncated, see
82
76
  # {ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data} for more details.
83
77
  #
84
- # @param can_retry_manually [Boolean] Whether the message can be manually retried via `POST /emails/{emailId}/retry`.
78
+ # @param id [String] Message identifier (token)
85
79
  #
86
- # @param deliveries [Array<ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::Delivery>] Chronological list of delivery attempts for this message.
80
+ # @param can_retry_manually [Boolean] Whether the message can be manually retried via `POST /emails/{id}/retry`.
87
81
  #
88
- # @param message_id [Integer] Internal numeric message ID
89
- #
90
- # @param message_token [String] Unique message token for API references
82
+ # @param deliveries [Array<ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::Delivery>] Chronological list of delivery attempts for this message.
91
83
  #
92
84
  # @param retry_state [ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::RetryState, nil] Information about the current retry state of a message that is queued for delive
93
85
  #
@@ -27,19 +27,11 @@ module ArkEmail
27
27
  # @see ArkEmail::Models::EmailRetrieveResponse#data
28
28
  class Data < ArkEmail::Internal::Type::BaseModel
29
29
  # @!attribute id
30
- # Internal message ID
30
+ # Unique message identifier (token)
31
31
  #
32
32
  # @return [String]
33
33
  required :id, String
34
34
 
35
- # @!attribute token
36
- # Unique message token used to retrieve this email via API. Combined with id to
37
- # form the full message identifier: msg*{id}*{token} Use this token with GET
38
- # /emails/{emailId} where emailId = "msg*{id}*{token}"
39
- #
40
- # @return [String]
41
- required :token, String
42
-
43
35
  # @!attribute from
44
36
  # Sender address
45
37
  #
@@ -158,13 +150,11 @@ module ArkEmail
158
150
  # @return [String, nil]
159
151
  optional :tag, String
160
152
 
161
- # @!method initialize(id:, token:, from:, scope:, status:, subject:, timestamp:, timestamp_iso:, to:, activity: nil, attachments: nil, deliveries: nil, headers: nil, html_body: nil, message_id: nil, plain_body: nil, raw_message: nil, spam: nil, spam_score: nil, tag: nil)
153
+ # @!method initialize(id:, from:, scope:, status:, subject:, timestamp:, timestamp_iso:, to:, activity: nil, attachments: nil, deliveries: nil, headers: nil, html_body: nil, message_id: nil, plain_body: nil, raw_message: nil, spam: nil, spam_score: nil, tag: nil)
162
154
  # Some parameter documentations has been truncated, see
163
155
  # {ArkEmail::Models::EmailRetrieveResponse::Data} for more details.
164
156
  #
165
- # @param id [String] Internal message ID
166
- #
167
- # @param token [String] Unique message token used to retrieve this email via API.
157
+ # @param id [String] Unique message identifier (token)
168
158
  #
169
159
  # @param from [String] Sender address
170
160
  #
@@ -26,12 +26,20 @@ module ArkEmail
26
26
 
27
27
  # @see ArkEmail::Models::EmailRetryResponse#data
28
28
  class Data < ArkEmail::Internal::Type::BaseModel
29
+ # @!attribute id
30
+ # Email identifier (token)
31
+ #
32
+ # @return [String]
33
+ required :id, String
34
+
29
35
  # @!attribute message
30
36
  #
31
37
  # @return [String]
32
38
  required :message, String
33
39
 
34
- # @!method initialize(message:)
40
+ # @!method initialize(id:, message:)
41
+ # @param id [String] Email identifier (token)
42
+ #
35
43
  # @param message [String]
36
44
  end
37
45
  end
@@ -74,20 +74,13 @@ module ArkEmail
74
74
 
75
75
  class Message < ArkEmail::Internal::Type::BaseModel
76
76
  # @!attribute id
77
- # Message ID
77
+ # Message identifier (token)
78
78
  #
79
79
  # @return [String]
80
80
  required :id, String
81
81
 
82
- # @!attribute token
83
- #
84
- # @return [String]
85
- required :token, String
86
-
87
- # @!method initialize(id:, token:)
88
- # @param id [String] Message ID
89
- #
90
- # @param token [String]
82
+ # @!method initialize(id:)
83
+ # @param id [String] Message identifier (token)
91
84
  end
92
85
  end
93
86
  end
@@ -27,7 +27,7 @@ module ArkEmail
27
27
  # @see ArkEmail::Models::EmailSendRawResponse#data
28
28
  class Data < ArkEmail::Internal::Type::BaseModel
29
29
  # @!attribute id
30
- # Unique message ID (format: msg*{id}*{token})
30
+ # Unique message identifier (token)
31
31
  #
32
32
  # @return [String]
33
33
  required :id, String
@@ -61,7 +61,7 @@ module ArkEmail
61
61
  # Some parameter documentations has been truncated, see
62
62
  # {ArkEmail::Models::EmailSendRawResponse::Data} for more details.
63
63
  #
64
- # @param id [String] Unique message ID (format: msg*{id}*{token})
64
+ # @param id [String] Unique message identifier (token)
65
65
  #
66
66
  # @param status [Symbol, ArkEmail::Models::EmailSendRawResponse::Data::Status] Current delivery status
67
67
  #
@@ -27,7 +27,7 @@ module ArkEmail
27
27
  # @see ArkEmail::Models::EmailSendResponse#data
28
28
  class Data < ArkEmail::Internal::Type::BaseModel
29
29
  # @!attribute id
30
- # Unique message ID (format: msg*{id}*{token})
30
+ # Unique message identifier (token)
31
31
  #
32
32
  # @return [String]
33
33
  required :id, String
@@ -61,7 +61,7 @@ module ArkEmail
61
61
  # Some parameter documentations has been truncated, see
62
62
  # {ArkEmail::Models::EmailSendResponse::Data} for more details.
63
63
  #
64
- # @param id [String] Unique message ID (format: msg*{id}*{token})
64
+ # @param id [String] Unique message identifier (token)
65
65
  #
66
66
  # @param status [Symbol, ArkEmail::Models::EmailSendResponse::Data::Status] Current delivery status
67
67
  #
@@ -231,7 +231,7 @@ module ArkEmail
231
231
  # @see ArkEmail::Models::LogEntry#email
232
232
  class Email < ArkEmail::Internal::Type::BaseModel
233
233
  # @!attribute id
234
- # Email message ID
234
+ # Email message identifier (token)
235
235
  #
236
236
  # @return [String, nil]
237
237
  optional :id, String
@@ -245,7 +245,7 @@ module ArkEmail
245
245
  # @!method initialize(id: nil, recipient_count: nil)
246
246
  # Email-specific data (for email endpoints)
247
247
  #
248
- # @param id [String] Email message ID
248
+ # @param id [String] Email message identifier (token)
249
249
  #
250
250
  # @param recipient_count [Integer, nil] Number of recipients
251
251
  end
@@ -12,9 +12,9 @@ module ArkEmail
12
12
  # Use the `expand` parameter to include additional data like the HTML/text body,
13
13
  # headers, or delivery attempts.
14
14
  #
15
- # @overload retrieve(email_id, expand: nil, request_options: {})
15
+ # @overload retrieve(id, expand: nil, request_options: {})
16
16
  #
17
- # @param email_id [String] The email ID (from send response) or message token
17
+ # @param id [String] The email identifier (token returned from send response)
18
18
  #
19
19
  # @param expand [String] Comma-separated list of fields to include:
20
20
  #
@@ -23,11 +23,11 @@ module ArkEmail
23
23
  # @return [ArkEmail::Models::EmailRetrieveResponse]
24
24
  #
25
25
  # @see ArkEmail::Models::EmailRetrieveParams
26
- def retrieve(email_id, params = {})
26
+ def retrieve(id, params = {})
27
27
  parsed, options = ArkEmail::EmailRetrieveParams.dump_request(params)
28
28
  @client.request(
29
29
  method: :get,
30
- path: ["emails/%1$s", email_id],
30
+ path: ["emails/%1$s", id],
31
31
  query: parsed,
32
32
  model: ArkEmail::Models::EmailRetrieveResponse,
33
33
  options: options
@@ -118,23 +118,23 @@ module ArkEmail
118
118
  #
119
119
  # ### Can Retry Manually
120
120
  #
121
- # Indicates whether you can call `POST /emails/{emailId}/retry` to manually retry
122
- # the email. This is `true` when the raw message content is still available (not
121
+ # Indicates whether you can call `POST /emails/{id}/retry` to manually retry the
122
+ # email. This is `true` when the raw message content is still available (not
123
123
  # expired due to retention policy).
124
124
  #
125
- # @overload retrieve_deliveries(email_id, request_options: {})
125
+ # @overload retrieve_deliveries(id, request_options: {})
126
126
  #
127
- # @param email_id [String] Email identifier. Accepts multiple formats:
127
+ # @param id [String] Email identifier (the token returned when sending an email).
128
128
  #
129
129
  # @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}, nil]
130
130
  #
131
131
  # @return [ArkEmail::Models::EmailRetrieveDeliveriesResponse]
132
132
  #
133
133
  # @see ArkEmail::Models::EmailRetrieveDeliveriesParams
134
- def retrieve_deliveries(email_id, params = {})
134
+ def retrieve_deliveries(id, params = {})
135
135
  @client.request(
136
136
  method: :get,
137
- path: ["emails/%1$s/deliveries", email_id],
137
+ path: ["emails/%1$s/deliveries", id],
138
138
  model: ArkEmail::Models::EmailRetrieveDeliveriesResponse,
139
139
  options: params[:request_options]
140
140
  )
@@ -145,18 +145,19 @@ module ArkEmail
145
145
  #
146
146
  # Only works for emails that have failed or are in a retryable state.
147
147
  #
148
- # @overload retry_(email_id, request_options: {})
148
+ # @overload retry_(id, request_options: {})
149
+ #
150
+ # @param id [String] The email identifier (token returned from send response)
149
151
  #
150
- # @param email_id [String]
151
152
  # @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}, nil]
152
153
  #
153
154
  # @return [ArkEmail::Models::EmailRetryResponse]
154
155
  #
155
156
  # @see ArkEmail::Models::EmailRetryParams
156
- def retry_(email_id, params = {})
157
+ def retry_(id, params = {})
157
158
  @client.request(
158
159
  method: :post,
159
- path: ["emails/%1$s/retry", email_id],
160
+ path: ["emails/%1$s/retry", id],
160
161
  model: ArkEmail::Models::EmailRetryResponse,
161
162
  options: params[:request_options]
162
163
  )
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ArkEmail
4
- VERSION = "0.15.0"
4
+ VERSION = "0.16.0"
5
5
  end
@@ -11,13 +11,10 @@ module ArkEmail
11
11
  )
12
12
  end
13
13
 
14
- # Internal message ID
14
+ # Unique message identifier (token)
15
15
  sig { returns(String) }
16
16
  attr_accessor :id
17
17
 
18
- sig { returns(String) }
19
- attr_accessor :token
20
-
21
18
  sig { returns(String) }
22
19
  attr_accessor :from
23
20
 
@@ -53,7 +50,6 @@ module ArkEmail
53
50
  sig do
54
51
  params(
55
52
  id: String,
56
- token: String,
57
53
  from: String,
58
54
  status: ArkEmail::Models::EmailListResponse::Status::OrSymbol,
59
55
  subject: String,
@@ -64,9 +60,8 @@ module ArkEmail
64
60
  ).returns(T.attached_class)
65
61
  end
66
62
  def self.new(
67
- # Internal message ID
63
+ # Unique message identifier (token)
68
64
  id:,
69
- token:,
70
65
  from:,
71
66
  # Current delivery status:
72
67
  #
@@ -89,7 +84,6 @@ module ArkEmail
89
84
  override.returns(
90
85
  {
91
86
  id: String,
92
- token: String,
93
87
  from: String,
94
88
  status: ArkEmail::Models::EmailListResponse::Status::TaggedSymbol,
95
89
  subject: String,
@@ -61,7 +61,11 @@ module ArkEmail
61
61
  )
62
62
  end
63
63
 
64
- # Whether the message can be manually retried via `POST /emails/{emailId}/retry`.
64
+ # Message identifier (token)
65
+ sig { returns(String) }
66
+ attr_accessor :id
67
+
68
+ # Whether the message can be manually retried via `POST /emails/{id}/retry`.
65
69
  # `true` when the raw message content is still available (not expired). Messages
66
70
  # older than the retention period cannot be retried.
67
71
  sig { returns(T::Boolean) }
@@ -78,14 +82,6 @@ module ArkEmail
78
82
  end
79
83
  attr_accessor :deliveries
80
84
 
81
- # Internal numeric message ID
82
- sig { returns(Integer) }
83
- attr_accessor :message_id
84
-
85
- # Unique message token for API references
86
- sig { returns(String) }
87
- attr_accessor :message_token
88
-
89
85
  # Information about the current retry state of a message that is queued for
90
86
  # delivery. Only present when the message is in the delivery queue.
91
87
  sig do
@@ -124,13 +120,12 @@ module ArkEmail
124
120
 
125
121
  sig do
126
122
  params(
123
+ id: String,
127
124
  can_retry_manually: T::Boolean,
128
125
  deliveries:
129
126
  T::Array[
130
127
  ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::Delivery::OrHash
131
128
  ],
132
- message_id: Integer,
133
- message_token: String,
134
129
  retry_state:
135
130
  T.nilable(
136
131
  ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::RetryState::OrHash
@@ -140,17 +135,15 @@ module ArkEmail
140
135
  ).returns(T.attached_class)
141
136
  end
142
137
  def self.new(
143
- # Whether the message can be manually retried via `POST /emails/{emailId}/retry`.
138
+ # Message identifier (token)
139
+ id:,
140
+ # Whether the message can be manually retried via `POST /emails/{id}/retry`.
144
141
  # `true` when the raw message content is still available (not expired). Messages
145
142
  # older than the retention period cannot be retried.
146
143
  can_retry_manually:,
147
144
  # Chronological list of delivery attempts for this message. Each attempt includes
148
145
  # SMTP response codes and timestamps.
149
146
  deliveries:,
150
- # Internal numeric message ID
151
- message_id:,
152
- # Unique message token for API references
153
- message_token:,
154
147
  # Information about the current retry state of a message that is queued for
155
148
  # delivery. Only present when the message is in the delivery queue.
156
149
  retry_state:,
@@ -169,13 +162,12 @@ module ArkEmail
169
162
  sig do
170
163
  override.returns(
171
164
  {
165
+ id: String,
172
166
  can_retry_manually: T::Boolean,
173
167
  deliveries:
174
168
  T::Array[
175
169
  ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::Delivery
176
170
  ],
177
- message_id: Integer,
178
- message_token: String,
179
171
  retry_state:
180
172
  T.nilable(
181
173
  ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::RetryState
@@ -59,16 +59,10 @@ module ArkEmail
59
59
  )
60
60
  end
61
61
 
62
- # Internal message ID
62
+ # Unique message identifier (token)
63
63
  sig { returns(String) }
64
64
  attr_accessor :id
65
65
 
66
- # Unique message token used to retrieve this email via API. Combined with id to
67
- # form the full message identifier: msg*{id}*{token} Use this token with GET
68
- # /emails/{emailId} where emailId = "msg*{id}*{token}"
69
- sig { returns(String) }
70
- attr_accessor :token
71
-
72
66
  # Sender address
73
67
  sig { returns(String) }
74
68
  attr_accessor :from
@@ -230,7 +224,6 @@ module ArkEmail
230
224
  sig do
231
225
  params(
232
226
  id: String,
233
- token: String,
234
227
  from: String,
235
228
  scope:
236
229
  ArkEmail::Models::EmailRetrieveResponse::Data::Scope::OrSymbol,
@@ -261,12 +254,8 @@ module ArkEmail
261
254
  ).returns(T.attached_class)
262
255
  end
263
256
  def self.new(
264
- # Internal message ID
257
+ # Unique message identifier (token)
265
258
  id:,
266
- # Unique message token used to retrieve this email via API. Combined with id to
267
- # form the full message identifier: msg*{id}*{token} Use this token with GET
268
- # /emails/{emailId} where emailId = "msg*{id}*{token}"
269
- token:,
270
259
  # Sender address
271
260
  from:,
272
261
  # Message direction
@@ -318,7 +307,6 @@ module ArkEmail
318
307
  override.returns(
319
308
  {
320
309
  id: String,
321
- token: String,
322
310
  from: String,
323
311
  scope:
324
312
  ArkEmail::Models::EmailRetrieveResponse::Data::Scope::TaggedSymbol,
@@ -59,14 +59,22 @@ module ArkEmail
59
59
  )
60
60
  end
61
61
 
62
+ # Email identifier (token)
63
+ sig { returns(String) }
64
+ attr_accessor :id
65
+
62
66
  sig { returns(String) }
63
67
  attr_accessor :message
64
68
 
65
- sig { params(message: String).returns(T.attached_class) }
66
- def self.new(message:)
69
+ sig { params(id: String, message: String).returns(T.attached_class) }
70
+ def self.new(
71
+ # Email identifier (token)
72
+ id:,
73
+ message:
74
+ )
67
75
  end
68
76
 
69
- sig { override.returns({ message: String }) }
77
+ sig { override.returns({ id: String, message: String }) }
70
78
  def to_hash
71
79
  end
72
80
  end
@@ -147,22 +147,18 @@ module ArkEmail
147
147
  )
148
148
  end
149
149
 
150
- # Message ID
150
+ # Message identifier (token)
151
151
  sig { returns(String) }
152
152
  attr_accessor :id
153
153
 
154
- sig { returns(String) }
155
- attr_accessor :token
156
-
157
- sig { params(id: String, token: String).returns(T.attached_class) }
154
+ sig { params(id: String).returns(T.attached_class) }
158
155
  def self.new(
159
- # Message ID
160
- id:,
161
- token:
156
+ # Message identifier (token)
157
+ id:
162
158
  )
163
159
  end
164
160
 
165
- sig { override.returns({ id: String, token: String }) }
161
+ sig { override.returns({ id: String }) }
166
162
  def to_hash
167
163
  end
168
164
  end
@@ -59,7 +59,7 @@ module ArkEmail
59
59
  )
60
60
  end
61
61
 
62
- # Unique message ID (format: msg*{id}*{token})
62
+ # Unique message identifier (token)
63
63
  sig { returns(String) }
64
64
  attr_accessor :id
65
65
 
@@ -101,7 +101,7 @@ module ArkEmail
101
101
  ).returns(T.attached_class)
102
102
  end
103
103
  def self.new(
104
- # Unique message ID (format: msg*{id}*{token})
104
+ # Unique message identifier (token)
105
105
  id:,
106
106
  # Current delivery status
107
107
  status:,
@@ -59,7 +59,7 @@ module ArkEmail
59
59
  )
60
60
  end
61
61
 
62
- # Unique message ID (format: msg*{id}*{token})
62
+ # Unique message identifier (token)
63
63
  sig { returns(String) }
64
64
  attr_accessor :id
65
65
 
@@ -100,7 +100,7 @@ module ArkEmail
100
100
  ).returns(T.attached_class)
101
101
  end
102
102
  def self.new(
103
- # Unique message ID (format: msg*{id}*{token})
103
+ # Unique message identifier (token)
104
104
  id:,
105
105
  # Current delivery status
106
106
  status:,
@@ -323,7 +323,7 @@ module ArkEmail
323
323
  T.any(ArkEmail::LogEntry::Email, ArkEmail::Internal::AnyHash)
324
324
  end
325
325
 
326
- # Email message ID
326
+ # Email message identifier (token)
327
327
  sig { returns(T.nilable(String)) }
328
328
  attr_reader :id
329
329
 
@@ -341,7 +341,7 @@ module ArkEmail
341
341
  )
342
342
  end
343
343
  def self.new(
344
- # Email message ID
344
+ # Email message identifier (token)
345
345
  id: nil,
346
346
  # Number of recipients
347
347
  recipient_count: nil
@@ -10,14 +10,14 @@ module ArkEmail
10
10
  # headers, or delivery attempts.
11
11
  sig do
12
12
  params(
13
- email_id: String,
13
+ id: String,
14
14
  expand: String,
15
15
  request_options: ArkEmail::RequestOptions::OrHash
16
16
  ).returns(ArkEmail::Models::EmailRetrieveResponse)
17
17
  end
18
18
  def retrieve(
19
- # The email ID (from send response) or message token
20
- email_id,
19
+ # The email identifier (token returned from send response)
20
+ id,
21
21
  # Comma-separated list of fields to include:
22
22
  #
23
23
  # - `full` - Include all expanded fields in a single request
@@ -119,22 +119,18 @@ module ArkEmail
119
119
  #
120
120
  # ### Can Retry Manually
121
121
  #
122
- # Indicates whether you can call `POST /emails/{emailId}/retry` to manually retry
123
- # the email. This is `true` when the raw message content is still available (not
122
+ # Indicates whether you can call `POST /emails/{id}/retry` to manually retry the
123
+ # email. This is `true` when the raw message content is still available (not
124
124
  # expired due to retention policy).
125
125
  sig do
126
126
  params(
127
- email_id: String,
127
+ id: String,
128
128
  request_options: ArkEmail::RequestOptions::OrHash
129
129
  ).returns(ArkEmail::Models::EmailRetrieveDeliveriesResponse)
130
130
  end
131
131
  def retrieve_deliveries(
132
- # Email identifier. Accepts multiple formats:
133
- #
134
- # - Message ID (numeric): `12345`
135
- # - Message token: `aBc123XyZ`
136
- # - Combined format: `msg_12345_aBc123XyZ`
137
- email_id,
132
+ # Email identifier (the token returned when sending an email).
133
+ id,
138
134
  request_options: {}
139
135
  )
140
136
  end
@@ -145,11 +141,15 @@ module ArkEmail
145
141
  # Only works for emails that have failed or are in a retryable state.
146
142
  sig do
147
143
  params(
148
- email_id: String,
144
+ id: String,
149
145
  request_options: ArkEmail::RequestOptions::OrHash
150
146
  ).returns(ArkEmail::Models::EmailRetryResponse)
151
147
  end
152
- def retry_(email_id, request_options: {})
148
+ def retry_(
149
+ # The email identifier (token returned from send response)
150
+ id,
151
+ request_options: {}
152
+ )
153
153
  end
154
154
 
155
155
  # Send a single email message. The email is accepted for immediate delivery and
@@ -3,7 +3,6 @@ module ArkEmail
3
3
  type email_list_response =
4
4
  {
5
5
  id: String,
6
- token: String,
7
6
  from: String,
8
7
  status: ArkEmail::Models::EmailListResponse::status,
9
8
  subject: String,
@@ -16,8 +15,6 @@ module ArkEmail
16
15
  class EmailListResponse < ArkEmail::Internal::Type::BaseModel
17
16
  attr_accessor id: String
18
17
 
19
- attr_accessor token: String
20
-
21
18
  attr_accessor from: String
22
19
 
23
20
  attr_accessor status: ArkEmail::Models::EmailListResponse::status
@@ -36,7 +33,6 @@ module ArkEmail
36
33
 
37
34
  def initialize: (
38
35
  id: String,
39
- token: String,
40
36
  from: String,
41
37
  status: ArkEmail::Models::EmailListResponse::status,
42
38
  subject: String,
@@ -48,7 +44,6 @@ module ArkEmail
48
44
 
49
45
  def to_hash: -> {
50
46
  id: String,
51
- token: String,
52
47
  from: String,
53
48
  status: ArkEmail::Models::EmailListResponse::status,
54
49
  subject: String,
@@ -28,41 +28,36 @@ module ArkEmail
28
28
 
29
29
  type data =
30
30
  {
31
+ id: String,
31
32
  can_retry_manually: bool,
32
33
  deliveries: ::Array[ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::Delivery],
33
- message_id: Integer,
34
- message_token: String,
35
34
  retry_state: ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::RetryState?,
36
35
  status: ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::status
37
36
  }
38
37
 
39
38
  class Data < ArkEmail::Internal::Type::BaseModel
39
+ attr_accessor id: String
40
+
40
41
  attr_accessor can_retry_manually: bool
41
42
 
42
43
  attr_accessor deliveries: ::Array[ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::Delivery]
43
44
 
44
- attr_accessor message_id: Integer
45
-
46
- attr_accessor message_token: String
47
-
48
45
  attr_accessor retry_state: ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::RetryState?
49
46
 
50
47
  attr_accessor status: ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::status
51
48
 
52
49
  def initialize: (
50
+ id: String,
53
51
  can_retry_manually: bool,
54
52
  deliveries: ::Array[ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::Delivery],
55
- message_id: Integer,
56
- message_token: String,
57
53
  retry_state: ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::RetryState?,
58
54
  status: ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::status
59
55
  ) -> void
60
56
 
61
57
  def to_hash: -> {
58
+ id: String,
62
59
  can_retry_manually: bool,
63
60
  deliveries: ::Array[ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::Delivery],
64
- message_id: Integer,
65
- message_token: String,
66
61
  retry_state: ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::RetryState?,
67
62
  status: ArkEmail::Models::EmailRetrieveDeliveriesResponse::Data::status
68
63
  }
@@ -29,7 +29,6 @@ module ArkEmail
29
29
  type data =
30
30
  {
31
31
  id: String,
32
- token: String,
33
32
  from: String,
34
33
  scope: ArkEmail::Models::EmailRetrieveResponse::Data::scope,
35
34
  status: ArkEmail::Models::EmailRetrieveResponse::Data::status,
@@ -53,8 +52,6 @@ module ArkEmail
53
52
  class Data < ArkEmail::Internal::Type::BaseModel
54
53
  attr_accessor id: String
55
54
 
56
- attr_accessor token: String
57
-
58
55
  attr_accessor from: String
59
56
 
60
57
  attr_accessor scope: ArkEmail::Models::EmailRetrieveResponse::Data::scope
@@ -121,7 +118,6 @@ module ArkEmail
121
118
 
122
119
  def initialize: (
123
120
  id: String,
124
- token: String,
125
121
  from: String,
126
122
  scope: ArkEmail::Models::EmailRetrieveResponse::Data::scope,
127
123
  status: ArkEmail::Models::EmailRetrieveResponse::Data::status,
@@ -144,7 +140,6 @@ module ArkEmail
144
140
 
145
141
  def to_hash: -> {
146
142
  id: String,
147
- token: String,
148
143
  from: String,
149
144
  scope: ArkEmail::Models::EmailRetrieveResponse::Data::scope,
150
145
  status: ArkEmail::Models::EmailRetrieveResponse::Data::status,
@@ -26,14 +26,16 @@ module ArkEmail
26
26
  success: true
27
27
  }
28
28
 
29
- type data = { message: String }
29
+ type data = { id: String, message: String }
30
30
 
31
31
  class Data < ArkEmail::Internal::Type::BaseModel
32
+ attr_accessor id: String
33
+
32
34
  attr_accessor message: String
33
35
 
34
- def initialize: (message: String) -> void
36
+ def initialize: (id: String, message: String) -> void
35
37
 
36
- def to_hash: -> { message: String }
38
+ def to_hash: -> { id: String, message: String }
37
39
  end
38
40
  end
39
41
  end
@@ -64,16 +64,14 @@ module ArkEmail
64
64
  sandbox: bool
65
65
  }
66
66
 
67
- type message = { id: String, token: String }
67
+ type message = { id: String }
68
68
 
69
69
  class Message < ArkEmail::Internal::Type::BaseModel
70
70
  attr_accessor id: String
71
71
 
72
- attr_accessor token: String
72
+ def initialize: (id: String) -> void
73
73
 
74
- def initialize: (id: String, token: String) -> void
75
-
76
- def to_hash: -> { id: String, token: String }
74
+ def to_hash: -> { id: String }
77
75
  end
78
76
  end
79
77
  end
@@ -2,7 +2,7 @@ module ArkEmail
2
2
  module Resources
3
3
  class Emails
4
4
  def retrieve: (
5
- String email_id,
5
+ String id,
6
6
  ?expand: String,
7
7
  ?request_options: ArkEmail::request_opts
8
8
  ) -> ArkEmail::Models::EmailRetrieveResponse
@@ -20,12 +20,12 @@ module ArkEmail
20
20
  ) -> ArkEmail::Internal::PageNumberPagination[ArkEmail::Models::EmailListResponse]
21
21
 
22
22
  def retrieve_deliveries: (
23
- String email_id,
23
+ String id,
24
24
  ?request_options: ArkEmail::request_opts
25
25
  ) -> ArkEmail::Models::EmailRetrieveDeliveriesResponse
26
26
 
27
27
  def retry_: (
28
- String email_id,
28
+ String id,
29
29
  ?request_options: ArkEmail::request_opts
30
30
  ) -> ArkEmail::Models::EmailRetryResponse
31
31
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ark-email
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.0
4
+ version: 0.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ark
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-01-29 00:00:00.000000000 Z
11
+ date: 2026-01-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi