ark-email 0.5.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 (272) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +71 -0
  4. data/README.md +303 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/ark_email/client.rb +102 -0
  7. data/lib/ark_email/errors.rb +228 -0
  8. data/lib/ark_email/file_part.rb +58 -0
  9. data/lib/ark_email/internal/page_number_pagination.rb +121 -0
  10. data/lib/ark_email/internal/transport/base_client.rb +573 -0
  11. data/lib/ark_email/internal/transport/pooled_net_requester.rb +210 -0
  12. data/lib/ark_email/internal/type/array_of.rb +168 -0
  13. data/lib/ark_email/internal/type/base_model.rb +529 -0
  14. data/lib/ark_email/internal/type/base_page.rb +55 -0
  15. data/lib/ark_email/internal/type/boolean.rb +77 -0
  16. data/lib/ark_email/internal/type/converter.rb +327 -0
  17. data/lib/ark_email/internal/type/enum.rb +131 -0
  18. data/lib/ark_email/internal/type/file_input.rb +111 -0
  19. data/lib/ark_email/internal/type/hash_of.rb +188 -0
  20. data/lib/ark_email/internal/type/request_parameters.rb +42 -0
  21. data/lib/ark_email/internal/type/union.rb +237 -0
  22. data/lib/ark_email/internal/type/unknown.rb +81 -0
  23. data/lib/ark_email/internal/util.rb +920 -0
  24. data/lib/ark_email/internal.rb +20 -0
  25. data/lib/ark_email/models/api_meta.rb +16 -0
  26. data/lib/ark_email/models/dns_record.rb +81 -0
  27. data/lib/ark_email/models/domain_create_params.rb +22 -0
  28. data/lib/ark_email/models/domain_create_response.rb +110 -0
  29. data/lib/ark_email/models/domain_delete_params.rb +14 -0
  30. data/lib/ark_email/models/domain_delete_response.rb +39 -0
  31. data/lib/ark_email/models/domain_list_params.rb +14 -0
  32. data/lib/ark_email/models/domain_list_response.rb +72 -0
  33. data/lib/ark_email/models/domain_retrieve_params.rb +14 -0
  34. data/lib/ark_email/models/domain_retrieve_response.rb +110 -0
  35. data/lib/ark_email/models/domain_verify_params.rb +14 -0
  36. data/lib/ark_email/models/domain_verify_response.rb +110 -0
  37. data/lib/ark_email/models/email_list_params.rb +110 -0
  38. data/lib/ark_email/models/email_list_response.rb +108 -0
  39. data/lib/ark_email/models/email_retrieve_deliveries_params.rb +14 -0
  40. data/lib/ark_email/models/email_retrieve_deliveries_response.rb +123 -0
  41. data/lib/ark_email/models/email_retrieve_params.rb +30 -0
  42. data/lib/ark_email/models/email_retrieve_response.rb +285 -0
  43. data/lib/ark_email/models/email_retry_params.rb +14 -0
  44. data/lib/ark_email/models/email_retry_response.rb +39 -0
  45. data/lib/ark_email/models/email_send_batch_params.rb +70 -0
  46. data/lib/ark_email/models/email_send_batch_response.rb +83 -0
  47. data/lib/ark_email/models/email_send_params.rb +149 -0
  48. data/lib/ark_email/models/email_send_raw_params.rb +38 -0
  49. data/lib/ark_email/models/email_send_raw_response.rb +77 -0
  50. data/lib/ark_email/models/email_send_response.rb +77 -0
  51. data/lib/ark_email/models/suppression_bulk_create_params.rb +37 -0
  52. data/lib/ark_email/models/suppression_bulk_create_response.rb +64 -0
  53. data/lib/ark_email/models/suppression_create_params.rb +30 -0
  54. data/lib/ark_email/models/suppression_create_response.rb +62 -0
  55. data/lib/ark_email/models/suppression_delete_params.rb +14 -0
  56. data/lib/ark_email/models/suppression_delete_response.rb +39 -0
  57. data/lib/ark_email/models/suppression_list_params.rb +26 -0
  58. data/lib/ark_email/models/suppression_list_response.rb +38 -0
  59. data/lib/ark_email/models/suppression_retrieve_params.rb +14 -0
  60. data/lib/ark_email/models/suppression_retrieve_response.rb +64 -0
  61. data/lib/ark_email/models/track_domain.rb +172 -0
  62. data/lib/ark_email/models/tracking_create_params.rb +54 -0
  63. data/lib/ark_email/models/tracking_create_response.rb +28 -0
  64. data/lib/ark_email/models/tracking_delete_params.rb +14 -0
  65. data/lib/ark_email/models/tracking_delete_response.rb +39 -0
  66. data/lib/ark_email/models/tracking_list_params.rb +14 -0
  67. data/lib/ark_email/models/tracking_list_response.rb +41 -0
  68. data/lib/ark_email/models/tracking_retrieve_params.rb +14 -0
  69. data/lib/ark_email/models/tracking_retrieve_response.rb +28 -0
  70. data/lib/ark_email/models/tracking_update_params.rb +46 -0
  71. data/lib/ark_email/models/tracking_update_response.rb +28 -0
  72. data/lib/ark_email/models/tracking_verify_params.rb +14 -0
  73. data/lib/ark_email/models/tracking_verify_response.rb +133 -0
  74. data/lib/ark_email/models/webhook_create_params.rb +81 -0
  75. data/lib/ark_email/models/webhook_create_response.rb +111 -0
  76. data/lib/ark_email/models/webhook_delete_params.rb +14 -0
  77. data/lib/ark_email/models/webhook_delete_response.rb +39 -0
  78. data/lib/ark_email/models/webhook_list_params.rb +14 -0
  79. data/lib/ark_email/models/webhook_list_response.rb +79 -0
  80. data/lib/ark_email/models/webhook_retrieve_params.rb +14 -0
  81. data/lib/ark_email/models/webhook_retrieve_response.rb +111 -0
  82. data/lib/ark_email/models/webhook_test_params.rb +39 -0
  83. data/lib/ark_email/models/webhook_test_response.rb +80 -0
  84. data/lib/ark_email/models/webhook_update_params.rb +44 -0
  85. data/lib/ark_email/models/webhook_update_response.rb +111 -0
  86. data/lib/ark_email/models.rb +105 -0
  87. data/lib/ark_email/request_options.rb +77 -0
  88. data/lib/ark_email/resources/domains.rb +127 -0
  89. data/lib/ark_email/resources/emails.rb +263 -0
  90. data/lib/ark_email/resources/suppressions.rb +124 -0
  91. data/lib/ark_email/resources/tracking.rb +167 -0
  92. data/lib/ark_email/resources/webhooks.rb +175 -0
  93. data/lib/ark_email/version.rb +5 -0
  94. data/lib/ark_email.rb +122 -0
  95. data/manifest.yaml +17 -0
  96. data/rbi/ark_email/client.rbi +73 -0
  97. data/rbi/ark_email/errors.rbi +205 -0
  98. data/rbi/ark_email/file_part.rbi +37 -0
  99. data/rbi/ark_email/internal/page_number_pagination.rbi +52 -0
  100. data/rbi/ark_email/internal/transport/base_client.rbi +297 -0
  101. data/rbi/ark_email/internal/transport/pooled_net_requester.rbi +83 -0
  102. data/rbi/ark_email/internal/type/array_of.rbi +104 -0
  103. data/rbi/ark_email/internal/type/base_model.rbi +306 -0
  104. data/rbi/ark_email/internal/type/base_page.rbi +42 -0
  105. data/rbi/ark_email/internal/type/boolean.rbi +58 -0
  106. data/rbi/ark_email/internal/type/converter.rbi +216 -0
  107. data/rbi/ark_email/internal/type/enum.rbi +82 -0
  108. data/rbi/ark_email/internal/type/file_input.rbi +59 -0
  109. data/rbi/ark_email/internal/type/hash_of.rbi +104 -0
  110. data/rbi/ark_email/internal/type/request_parameters.rbi +29 -0
  111. data/rbi/ark_email/internal/type/union.rbi +128 -0
  112. data/rbi/ark_email/internal/type/unknown.rbi +58 -0
  113. data/rbi/ark_email/internal/util.rbi +487 -0
  114. data/rbi/ark_email/internal.rbi +16 -0
  115. data/rbi/ark_email/models/api_meta.rbi +25 -0
  116. data/rbi/ark_email/models/dns_record.rbi +111 -0
  117. data/rbi/ark_email/models/domain_create_params.rbi +40 -0
  118. data/rbi/ark_email/models/domain_create_response.rbi +193 -0
  119. data/rbi/ark_email/models/domain_delete_params.rbi +27 -0
  120. data/rbi/ark_email/models/domain_delete_response.rbi +75 -0
  121. data/rbi/ark_email/models/domain_list_params.rbi +27 -0
  122. data/rbi/ark_email/models/domain_list_response.rbi +144 -0
  123. data/rbi/ark_email/models/domain_retrieve_params.rbi +27 -0
  124. data/rbi/ark_email/models/domain_retrieve_response.rbi +195 -0
  125. data/rbi/ark_email/models/domain_verify_params.rbi +27 -0
  126. data/rbi/ark_email/models/domain_verify_response.rbi +193 -0
  127. data/rbi/ark_email/models/email_list_params.rbi +172 -0
  128. data/rbi/ark_email/models/email_list_response.rbi +164 -0
  129. data/rbi/ark_email/models/email_retrieve_deliveries_params.rbi +30 -0
  130. data/rbi/ark_email/models/email_retrieve_deliveries_response.rbi +220 -0
  131. data/rbi/ark_email/models/email_retrieve_params.rbi +53 -0
  132. data/rbi/ark_email/models/email_retrieve_response.rbi +490 -0
  133. data/rbi/ark_email/models/email_retry_params.rbi +27 -0
  134. data/rbi/ark_email/models/email_retry_response.rbi +75 -0
  135. data/rbi/ark_email/models/email_send_batch_params.rbi +118 -0
  136. data/rbi/ark_email/models/email_send_batch_response.rbi +159 -0
  137. data/rbi/ark_email/models/email_send_params.rbi +229 -0
  138. data/rbi/ark_email/models/email_send_raw_params.rbi +59 -0
  139. data/rbi/ark_email/models/email_send_raw_response.rbi +157 -0
  140. data/rbi/ark_email/models/email_send_response.rbi +153 -0
  141. data/rbi/ark_email/models/suppression_bulk_create_params.rbi +76 -0
  142. data/rbi/ark_email/models/suppression_bulk_create_response.rbi +115 -0
  143. data/rbi/ark_email/models/suppression_create_params.rbi +54 -0
  144. data/rbi/ark_email/models/suppression_create_response.rbi +109 -0
  145. data/rbi/ark_email/models/suppression_delete_params.rbi +27 -0
  146. data/rbi/ark_email/models/suppression_delete_response.rbi +77 -0
  147. data/rbi/ark_email/models/suppression_list_params.rbi +49 -0
  148. data/rbi/ark_email/models/suppression_list_response.rbi +56 -0
  149. data/rbi/ark_email/models/suppression_retrieve_params.rbi +30 -0
  150. data/rbi/ark_email/models/suppression_retrieve_response.rbi +115 -0
  151. data/rbi/ark_email/models/track_domain.rbi +228 -0
  152. data/rbi/ark_email/models/tracking_create_params.rbi +84 -0
  153. data/rbi/ark_email/models/tracking_create_response.rbi +52 -0
  154. data/rbi/ark_email/models/tracking_delete_params.rbi +27 -0
  155. data/rbi/ark_email/models/tracking_delete_response.rbi +77 -0
  156. data/rbi/ark_email/models/tracking_list_params.rbi +27 -0
  157. data/rbi/ark_email/models/tracking_list_response.rbi +81 -0
  158. data/rbi/ark_email/models/tracking_retrieve_params.rbi +27 -0
  159. data/rbi/ark_email/models/tracking_retrieve_response.rbi +52 -0
  160. data/rbi/ark_email/models/tracking_update_params.rbi +79 -0
  161. data/rbi/ark_email/models/tracking_update_response.rbi +52 -0
  162. data/rbi/ark_email/models/tracking_verify_params.rbi +27 -0
  163. data/rbi/ark_email/models/tracking_verify_response.rbi +254 -0
  164. data/rbi/ark_email/models/webhook_create_params.rbi +154 -0
  165. data/rbi/ark_email/models/webhook_create_response.rbi +217 -0
  166. data/rbi/ark_email/models/webhook_delete_params.rbi +27 -0
  167. data/rbi/ark_email/models/webhook_delete_response.rbi +75 -0
  168. data/rbi/ark_email/models/webhook_list_params.rbi +27 -0
  169. data/rbi/ark_email/models/webhook_list_response.rbi +152 -0
  170. data/rbi/ark_email/models/webhook_retrieve_params.rbi +27 -0
  171. data/rbi/ark_email/models/webhook_retrieve_response.rbi +219 -0
  172. data/rbi/ark_email/models/webhook_test_params.rbi +95 -0
  173. data/rbi/ark_email/models/webhook_test_response.rbi +129 -0
  174. data/rbi/ark_email/models/webhook_update_params.rbi +80 -0
  175. data/rbi/ark_email/models/webhook_update_response.rbi +217 -0
  176. data/rbi/ark_email/models.rbi +68 -0
  177. data/rbi/ark_email/request_options.rbi +59 -0
  178. data/rbi/ark_email/resources/domains.rbi +84 -0
  179. data/rbi/ark_email/resources/emails.rbi +237 -0
  180. data/rbi/ark_email/resources/suppressions.rbi +84 -0
  181. data/rbi/ark_email/resources/tracking.rbi +130 -0
  182. data/rbi/ark_email/resources/webhooks.rbi +137 -0
  183. data/rbi/ark_email/version.rbi +5 -0
  184. data/sig/ark_email/client.rbs +34 -0
  185. data/sig/ark_email/errors.rbs +117 -0
  186. data/sig/ark_email/file_part.rbs +21 -0
  187. data/sig/ark_email/internal/page_number_pagination.rbs +32 -0
  188. data/sig/ark_email/internal/transport/base_client.rbs +133 -0
  189. data/sig/ark_email/internal/transport/pooled_net_requester.rbs +48 -0
  190. data/sig/ark_email/internal/type/array_of.rbs +48 -0
  191. data/sig/ark_email/internal/type/base_model.rbs +102 -0
  192. data/sig/ark_email/internal/type/base_page.rbs +24 -0
  193. data/sig/ark_email/internal/type/boolean.rbs +26 -0
  194. data/sig/ark_email/internal/type/converter.rbs +79 -0
  195. data/sig/ark_email/internal/type/enum.rbs +32 -0
  196. data/sig/ark_email/internal/type/file_input.rbs +25 -0
  197. data/sig/ark_email/internal/type/hash_of.rbs +48 -0
  198. data/sig/ark_email/internal/type/request_parameters.rbs +17 -0
  199. data/sig/ark_email/internal/type/union.rbs +52 -0
  200. data/sig/ark_email/internal/type/unknown.rbs +26 -0
  201. data/sig/ark_email/internal/util.rbs +185 -0
  202. data/sig/ark_email/internal.rbs +9 -0
  203. data/sig/ark_email/models/api_meta.rbs +13 -0
  204. data/sig/ark_email/models/dns_record.rbs +59 -0
  205. data/sig/ark_email/models/domain_create_params.rbs +23 -0
  206. data/sig/ark_email/models/domain_create_response.rbs +104 -0
  207. data/sig/ark_email/models/domain_delete_params.rbs +15 -0
  208. data/sig/ark_email/models/domain_delete_response.rbs +40 -0
  209. data/sig/ark_email/models/domain_list_params.rbs +15 -0
  210. data/sig/ark_email/models/domain_list_response.rbs +71 -0
  211. data/sig/ark_email/models/domain_retrieve_params.rbs +15 -0
  212. data/sig/ark_email/models/domain_retrieve_response.rbs +104 -0
  213. data/sig/ark_email/models/domain_verify_params.rbs +15 -0
  214. data/sig/ark_email/models/domain_verify_response.rbs +104 -0
  215. data/sig/ark_email/models/email_list_params.rbs +94 -0
  216. data/sig/ark_email/models/email_list_response.rbs +77 -0
  217. data/sig/ark_email/models/email_retrieve_deliveries_params.rbs +15 -0
  218. data/sig/ark_email/models/email_retrieve_deliveries_response.rbs +117 -0
  219. data/sig/ark_email/models/email_retrieve_params.rbs +25 -0
  220. data/sig/ark_email/models/email_retrieve_response.rbs +232 -0
  221. data/sig/ark_email/models/email_retry_params.rbs +15 -0
  222. data/sig/ark_email/models/email_retry_response.rbs +40 -0
  223. data/sig/ark_email/models/email_send_batch_params.rbs +81 -0
  224. data/sig/ark_email/models/email_send_batch_response.rbs +74 -0
  225. data/sig/ark_email/models/email_send_params.rbs +124 -0
  226. data/sig/ark_email/models/email_send_raw_params.rbs +32 -0
  227. data/sig/ark_email/models/email_send_raw_response.rbs +75 -0
  228. data/sig/ark_email/models/email_send_response.rbs +75 -0
  229. data/sig/ark_email/models/suppression_bulk_create_params.rbs +40 -0
  230. data/sig/ark_email/models/suppression_bulk_create_response.rbs +62 -0
  231. data/sig/ark_email/models/suppression_create_params.rbs +30 -0
  232. data/sig/ark_email/models/suppression_create_response.rbs +59 -0
  233. data/sig/ark_email/models/suppression_delete_params.rbs +15 -0
  234. data/sig/ark_email/models/suppression_delete_response.rbs +40 -0
  235. data/sig/ark_email/models/suppression_list_params.rbs +32 -0
  236. data/sig/ark_email/models/suppression_list_response.rbs +32 -0
  237. data/sig/ark_email/models/suppression_retrieve_params.rbs +15 -0
  238. data/sig/ark_email/models/suppression_retrieve_response.rbs +62 -0
  239. data/sig/ark_email/models/track_domain.rbs +122 -0
  240. data/sig/ark_email/models/tracking_create_params.rbs +52 -0
  241. data/sig/ark_email/models/tracking_create_response.rbs +26 -0
  242. data/sig/ark_email/models/tracking_delete_params.rbs +15 -0
  243. data/sig/ark_email/models/tracking_delete_response.rbs +40 -0
  244. data/sig/ark_email/models/tracking_list_params.rbs +15 -0
  245. data/sig/ark_email/models/tracking_list_response.rbs +40 -0
  246. data/sig/ark_email/models/tracking_retrieve_params.rbs +15 -0
  247. data/sig/ark_email/models/tracking_retrieve_response.rbs +26 -0
  248. data/sig/ark_email/models/tracking_update_params.rbs +49 -0
  249. data/sig/ark_email/models/tracking_update_response.rbs +26 -0
  250. data/sig/ark_email/models/tracking_verify_params.rbs +15 -0
  251. data/sig/ark_email/models/tracking_verify_response.rbs +109 -0
  252. data/sig/ark_email/models/webhook_create_params.rbs +75 -0
  253. data/sig/ark_email/models/webhook_create_response.rbs +107 -0
  254. data/sig/ark_email/models/webhook_delete_params.rbs +15 -0
  255. data/sig/ark_email/models/webhook_delete_response.rbs +40 -0
  256. data/sig/ark_email/models/webhook_list_params.rbs +15 -0
  257. data/sig/ark_email/models/webhook_list_response.rbs +84 -0
  258. data/sig/ark_email/models/webhook_retrieve_params.rbs +15 -0
  259. data/sig/ark_email/models/webhook_retrieve_response.rbs +107 -0
  260. data/sig/ark_email/models/webhook_test_params.rbs +49 -0
  261. data/sig/ark_email/models/webhook_test_response.rbs +72 -0
  262. data/sig/ark_email/models/webhook_update_params.rbs +56 -0
  263. data/sig/ark_email/models/webhook_update_response.rbs +107 -0
  264. data/sig/ark_email/models.rbs +65 -0
  265. data/sig/ark_email/request_options.rbs +34 -0
  266. data/sig/ark_email/resources/domains.rbs +31 -0
  267. data/sig/ark_email/resources/emails.rbs +65 -0
  268. data/sig/ark_email/resources/suppressions.rbs +34 -0
  269. data/sig/ark_email/resources/tracking.rbs +44 -0
  270. data/sig/ark_email/resources/webhooks.rbs +46 -0
  271. data/sig/ark_email/version.rbs +3 -0
  272. metadata +343 -0
@@ -0,0 +1,193 @@
1
+ # typed: strong
2
+
3
+ module ArkEmail
4
+ module Models
5
+ class DomainVerifyResponse < ArkEmail::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ ArkEmail::Models::DomainVerifyResponse,
10
+ ArkEmail::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(ArkEmail::Models::DomainVerifyResponse::Data) }
15
+ attr_reader :data
16
+
17
+ sig do
18
+ params(data: ArkEmail::Models::DomainVerifyResponse::Data::OrHash).void
19
+ end
20
+ attr_writer :data
21
+
22
+ sig { returns(ArkEmail::APIMeta) }
23
+ attr_reader :meta
24
+
25
+ sig { params(meta: ArkEmail::APIMeta::OrHash).void }
26
+ attr_writer :meta
27
+
28
+ sig { returns(T::Boolean) }
29
+ attr_accessor :success
30
+
31
+ sig do
32
+ params(
33
+ data: ArkEmail::Models::DomainVerifyResponse::Data::OrHash,
34
+ meta: ArkEmail::APIMeta::OrHash,
35
+ success: T::Boolean
36
+ ).returns(T.attached_class)
37
+ end
38
+ def self.new(data:, meta:, success: true)
39
+ end
40
+
41
+ sig do
42
+ override.returns(
43
+ {
44
+ data: ArkEmail::Models::DomainVerifyResponse::Data,
45
+ meta: ArkEmail::APIMeta,
46
+ success: T::Boolean
47
+ }
48
+ )
49
+ end
50
+ def to_hash
51
+ end
52
+
53
+ class Data < ArkEmail::Internal::Type::BaseModel
54
+ OrHash =
55
+ T.type_alias do
56
+ T.any(
57
+ ArkEmail::Models::DomainVerifyResponse::Data,
58
+ ArkEmail::Internal::AnyHash
59
+ )
60
+ end
61
+
62
+ # Domain ID
63
+ sig { returns(String) }
64
+ attr_accessor :id
65
+
66
+ sig { returns(Time) }
67
+ attr_accessor :created_at
68
+
69
+ sig do
70
+ returns(ArkEmail::Models::DomainVerifyResponse::Data::DNSRecords)
71
+ end
72
+ attr_reader :dns_records
73
+
74
+ sig do
75
+ params(
76
+ dns_records:
77
+ ArkEmail::Models::DomainVerifyResponse::Data::DNSRecords::OrHash
78
+ ).void
79
+ end
80
+ attr_writer :dns_records
81
+
82
+ # Domain name
83
+ sig { returns(String) }
84
+ attr_accessor :name
85
+
86
+ sig { returns(String) }
87
+ attr_accessor :uuid
88
+
89
+ # Whether DNS is verified
90
+ sig { returns(T::Boolean) }
91
+ attr_accessor :verified
92
+
93
+ # When the domain was verified (null if not verified)
94
+ sig { returns(T.nilable(Time)) }
95
+ attr_accessor :verified_at
96
+
97
+ sig do
98
+ params(
99
+ id: String,
100
+ created_at: Time,
101
+ dns_records:
102
+ ArkEmail::Models::DomainVerifyResponse::Data::DNSRecords::OrHash,
103
+ name: String,
104
+ uuid: String,
105
+ verified: T::Boolean,
106
+ verified_at: T.nilable(Time)
107
+ ).returns(T.attached_class)
108
+ end
109
+ def self.new(
110
+ # Domain ID
111
+ id:,
112
+ created_at:,
113
+ dns_records:,
114
+ # Domain name
115
+ name:,
116
+ uuid:,
117
+ # Whether DNS is verified
118
+ verified:,
119
+ # When the domain was verified (null if not verified)
120
+ verified_at: nil
121
+ )
122
+ end
123
+
124
+ sig do
125
+ override.returns(
126
+ {
127
+ id: String,
128
+ created_at: Time,
129
+ dns_records:
130
+ ArkEmail::Models::DomainVerifyResponse::Data::DNSRecords,
131
+ name: String,
132
+ uuid: String,
133
+ verified: T::Boolean,
134
+ verified_at: T.nilable(Time)
135
+ }
136
+ )
137
+ end
138
+ def to_hash
139
+ end
140
+
141
+ class DNSRecords < ArkEmail::Internal::Type::BaseModel
142
+ OrHash =
143
+ T.type_alias do
144
+ T.any(
145
+ ArkEmail::Models::DomainVerifyResponse::Data::DNSRecords,
146
+ ArkEmail::Internal::AnyHash
147
+ )
148
+ end
149
+
150
+ sig { returns(ArkEmail::DNSRecord) }
151
+ attr_reader :dkim
152
+
153
+ sig { params(dkim: ArkEmail::DNSRecord::OrHash).void }
154
+ attr_writer :dkim
155
+
156
+ sig { returns(ArkEmail::DNSRecord) }
157
+ attr_reader :return_path
158
+
159
+ sig { params(return_path: ArkEmail::DNSRecord::OrHash).void }
160
+ attr_writer :return_path
161
+
162
+ sig { returns(ArkEmail::DNSRecord) }
163
+ attr_reader :spf
164
+
165
+ sig { params(spf: ArkEmail::DNSRecord::OrHash).void }
166
+ attr_writer :spf
167
+
168
+ sig do
169
+ params(
170
+ dkim: ArkEmail::DNSRecord::OrHash,
171
+ return_path: ArkEmail::DNSRecord::OrHash,
172
+ spf: ArkEmail::DNSRecord::OrHash
173
+ ).returns(T.attached_class)
174
+ end
175
+ def self.new(dkim:, return_path:, spf:)
176
+ end
177
+
178
+ sig do
179
+ override.returns(
180
+ {
181
+ dkim: ArkEmail::DNSRecord,
182
+ return_path: ArkEmail::DNSRecord,
183
+ spf: ArkEmail::DNSRecord
184
+ }
185
+ )
186
+ end
187
+ def to_hash
188
+ end
189
+ end
190
+ end
191
+ end
192
+ end
193
+ end
@@ -0,0 +1,172 @@
1
+ # typed: strong
2
+
3
+ module ArkEmail
4
+ module Models
5
+ class EmailListParams < ArkEmail::Internal::Type::BaseModel
6
+ extend ArkEmail::Internal::Type::RequestParameters::Converter
7
+ include ArkEmail::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(ArkEmail::EmailListParams, ArkEmail::Internal::AnyHash)
12
+ end
13
+
14
+ # Return emails sent after this timestamp (Unix seconds or ISO 8601)
15
+ sig { returns(T.nilable(String)) }
16
+ attr_reader :after
17
+
18
+ sig { params(after: String).void }
19
+ attr_writer :after
20
+
21
+ # Return emails sent before this timestamp
22
+ sig { returns(T.nilable(String)) }
23
+ attr_reader :before
24
+
25
+ sig { params(before: String).void }
26
+ attr_writer :before
27
+
28
+ # Filter by sender email address
29
+ sig { returns(T.nilable(String)) }
30
+ attr_reader :from
31
+
32
+ sig { params(from: String).void }
33
+ attr_writer :from
34
+
35
+ # Page number (starts at 1)
36
+ sig { returns(T.nilable(Integer)) }
37
+ attr_reader :page
38
+
39
+ sig { params(page: Integer).void }
40
+ attr_writer :page
41
+
42
+ # Results per page (max 100)
43
+ sig { returns(T.nilable(Integer)) }
44
+ attr_reader :per_page
45
+
46
+ sig { params(per_page: Integer).void }
47
+ attr_writer :per_page
48
+
49
+ # Filter by delivery status:
50
+ #
51
+ # - `pending` - Email accepted, waiting to be processed
52
+ # - `sent` - Email transmitted to recipient's mail server
53
+ # - `softfail` - Temporary delivery failure, will retry
54
+ # - `hardfail` - Permanent delivery failure
55
+ # - `bounced` - Email bounced back
56
+ # - `held` - Held for manual review
57
+ sig { returns(T.nilable(ArkEmail::EmailListParams::Status::OrSymbol)) }
58
+ attr_reader :status
59
+
60
+ sig { params(status: ArkEmail::EmailListParams::Status::OrSymbol).void }
61
+ attr_writer :status
62
+
63
+ # Filter by tag
64
+ sig { returns(T.nilable(String)) }
65
+ attr_reader :tag
66
+
67
+ sig { params(tag: String).void }
68
+ attr_writer :tag
69
+
70
+ # Filter by recipient email address
71
+ sig { returns(T.nilable(String)) }
72
+ attr_reader :to
73
+
74
+ sig { params(to: String).void }
75
+ attr_writer :to
76
+
77
+ sig do
78
+ params(
79
+ after: String,
80
+ before: String,
81
+ from: String,
82
+ page: Integer,
83
+ per_page: Integer,
84
+ status: ArkEmail::EmailListParams::Status::OrSymbol,
85
+ tag: String,
86
+ to: String,
87
+ request_options: ArkEmail::RequestOptions::OrHash
88
+ ).returns(T.attached_class)
89
+ end
90
+ def self.new(
91
+ # Return emails sent after this timestamp (Unix seconds or ISO 8601)
92
+ after: nil,
93
+ # Return emails sent before this timestamp
94
+ before: nil,
95
+ # Filter by sender email address
96
+ from: nil,
97
+ # Page number (starts at 1)
98
+ page: nil,
99
+ # Results per page (max 100)
100
+ per_page: nil,
101
+ # Filter by delivery status:
102
+ #
103
+ # - `pending` - Email accepted, waiting to be processed
104
+ # - `sent` - Email transmitted to recipient's mail server
105
+ # - `softfail` - Temporary delivery failure, will retry
106
+ # - `hardfail` - Permanent delivery failure
107
+ # - `bounced` - Email bounced back
108
+ # - `held` - Held for manual review
109
+ status: nil,
110
+ # Filter by tag
111
+ tag: nil,
112
+ # Filter by recipient email address
113
+ to: nil,
114
+ request_options: {}
115
+ )
116
+ end
117
+
118
+ sig do
119
+ override.returns(
120
+ {
121
+ after: String,
122
+ before: String,
123
+ from: String,
124
+ page: Integer,
125
+ per_page: Integer,
126
+ status: ArkEmail::EmailListParams::Status::OrSymbol,
127
+ tag: String,
128
+ to: String,
129
+ request_options: ArkEmail::RequestOptions
130
+ }
131
+ )
132
+ end
133
+ def to_hash
134
+ end
135
+
136
+ # Filter by delivery status:
137
+ #
138
+ # - `pending` - Email accepted, waiting to be processed
139
+ # - `sent` - Email transmitted to recipient's mail server
140
+ # - `softfail` - Temporary delivery failure, will retry
141
+ # - `hardfail` - Permanent delivery failure
142
+ # - `bounced` - Email bounced back
143
+ # - `held` - Held for manual review
144
+ module Status
145
+ extend ArkEmail::Internal::Type::Enum
146
+
147
+ TaggedSymbol =
148
+ T.type_alias { T.all(Symbol, ArkEmail::EmailListParams::Status) }
149
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
150
+
151
+ PENDING =
152
+ T.let(:pending, ArkEmail::EmailListParams::Status::TaggedSymbol)
153
+ SENT = T.let(:sent, ArkEmail::EmailListParams::Status::TaggedSymbol)
154
+ SOFTFAIL =
155
+ T.let(:softfail, ArkEmail::EmailListParams::Status::TaggedSymbol)
156
+ HARDFAIL =
157
+ T.let(:hardfail, ArkEmail::EmailListParams::Status::TaggedSymbol)
158
+ BOUNCED =
159
+ T.let(:bounced, ArkEmail::EmailListParams::Status::TaggedSymbol)
160
+ HELD = T.let(:held, ArkEmail::EmailListParams::Status::TaggedSymbol)
161
+
162
+ sig do
163
+ override.returns(
164
+ T::Array[ArkEmail::EmailListParams::Status::TaggedSymbol]
165
+ )
166
+ end
167
+ def self.values
168
+ end
169
+ end
170
+ end
171
+ end
172
+ end
@@ -0,0 +1,164 @@
1
+ # typed: strong
2
+
3
+ module ArkEmail
4
+ module Models
5
+ class EmailListResponse < ArkEmail::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ ArkEmail::Models::EmailListResponse,
10
+ ArkEmail::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Internal message ID
15
+ sig { returns(String) }
16
+ attr_accessor :id
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :token
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :from
23
+
24
+ # Current delivery status:
25
+ #
26
+ # - `pending` - Email accepted, waiting to be processed
27
+ # - `sent` - Email transmitted to recipient's mail server
28
+ # - `softfail` - Temporary delivery failure, will retry
29
+ # - `hardfail` - Permanent delivery failure
30
+ # - `bounced` - Email bounced back
31
+ # - `held` - Held for manual review
32
+ sig { returns(ArkEmail::Models::EmailListResponse::Status::TaggedSymbol) }
33
+ attr_accessor :status
34
+
35
+ sig { returns(String) }
36
+ attr_accessor :subject
37
+
38
+ sig { returns(Float) }
39
+ attr_accessor :timestamp
40
+
41
+ sig { returns(Time) }
42
+ attr_accessor :timestamp_iso
43
+
44
+ sig { returns(String) }
45
+ attr_accessor :to
46
+
47
+ sig { returns(T.nilable(String)) }
48
+ attr_reader :tag
49
+
50
+ sig { params(tag: String).void }
51
+ attr_writer :tag
52
+
53
+ sig do
54
+ params(
55
+ id: String,
56
+ token: String,
57
+ from: String,
58
+ status: ArkEmail::Models::EmailListResponse::Status::OrSymbol,
59
+ subject: String,
60
+ timestamp: Float,
61
+ timestamp_iso: Time,
62
+ to: String,
63
+ tag: String
64
+ ).returns(T.attached_class)
65
+ end
66
+ def self.new(
67
+ # Internal message ID
68
+ id:,
69
+ token:,
70
+ from:,
71
+ # Current delivery status:
72
+ #
73
+ # - `pending` - Email accepted, waiting to be processed
74
+ # - `sent` - Email transmitted to recipient's mail server
75
+ # - `softfail` - Temporary delivery failure, will retry
76
+ # - `hardfail` - Permanent delivery failure
77
+ # - `bounced` - Email bounced back
78
+ # - `held` - Held for manual review
79
+ status:,
80
+ subject:,
81
+ timestamp:,
82
+ timestamp_iso:,
83
+ to:,
84
+ tag: nil
85
+ )
86
+ end
87
+
88
+ sig do
89
+ override.returns(
90
+ {
91
+ id: String,
92
+ token: String,
93
+ from: String,
94
+ status: ArkEmail::Models::EmailListResponse::Status::TaggedSymbol,
95
+ subject: String,
96
+ timestamp: Float,
97
+ timestamp_iso: Time,
98
+ to: String,
99
+ tag: String
100
+ }
101
+ )
102
+ end
103
+ def to_hash
104
+ end
105
+
106
+ # Current delivery status:
107
+ #
108
+ # - `pending` - Email accepted, waiting to be processed
109
+ # - `sent` - Email transmitted to recipient's mail server
110
+ # - `softfail` - Temporary delivery failure, will retry
111
+ # - `hardfail` - Permanent delivery failure
112
+ # - `bounced` - Email bounced back
113
+ # - `held` - Held for manual review
114
+ module Status
115
+ extend ArkEmail::Internal::Type::Enum
116
+
117
+ TaggedSymbol =
118
+ T.type_alias do
119
+ T.all(Symbol, ArkEmail::Models::EmailListResponse::Status)
120
+ end
121
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
122
+
123
+ PENDING =
124
+ T.let(
125
+ :pending,
126
+ ArkEmail::Models::EmailListResponse::Status::TaggedSymbol
127
+ )
128
+ SENT =
129
+ T.let(
130
+ :sent,
131
+ ArkEmail::Models::EmailListResponse::Status::TaggedSymbol
132
+ )
133
+ SOFTFAIL =
134
+ T.let(
135
+ :softfail,
136
+ ArkEmail::Models::EmailListResponse::Status::TaggedSymbol
137
+ )
138
+ HARDFAIL =
139
+ T.let(
140
+ :hardfail,
141
+ ArkEmail::Models::EmailListResponse::Status::TaggedSymbol
142
+ )
143
+ BOUNCED =
144
+ T.let(
145
+ :bounced,
146
+ ArkEmail::Models::EmailListResponse::Status::TaggedSymbol
147
+ )
148
+ HELD =
149
+ T.let(
150
+ :held,
151
+ ArkEmail::Models::EmailListResponse::Status::TaggedSymbol
152
+ )
153
+
154
+ sig do
155
+ override.returns(
156
+ T::Array[ArkEmail::Models::EmailListResponse::Status::TaggedSymbol]
157
+ )
158
+ end
159
+ def self.values
160
+ end
161
+ end
162
+ end
163
+ end
164
+ end
@@ -0,0 +1,30 @@
1
+ # typed: strong
2
+
3
+ module ArkEmail
4
+ module Models
5
+ class EmailRetrieveDeliveriesParams < ArkEmail::Internal::Type::BaseModel
6
+ extend ArkEmail::Internal::Type::RequestParameters::Converter
7
+ include ArkEmail::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ ArkEmail::EmailRetrieveDeliveriesParams,
13
+ ArkEmail::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig do
18
+ params(request_options: ArkEmail::RequestOptions::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(request_options: {})
23
+ end
24
+
25
+ sig { override.returns({ request_options: ArkEmail::RequestOptions }) }
26
+ def to_hash
27
+ end
28
+ end
29
+ end
30
+ end