ark-email 0.13.0 → 0.14.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 +9 -0
- data/README.md +1 -1
- data/lib/ark_email/client.rb +4 -0
- data/lib/ark_email/models/email_retrieve_params.rb +4 -1
- data/lib/ark_email/models/email_retrieve_response.rb +177 -1
- data/lib/ark_email/models/log_entry.rb +298 -0
- data/lib/ark_email/models/log_entry_detail.rb +102 -0
- data/lib/ark_email/models/log_list_params.rb +106 -0
- data/lib/ark_email/models/log_retrieve_params.rb +14 -0
- data/lib/ark_email/models/log_retrieve_response.rb +33 -0
- data/lib/ark_email/models.rb +8 -0
- data/lib/ark_email/resources/logs.rb +120 -0
- data/lib/ark_email/version.rb +1 -1
- data/lib/ark_email.rb +6 -0
- data/rbi/ark_email/client.rbi +3 -0
- data/rbi/ark_email/models/email_retrieve_params.rbi +8 -2
- data/rbi/ark_email/models/email_retrieve_response.rbi +379 -0
- data/rbi/ark_email/models/log_entry.rbi +431 -0
- data/rbi/ark_email/models/log_entry_detail.rbi +192 -0
- data/rbi/ark_email/models/log_list_params.rbi +163 -0
- data/rbi/ark_email/models/log_retrieve_params.rbi +27 -0
- data/rbi/ark_email/models/log_retrieve_response.rbi +59 -0
- data/rbi/ark_email/models.rbi +8 -0
- data/rbi/ark_email/resources/emails.rbi +4 -1
- data/rbi/ark_email/resources/logs.rbi +104 -0
- data/sig/ark_email/client.rbs +2 -0
- data/sig/ark_email/models/email_retrieve_response.rbs +179 -0
- data/sig/ark_email/models/log_entry.rbs +209 -0
- data/sig/ark_email/models/log_entry_detail.rbs +97 -0
- data/sig/ark_email/models/log_list_params.rbs +97 -0
- data/sig/ark_email/models/log_retrieve_params.rbs +15 -0
- data/sig/ark_email/models/log_retrieve_response.rbs +26 -0
- data/sig/ark_email/models.rbs +8 -0
- data/sig/ark_email/resources/logs.rbs +25 -0
- metadata +20 -2
|
@@ -0,0 +1,431 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module ArkEmail
|
|
4
|
+
module Models
|
|
5
|
+
class LogEntry < ArkEmail::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias { T.any(ArkEmail::LogEntry, ArkEmail::Internal::AnyHash) }
|
|
8
|
+
|
|
9
|
+
# Request context information
|
|
10
|
+
sig { returns(ArkEmail::LogEntry::Context) }
|
|
11
|
+
attr_reader :context
|
|
12
|
+
|
|
13
|
+
sig { params(context: ArkEmail::LogEntry::Context::OrHash).void }
|
|
14
|
+
attr_writer :context
|
|
15
|
+
|
|
16
|
+
# API credential information
|
|
17
|
+
sig { returns(ArkEmail::LogEntry::Credential) }
|
|
18
|
+
attr_reader :credential
|
|
19
|
+
|
|
20
|
+
sig { params(credential: ArkEmail::LogEntry::Credential::OrHash).void }
|
|
21
|
+
attr_writer :credential
|
|
22
|
+
|
|
23
|
+
# Request duration in milliseconds
|
|
24
|
+
sig { returns(Integer) }
|
|
25
|
+
attr_accessor :duration_ms
|
|
26
|
+
|
|
27
|
+
# Semantic endpoint name
|
|
28
|
+
sig { returns(String) }
|
|
29
|
+
attr_accessor :endpoint
|
|
30
|
+
|
|
31
|
+
# HTTP method
|
|
32
|
+
sig { returns(ArkEmail::LogEntry::Method::TaggedSymbol) }
|
|
33
|
+
attr_accessor :method_
|
|
34
|
+
|
|
35
|
+
# Request path
|
|
36
|
+
sig { returns(String) }
|
|
37
|
+
attr_accessor :path
|
|
38
|
+
|
|
39
|
+
# Rate limit state at time of request
|
|
40
|
+
sig { returns(ArkEmail::LogEntry::RateLimit) }
|
|
41
|
+
attr_reader :rate_limit
|
|
42
|
+
|
|
43
|
+
sig { params(rate_limit: ArkEmail::LogEntry::RateLimit::OrHash).void }
|
|
44
|
+
attr_writer :rate_limit
|
|
45
|
+
|
|
46
|
+
# Unique request identifier
|
|
47
|
+
sig { returns(String) }
|
|
48
|
+
attr_accessor :request_id
|
|
49
|
+
|
|
50
|
+
# HTTP response status code
|
|
51
|
+
sig { returns(Integer) }
|
|
52
|
+
attr_accessor :status_code
|
|
53
|
+
|
|
54
|
+
# When the request was made (ISO 8601)
|
|
55
|
+
sig { returns(Time) }
|
|
56
|
+
attr_accessor :timestamp
|
|
57
|
+
|
|
58
|
+
# Email-specific data (for email endpoints)
|
|
59
|
+
sig { returns(T.nilable(ArkEmail::LogEntry::Email)) }
|
|
60
|
+
attr_reader :email
|
|
61
|
+
|
|
62
|
+
sig { params(email: T.nilable(ArkEmail::LogEntry::Email::OrHash)).void }
|
|
63
|
+
attr_writer :email
|
|
64
|
+
|
|
65
|
+
# Error details (null if request succeeded)
|
|
66
|
+
sig { returns(T.nilable(ArkEmail::LogEntry::Error)) }
|
|
67
|
+
attr_reader :error
|
|
68
|
+
|
|
69
|
+
sig { params(error: T.nilable(ArkEmail::LogEntry::Error::OrHash)).void }
|
|
70
|
+
attr_writer :error
|
|
71
|
+
|
|
72
|
+
# SDK information (null if not using an SDK)
|
|
73
|
+
sig { returns(T.nilable(ArkEmail::LogEntry::SDK)) }
|
|
74
|
+
attr_reader :sdk
|
|
75
|
+
|
|
76
|
+
sig { params(sdk: T.nilable(ArkEmail::LogEntry::SDK::OrHash)).void }
|
|
77
|
+
attr_writer :sdk
|
|
78
|
+
|
|
79
|
+
# API request log entry (list view)
|
|
80
|
+
sig do
|
|
81
|
+
params(
|
|
82
|
+
context: ArkEmail::LogEntry::Context::OrHash,
|
|
83
|
+
credential: ArkEmail::LogEntry::Credential::OrHash,
|
|
84
|
+
duration_ms: Integer,
|
|
85
|
+
endpoint: String,
|
|
86
|
+
method_: ArkEmail::LogEntry::Method::OrSymbol,
|
|
87
|
+
path: String,
|
|
88
|
+
rate_limit: ArkEmail::LogEntry::RateLimit::OrHash,
|
|
89
|
+
request_id: String,
|
|
90
|
+
status_code: Integer,
|
|
91
|
+
timestamp: Time,
|
|
92
|
+
email: T.nilable(ArkEmail::LogEntry::Email::OrHash),
|
|
93
|
+
error: T.nilable(ArkEmail::LogEntry::Error::OrHash),
|
|
94
|
+
sdk: T.nilable(ArkEmail::LogEntry::SDK::OrHash)
|
|
95
|
+
).returns(T.attached_class)
|
|
96
|
+
end
|
|
97
|
+
def self.new(
|
|
98
|
+
# Request context information
|
|
99
|
+
context:,
|
|
100
|
+
# API credential information
|
|
101
|
+
credential:,
|
|
102
|
+
# Request duration in milliseconds
|
|
103
|
+
duration_ms:,
|
|
104
|
+
# Semantic endpoint name
|
|
105
|
+
endpoint:,
|
|
106
|
+
# HTTP method
|
|
107
|
+
method_:,
|
|
108
|
+
# Request path
|
|
109
|
+
path:,
|
|
110
|
+
# Rate limit state at time of request
|
|
111
|
+
rate_limit:,
|
|
112
|
+
# Unique request identifier
|
|
113
|
+
request_id:,
|
|
114
|
+
# HTTP response status code
|
|
115
|
+
status_code:,
|
|
116
|
+
# When the request was made (ISO 8601)
|
|
117
|
+
timestamp:,
|
|
118
|
+
# Email-specific data (for email endpoints)
|
|
119
|
+
email: nil,
|
|
120
|
+
# Error details (null if request succeeded)
|
|
121
|
+
error: nil,
|
|
122
|
+
# SDK information (null if not using an SDK)
|
|
123
|
+
sdk: nil
|
|
124
|
+
)
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
sig do
|
|
128
|
+
override.returns(
|
|
129
|
+
{
|
|
130
|
+
context: ArkEmail::LogEntry::Context,
|
|
131
|
+
credential: ArkEmail::LogEntry::Credential,
|
|
132
|
+
duration_ms: Integer,
|
|
133
|
+
endpoint: String,
|
|
134
|
+
method_: ArkEmail::LogEntry::Method::TaggedSymbol,
|
|
135
|
+
path: String,
|
|
136
|
+
rate_limit: ArkEmail::LogEntry::RateLimit,
|
|
137
|
+
request_id: String,
|
|
138
|
+
status_code: Integer,
|
|
139
|
+
timestamp: Time,
|
|
140
|
+
email: T.nilable(ArkEmail::LogEntry::Email),
|
|
141
|
+
error: T.nilable(ArkEmail::LogEntry::Error),
|
|
142
|
+
sdk: T.nilable(ArkEmail::LogEntry::SDK)
|
|
143
|
+
}
|
|
144
|
+
)
|
|
145
|
+
end
|
|
146
|
+
def to_hash
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
class Context < ArkEmail::Internal::Type::BaseModel
|
|
150
|
+
OrHash =
|
|
151
|
+
T.type_alias do
|
|
152
|
+
T.any(ArkEmail::LogEntry::Context, ArkEmail::Internal::AnyHash)
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
# Idempotency key if provided
|
|
156
|
+
sig { returns(T.nilable(String)) }
|
|
157
|
+
attr_accessor :idempotency_key
|
|
158
|
+
|
|
159
|
+
# Client IP address
|
|
160
|
+
sig { returns(T.nilable(String)) }
|
|
161
|
+
attr_accessor :ip_address
|
|
162
|
+
|
|
163
|
+
# Query parameters
|
|
164
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
165
|
+
attr_accessor :query_params
|
|
166
|
+
|
|
167
|
+
# User-Agent header
|
|
168
|
+
sig { returns(T.nilable(String)) }
|
|
169
|
+
attr_accessor :user_agent
|
|
170
|
+
|
|
171
|
+
# Request context information
|
|
172
|
+
sig do
|
|
173
|
+
params(
|
|
174
|
+
idempotency_key: T.nilable(String),
|
|
175
|
+
ip_address: T.nilable(String),
|
|
176
|
+
query_params: T.nilable(T::Hash[Symbol, T.anything]),
|
|
177
|
+
user_agent: T.nilable(String)
|
|
178
|
+
).returns(T.attached_class)
|
|
179
|
+
end
|
|
180
|
+
def self.new(
|
|
181
|
+
# Idempotency key if provided
|
|
182
|
+
idempotency_key: nil,
|
|
183
|
+
# Client IP address
|
|
184
|
+
ip_address: nil,
|
|
185
|
+
# Query parameters
|
|
186
|
+
query_params: nil,
|
|
187
|
+
# User-Agent header
|
|
188
|
+
user_agent: nil
|
|
189
|
+
)
|
|
190
|
+
end
|
|
191
|
+
|
|
192
|
+
sig do
|
|
193
|
+
override.returns(
|
|
194
|
+
{
|
|
195
|
+
idempotency_key: T.nilable(String),
|
|
196
|
+
ip_address: T.nilable(String),
|
|
197
|
+
query_params: T.nilable(T::Hash[Symbol, T.anything]),
|
|
198
|
+
user_agent: T.nilable(String)
|
|
199
|
+
}
|
|
200
|
+
)
|
|
201
|
+
end
|
|
202
|
+
def to_hash
|
|
203
|
+
end
|
|
204
|
+
end
|
|
205
|
+
|
|
206
|
+
class Credential < ArkEmail::Internal::Type::BaseModel
|
|
207
|
+
OrHash =
|
|
208
|
+
T.type_alias do
|
|
209
|
+
T.any(ArkEmail::LogEntry::Credential, ArkEmail::Internal::AnyHash)
|
|
210
|
+
end
|
|
211
|
+
|
|
212
|
+
# Credential ID
|
|
213
|
+
sig { returns(String) }
|
|
214
|
+
attr_accessor :id
|
|
215
|
+
|
|
216
|
+
# API key prefix (first 8 characters)
|
|
217
|
+
sig { returns(T.nilable(String)) }
|
|
218
|
+
attr_accessor :key_prefix
|
|
219
|
+
|
|
220
|
+
# API credential information
|
|
221
|
+
sig do
|
|
222
|
+
params(id: String, key_prefix: T.nilable(String)).returns(
|
|
223
|
+
T.attached_class
|
|
224
|
+
)
|
|
225
|
+
end
|
|
226
|
+
def self.new(
|
|
227
|
+
# Credential ID
|
|
228
|
+
id:,
|
|
229
|
+
# API key prefix (first 8 characters)
|
|
230
|
+
key_prefix: nil
|
|
231
|
+
)
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
sig { override.returns({ id: String, key_prefix: T.nilable(String) }) }
|
|
235
|
+
def to_hash
|
|
236
|
+
end
|
|
237
|
+
end
|
|
238
|
+
|
|
239
|
+
# HTTP method
|
|
240
|
+
module Method
|
|
241
|
+
extend ArkEmail::Internal::Type::Enum
|
|
242
|
+
|
|
243
|
+
TaggedSymbol =
|
|
244
|
+
T.type_alias { T.all(Symbol, ArkEmail::LogEntry::Method) }
|
|
245
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
246
|
+
|
|
247
|
+
GET = T.let(:GET, ArkEmail::LogEntry::Method::TaggedSymbol)
|
|
248
|
+
POST = T.let(:POST, ArkEmail::LogEntry::Method::TaggedSymbol)
|
|
249
|
+
PUT = T.let(:PUT, ArkEmail::LogEntry::Method::TaggedSymbol)
|
|
250
|
+
PATCH = T.let(:PATCH, ArkEmail::LogEntry::Method::TaggedSymbol)
|
|
251
|
+
DELETE = T.let(:DELETE, ArkEmail::LogEntry::Method::TaggedSymbol)
|
|
252
|
+
|
|
253
|
+
sig do
|
|
254
|
+
override.returns(T::Array[ArkEmail::LogEntry::Method::TaggedSymbol])
|
|
255
|
+
end
|
|
256
|
+
def self.values
|
|
257
|
+
end
|
|
258
|
+
end
|
|
259
|
+
|
|
260
|
+
class RateLimit < ArkEmail::Internal::Type::BaseModel
|
|
261
|
+
OrHash =
|
|
262
|
+
T.type_alias do
|
|
263
|
+
T.any(ArkEmail::LogEntry::RateLimit, ArkEmail::Internal::AnyHash)
|
|
264
|
+
end
|
|
265
|
+
|
|
266
|
+
# Rate limit ceiling
|
|
267
|
+
sig { returns(T.nilable(Integer)) }
|
|
268
|
+
attr_accessor :limit
|
|
269
|
+
|
|
270
|
+
# Whether the request was rate limited
|
|
271
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
272
|
+
attr_reader :limited
|
|
273
|
+
|
|
274
|
+
sig { params(limited: T::Boolean).void }
|
|
275
|
+
attr_writer :limited
|
|
276
|
+
|
|
277
|
+
# Remaining requests in window
|
|
278
|
+
sig { returns(T.nilable(Integer)) }
|
|
279
|
+
attr_accessor :remaining
|
|
280
|
+
|
|
281
|
+
# Unix timestamp when limit resets
|
|
282
|
+
sig { returns(T.nilable(Integer)) }
|
|
283
|
+
attr_accessor :reset
|
|
284
|
+
|
|
285
|
+
# Rate limit state at time of request
|
|
286
|
+
sig do
|
|
287
|
+
params(
|
|
288
|
+
limit: T.nilable(Integer),
|
|
289
|
+
limited: T::Boolean,
|
|
290
|
+
remaining: T.nilable(Integer),
|
|
291
|
+
reset: T.nilable(Integer)
|
|
292
|
+
).returns(T.attached_class)
|
|
293
|
+
end
|
|
294
|
+
def self.new(
|
|
295
|
+
# Rate limit ceiling
|
|
296
|
+
limit: nil,
|
|
297
|
+
# Whether the request was rate limited
|
|
298
|
+
limited: nil,
|
|
299
|
+
# Remaining requests in window
|
|
300
|
+
remaining: nil,
|
|
301
|
+
# Unix timestamp when limit resets
|
|
302
|
+
reset: nil
|
|
303
|
+
)
|
|
304
|
+
end
|
|
305
|
+
|
|
306
|
+
sig do
|
|
307
|
+
override.returns(
|
|
308
|
+
{
|
|
309
|
+
limit: T.nilable(Integer),
|
|
310
|
+
limited: T::Boolean,
|
|
311
|
+
remaining: T.nilable(Integer),
|
|
312
|
+
reset: T.nilable(Integer)
|
|
313
|
+
}
|
|
314
|
+
)
|
|
315
|
+
end
|
|
316
|
+
def to_hash
|
|
317
|
+
end
|
|
318
|
+
end
|
|
319
|
+
|
|
320
|
+
class Email < ArkEmail::Internal::Type::BaseModel
|
|
321
|
+
OrHash =
|
|
322
|
+
T.type_alias do
|
|
323
|
+
T.any(ArkEmail::LogEntry::Email, ArkEmail::Internal::AnyHash)
|
|
324
|
+
end
|
|
325
|
+
|
|
326
|
+
# Email message ID
|
|
327
|
+
sig { returns(T.nilable(String)) }
|
|
328
|
+
attr_reader :id
|
|
329
|
+
|
|
330
|
+
sig { params(id: String).void }
|
|
331
|
+
attr_writer :id
|
|
332
|
+
|
|
333
|
+
# Number of recipients
|
|
334
|
+
sig { returns(T.nilable(Integer)) }
|
|
335
|
+
attr_accessor :recipient_count
|
|
336
|
+
|
|
337
|
+
# Email-specific data (for email endpoints)
|
|
338
|
+
sig do
|
|
339
|
+
params(id: String, recipient_count: T.nilable(Integer)).returns(
|
|
340
|
+
T.attached_class
|
|
341
|
+
)
|
|
342
|
+
end
|
|
343
|
+
def self.new(
|
|
344
|
+
# Email message ID
|
|
345
|
+
id: nil,
|
|
346
|
+
# Number of recipients
|
|
347
|
+
recipient_count: nil
|
|
348
|
+
)
|
|
349
|
+
end
|
|
350
|
+
|
|
351
|
+
sig do
|
|
352
|
+
override.returns({ id: String, recipient_count: T.nilable(Integer) })
|
|
353
|
+
end
|
|
354
|
+
def to_hash
|
|
355
|
+
end
|
|
356
|
+
end
|
|
357
|
+
|
|
358
|
+
class Error < ArkEmail::Internal::Type::BaseModel
|
|
359
|
+
OrHash =
|
|
360
|
+
T.type_alias do
|
|
361
|
+
T.any(ArkEmail::LogEntry::Error, ArkEmail::Internal::AnyHash)
|
|
362
|
+
end
|
|
363
|
+
|
|
364
|
+
# Error code
|
|
365
|
+
sig { returns(T.nilable(String)) }
|
|
366
|
+
attr_reader :code
|
|
367
|
+
|
|
368
|
+
sig { params(code: String).void }
|
|
369
|
+
attr_writer :code
|
|
370
|
+
|
|
371
|
+
# Error message
|
|
372
|
+
sig { returns(T.nilable(String)) }
|
|
373
|
+
attr_accessor :message
|
|
374
|
+
|
|
375
|
+
# Error details (null if request succeeded)
|
|
376
|
+
sig do
|
|
377
|
+
params(code: String, message: T.nilable(String)).returns(
|
|
378
|
+
T.attached_class
|
|
379
|
+
)
|
|
380
|
+
end
|
|
381
|
+
def self.new(
|
|
382
|
+
# Error code
|
|
383
|
+
code: nil,
|
|
384
|
+
# Error message
|
|
385
|
+
message: nil
|
|
386
|
+
)
|
|
387
|
+
end
|
|
388
|
+
|
|
389
|
+
sig { override.returns({ code: String, message: T.nilable(String) }) }
|
|
390
|
+
def to_hash
|
|
391
|
+
end
|
|
392
|
+
end
|
|
393
|
+
|
|
394
|
+
class SDK < ArkEmail::Internal::Type::BaseModel
|
|
395
|
+
OrHash =
|
|
396
|
+
T.type_alias do
|
|
397
|
+
T.any(ArkEmail::LogEntry::SDK, ArkEmail::Internal::AnyHash)
|
|
398
|
+
end
|
|
399
|
+
|
|
400
|
+
# SDK name
|
|
401
|
+
sig { returns(T.nilable(String)) }
|
|
402
|
+
attr_reader :name
|
|
403
|
+
|
|
404
|
+
sig { params(name: String).void }
|
|
405
|
+
attr_writer :name
|
|
406
|
+
|
|
407
|
+
# SDK version
|
|
408
|
+
sig { returns(T.nilable(String)) }
|
|
409
|
+
attr_accessor :version
|
|
410
|
+
|
|
411
|
+
# SDK information (null if not using an SDK)
|
|
412
|
+
sig do
|
|
413
|
+
params(name: String, version: T.nilable(String)).returns(
|
|
414
|
+
T.attached_class
|
|
415
|
+
)
|
|
416
|
+
end
|
|
417
|
+
def self.new(
|
|
418
|
+
# SDK name
|
|
419
|
+
name: nil,
|
|
420
|
+
# SDK version
|
|
421
|
+
version: nil
|
|
422
|
+
)
|
|
423
|
+
end
|
|
424
|
+
|
|
425
|
+
sig { override.returns({ name: String, version: T.nilable(String) }) }
|
|
426
|
+
def to_hash
|
|
427
|
+
end
|
|
428
|
+
end
|
|
429
|
+
end
|
|
430
|
+
end
|
|
431
|
+
end
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module ArkEmail
|
|
4
|
+
module Models
|
|
5
|
+
class LogEntryDetail < ArkEmail::Models::LogEntry
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(ArkEmail::LogEntryDetail, ArkEmail::Internal::AnyHash)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# Request body information
|
|
12
|
+
sig { returns(T.nilable(ArkEmail::LogEntryDetail::Request)) }
|
|
13
|
+
attr_reader :request
|
|
14
|
+
|
|
15
|
+
sig { params(request: ArkEmail::LogEntryDetail::Request::OrHash).void }
|
|
16
|
+
attr_writer :request
|
|
17
|
+
|
|
18
|
+
# Response body information
|
|
19
|
+
sig { returns(T.nilable(ArkEmail::LogEntryDetail::Response)) }
|
|
20
|
+
attr_reader :response
|
|
21
|
+
|
|
22
|
+
sig { params(response: ArkEmail::LogEntryDetail::Response::OrHash).void }
|
|
23
|
+
attr_writer :response
|
|
24
|
+
|
|
25
|
+
# Full API request log entry with bodies
|
|
26
|
+
sig do
|
|
27
|
+
params(
|
|
28
|
+
request: ArkEmail::LogEntryDetail::Request::OrHash,
|
|
29
|
+
response: ArkEmail::LogEntryDetail::Response::OrHash
|
|
30
|
+
).returns(T.attached_class)
|
|
31
|
+
end
|
|
32
|
+
def self.new(
|
|
33
|
+
# Request body information
|
|
34
|
+
request: nil,
|
|
35
|
+
# Response body information
|
|
36
|
+
response: nil
|
|
37
|
+
)
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
sig do
|
|
41
|
+
override.returns(
|
|
42
|
+
{
|
|
43
|
+
request: ArkEmail::LogEntryDetail::Request,
|
|
44
|
+
response: ArkEmail::LogEntryDetail::Response
|
|
45
|
+
}
|
|
46
|
+
)
|
|
47
|
+
end
|
|
48
|
+
def to_hash
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
class Request < ArkEmail::Internal::Type::BaseModel
|
|
52
|
+
OrHash =
|
|
53
|
+
T.type_alias do
|
|
54
|
+
T.any(
|
|
55
|
+
ArkEmail::LogEntryDetail::Request,
|
|
56
|
+
ArkEmail::Internal::AnyHash
|
|
57
|
+
)
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
# Decrypted request body (JSON or string). Bodies over 25KB are truncated.
|
|
61
|
+
sig do
|
|
62
|
+
returns(T.nilable(ArkEmail::LogEntryDetail::Request::Body::Variants))
|
|
63
|
+
end
|
|
64
|
+
attr_accessor :body
|
|
65
|
+
|
|
66
|
+
# Original request body size in bytes
|
|
67
|
+
sig { returns(T.nilable(Integer)) }
|
|
68
|
+
attr_accessor :body_size
|
|
69
|
+
|
|
70
|
+
# Request body information
|
|
71
|
+
sig do
|
|
72
|
+
params(
|
|
73
|
+
body: T.nilable(ArkEmail::LogEntryDetail::Request::Body::Variants),
|
|
74
|
+
body_size: T.nilable(Integer)
|
|
75
|
+
).returns(T.attached_class)
|
|
76
|
+
end
|
|
77
|
+
def self.new(
|
|
78
|
+
# Decrypted request body (JSON or string). Bodies over 25KB are truncated.
|
|
79
|
+
body: nil,
|
|
80
|
+
# Original request body size in bytes
|
|
81
|
+
body_size: nil
|
|
82
|
+
)
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
sig do
|
|
86
|
+
override.returns(
|
|
87
|
+
{
|
|
88
|
+
body:
|
|
89
|
+
T.nilable(ArkEmail::LogEntryDetail::Request::Body::Variants),
|
|
90
|
+
body_size: T.nilable(Integer)
|
|
91
|
+
}
|
|
92
|
+
)
|
|
93
|
+
end
|
|
94
|
+
def to_hash
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
# Decrypted request body (JSON or string). Bodies over 25KB are truncated.
|
|
98
|
+
module Body
|
|
99
|
+
extend ArkEmail::Internal::Type::Union
|
|
100
|
+
|
|
101
|
+
Variants = T.type_alias { T.any(T::Hash[Symbol, T.anything], String) }
|
|
102
|
+
|
|
103
|
+
sig do
|
|
104
|
+
override.returns(
|
|
105
|
+
T::Array[ArkEmail::LogEntryDetail::Request::Body::Variants]
|
|
106
|
+
)
|
|
107
|
+
end
|
|
108
|
+
def self.variants
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
UnionMember0Map =
|
|
112
|
+
T.let(
|
|
113
|
+
ArkEmail::Internal::Type::HashOf[
|
|
114
|
+
ArkEmail::Internal::Type::Unknown
|
|
115
|
+
],
|
|
116
|
+
ArkEmail::Internal::Type::Converter
|
|
117
|
+
)
|
|
118
|
+
end
|
|
119
|
+
end
|
|
120
|
+
|
|
121
|
+
class Response < ArkEmail::Internal::Type::BaseModel
|
|
122
|
+
OrHash =
|
|
123
|
+
T.type_alias do
|
|
124
|
+
T.any(
|
|
125
|
+
ArkEmail::LogEntryDetail::Response,
|
|
126
|
+
ArkEmail::Internal::AnyHash
|
|
127
|
+
)
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
# Decrypted response body (JSON or string). Bodies over 25KB are truncated.
|
|
131
|
+
sig do
|
|
132
|
+
returns(T.nilable(ArkEmail::LogEntryDetail::Response::Body::Variants))
|
|
133
|
+
end
|
|
134
|
+
attr_accessor :body
|
|
135
|
+
|
|
136
|
+
# Response body size in bytes
|
|
137
|
+
sig { returns(T.nilable(Integer)) }
|
|
138
|
+
attr_accessor :body_size
|
|
139
|
+
|
|
140
|
+
# Response body information
|
|
141
|
+
sig do
|
|
142
|
+
params(
|
|
143
|
+
body: T.nilable(ArkEmail::LogEntryDetail::Response::Body::Variants),
|
|
144
|
+
body_size: T.nilable(Integer)
|
|
145
|
+
).returns(T.attached_class)
|
|
146
|
+
end
|
|
147
|
+
def self.new(
|
|
148
|
+
# Decrypted response body (JSON or string). Bodies over 25KB are truncated.
|
|
149
|
+
body: nil,
|
|
150
|
+
# Response body size in bytes
|
|
151
|
+
body_size: nil
|
|
152
|
+
)
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
sig do
|
|
156
|
+
override.returns(
|
|
157
|
+
{
|
|
158
|
+
body:
|
|
159
|
+
T.nilable(ArkEmail::LogEntryDetail::Response::Body::Variants),
|
|
160
|
+
body_size: T.nilable(Integer)
|
|
161
|
+
}
|
|
162
|
+
)
|
|
163
|
+
end
|
|
164
|
+
def to_hash
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
# Decrypted response body (JSON or string). Bodies over 25KB are truncated.
|
|
168
|
+
module Body
|
|
169
|
+
extend ArkEmail::Internal::Type::Union
|
|
170
|
+
|
|
171
|
+
Variants = T.type_alias { T.any(T::Hash[Symbol, T.anything], String) }
|
|
172
|
+
|
|
173
|
+
sig do
|
|
174
|
+
override.returns(
|
|
175
|
+
T::Array[ArkEmail::LogEntryDetail::Response::Body::Variants]
|
|
176
|
+
)
|
|
177
|
+
end
|
|
178
|
+
def self.variants
|
|
179
|
+
end
|
|
180
|
+
|
|
181
|
+
UnionMember0Map =
|
|
182
|
+
T.let(
|
|
183
|
+
ArkEmail::Internal::Type::HashOf[
|
|
184
|
+
ArkEmail::Internal::Type::Unknown
|
|
185
|
+
],
|
|
186
|
+
ArkEmail::Internal::Type::Converter
|
|
187
|
+
)
|
|
188
|
+
end
|
|
189
|
+
end
|
|
190
|
+
end
|
|
191
|
+
end
|
|
192
|
+
end
|