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,181 @@
1
+ import { APIResource } from "../core/resource.js";
2
+ import * as Shared from "./shared.js";
3
+ import { APIPromise } from "../core/api-promise.js";
4
+ import { PageNumberPagination, type PageNumberPaginationParams, PagePromise } from "../core/pagination.js";
5
+ import { RequestOptions } from "../internal/request-options.js";
6
+ export declare class Suppressions extends APIResource {
7
+ /**
8
+ * Add an email address to the suppression list. The address will not receive any
9
+ * emails until removed.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const suppression = await client.suppressions.create({
14
+ * address: 'user@example.com',
15
+ * reason: 'user requested removal',
16
+ * });
17
+ * ```
18
+ */
19
+ create(body: SuppressionCreateParams, options?: RequestOptions): APIPromise<SuppressionCreateResponse>;
20
+ /**
21
+ * Check if a specific email address is on the suppression list
22
+ *
23
+ * @example
24
+ * ```ts
25
+ * const suppression = await client.suppressions.retrieve(
26
+ * 'dev@stainless.com',
27
+ * );
28
+ * ```
29
+ */
30
+ retrieve(email: string, options?: RequestOptions): APIPromise<SuppressionRetrieveResponse>;
31
+ /**
32
+ * Get all email addresses on the suppression list. These addresses will not
33
+ * receive any emails.
34
+ *
35
+ * @example
36
+ * ```ts
37
+ * // Automatically fetches more pages as needed.
38
+ * for await (const suppressionListResponse of client.suppressions.list()) {
39
+ * // ...
40
+ * }
41
+ * ```
42
+ */
43
+ list(query?: SuppressionListParams | null | undefined, options?: RequestOptions): PagePromise<SuppressionListResponsesPageNumberPagination, SuppressionListResponse>;
44
+ /**
45
+ * Remove an email address from the suppression list. The address will be able to
46
+ * receive emails again.
47
+ *
48
+ * @example
49
+ * ```ts
50
+ * const suppression = await client.suppressions.delete(
51
+ * 'dev@stainless.com',
52
+ * );
53
+ * ```
54
+ */
55
+ delete(email: string, options?: RequestOptions): APIPromise<SuppressionDeleteResponse>;
56
+ /**
57
+ * Add up to 1000 email addresses to the suppression list at once
58
+ *
59
+ * @example
60
+ * ```ts
61
+ * const response = await client.suppressions.bulkCreate({
62
+ * suppressions: [{ address: 'dev@stainless.com' }],
63
+ * });
64
+ * ```
65
+ */
66
+ bulkCreate(body: SuppressionBulkCreateParams, options?: RequestOptions): APIPromise<SuppressionBulkCreateResponse>;
67
+ }
68
+ export type SuppressionListResponsesPageNumberPagination = PageNumberPagination<SuppressionListResponse>;
69
+ export interface SuppressionCreateResponse {
70
+ data: SuppressionCreateResponse.Data;
71
+ meta: Shared.APIMeta;
72
+ success: true;
73
+ }
74
+ export declare namespace SuppressionCreateResponse {
75
+ interface Data {
76
+ /**
77
+ * Suppression ID
78
+ */
79
+ id: string;
80
+ address: string;
81
+ createdAt: string;
82
+ /**
83
+ * Reason for suppression
84
+ */
85
+ reason?: string;
86
+ }
87
+ }
88
+ export interface SuppressionRetrieveResponse {
89
+ data: SuppressionRetrieveResponse.Data;
90
+ meta: Shared.APIMeta;
91
+ success: true;
92
+ }
93
+ export declare namespace SuppressionRetrieveResponse {
94
+ interface Data {
95
+ /**
96
+ * The email address that was checked
97
+ */
98
+ address: string;
99
+ /**
100
+ * Whether the address is currently suppressed
101
+ */
102
+ suppressed: boolean;
103
+ /**
104
+ * When the suppression was created (if suppressed)
105
+ */
106
+ createdAt?: string | null;
107
+ /**
108
+ * Reason for suppression (if suppressed)
109
+ */
110
+ reason?: string | null;
111
+ }
112
+ }
113
+ export interface SuppressionListResponse {
114
+ /**
115
+ * Suppression ID
116
+ */
117
+ id: string;
118
+ address: string;
119
+ createdAt: string;
120
+ reason?: string;
121
+ }
122
+ export interface SuppressionDeleteResponse {
123
+ data: SuppressionDeleteResponse.Data;
124
+ meta: Shared.APIMeta;
125
+ success: true;
126
+ }
127
+ export declare namespace SuppressionDeleteResponse {
128
+ interface Data {
129
+ message: string;
130
+ }
131
+ }
132
+ export interface SuppressionBulkCreateResponse {
133
+ data: SuppressionBulkCreateResponse.Data;
134
+ meta: Shared.APIMeta;
135
+ success: true;
136
+ }
137
+ export declare namespace SuppressionBulkCreateResponse {
138
+ interface Data {
139
+ /**
140
+ * Newly suppressed addresses
141
+ */
142
+ added: number;
143
+ /**
144
+ * Invalid addresses skipped
145
+ */
146
+ failed: number;
147
+ /**
148
+ * Total addresses in request
149
+ */
150
+ totalRequested: number;
151
+ /**
152
+ * Already suppressed addresses (updated reason)
153
+ */
154
+ updated: number;
155
+ }
156
+ }
157
+ export interface SuppressionCreateParams {
158
+ /**
159
+ * Email address to suppress
160
+ */
161
+ address: string;
162
+ /**
163
+ * Reason for suppression
164
+ */
165
+ reason?: string;
166
+ }
167
+ export interface SuppressionListParams extends PageNumberPaginationParams {
168
+ }
169
+ export interface SuppressionBulkCreateParams {
170
+ suppressions: Array<SuppressionBulkCreateParams.Suppression>;
171
+ }
172
+ export declare namespace SuppressionBulkCreateParams {
173
+ interface Suppression {
174
+ address: string;
175
+ reason?: string;
176
+ }
177
+ }
178
+ export declare namespace Suppressions {
179
+ export { type SuppressionCreateResponse as SuppressionCreateResponse, type SuppressionRetrieveResponse as SuppressionRetrieveResponse, type SuppressionListResponse as SuppressionListResponse, type SuppressionDeleteResponse as SuppressionDeleteResponse, type SuppressionBulkCreateResponse as SuppressionBulkCreateResponse, type SuppressionListResponsesPageNumberPagination as SuppressionListResponsesPageNumberPagination, type SuppressionCreateParams as SuppressionCreateParams, type SuppressionListParams as SuppressionListParams, type SuppressionBulkCreateParams as SuppressionBulkCreateParams, };
180
+ }
181
+ //# sourceMappingURL=suppressions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suppressions.d.ts","sourceRoot":"","sources":["../src/resources/suppressions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Suppressions = void 0;
5
+ const resource_1 = require("../core/resource.js");
6
+ const pagination_1 = require("../core/pagination.js");
7
+ const path_1 = require("../internal/utils/path.js");
8
+ class Suppressions extends resource_1.APIResource {
9
+ /**
10
+ * Add an email address to the suppression list. The address will not receive any
11
+ * emails until removed.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * const suppression = await client.suppressions.create({
16
+ * address: 'user@example.com',
17
+ * reason: 'user requested removal',
18
+ * });
19
+ * ```
20
+ */
21
+ create(body, options) {
22
+ return this._client.post('/suppressions', { body, ...options });
23
+ }
24
+ /**
25
+ * Check if a specific email address is on the suppression list
26
+ *
27
+ * @example
28
+ * ```ts
29
+ * const suppression = await client.suppressions.retrieve(
30
+ * 'dev@stainless.com',
31
+ * );
32
+ * ```
33
+ */
34
+ retrieve(email, options) {
35
+ return this._client.get((0, path_1.path) `/suppressions/${email}`, options);
36
+ }
37
+ /**
38
+ * Get all email addresses on the suppression list. These addresses will not
39
+ * receive any emails.
40
+ *
41
+ * @example
42
+ * ```ts
43
+ * // Automatically fetches more pages as needed.
44
+ * for await (const suppressionListResponse of client.suppressions.list()) {
45
+ * // ...
46
+ * }
47
+ * ```
48
+ */
49
+ list(query = {}, options) {
50
+ return this._client.getAPIList('/suppressions', (pagination_1.PageNumberPagination), {
51
+ query,
52
+ ...options,
53
+ });
54
+ }
55
+ /**
56
+ * Remove an email address from the suppression list. The address will be able to
57
+ * receive emails again.
58
+ *
59
+ * @example
60
+ * ```ts
61
+ * const suppression = await client.suppressions.delete(
62
+ * 'dev@stainless.com',
63
+ * );
64
+ * ```
65
+ */
66
+ delete(email, options) {
67
+ return this._client.delete((0, path_1.path) `/suppressions/${email}`, options);
68
+ }
69
+ /**
70
+ * Add up to 1000 email addresses to the suppression list at once
71
+ *
72
+ * @example
73
+ * ```ts
74
+ * const response = await client.suppressions.bulkCreate({
75
+ * suppressions: [{ address: 'dev@stainless.com' }],
76
+ * });
77
+ * ```
78
+ */
79
+ bulkCreate(body, options) {
80
+ return this._client.post('/suppressions/bulk', { body, ...options });
81
+ }
82
+ }
83
+ exports.Suppressions = Suppressions;
84
+ //# sourceMappingURL=suppressions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suppressions.js","sourceRoot":"","sources":["../src/resources/suppressions.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAA+C;AAG/C,sDAAwG;AAExG,oDAA8C;AAE9C,MAAa,YAAa,SAAQ,sBAAW;IAC3C;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,IAA6B,EAAE,OAAwB;QAC5D,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAClE,CAAC;IAED;;;;;;;;;OASG;IACH,QAAQ,CAAC,KAAa,EAAE,OAAwB;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,iBAAiB,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;;;;;OAWG;IACH,IAAI,CACF,QAAkD,EAAE,EACpD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,EAAE,CAAA,iCAA6C,CAAA,EAAE;YAC7F,KAAK;YACL,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,KAAa,EAAE,OAAwB;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAA,WAAI,EAAA,iBAAiB,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;;OASG;IACH,UAAU,CACR,IAAiC,EACjC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;CACF;AApFD,oCAoFC"}
@@ -0,0 +1,80 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ import { APIResource } from "../core/resource.mjs";
3
+ import { PageNumberPagination } from "../core/pagination.mjs";
4
+ import { path } from "../internal/utils/path.mjs";
5
+ export class Suppressions extends APIResource {
6
+ /**
7
+ * Add an email address to the suppression list. The address will not receive any
8
+ * emails until removed.
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * const suppression = await client.suppressions.create({
13
+ * address: 'user@example.com',
14
+ * reason: 'user requested removal',
15
+ * });
16
+ * ```
17
+ */
18
+ create(body, options) {
19
+ return this._client.post('/suppressions', { body, ...options });
20
+ }
21
+ /**
22
+ * Check if a specific email address is on the suppression list
23
+ *
24
+ * @example
25
+ * ```ts
26
+ * const suppression = await client.suppressions.retrieve(
27
+ * 'dev@stainless.com',
28
+ * );
29
+ * ```
30
+ */
31
+ retrieve(email, options) {
32
+ return this._client.get(path `/suppressions/${email}`, options);
33
+ }
34
+ /**
35
+ * Get all email addresses on the suppression list. These addresses will not
36
+ * receive any emails.
37
+ *
38
+ * @example
39
+ * ```ts
40
+ * // Automatically fetches more pages as needed.
41
+ * for await (const suppressionListResponse of client.suppressions.list()) {
42
+ * // ...
43
+ * }
44
+ * ```
45
+ */
46
+ list(query = {}, options) {
47
+ return this._client.getAPIList('/suppressions', (PageNumberPagination), {
48
+ query,
49
+ ...options,
50
+ });
51
+ }
52
+ /**
53
+ * Remove an email address from the suppression list. The address will be able to
54
+ * receive emails again.
55
+ *
56
+ * @example
57
+ * ```ts
58
+ * const suppression = await client.suppressions.delete(
59
+ * 'dev@stainless.com',
60
+ * );
61
+ * ```
62
+ */
63
+ delete(email, options) {
64
+ return this._client.delete(path `/suppressions/${email}`, options);
65
+ }
66
+ /**
67
+ * Add up to 1000 email addresses to the suppression list at once
68
+ *
69
+ * @example
70
+ * ```ts
71
+ * const response = await client.suppressions.bulkCreate({
72
+ * suppressions: [{ address: 'dev@stainless.com' }],
73
+ * });
74
+ * ```
75
+ */
76
+ bulkCreate(body, options) {
77
+ return this._client.post('/suppressions/bulk', { body, ...options });
78
+ }
79
+ }
80
+ //# sourceMappingURL=suppressions.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suppressions.mjs","sourceRoot":"","sources":["../src/resources/suppressions.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE;OAGf,EAAE,oBAAoB,EAAgD;OAEtE,EAAE,IAAI,EAAE;AAEf,MAAM,OAAO,YAAa,SAAQ,WAAW;IAC3C;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,IAA6B,EAAE,OAAwB;QAC5D,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAClE,CAAC;IAED;;;;;;;;;OASG;IACH,QAAQ,CAAC,KAAa,EAAE,OAAwB;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,iBAAiB,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;;;;;OAWG;IACH,IAAI,CACF,QAAkD,EAAE,EACpD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,EAAE,CAAA,oBAA6C,CAAA,EAAE;YAC7F,KAAK;YACL,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,KAAa,EAAE,OAAwB;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA,iBAAiB,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;;OASG;IACH,UAAU,CACR,IAAiC,EACjC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;CACF"}
@@ -0,0 +1,288 @@
1
+ import { APIResource } from "../core/resource.mjs";
2
+ import * as TrackingAPI from "./tracking.mjs";
3
+ import * as Shared from "./shared.mjs";
4
+ import { APIPromise } from "../core/api-promise.mjs";
5
+ import { RequestOptions } from "../internal/request-options.mjs";
6
+ export declare class Tracking extends APIResource {
7
+ /**
8
+ * Create a new track domain for open/click tracking.
9
+ *
10
+ * After creation, you must configure a CNAME record pointing to the provided DNS
11
+ * value before tracking will work.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * const tracking = await client.tracking.create({
16
+ * domainId: '123',
17
+ * name: 'track',
18
+ * });
19
+ * ```
20
+ */
21
+ create(body: TrackingCreateParams, options?: RequestOptions): APIPromise<TrackingCreateResponse>;
22
+ /**
23
+ * Get details of a specific track domain including DNS configuration
24
+ *
25
+ * @example
26
+ * ```ts
27
+ * const tracking = await client.tracking.retrieve(
28
+ * 'trackingId',
29
+ * );
30
+ * ```
31
+ */
32
+ retrieve(trackingID: string, options?: RequestOptions): APIPromise<TrackingRetrieveResponse>;
33
+ /**
34
+ * Update track domain settings.
35
+ *
36
+ * Use this to:
37
+ *
38
+ * - Enable/disable click tracking
39
+ * - Enable/disable open tracking
40
+ * - Enable/disable SSL
41
+ * - Set excluded click domains
42
+ *
43
+ * @example
44
+ * ```ts
45
+ * const tracking = await client.tracking.update('trackingId');
46
+ * ```
47
+ */
48
+ update(trackingID: string, body: TrackingUpdateParams, options?: RequestOptions): APIPromise<TrackingUpdateResponse>;
49
+ /**
50
+ * List all track domains configured for your server. Track domains enable open and
51
+ * click tracking for your emails.
52
+ *
53
+ * @example
54
+ * ```ts
55
+ * const trackings = await client.tracking.list();
56
+ * ```
57
+ */
58
+ list(options?: RequestOptions): APIPromise<TrackingListResponse>;
59
+ /**
60
+ * Delete a track domain. This will disable tracking for any emails using this
61
+ * domain.
62
+ *
63
+ * @example
64
+ * ```ts
65
+ * const tracking = await client.tracking.delete('trackingId');
66
+ * ```
67
+ */
68
+ delete(trackingID: string, options?: RequestOptions): APIPromise<TrackingDeleteResponse>;
69
+ /**
70
+ * Check DNS configuration for the track domain.
71
+ *
72
+ * The track domain requires a CNAME record to be configured before open and click
73
+ * tracking will work. Use this endpoint to verify the DNS is correctly set up.
74
+ *
75
+ * @example
76
+ * ```ts
77
+ * const response = await client.tracking.verify('trackingId');
78
+ * ```
79
+ */
80
+ verify(trackingID: string, options?: RequestOptions): APIPromise<TrackingVerifyResponse>;
81
+ }
82
+ export interface TrackDomain {
83
+ /**
84
+ * Track domain ID
85
+ */
86
+ id: string;
87
+ /**
88
+ * When the track domain was created
89
+ */
90
+ createdAt: string;
91
+ /**
92
+ * Whether DNS is correctly configured
93
+ */
94
+ dnsOk: boolean;
95
+ /**
96
+ * ID of the parent sending domain
97
+ */
98
+ domainId: string;
99
+ /**
100
+ * Full domain name
101
+ */
102
+ fullName: string;
103
+ /**
104
+ * Subdomain name
105
+ */
106
+ name: string;
107
+ /**
108
+ * Whether SSL is enabled for tracking URLs
109
+ */
110
+ sslEnabled: boolean;
111
+ /**
112
+ * Whether click tracking is enabled
113
+ */
114
+ trackClicks: boolean;
115
+ /**
116
+ * Whether open tracking is enabled
117
+ */
118
+ trackOpens: boolean;
119
+ /**
120
+ * When DNS was last checked
121
+ */
122
+ dnsCheckedAt?: string | null;
123
+ /**
124
+ * DNS error message if verification failed
125
+ */
126
+ dnsError?: string | null;
127
+ /**
128
+ * Required DNS record configuration
129
+ */
130
+ dnsRecord?: TrackDomain.DNSRecord | null;
131
+ /**
132
+ * Current DNS verification status
133
+ */
134
+ dnsStatus?: 'ok' | 'missing' | 'invalid' | null;
135
+ /**
136
+ * Domains excluded from click tracking
137
+ */
138
+ excludedClickDomains?: string | null;
139
+ /**
140
+ * When the track domain was last updated
141
+ */
142
+ updatedAt?: string | null;
143
+ }
144
+ export declare namespace TrackDomain {
145
+ /**
146
+ * Required DNS record configuration
147
+ */
148
+ interface DNSRecord {
149
+ /**
150
+ * DNS record name
151
+ */
152
+ name?: string;
153
+ /**
154
+ * DNS record type
155
+ */
156
+ type?: string;
157
+ /**
158
+ * DNS record value (target)
159
+ */
160
+ value?: string;
161
+ }
162
+ }
163
+ export interface TrackingCreateResponse {
164
+ data: TrackDomain;
165
+ meta: Shared.APIMeta;
166
+ success: true;
167
+ }
168
+ export interface TrackingRetrieveResponse {
169
+ data: TrackDomain;
170
+ meta: Shared.APIMeta;
171
+ success: true;
172
+ }
173
+ export interface TrackingUpdateResponse {
174
+ data: TrackDomain;
175
+ meta: Shared.APIMeta;
176
+ success: true;
177
+ }
178
+ export interface TrackingListResponse {
179
+ data: TrackingListResponse.Data;
180
+ meta: Shared.APIMeta;
181
+ success: true;
182
+ }
183
+ export declare namespace TrackingListResponse {
184
+ interface Data {
185
+ trackDomains: Array<TrackingAPI.TrackDomain>;
186
+ }
187
+ }
188
+ export interface TrackingDeleteResponse {
189
+ data: TrackingDeleteResponse.Data;
190
+ meta: Shared.APIMeta;
191
+ success: true;
192
+ }
193
+ export declare namespace TrackingDeleteResponse {
194
+ interface Data {
195
+ message: string;
196
+ }
197
+ }
198
+ export interface TrackingVerifyResponse {
199
+ data: TrackingVerifyResponse.Data;
200
+ meta: Shared.APIMeta;
201
+ success: true;
202
+ }
203
+ export declare namespace TrackingVerifyResponse {
204
+ interface Data {
205
+ /**
206
+ * Track domain ID
207
+ */
208
+ id: string;
209
+ /**
210
+ * Whether DNS is correctly configured
211
+ */
212
+ dnsOk: boolean;
213
+ /**
214
+ * Current DNS verification status
215
+ */
216
+ dnsStatus: 'ok' | 'missing' | 'invalid' | null;
217
+ /**
218
+ * Full domain name
219
+ */
220
+ fullName: string;
221
+ /**
222
+ * When DNS was last checked
223
+ */
224
+ dnsCheckedAt?: string | null;
225
+ /**
226
+ * DNS error message if verification failed
227
+ */
228
+ dnsError?: string | null;
229
+ /**
230
+ * Required DNS record configuration
231
+ */
232
+ dnsRecord?: Data.DNSRecord | null;
233
+ }
234
+ namespace Data {
235
+ /**
236
+ * Required DNS record configuration
237
+ */
238
+ interface DNSRecord {
239
+ name?: string;
240
+ type?: string;
241
+ value?: string;
242
+ }
243
+ }
244
+ }
245
+ export interface TrackingCreateParams {
246
+ /**
247
+ * ID of the sending domain to attach this track domain to
248
+ */
249
+ domainId: string;
250
+ /**
251
+ * Subdomain name (e.g., 'track' for track.yourdomain.com)
252
+ */
253
+ name: string;
254
+ /**
255
+ * Enable SSL for tracking URLs (recommended)
256
+ */
257
+ sslEnabled?: boolean;
258
+ /**
259
+ * Enable click tracking
260
+ */
261
+ trackClicks?: boolean;
262
+ /**
263
+ * Enable open tracking (tracking pixel)
264
+ */
265
+ trackOpens?: boolean;
266
+ }
267
+ export interface TrackingUpdateParams {
268
+ /**
269
+ * Comma-separated list of domains to exclude from click tracking
270
+ */
271
+ excludedClickDomains?: string;
272
+ /**
273
+ * Enable or disable SSL for tracking URLs
274
+ */
275
+ sslEnabled?: boolean;
276
+ /**
277
+ * Enable or disable click tracking
278
+ */
279
+ trackClicks?: boolean;
280
+ /**
281
+ * Enable or disable open tracking
282
+ */
283
+ trackOpens?: boolean;
284
+ }
285
+ export declare namespace Tracking {
286
+ export { type TrackDomain as TrackDomain, type TrackingCreateResponse as TrackingCreateResponse, type TrackingRetrieveResponse as TrackingRetrieveResponse, type TrackingUpdateResponse as TrackingUpdateResponse, type TrackingListResponse as TrackingListResponse, type TrackingDeleteResponse as TrackingDeleteResponse, type TrackingVerifyResponse as TrackingVerifyResponse, type TrackingCreateParams as TrackingCreateParams, type TrackingUpdateParams as TrackingUpdateParams, };
287
+ }
288
+ //# sourceMappingURL=tracking.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracking.d.mts","sourceRoot":"","sources":["../src/resources/tracking.ts"],"names":[],"mappings":"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"}