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 (379) hide show
  1. package/CHANGELOG.md +70 -0
  2. package/LICENSE +201 -0
  3. package/README.md +431 -0
  4. package/api-promise.d.mts +2 -0
  5. package/api-promise.d.mts.map +1 -0
  6. package/api-promise.d.ts +2 -0
  7. package/api-promise.d.ts.map +1 -0
  8. package/api-promise.js +6 -0
  9. package/api-promise.js.map +1 -0
  10. package/api-promise.mjs +2 -0
  11. package/api-promise.mjs.map +1 -0
  12. package/client.d.mts +204 -0
  13. package/client.d.mts.map +1 -0
  14. package/client.d.ts +204 -0
  15. package/client.d.ts.map +1 -0
  16. package/client.js +481 -0
  17. package/client.js.map +1 -0
  18. package/client.mjs +477 -0
  19. package/client.mjs.map +1 -0
  20. package/core/api-promise.d.mts +46 -0
  21. package/core/api-promise.d.mts.map +1 -0
  22. package/core/api-promise.d.ts +46 -0
  23. package/core/api-promise.d.ts.map +1 -0
  24. package/core/api-promise.js +74 -0
  25. package/core/api-promise.js.map +1 -0
  26. package/core/api-promise.mjs +70 -0
  27. package/core/api-promise.mjs.map +1 -0
  28. package/core/error.d.mts +46 -0
  29. package/core/error.d.mts.map +1 -0
  30. package/core/error.d.ts +46 -0
  31. package/core/error.d.ts.map +1 -0
  32. package/core/error.js +113 -0
  33. package/core/error.js.map +1 -0
  34. package/core/error.mjs +97 -0
  35. package/core/error.mjs.map +1 -0
  36. package/core/pagination.d.mts +67 -0
  37. package/core/pagination.d.mts.map +1 -0
  38. package/core/pagination.d.ts +67 -0
  39. package/core/pagination.d.ts.map +1 -0
  40. package/core/pagination.js +105 -0
  41. package/core/pagination.js.map +1 -0
  42. package/core/pagination.mjs +99 -0
  43. package/core/pagination.mjs.map +1 -0
  44. package/core/resource.d.mts +6 -0
  45. package/core/resource.d.mts.map +1 -0
  46. package/core/resource.d.ts +6 -0
  47. package/core/resource.d.ts.map +1 -0
  48. package/core/resource.js +11 -0
  49. package/core/resource.js.map +1 -0
  50. package/core/resource.mjs +7 -0
  51. package/core/resource.mjs.map +1 -0
  52. package/core/uploads.d.mts +3 -0
  53. package/core/uploads.d.mts.map +1 -0
  54. package/core/uploads.d.ts +3 -0
  55. package/core/uploads.d.ts.map +1 -0
  56. package/core/uploads.js +6 -0
  57. package/core/uploads.js.map +1 -0
  58. package/core/uploads.mjs +2 -0
  59. package/core/uploads.mjs.map +1 -0
  60. package/error.d.mts +2 -0
  61. package/error.d.mts.map +1 -0
  62. package/error.d.ts +2 -0
  63. package/error.d.ts.map +1 -0
  64. package/error.js +6 -0
  65. package/error.js.map +1 -0
  66. package/error.mjs +2 -0
  67. package/error.mjs.map +1 -0
  68. package/index.d.mts +7 -0
  69. package/index.d.mts.map +1 -0
  70. package/index.d.ts +7 -0
  71. package/index.d.ts.map +1 -0
  72. package/index.js +32 -0
  73. package/index.js.map +1 -0
  74. package/index.mjs +8 -0
  75. package/index.mjs.map +1 -0
  76. package/internal/builtin-types.d.mts +73 -0
  77. package/internal/builtin-types.d.mts.map +1 -0
  78. package/internal/builtin-types.d.ts +73 -0
  79. package/internal/builtin-types.d.ts.map +1 -0
  80. package/internal/builtin-types.js +4 -0
  81. package/internal/builtin-types.js.map +1 -0
  82. package/internal/builtin-types.mjs +3 -0
  83. package/internal/builtin-types.mjs.map +1 -0
  84. package/internal/detect-platform.d.mts +15 -0
  85. package/internal/detect-platform.d.mts.map +1 -0
  86. package/internal/detect-platform.d.ts +15 -0
  87. package/internal/detect-platform.d.ts.map +1 -0
  88. package/internal/detect-platform.js +162 -0
  89. package/internal/detect-platform.js.map +1 -0
  90. package/internal/detect-platform.mjs +157 -0
  91. package/internal/detect-platform.mjs.map +1 -0
  92. package/internal/errors.d.mts +3 -0
  93. package/internal/errors.d.mts.map +1 -0
  94. package/internal/errors.d.ts +3 -0
  95. package/internal/errors.d.ts.map +1 -0
  96. package/internal/errors.js +41 -0
  97. package/internal/errors.js.map +1 -0
  98. package/internal/errors.mjs +36 -0
  99. package/internal/errors.mjs.map +1 -0
  100. package/internal/headers.d.mts +20 -0
  101. package/internal/headers.d.mts.map +1 -0
  102. package/internal/headers.d.ts +20 -0
  103. package/internal/headers.d.ts.map +1 -0
  104. package/internal/headers.js +79 -0
  105. package/internal/headers.js.map +1 -0
  106. package/internal/headers.mjs +74 -0
  107. package/internal/headers.mjs.map +1 -0
  108. package/internal/parse.d.mts +12 -0
  109. package/internal/parse.d.mts.map +1 -0
  110. package/internal/parse.d.ts +12 -0
  111. package/internal/parse.d.ts.map +1 -0
  112. package/internal/parse.js +35 -0
  113. package/internal/parse.js.map +1 -0
  114. package/internal/parse.mjs +32 -0
  115. package/internal/parse.mjs.map +1 -0
  116. package/internal/request-options.d.mts +75 -0
  117. package/internal/request-options.d.mts.map +1 -0
  118. package/internal/request-options.d.ts +75 -0
  119. package/internal/request-options.d.ts.map +1 -0
  120. package/internal/request-options.js +14 -0
  121. package/internal/request-options.js.map +1 -0
  122. package/internal/request-options.mjs +10 -0
  123. package/internal/request-options.mjs.map +1 -0
  124. package/internal/shim-types.d.mts +17 -0
  125. package/internal/shim-types.d.mts.map +1 -0
  126. package/internal/shim-types.d.ts +17 -0
  127. package/internal/shim-types.d.ts.map +1 -0
  128. package/internal/shim-types.js +4 -0
  129. package/internal/shim-types.js.map +1 -0
  130. package/internal/shim-types.mjs +3 -0
  131. package/internal/shim-types.mjs.map +1 -0
  132. package/internal/shims.d.mts +20 -0
  133. package/internal/shims.d.mts.map +1 -0
  134. package/internal/shims.d.ts +20 -0
  135. package/internal/shims.d.ts.map +1 -0
  136. package/internal/shims.js +92 -0
  137. package/internal/shims.js.map +1 -0
  138. package/internal/shims.mjs +85 -0
  139. package/internal/shims.mjs.map +1 -0
  140. package/internal/to-file.d.mts +45 -0
  141. package/internal/to-file.d.mts.map +1 -0
  142. package/internal/to-file.d.ts +45 -0
  143. package/internal/to-file.d.ts.map +1 -0
  144. package/internal/to-file.js +91 -0
  145. package/internal/to-file.js.map +1 -0
  146. package/internal/to-file.mjs +88 -0
  147. package/internal/to-file.mjs.map +1 -0
  148. package/internal/tslib.js +81 -0
  149. package/internal/tslib.mjs +17 -0
  150. package/internal/types.d.mts +69 -0
  151. package/internal/types.d.mts.map +1 -0
  152. package/internal/types.d.ts +69 -0
  153. package/internal/types.d.ts.map +1 -0
  154. package/internal/types.js +4 -0
  155. package/internal/types.js.map +1 -0
  156. package/internal/types.mjs +3 -0
  157. package/internal/types.mjs.map +1 -0
  158. package/internal/uploads.d.mts +42 -0
  159. package/internal/uploads.d.mts.map +1 -0
  160. package/internal/uploads.d.ts +42 -0
  161. package/internal/uploads.d.ts.map +1 -0
  162. package/internal/uploads.js +141 -0
  163. package/internal/uploads.js.map +1 -0
  164. package/internal/uploads.mjs +131 -0
  165. package/internal/uploads.mjs.map +1 -0
  166. package/internal/utils/base64.d.mts +3 -0
  167. package/internal/utils/base64.d.mts.map +1 -0
  168. package/internal/utils/base64.d.ts +3 -0
  169. package/internal/utils/base64.d.ts.map +1 -0
  170. package/internal/utils/base64.js +38 -0
  171. package/internal/utils/base64.js.map +1 -0
  172. package/internal/utils/base64.mjs +33 -0
  173. package/internal/utils/base64.mjs.map +1 -0
  174. package/internal/utils/bytes.d.mts +4 -0
  175. package/internal/utils/bytes.d.mts.map +1 -0
  176. package/internal/utils/bytes.d.ts +4 -0
  177. package/internal/utils/bytes.d.ts.map +1 -0
  178. package/internal/utils/bytes.js +31 -0
  179. package/internal/utils/bytes.js.map +1 -0
  180. package/internal/utils/bytes.mjs +26 -0
  181. package/internal/utils/bytes.mjs.map +1 -0
  182. package/internal/utils/env.d.mts +9 -0
  183. package/internal/utils/env.d.mts.map +1 -0
  184. package/internal/utils/env.d.ts +9 -0
  185. package/internal/utils/env.d.ts.map +1 -0
  186. package/internal/utils/env.js +22 -0
  187. package/internal/utils/env.js.map +1 -0
  188. package/internal/utils/env.mjs +18 -0
  189. package/internal/utils/env.mjs.map +1 -0
  190. package/internal/utils/log.d.mts +37 -0
  191. package/internal/utils/log.d.mts.map +1 -0
  192. package/internal/utils/log.d.ts +37 -0
  193. package/internal/utils/log.d.ts.map +1 -0
  194. package/internal/utils/log.js +85 -0
  195. package/internal/utils/log.js.map +1 -0
  196. package/internal/utils/log.mjs +79 -0
  197. package/internal/utils/log.mjs.map +1 -0
  198. package/internal/utils/path.d.mts +15 -0
  199. package/internal/utils/path.d.mts.map +1 -0
  200. package/internal/utils/path.d.ts +15 -0
  201. package/internal/utils/path.d.ts.map +1 -0
  202. package/internal/utils/path.js +79 -0
  203. package/internal/utils/path.js.map +1 -0
  204. package/internal/utils/path.mjs +74 -0
  205. package/internal/utils/path.mjs.map +1 -0
  206. package/internal/utils/sleep.d.mts +2 -0
  207. package/internal/utils/sleep.d.mts.map +1 -0
  208. package/internal/utils/sleep.d.ts +2 -0
  209. package/internal/utils/sleep.d.ts.map +1 -0
  210. package/internal/utils/sleep.js +7 -0
  211. package/internal/utils/sleep.js.map +1 -0
  212. package/internal/utils/sleep.mjs +3 -0
  213. package/internal/utils/sleep.mjs.map +1 -0
  214. package/internal/utils/uuid.d.mts +5 -0
  215. package/internal/utils/uuid.d.mts.map +1 -0
  216. package/internal/utils/uuid.d.ts +5 -0
  217. package/internal/utils/uuid.d.ts.map +1 -0
  218. package/internal/utils/uuid.js +19 -0
  219. package/internal/utils/uuid.js.map +1 -0
  220. package/internal/utils/uuid.mjs +15 -0
  221. package/internal/utils/uuid.mjs.map +1 -0
  222. package/internal/utils/values.d.mts +18 -0
  223. package/internal/utils/values.d.mts.map +1 -0
  224. package/internal/utils/values.d.ts +18 -0
  225. package/internal/utils/values.d.ts.map +1 -0
  226. package/internal/utils/values.js +112 -0
  227. package/internal/utils/values.js.map +1 -0
  228. package/internal/utils/values.mjs +94 -0
  229. package/internal/utils/values.mjs.map +1 -0
  230. package/internal/utils.d.mts +7 -0
  231. package/internal/utils.d.mts.map +1 -0
  232. package/internal/utils.d.ts +7 -0
  233. package/internal/utils.d.ts.map +1 -0
  234. package/internal/utils.js +11 -0
  235. package/internal/utils.js.map +1 -0
  236. package/internal/utils.mjs +8 -0
  237. package/internal/utils.mjs.map +1 -0
  238. package/package.json +147 -0
  239. package/pagination.d.mts +2 -0
  240. package/pagination.d.mts.map +1 -0
  241. package/pagination.d.ts +2 -0
  242. package/pagination.d.ts.map +1 -0
  243. package/pagination.js +6 -0
  244. package/pagination.js.map +1 -0
  245. package/pagination.mjs +2 -0
  246. package/pagination.mjs.map +1 -0
  247. package/resource.d.mts +2 -0
  248. package/resource.d.mts.map +1 -0
  249. package/resource.d.ts +2 -0
  250. package/resource.d.ts.map +1 -0
  251. package/resource.js +6 -0
  252. package/resource.js.map +1 -0
  253. package/resource.mjs +2 -0
  254. package/resource.mjs.map +1 -0
  255. package/resources/domains.d.mts +238 -0
  256. package/resources/domains.d.mts.map +1 -0
  257. package/resources/domains.d.ts +238 -0
  258. package/resources/domains.d.ts.map +1 -0
  259. package/resources/domains.js +82 -0
  260. package/resources/domains.js.map +1 -0
  261. package/resources/domains.mjs +78 -0
  262. package/resources/domains.mjs.map +1 -0
  263. package/resources/emails.d.mts +602 -0
  264. package/resources/emails.d.mts.map +1 -0
  265. package/resources/emails.d.ts +602 -0
  266. package/resources/emails.d.ts.map +1 -0
  267. package/resources/emails.js +173 -0
  268. package/resources/emails.js.map +1 -0
  269. package/resources/emails.mjs +169 -0
  270. package/resources/emails.mjs.map +1 -0
  271. package/resources/index.d.mts +7 -0
  272. package/resources/index.d.mts.map +1 -0
  273. package/resources/index.d.ts +7 -0
  274. package/resources/index.d.ts.map +1 -0
  275. package/resources/index.js +17 -0
  276. package/resources/index.js.map +1 -0
  277. package/resources/index.mjs +8 -0
  278. package/resources/index.mjs.map +1 -0
  279. package/resources/shared.d.mts +7 -0
  280. package/resources/shared.d.mts.map +1 -0
  281. package/resources/shared.d.ts +7 -0
  282. package/resources/shared.d.ts.map +1 -0
  283. package/resources/shared.js +4 -0
  284. package/resources/shared.js.map +1 -0
  285. package/resources/shared.mjs +3 -0
  286. package/resources/shared.mjs.map +1 -0
  287. package/resources/suppressions.d.mts +181 -0
  288. package/resources/suppressions.d.mts.map +1 -0
  289. package/resources/suppressions.d.ts +181 -0
  290. package/resources/suppressions.d.ts.map +1 -0
  291. package/resources/suppressions.js +84 -0
  292. package/resources/suppressions.js.map +1 -0
  293. package/resources/suppressions.mjs +80 -0
  294. package/resources/suppressions.mjs.map +1 -0
  295. package/resources/tracking.d.mts +288 -0
  296. package/resources/tracking.d.mts.map +1 -0
  297. package/resources/tracking.d.ts +288 -0
  298. package/resources/tracking.d.ts.map +1 -0
  299. package/resources/tracking.js +96 -0
  300. package/resources/tracking.js.map +1 -0
  301. package/resources/tracking.mjs +92 -0
  302. package/resources/tracking.mjs.map +1 -0
  303. package/resources/webhooks.d.mts +307 -0
  304. package/resources/webhooks.d.mts.map +1 -0
  305. package/resources/webhooks.d.ts +307 -0
  306. package/resources/webhooks.d.ts.map +1 -0
  307. package/resources/webhooks.js +108 -0
  308. package/resources/webhooks.js.map +1 -0
  309. package/resources/webhooks.mjs +104 -0
  310. package/resources/webhooks.mjs.map +1 -0
  311. package/resources.d.mts +2 -0
  312. package/resources.d.mts.map +1 -0
  313. package/resources.d.ts +2 -0
  314. package/resources.d.ts.map +1 -0
  315. package/resources.js +5 -0
  316. package/resources.js.map +1 -0
  317. package/resources.mjs +2 -0
  318. package/resources.mjs.map +1 -0
  319. package/src/api-promise.ts +2 -0
  320. package/src/client.ts +898 -0
  321. package/src/core/README.md +3 -0
  322. package/src/core/api-promise.ts +89 -0
  323. package/src/core/error.ts +130 -0
  324. package/src/core/pagination.ts +187 -0
  325. package/src/core/resource.ts +11 -0
  326. package/src/core/uploads.ts +2 -0
  327. package/src/error.ts +2 -0
  328. package/src/index.ts +23 -0
  329. package/src/internal/README.md +3 -0
  330. package/src/internal/builtin-types.ts +93 -0
  331. package/src/internal/detect-platform.ts +196 -0
  332. package/src/internal/errors.ts +33 -0
  333. package/src/internal/headers.ts +97 -0
  334. package/src/internal/parse.ts +50 -0
  335. package/src/internal/request-options.ts +91 -0
  336. package/src/internal/shim-types.ts +26 -0
  337. package/src/internal/shims.ts +107 -0
  338. package/src/internal/to-file.ts +154 -0
  339. package/src/internal/types.ts +95 -0
  340. package/src/internal/uploads.ts +187 -0
  341. package/src/internal/utils/base64.ts +40 -0
  342. package/src/internal/utils/bytes.ts +32 -0
  343. package/src/internal/utils/env.ts +18 -0
  344. package/src/internal/utils/log.ts +126 -0
  345. package/src/internal/utils/path.ts +88 -0
  346. package/src/internal/utils/sleep.ts +3 -0
  347. package/src/internal/utils/uuid.ts +17 -0
  348. package/src/internal/utils/values.ts +105 -0
  349. package/src/internal/utils.ts +8 -0
  350. package/src/lib/.keep +4 -0
  351. package/src/pagination.ts +2 -0
  352. package/src/resource.ts +2 -0
  353. package/src/resources/domains.ts +320 -0
  354. package/src/resources/emails.ts +770 -0
  355. package/src/resources/index.ts +65 -0
  356. package/src/resources/shared.ts +8 -0
  357. package/src/resources/suppressions.ts +253 -0
  358. package/src/resources/tracking.ts +380 -0
  359. package/src/resources/webhooks.ts +456 -0
  360. package/src/resources.ts +1 -0
  361. package/src/tsconfig.json +11 -0
  362. package/src/uploads.ts +2 -0
  363. package/src/version.ts +1 -0
  364. package/uploads.d.mts +2 -0
  365. package/uploads.d.mts.map +1 -0
  366. package/uploads.d.ts +2 -0
  367. package/uploads.d.ts.map +1 -0
  368. package/uploads.js +6 -0
  369. package/uploads.js.map +1 -0
  370. package/uploads.mjs +2 -0
  371. package/uploads.mjs.map +1 -0
  372. package/version.d.mts +2 -0
  373. package/version.d.mts.map +1 -0
  374. package/version.d.ts +2 -0
  375. package/version.d.ts.map +1 -0
  376. package/version.js +5 -0
  377. package/version.js.map +1 -0
  378. package/version.mjs +2 -0
  379. package/version.mjs.map +1 -0
@@ -0,0 +1,307 @@
1
+ import { APIResource } from "../core/resource.mjs";
2
+ import * as Shared from "./shared.mjs";
3
+ import { APIPromise } from "../core/api-promise.mjs";
4
+ import { RequestOptions } from "../internal/request-options.mjs";
5
+ export declare class Webhooks extends APIResource {
6
+ /**
7
+ * Create a webhook endpoint to receive email event notifications.
8
+ *
9
+ * **Available events:**
10
+ *
11
+ * - `MessageSent` - Email accepted by recipient server
12
+ * - `MessageDeliveryFailed` - Delivery permanently failed
13
+ * - `MessageDelayed` - Delivery temporarily failed, will retry
14
+ * - `MessageBounced` - Email bounced
15
+ * - `MessageHeld` - Email held for review
16
+ * - `MessageLinkClicked` - Recipient clicked a link
17
+ * - `MessageLoaded` - Recipient opened the email
18
+ * - `DomainDNSError` - Domain DNS issue detected
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * const webhook = await client.webhooks.create({
23
+ * events: [
24
+ * 'MessageSent',
25
+ * 'MessageDeliveryFailed',
26
+ * 'MessageBounced',
27
+ * ],
28
+ * name: 'My App Webhook',
29
+ * url: 'https://myapp.com/webhooks/email',
30
+ * });
31
+ * ```
32
+ */
33
+ create(body: WebhookCreateParams, options?: RequestOptions): APIPromise<WebhookCreateResponse>;
34
+ /**
35
+ * Get webhook details
36
+ *
37
+ * @example
38
+ * ```ts
39
+ * const webhook = await client.webhooks.retrieve('webhookId');
40
+ * ```
41
+ */
42
+ retrieve(webhookID: string, options?: RequestOptions): APIPromise<WebhookRetrieveResponse>;
43
+ /**
44
+ * Update a webhook
45
+ *
46
+ * @example
47
+ * ```ts
48
+ * const webhook = await client.webhooks.update('webhookId');
49
+ * ```
50
+ */
51
+ update(webhookID: string, body: WebhookUpdateParams, options?: RequestOptions): APIPromise<WebhookUpdateResponse>;
52
+ /**
53
+ * Get all configured webhook endpoints
54
+ *
55
+ * @example
56
+ * ```ts
57
+ * const webhooks = await client.webhooks.list();
58
+ * ```
59
+ */
60
+ list(options?: RequestOptions): APIPromise<WebhookListResponse>;
61
+ /**
62
+ * Delete a webhook
63
+ *
64
+ * @example
65
+ * ```ts
66
+ * const webhook = await client.webhooks.delete('webhookId');
67
+ * ```
68
+ */
69
+ delete(webhookID: string, options?: RequestOptions): APIPromise<WebhookDeleteResponse>;
70
+ /**
71
+ * Send a test payload to your webhook endpoint and verify it receives the data
72
+ * correctly.
73
+ *
74
+ * Use this to:
75
+ *
76
+ * - Verify your webhook URL is accessible
77
+ * - Test your signature verification code
78
+ * - Ensure your server handles the payload format correctly
79
+ *
80
+ * **Test payload format:** The test payload is identical to real webhook payloads,
81
+ * containing sample data for the specified event type. Your webhook should respond
82
+ * with a 2xx status code.
83
+ *
84
+ * @example
85
+ * ```ts
86
+ * const response = await client.webhooks.test('webhookId', {
87
+ * event: 'MessageSent',
88
+ * });
89
+ * ```
90
+ */
91
+ test(webhookID: string, body: WebhookTestParams, options?: RequestOptions): APIPromise<WebhookTestResponse>;
92
+ }
93
+ export interface WebhookCreateResponse {
94
+ data: WebhookCreateResponse.Data;
95
+ meta: Shared.APIMeta;
96
+ success: true;
97
+ }
98
+ export declare namespace WebhookCreateResponse {
99
+ interface Data {
100
+ /**
101
+ * Webhook ID
102
+ */
103
+ id: string;
104
+ /**
105
+ * Whether subscribed to all events
106
+ */
107
+ allEvents: boolean;
108
+ createdAt: string;
109
+ /**
110
+ * Whether the webhook is active
111
+ */
112
+ enabled: boolean;
113
+ /**
114
+ * Subscribed events
115
+ */
116
+ events: Array<'MessageSent' | 'MessageDelayed' | 'MessageDeliveryFailed' | 'MessageHeld' | 'MessageBounced' | 'MessageLinkClicked' | 'MessageLoaded' | 'DomainDNSError'>;
117
+ /**
118
+ * Webhook name for identification
119
+ */
120
+ name: string;
121
+ /**
122
+ * Webhook endpoint URL
123
+ */
124
+ url: string;
125
+ uuid: string;
126
+ }
127
+ }
128
+ export interface WebhookRetrieveResponse {
129
+ data: WebhookRetrieveResponse.Data;
130
+ meta: Shared.APIMeta;
131
+ success: true;
132
+ }
133
+ export declare namespace WebhookRetrieveResponse {
134
+ interface Data {
135
+ /**
136
+ * Webhook ID
137
+ */
138
+ id: string;
139
+ /**
140
+ * Whether subscribed to all events
141
+ */
142
+ allEvents: boolean;
143
+ createdAt: string;
144
+ /**
145
+ * Whether the webhook is active
146
+ */
147
+ enabled: boolean;
148
+ /**
149
+ * Subscribed events
150
+ */
151
+ events: Array<'MessageSent' | 'MessageDelayed' | 'MessageDeliveryFailed' | 'MessageHeld' | 'MessageBounced' | 'MessageLinkClicked' | 'MessageLoaded' | 'DomainDNSError'>;
152
+ /**
153
+ * Webhook name for identification
154
+ */
155
+ name: string;
156
+ /**
157
+ * Webhook endpoint URL
158
+ */
159
+ url: string;
160
+ uuid: string;
161
+ }
162
+ }
163
+ export interface WebhookUpdateResponse {
164
+ data: WebhookUpdateResponse.Data;
165
+ meta: Shared.APIMeta;
166
+ success: true;
167
+ }
168
+ export declare namespace WebhookUpdateResponse {
169
+ interface Data {
170
+ /**
171
+ * Webhook ID
172
+ */
173
+ id: string;
174
+ /**
175
+ * Whether subscribed to all events
176
+ */
177
+ allEvents: boolean;
178
+ createdAt: string;
179
+ /**
180
+ * Whether the webhook is active
181
+ */
182
+ enabled: boolean;
183
+ /**
184
+ * Subscribed events
185
+ */
186
+ events: Array<'MessageSent' | 'MessageDelayed' | 'MessageDeliveryFailed' | 'MessageHeld' | 'MessageBounced' | 'MessageLinkClicked' | 'MessageLoaded' | 'DomainDNSError'>;
187
+ /**
188
+ * Webhook name for identification
189
+ */
190
+ name: string;
191
+ /**
192
+ * Webhook endpoint URL
193
+ */
194
+ url: string;
195
+ uuid: string;
196
+ }
197
+ }
198
+ export interface WebhookListResponse {
199
+ data: WebhookListResponse.Data;
200
+ meta: Shared.APIMeta;
201
+ success: true;
202
+ }
203
+ export declare namespace WebhookListResponse {
204
+ interface Data {
205
+ webhooks: Array<Data.Webhook>;
206
+ }
207
+ namespace Data {
208
+ interface Webhook {
209
+ /**
210
+ * Webhook ID
211
+ */
212
+ id: string;
213
+ enabled: boolean;
214
+ events: Array<string>;
215
+ name: string;
216
+ url: string;
217
+ }
218
+ }
219
+ }
220
+ export interface WebhookDeleteResponse {
221
+ data: WebhookDeleteResponse.Data;
222
+ meta: Shared.APIMeta;
223
+ success: true;
224
+ }
225
+ export declare namespace WebhookDeleteResponse {
226
+ interface Data {
227
+ message: string;
228
+ }
229
+ }
230
+ export interface WebhookTestResponse {
231
+ data: WebhookTestResponse.Data;
232
+ meta: Shared.APIMeta;
233
+ success: true;
234
+ }
235
+ export declare namespace WebhookTestResponse {
236
+ interface Data {
237
+ /**
238
+ * Request duration in milliseconds
239
+ */
240
+ duration: number;
241
+ /**
242
+ * Event type that was tested
243
+ */
244
+ event: string;
245
+ /**
246
+ * HTTP status code from the webhook endpoint
247
+ */
248
+ statusCode: number | null;
249
+ /**
250
+ * Whether the webhook endpoint responded with a 2xx status
251
+ */
252
+ success: boolean;
253
+ /**
254
+ * Response body from the webhook endpoint (truncated if too long)
255
+ */
256
+ body?: string | null;
257
+ /**
258
+ * Error message if the request failed
259
+ */
260
+ error?: string | null;
261
+ }
262
+ }
263
+ export interface WebhookCreateParams {
264
+ /**
265
+ * Events to subscribe to:
266
+ *
267
+ * - `MessageSent` - Email successfully delivered to recipient's server
268
+ * - `MessageDelayed` - Temporary delivery failure, will retry
269
+ * - `MessageDeliveryFailed` - Permanent delivery failure
270
+ * - `MessageHeld` - Email held for manual review
271
+ * - `MessageBounced` - Email bounced back
272
+ * - `MessageLinkClicked` - Recipient clicked a tracked link
273
+ * - `MessageLoaded` - Recipient opened the email (tracking pixel loaded)
274
+ * - `DomainDNSError` - DNS configuration issue detected
275
+ */
276
+ events: Array<'MessageSent' | 'MessageDelayed' | 'MessageDeliveryFailed' | 'MessageHeld' | 'MessageBounced' | 'MessageLinkClicked' | 'MessageLoaded' | 'DomainDNSError'>;
277
+ /**
278
+ * Webhook name for identification
279
+ */
280
+ name: string;
281
+ /**
282
+ * HTTPS endpoint URL
283
+ */
284
+ url: string;
285
+ /**
286
+ * Subscribe to all events (ignores events array)
287
+ */
288
+ allEvents?: boolean;
289
+ enabled?: boolean;
290
+ }
291
+ export interface WebhookUpdateParams {
292
+ allEvents?: boolean;
293
+ enabled?: boolean;
294
+ events?: Array<string>;
295
+ name?: string;
296
+ url?: string;
297
+ }
298
+ export interface WebhookTestParams {
299
+ /**
300
+ * Event type to simulate
301
+ */
302
+ event: 'MessageSent' | 'MessageDelayed' | 'MessageDeliveryFailed' | 'MessageHeld' | 'MessageBounced' | 'MessageLinkClicked' | 'MessageLoaded' | 'DomainDNSError';
303
+ }
304
+ export declare namespace Webhooks {
305
+ export { type WebhookCreateResponse as WebhookCreateResponse, type WebhookRetrieveResponse as WebhookRetrieveResponse, type WebhookUpdateResponse as WebhookUpdateResponse, type WebhookListResponse as WebhookListResponse, type WebhookDeleteResponse as WebhookDeleteResponse, type WebhookTestResponse as WebhookTestResponse, type WebhookCreateParams as WebhookCreateParams, type WebhookUpdateParams as WebhookUpdateParams, type WebhookTestParams as WebhookTestParams, };
306
+ }
307
+ //# sourceMappingURL=webhooks.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhooks.d.mts","sourceRoot":"","sources":["../src/resources/webhooks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,307 @@
1
+ import { APIResource } from "../core/resource.js";
2
+ import * as Shared from "./shared.js";
3
+ import { APIPromise } from "../core/api-promise.js";
4
+ import { RequestOptions } from "../internal/request-options.js";
5
+ export declare class Webhooks extends APIResource {
6
+ /**
7
+ * Create a webhook endpoint to receive email event notifications.
8
+ *
9
+ * **Available events:**
10
+ *
11
+ * - `MessageSent` - Email accepted by recipient server
12
+ * - `MessageDeliveryFailed` - Delivery permanently failed
13
+ * - `MessageDelayed` - Delivery temporarily failed, will retry
14
+ * - `MessageBounced` - Email bounced
15
+ * - `MessageHeld` - Email held for review
16
+ * - `MessageLinkClicked` - Recipient clicked a link
17
+ * - `MessageLoaded` - Recipient opened the email
18
+ * - `DomainDNSError` - Domain DNS issue detected
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * const webhook = await client.webhooks.create({
23
+ * events: [
24
+ * 'MessageSent',
25
+ * 'MessageDeliveryFailed',
26
+ * 'MessageBounced',
27
+ * ],
28
+ * name: 'My App Webhook',
29
+ * url: 'https://myapp.com/webhooks/email',
30
+ * });
31
+ * ```
32
+ */
33
+ create(body: WebhookCreateParams, options?: RequestOptions): APIPromise<WebhookCreateResponse>;
34
+ /**
35
+ * Get webhook details
36
+ *
37
+ * @example
38
+ * ```ts
39
+ * const webhook = await client.webhooks.retrieve('webhookId');
40
+ * ```
41
+ */
42
+ retrieve(webhookID: string, options?: RequestOptions): APIPromise<WebhookRetrieveResponse>;
43
+ /**
44
+ * Update a webhook
45
+ *
46
+ * @example
47
+ * ```ts
48
+ * const webhook = await client.webhooks.update('webhookId');
49
+ * ```
50
+ */
51
+ update(webhookID: string, body: WebhookUpdateParams, options?: RequestOptions): APIPromise<WebhookUpdateResponse>;
52
+ /**
53
+ * Get all configured webhook endpoints
54
+ *
55
+ * @example
56
+ * ```ts
57
+ * const webhooks = await client.webhooks.list();
58
+ * ```
59
+ */
60
+ list(options?: RequestOptions): APIPromise<WebhookListResponse>;
61
+ /**
62
+ * Delete a webhook
63
+ *
64
+ * @example
65
+ * ```ts
66
+ * const webhook = await client.webhooks.delete('webhookId');
67
+ * ```
68
+ */
69
+ delete(webhookID: string, options?: RequestOptions): APIPromise<WebhookDeleteResponse>;
70
+ /**
71
+ * Send a test payload to your webhook endpoint and verify it receives the data
72
+ * correctly.
73
+ *
74
+ * Use this to:
75
+ *
76
+ * - Verify your webhook URL is accessible
77
+ * - Test your signature verification code
78
+ * - Ensure your server handles the payload format correctly
79
+ *
80
+ * **Test payload format:** The test payload is identical to real webhook payloads,
81
+ * containing sample data for the specified event type. Your webhook should respond
82
+ * with a 2xx status code.
83
+ *
84
+ * @example
85
+ * ```ts
86
+ * const response = await client.webhooks.test('webhookId', {
87
+ * event: 'MessageSent',
88
+ * });
89
+ * ```
90
+ */
91
+ test(webhookID: string, body: WebhookTestParams, options?: RequestOptions): APIPromise<WebhookTestResponse>;
92
+ }
93
+ export interface WebhookCreateResponse {
94
+ data: WebhookCreateResponse.Data;
95
+ meta: Shared.APIMeta;
96
+ success: true;
97
+ }
98
+ export declare namespace WebhookCreateResponse {
99
+ interface Data {
100
+ /**
101
+ * Webhook ID
102
+ */
103
+ id: string;
104
+ /**
105
+ * Whether subscribed to all events
106
+ */
107
+ allEvents: boolean;
108
+ createdAt: string;
109
+ /**
110
+ * Whether the webhook is active
111
+ */
112
+ enabled: boolean;
113
+ /**
114
+ * Subscribed events
115
+ */
116
+ events: Array<'MessageSent' | 'MessageDelayed' | 'MessageDeliveryFailed' | 'MessageHeld' | 'MessageBounced' | 'MessageLinkClicked' | 'MessageLoaded' | 'DomainDNSError'>;
117
+ /**
118
+ * Webhook name for identification
119
+ */
120
+ name: string;
121
+ /**
122
+ * Webhook endpoint URL
123
+ */
124
+ url: string;
125
+ uuid: string;
126
+ }
127
+ }
128
+ export interface WebhookRetrieveResponse {
129
+ data: WebhookRetrieveResponse.Data;
130
+ meta: Shared.APIMeta;
131
+ success: true;
132
+ }
133
+ export declare namespace WebhookRetrieveResponse {
134
+ interface Data {
135
+ /**
136
+ * Webhook ID
137
+ */
138
+ id: string;
139
+ /**
140
+ * Whether subscribed to all events
141
+ */
142
+ allEvents: boolean;
143
+ createdAt: string;
144
+ /**
145
+ * Whether the webhook is active
146
+ */
147
+ enabled: boolean;
148
+ /**
149
+ * Subscribed events
150
+ */
151
+ events: Array<'MessageSent' | 'MessageDelayed' | 'MessageDeliveryFailed' | 'MessageHeld' | 'MessageBounced' | 'MessageLinkClicked' | 'MessageLoaded' | 'DomainDNSError'>;
152
+ /**
153
+ * Webhook name for identification
154
+ */
155
+ name: string;
156
+ /**
157
+ * Webhook endpoint URL
158
+ */
159
+ url: string;
160
+ uuid: string;
161
+ }
162
+ }
163
+ export interface WebhookUpdateResponse {
164
+ data: WebhookUpdateResponse.Data;
165
+ meta: Shared.APIMeta;
166
+ success: true;
167
+ }
168
+ export declare namespace WebhookUpdateResponse {
169
+ interface Data {
170
+ /**
171
+ * Webhook ID
172
+ */
173
+ id: string;
174
+ /**
175
+ * Whether subscribed to all events
176
+ */
177
+ allEvents: boolean;
178
+ createdAt: string;
179
+ /**
180
+ * Whether the webhook is active
181
+ */
182
+ enabled: boolean;
183
+ /**
184
+ * Subscribed events
185
+ */
186
+ events: Array<'MessageSent' | 'MessageDelayed' | 'MessageDeliveryFailed' | 'MessageHeld' | 'MessageBounced' | 'MessageLinkClicked' | 'MessageLoaded' | 'DomainDNSError'>;
187
+ /**
188
+ * Webhook name for identification
189
+ */
190
+ name: string;
191
+ /**
192
+ * Webhook endpoint URL
193
+ */
194
+ url: string;
195
+ uuid: string;
196
+ }
197
+ }
198
+ export interface WebhookListResponse {
199
+ data: WebhookListResponse.Data;
200
+ meta: Shared.APIMeta;
201
+ success: true;
202
+ }
203
+ export declare namespace WebhookListResponse {
204
+ interface Data {
205
+ webhooks: Array<Data.Webhook>;
206
+ }
207
+ namespace Data {
208
+ interface Webhook {
209
+ /**
210
+ * Webhook ID
211
+ */
212
+ id: string;
213
+ enabled: boolean;
214
+ events: Array<string>;
215
+ name: string;
216
+ url: string;
217
+ }
218
+ }
219
+ }
220
+ export interface WebhookDeleteResponse {
221
+ data: WebhookDeleteResponse.Data;
222
+ meta: Shared.APIMeta;
223
+ success: true;
224
+ }
225
+ export declare namespace WebhookDeleteResponse {
226
+ interface Data {
227
+ message: string;
228
+ }
229
+ }
230
+ export interface WebhookTestResponse {
231
+ data: WebhookTestResponse.Data;
232
+ meta: Shared.APIMeta;
233
+ success: true;
234
+ }
235
+ export declare namespace WebhookTestResponse {
236
+ interface Data {
237
+ /**
238
+ * Request duration in milliseconds
239
+ */
240
+ duration: number;
241
+ /**
242
+ * Event type that was tested
243
+ */
244
+ event: string;
245
+ /**
246
+ * HTTP status code from the webhook endpoint
247
+ */
248
+ statusCode: number | null;
249
+ /**
250
+ * Whether the webhook endpoint responded with a 2xx status
251
+ */
252
+ success: boolean;
253
+ /**
254
+ * Response body from the webhook endpoint (truncated if too long)
255
+ */
256
+ body?: string | null;
257
+ /**
258
+ * Error message if the request failed
259
+ */
260
+ error?: string | null;
261
+ }
262
+ }
263
+ export interface WebhookCreateParams {
264
+ /**
265
+ * Events to subscribe to:
266
+ *
267
+ * - `MessageSent` - Email successfully delivered to recipient's server
268
+ * - `MessageDelayed` - Temporary delivery failure, will retry
269
+ * - `MessageDeliveryFailed` - Permanent delivery failure
270
+ * - `MessageHeld` - Email held for manual review
271
+ * - `MessageBounced` - Email bounced back
272
+ * - `MessageLinkClicked` - Recipient clicked a tracked link
273
+ * - `MessageLoaded` - Recipient opened the email (tracking pixel loaded)
274
+ * - `DomainDNSError` - DNS configuration issue detected
275
+ */
276
+ events: Array<'MessageSent' | 'MessageDelayed' | 'MessageDeliveryFailed' | 'MessageHeld' | 'MessageBounced' | 'MessageLinkClicked' | 'MessageLoaded' | 'DomainDNSError'>;
277
+ /**
278
+ * Webhook name for identification
279
+ */
280
+ name: string;
281
+ /**
282
+ * HTTPS endpoint URL
283
+ */
284
+ url: string;
285
+ /**
286
+ * Subscribe to all events (ignores events array)
287
+ */
288
+ allEvents?: boolean;
289
+ enabled?: boolean;
290
+ }
291
+ export interface WebhookUpdateParams {
292
+ allEvents?: boolean;
293
+ enabled?: boolean;
294
+ events?: Array<string>;
295
+ name?: string;
296
+ url?: string;
297
+ }
298
+ export interface WebhookTestParams {
299
+ /**
300
+ * Event type to simulate
301
+ */
302
+ event: 'MessageSent' | 'MessageDelayed' | 'MessageDeliveryFailed' | 'MessageHeld' | 'MessageBounced' | 'MessageLinkClicked' | 'MessageLoaded' | 'DomainDNSError';
303
+ }
304
+ export declare namespace Webhooks {
305
+ export { type WebhookCreateResponse as WebhookCreateResponse, type WebhookRetrieveResponse as WebhookRetrieveResponse, type WebhookUpdateResponse as WebhookUpdateResponse, type WebhookListResponse as WebhookListResponse, type WebhookDeleteResponse as WebhookDeleteResponse, type WebhookTestResponse as WebhookTestResponse, type WebhookCreateParams as WebhookCreateParams, type WebhookUpdateParams as WebhookUpdateParams, type WebhookTestParams as WebhookTestParams, };
306
+ }
307
+ //# sourceMappingURL=webhooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../src/resources/webhooks.ts"],"names":[],"mappings":"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"}