@masters-union/outbound-sdk 0.2.9 → 0.2.10

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.
package/dist/index.d.mts CHANGED
@@ -107,16 +107,16 @@ interface BulkEmailResponse {
107
107
  suppressedCount: number;
108
108
  /**
109
109
  * List of email addresses that were filtered out due to suppression.
110
- * Present on the first (live) response only.
111
- * Absent when `duplicate: true` — use `suppressedCount` instead.
110
+ * Also returned on `duplicate: true` replays rebuilt from the job's stored
111
+ * recipient rows (not from cache).
112
112
  */
113
113
  suppressedEmails?: string[];
114
114
  /**
115
115
  * Per-recipient message ids for this job (both queued and suppressed).
116
116
  * The same `messageId` appears on incoming webhook events — store it to
117
117
  * map event updates back to individual recipients.
118
- * Present on the first (live) response only.
119
- * Absent when `duplicate: true` — persist the mapping from the first response.
118
+ * Also returned on `duplicate: true` replays rebuilt from the job's stored
119
+ * recipient rows, so the mapping survives idempotent retries.
120
120
  */
121
121
  recipients?: BulkResponseRecipient[];
122
122
  duplicatesRemoved?: number;
@@ -132,8 +132,14 @@ interface BulkEmailResponse {
132
132
  interface BulkResponseRecipient {
133
133
  toEmail: string;
134
134
  messageId: string;
135
- /** `suppressed` recipients are never sent and produce no webhook events. */
136
- status: 'queued' | 'suppressed';
135
+ /**
136
+ * On the first (live) response, sendable recipients are `queued`.
137
+ * On a `duplicate: true` replay, this reflects the recipient's **live** status
138
+ * at replay time (e.g. `sent`, `delivered`, `failed`) — the worker may have
139
+ * advanced it since the original send.
140
+ * `suppressed` recipients are never sent and produce no webhook events.
141
+ */
142
+ status: Exclude<EmailStatus, 'dropped'> | 'suppressed';
137
143
  }
138
144
  interface EmailJob {
139
145
  job_id: string;
package/dist/index.d.ts CHANGED
@@ -107,16 +107,16 @@ interface BulkEmailResponse {
107
107
  suppressedCount: number;
108
108
  /**
109
109
  * List of email addresses that were filtered out due to suppression.
110
- * Present on the first (live) response only.
111
- * Absent when `duplicate: true` — use `suppressedCount` instead.
110
+ * Also returned on `duplicate: true` replays rebuilt from the job's stored
111
+ * recipient rows (not from cache).
112
112
  */
113
113
  suppressedEmails?: string[];
114
114
  /**
115
115
  * Per-recipient message ids for this job (both queued and suppressed).
116
116
  * The same `messageId` appears on incoming webhook events — store it to
117
117
  * map event updates back to individual recipients.
118
- * Present on the first (live) response only.
119
- * Absent when `duplicate: true` — persist the mapping from the first response.
118
+ * Also returned on `duplicate: true` replays rebuilt from the job's stored
119
+ * recipient rows, so the mapping survives idempotent retries.
120
120
  */
121
121
  recipients?: BulkResponseRecipient[];
122
122
  duplicatesRemoved?: number;
@@ -132,8 +132,14 @@ interface BulkEmailResponse {
132
132
  interface BulkResponseRecipient {
133
133
  toEmail: string;
134
134
  messageId: string;
135
- /** `suppressed` recipients are never sent and produce no webhook events. */
136
- status: 'queued' | 'suppressed';
135
+ /**
136
+ * On the first (live) response, sendable recipients are `queued`.
137
+ * On a `duplicate: true` replay, this reflects the recipient's **live** status
138
+ * at replay time (e.g. `sent`, `delivered`, `failed`) — the worker may have
139
+ * advanced it since the original send.
140
+ * `suppressed` recipients are never sent and produce no webhook events.
141
+ */
142
+ status: Exclude<EmailStatus, 'dropped'> | 'suppressed';
137
143
  }
138
144
  interface EmailJob {
139
145
  job_id: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@masters-union/outbound-sdk",
3
- "version": "0.2.9",
3
+ "version": "0.2.10",
4
4
  "description": "Official Node.js SDK for the Outbound Email SaaS platform",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",