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,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Internal
5
+ extend ArkEmail::Internal::Util::SorbetRuntimeSupport
6
+
7
+ OMIT =
8
+ Object.new.tap do
9
+ _1.define_singleton_method(:inspect) { "#<#{ArkEmail::Internal}::OMIT>" }
10
+ end
11
+ .freeze
12
+
13
+ define_sorbet_constant!(:AnyHash) do
14
+ T.type_alias { T::Hash[Symbol, T.anything] }
15
+ end
16
+ define_sorbet_constant!(:FileInput) do
17
+ T.type_alias { T.any(Pathname, StringIO, IO, String, ArkEmail::FilePart) }
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ class APIMeta < ArkEmail::Internal::Type::BaseModel
6
+ # @!attribute request_id
7
+ # Unique request identifier for debugging and support
8
+ #
9
+ # @return [String]
10
+ required :request_id, String, api_name: :requestId
11
+
12
+ # @!method initialize(request_id:)
13
+ # @param request_id [String] Unique request identifier for debugging and support
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,81 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ class DNSRecord < ArkEmail::Internal::Type::BaseModel
6
+ # @!attribute name
7
+ # DNS record name (hostname)
8
+ #
9
+ # @return [String]
10
+ required :name, String
11
+
12
+ # @!attribute type
13
+ # DNS record type
14
+ #
15
+ # @return [Symbol, ArkEmail::Models::DNSRecord::Type]
16
+ required :type, enum: -> { ArkEmail::DNSRecord::Type }
17
+
18
+ # @!attribute value
19
+ # DNS record value
20
+ #
21
+ # @return [String]
22
+ required :value, String
23
+
24
+ # @!attribute status
25
+ # DNS verification status:
26
+ #
27
+ # - `OK` - Record is correctly configured
28
+ # - `Missing` - Record not found in DNS
29
+ # - `Invalid` - Record exists but has wrong value
30
+ # - `null` - Not yet checked
31
+ #
32
+ # @return [Symbol, ArkEmail::Models::DNSRecord::Status, nil]
33
+ optional :status, enum: -> { ArkEmail::DNSRecord::Status }, nil?: true
34
+
35
+ # @!method initialize(name:, type:, value:, status: nil)
36
+ # Some parameter documentations has been truncated, see
37
+ # {ArkEmail::Models::DNSRecord} for more details.
38
+ #
39
+ # @param name [String] DNS record name (hostname)
40
+ #
41
+ # @param type [Symbol, ArkEmail::Models::DNSRecord::Type] DNS record type
42
+ #
43
+ # @param value [String] DNS record value
44
+ #
45
+ # @param status [Symbol, ArkEmail::Models::DNSRecord::Status, nil] DNS verification status:
46
+
47
+ # DNS record type
48
+ #
49
+ # @see ArkEmail::Models::DNSRecord#type
50
+ module Type
51
+ extend ArkEmail::Internal::Type::Enum
52
+
53
+ TXT = :TXT
54
+ CNAME = :CNAME
55
+ MX = :MX
56
+
57
+ # @!method self.values
58
+ # @return [Array<Symbol>]
59
+ end
60
+
61
+ # DNS verification status:
62
+ #
63
+ # - `OK` - Record is correctly configured
64
+ # - `Missing` - Record not found in DNS
65
+ # - `Invalid` - Record exists but has wrong value
66
+ # - `null` - Not yet checked
67
+ #
68
+ # @see ArkEmail::Models::DNSRecord#status
69
+ module Status
70
+ extend ArkEmail::Internal::Type::Enum
71
+
72
+ OK = :OK
73
+ MISSING = :Missing
74
+ INVALID = :Invalid
75
+
76
+ # @!method self.values
77
+ # @return [Array<Symbol>]
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ # @see ArkEmail::Resources::Domains#create
6
+ class DomainCreateParams < ArkEmail::Internal::Type::BaseModel
7
+ extend ArkEmail::Internal::Type::RequestParameters::Converter
8
+ include ArkEmail::Internal::Type::RequestParameters
9
+
10
+ # @!attribute name
11
+ # Domain name (e.g., "mail.example.com")
12
+ #
13
+ # @return [String]
14
+ required :name, String
15
+
16
+ # @!method initialize(name:, request_options: {})
17
+ # @param name [String] Domain name (e.g., "mail.example.com")
18
+ #
19
+ # @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}]
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,110 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ # @see ArkEmail::Resources::Domains#create
6
+ class DomainCreateResponse < ArkEmail::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ #
9
+ # @return [ArkEmail::Models::DomainCreateResponse::Data]
10
+ required :data, -> { ArkEmail::Models::DomainCreateResponse::Data }
11
+
12
+ # @!attribute meta
13
+ #
14
+ # @return [ArkEmail::Models::APIMeta]
15
+ required :meta, -> { ArkEmail::APIMeta }
16
+
17
+ # @!attribute success
18
+ #
19
+ # @return [Boolean, true]
20
+ required :success, const: true
21
+
22
+ # @!method initialize(data:, meta:, success: true)
23
+ # @param data [ArkEmail::Models::DomainCreateResponse::Data]
24
+ # @param meta [ArkEmail::Models::APIMeta]
25
+ # @param success [Boolean, true]
26
+
27
+ # @see ArkEmail::Models::DomainCreateResponse#data
28
+ class Data < ArkEmail::Internal::Type::BaseModel
29
+ # @!attribute id
30
+ # Domain ID
31
+ #
32
+ # @return [String]
33
+ required :id, String
34
+
35
+ # @!attribute created_at
36
+ #
37
+ # @return [Time]
38
+ required :created_at, Time, api_name: :createdAt
39
+
40
+ # @!attribute dns_records
41
+ #
42
+ # @return [ArkEmail::Models::DomainCreateResponse::Data::DNSRecords]
43
+ required :dns_records,
44
+ -> { ArkEmail::Models::DomainCreateResponse::Data::DNSRecords },
45
+ api_name: :dnsRecords
46
+
47
+ # @!attribute name
48
+ # Domain name
49
+ #
50
+ # @return [String]
51
+ required :name, String
52
+
53
+ # @!attribute uuid
54
+ #
55
+ # @return [String]
56
+ required :uuid, String
57
+
58
+ # @!attribute verified
59
+ # Whether DNS is verified
60
+ #
61
+ # @return [Boolean]
62
+ required :verified, ArkEmail::Internal::Type::Boolean
63
+
64
+ # @!attribute verified_at
65
+ # When the domain was verified (null if not verified)
66
+ #
67
+ # @return [Time, nil]
68
+ optional :verified_at, Time, api_name: :verifiedAt, nil?: true
69
+
70
+ # @!method initialize(id:, created_at:, dns_records:, name:, uuid:, verified:, verified_at: nil)
71
+ # @param id [String] Domain ID
72
+ #
73
+ # @param created_at [Time]
74
+ #
75
+ # @param dns_records [ArkEmail::Models::DomainCreateResponse::Data::DNSRecords]
76
+ #
77
+ # @param name [String] Domain name
78
+ #
79
+ # @param uuid [String]
80
+ #
81
+ # @param verified [Boolean] Whether DNS is verified
82
+ #
83
+ # @param verified_at [Time, nil] When the domain was verified (null if not verified)
84
+
85
+ # @see ArkEmail::Models::DomainCreateResponse::Data#dns_records
86
+ class DNSRecords < ArkEmail::Internal::Type::BaseModel
87
+ # @!attribute dkim
88
+ #
89
+ # @return [ArkEmail::Models::DNSRecord]
90
+ required :dkim, -> { ArkEmail::DNSRecord }
91
+
92
+ # @!attribute return_path
93
+ #
94
+ # @return [ArkEmail::Models::DNSRecord]
95
+ required :return_path, -> { ArkEmail::DNSRecord }, api_name: :returnPath
96
+
97
+ # @!attribute spf
98
+ #
99
+ # @return [ArkEmail::Models::DNSRecord]
100
+ required :spf, -> { ArkEmail::DNSRecord }
101
+
102
+ # @!method initialize(dkim:, return_path:, spf:)
103
+ # @param dkim [ArkEmail::Models::DNSRecord]
104
+ # @param return_path [ArkEmail::Models::DNSRecord]
105
+ # @param spf [ArkEmail::Models::DNSRecord]
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ # @see ArkEmail::Resources::Domains#delete
6
+ class DomainDeleteParams < ArkEmail::Internal::Type::BaseModel
7
+ extend ArkEmail::Internal::Type::RequestParameters::Converter
8
+ include ArkEmail::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ # @see ArkEmail::Resources::Domains#delete
6
+ class DomainDeleteResponse < ArkEmail::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ #
9
+ # @return [ArkEmail::Models::DomainDeleteResponse::Data]
10
+ required :data, -> { ArkEmail::Models::DomainDeleteResponse::Data }
11
+
12
+ # @!attribute meta
13
+ #
14
+ # @return [ArkEmail::Models::APIMeta]
15
+ required :meta, -> { ArkEmail::APIMeta }
16
+
17
+ # @!attribute success
18
+ #
19
+ # @return [Boolean, true]
20
+ required :success, const: true
21
+
22
+ # @!method initialize(data:, meta:, success: true)
23
+ # @param data [ArkEmail::Models::DomainDeleteResponse::Data]
24
+ # @param meta [ArkEmail::Models::APIMeta]
25
+ # @param success [Boolean, true]
26
+
27
+ # @see ArkEmail::Models::DomainDeleteResponse#data
28
+ class Data < ArkEmail::Internal::Type::BaseModel
29
+ # @!attribute message
30
+ #
31
+ # @return [String]
32
+ required :message, String
33
+
34
+ # @!method initialize(message:)
35
+ # @param message [String]
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ # @see ArkEmail::Resources::Domains#list
6
+ class DomainListParams < ArkEmail::Internal::Type::BaseModel
7
+ extend ArkEmail::Internal::Type::RequestParameters::Converter
8
+ include ArkEmail::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,72 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ # @see ArkEmail::Resources::Domains#list
6
+ class DomainListResponse < ArkEmail::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ #
9
+ # @return [ArkEmail::Models::DomainListResponse::Data]
10
+ required :data, -> { ArkEmail::Models::DomainListResponse::Data }
11
+
12
+ # @!attribute meta
13
+ #
14
+ # @return [ArkEmail::Models::APIMeta]
15
+ required :meta, -> { ArkEmail::APIMeta }
16
+
17
+ # @!attribute success
18
+ #
19
+ # @return [Boolean, true]
20
+ required :success, const: true
21
+
22
+ # @!method initialize(data:, meta:, success: true)
23
+ # @param data [ArkEmail::Models::DomainListResponse::Data]
24
+ # @param meta [ArkEmail::Models::APIMeta]
25
+ # @param success [Boolean, true]
26
+
27
+ # @see ArkEmail::Models::DomainListResponse#data
28
+ class Data < ArkEmail::Internal::Type::BaseModel
29
+ # @!attribute domains
30
+ #
31
+ # @return [Array<ArkEmail::Models::DomainListResponse::Data::Domain>]
32
+ required :domains,
33
+ -> { ArkEmail::Internal::Type::ArrayOf[ArkEmail::Models::DomainListResponse::Data::Domain] }
34
+
35
+ # @!method initialize(domains:)
36
+ # @param domains [Array<ArkEmail::Models::DomainListResponse::Data::Domain>]
37
+
38
+ class Domain < ArkEmail::Internal::Type::BaseModel
39
+ # @!attribute id
40
+ # Domain ID
41
+ #
42
+ # @return [String]
43
+ required :id, String
44
+
45
+ # @!attribute dns_ok
46
+ #
47
+ # @return [Boolean]
48
+ required :dns_ok, ArkEmail::Internal::Type::Boolean, api_name: :dnsOk
49
+
50
+ # @!attribute name
51
+ #
52
+ # @return [String]
53
+ required :name, String
54
+
55
+ # @!attribute verified
56
+ #
57
+ # @return [Boolean]
58
+ required :verified, ArkEmail::Internal::Type::Boolean
59
+
60
+ # @!method initialize(id:, dns_ok:, name:, verified:)
61
+ # @param id [String] Domain ID
62
+ #
63
+ # @param dns_ok [Boolean]
64
+ #
65
+ # @param name [String]
66
+ #
67
+ # @param verified [Boolean]
68
+ end
69
+ end
70
+ end
71
+ end
72
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ # @see ArkEmail::Resources::Domains#retrieve
6
+ class DomainRetrieveParams < ArkEmail::Internal::Type::BaseModel
7
+ extend ArkEmail::Internal::Type::RequestParameters::Converter
8
+ include ArkEmail::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,110 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ # @see ArkEmail::Resources::Domains#retrieve
6
+ class DomainRetrieveResponse < ArkEmail::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ #
9
+ # @return [ArkEmail::Models::DomainRetrieveResponse::Data]
10
+ required :data, -> { ArkEmail::Models::DomainRetrieveResponse::Data }
11
+
12
+ # @!attribute meta
13
+ #
14
+ # @return [ArkEmail::Models::APIMeta]
15
+ required :meta, -> { ArkEmail::APIMeta }
16
+
17
+ # @!attribute success
18
+ #
19
+ # @return [Boolean, true]
20
+ required :success, const: true
21
+
22
+ # @!method initialize(data:, meta:, success: true)
23
+ # @param data [ArkEmail::Models::DomainRetrieveResponse::Data]
24
+ # @param meta [ArkEmail::Models::APIMeta]
25
+ # @param success [Boolean, true]
26
+
27
+ # @see ArkEmail::Models::DomainRetrieveResponse#data
28
+ class Data < ArkEmail::Internal::Type::BaseModel
29
+ # @!attribute id
30
+ # Domain ID
31
+ #
32
+ # @return [String]
33
+ required :id, String
34
+
35
+ # @!attribute created_at
36
+ #
37
+ # @return [Time]
38
+ required :created_at, Time, api_name: :createdAt
39
+
40
+ # @!attribute dns_records
41
+ #
42
+ # @return [ArkEmail::Models::DomainRetrieveResponse::Data::DNSRecords]
43
+ required :dns_records,
44
+ -> { ArkEmail::Models::DomainRetrieveResponse::Data::DNSRecords },
45
+ api_name: :dnsRecords
46
+
47
+ # @!attribute name
48
+ # Domain name
49
+ #
50
+ # @return [String]
51
+ required :name, String
52
+
53
+ # @!attribute uuid
54
+ #
55
+ # @return [String]
56
+ required :uuid, String
57
+
58
+ # @!attribute verified
59
+ # Whether DNS is verified
60
+ #
61
+ # @return [Boolean]
62
+ required :verified, ArkEmail::Internal::Type::Boolean
63
+
64
+ # @!attribute verified_at
65
+ # When the domain was verified (null if not verified)
66
+ #
67
+ # @return [Time, nil]
68
+ optional :verified_at, Time, api_name: :verifiedAt, nil?: true
69
+
70
+ # @!method initialize(id:, created_at:, dns_records:, name:, uuid:, verified:, verified_at: nil)
71
+ # @param id [String] Domain ID
72
+ #
73
+ # @param created_at [Time]
74
+ #
75
+ # @param dns_records [ArkEmail::Models::DomainRetrieveResponse::Data::DNSRecords]
76
+ #
77
+ # @param name [String] Domain name
78
+ #
79
+ # @param uuid [String]
80
+ #
81
+ # @param verified [Boolean] Whether DNS is verified
82
+ #
83
+ # @param verified_at [Time, nil] When the domain was verified (null if not verified)
84
+
85
+ # @see ArkEmail::Models::DomainRetrieveResponse::Data#dns_records
86
+ class DNSRecords < ArkEmail::Internal::Type::BaseModel
87
+ # @!attribute dkim
88
+ #
89
+ # @return [ArkEmail::Models::DNSRecord]
90
+ required :dkim, -> { ArkEmail::DNSRecord }
91
+
92
+ # @!attribute return_path
93
+ #
94
+ # @return [ArkEmail::Models::DNSRecord]
95
+ required :return_path, -> { ArkEmail::DNSRecord }, api_name: :returnPath
96
+
97
+ # @!attribute spf
98
+ #
99
+ # @return [ArkEmail::Models::DNSRecord]
100
+ required :spf, -> { ArkEmail::DNSRecord }
101
+
102
+ # @!method initialize(dkim:, return_path:, spf:)
103
+ # @param dkim [ArkEmail::Models::DNSRecord]
104
+ # @param return_path [ArkEmail::Models::DNSRecord]
105
+ # @param spf [ArkEmail::Models::DNSRecord]
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ # @see ArkEmail::Resources::Domains#verify
6
+ class DomainVerifyParams < ArkEmail::Internal::Type::BaseModel
7
+ extend ArkEmail::Internal::Type::RequestParameters::Converter
8
+ include ArkEmail::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [ArkEmail::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,110 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ArkEmail
4
+ module Models
5
+ # @see ArkEmail::Resources::Domains#verify
6
+ class DomainVerifyResponse < ArkEmail::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ #
9
+ # @return [ArkEmail::Models::DomainVerifyResponse::Data]
10
+ required :data, -> { ArkEmail::Models::DomainVerifyResponse::Data }
11
+
12
+ # @!attribute meta
13
+ #
14
+ # @return [ArkEmail::Models::APIMeta]
15
+ required :meta, -> { ArkEmail::APIMeta }
16
+
17
+ # @!attribute success
18
+ #
19
+ # @return [Boolean, true]
20
+ required :success, const: true
21
+
22
+ # @!method initialize(data:, meta:, success: true)
23
+ # @param data [ArkEmail::Models::DomainVerifyResponse::Data]
24
+ # @param meta [ArkEmail::Models::APIMeta]
25
+ # @param success [Boolean, true]
26
+
27
+ # @see ArkEmail::Models::DomainVerifyResponse#data
28
+ class Data < ArkEmail::Internal::Type::BaseModel
29
+ # @!attribute id
30
+ # Domain ID
31
+ #
32
+ # @return [String]
33
+ required :id, String
34
+
35
+ # @!attribute created_at
36
+ #
37
+ # @return [Time]
38
+ required :created_at, Time, api_name: :createdAt
39
+
40
+ # @!attribute dns_records
41
+ #
42
+ # @return [ArkEmail::Models::DomainVerifyResponse::Data::DNSRecords]
43
+ required :dns_records,
44
+ -> { ArkEmail::Models::DomainVerifyResponse::Data::DNSRecords },
45
+ api_name: :dnsRecords
46
+
47
+ # @!attribute name
48
+ # Domain name
49
+ #
50
+ # @return [String]
51
+ required :name, String
52
+
53
+ # @!attribute uuid
54
+ #
55
+ # @return [String]
56
+ required :uuid, String
57
+
58
+ # @!attribute verified
59
+ # Whether DNS is verified
60
+ #
61
+ # @return [Boolean]
62
+ required :verified, ArkEmail::Internal::Type::Boolean
63
+
64
+ # @!attribute verified_at
65
+ # When the domain was verified (null if not verified)
66
+ #
67
+ # @return [Time, nil]
68
+ optional :verified_at, Time, api_name: :verifiedAt, nil?: true
69
+
70
+ # @!method initialize(id:, created_at:, dns_records:, name:, uuid:, verified:, verified_at: nil)
71
+ # @param id [String] Domain ID
72
+ #
73
+ # @param created_at [Time]
74
+ #
75
+ # @param dns_records [ArkEmail::Models::DomainVerifyResponse::Data::DNSRecords]
76
+ #
77
+ # @param name [String] Domain name
78
+ #
79
+ # @param uuid [String]
80
+ #
81
+ # @param verified [Boolean] Whether DNS is verified
82
+ #
83
+ # @param verified_at [Time, nil] When the domain was verified (null if not verified)
84
+
85
+ # @see ArkEmail::Models::DomainVerifyResponse::Data#dns_records
86
+ class DNSRecords < ArkEmail::Internal::Type::BaseModel
87
+ # @!attribute dkim
88
+ #
89
+ # @return [ArkEmail::Models::DNSRecord]
90
+ required :dkim, -> { ArkEmail::DNSRecord }
91
+
92
+ # @!attribute return_path
93
+ #
94
+ # @return [ArkEmail::Models::DNSRecord]
95
+ required :return_path, -> { ArkEmail::DNSRecord }, api_name: :returnPath
96
+
97
+ # @!attribute spf
98
+ #
99
+ # @return [ArkEmail::Models::DNSRecord]
100
+ required :spf, -> { ArkEmail::DNSRecord }
101
+
102
+ # @!method initialize(dkim:, return_path:, spf:)
103
+ # @param dkim [ArkEmail::Models::DNSRecord]
104
+ # @param return_path [ArkEmail::Models::DNSRecord]
105
+ # @param spf [ArkEmail::Models::DNSRecord]
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end