@iterable/api 0.0.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 (135) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +74 -0
  3. package/dist/client/base.d.ts +33 -0
  4. package/dist/client/base.d.ts.map +1 -0
  5. package/dist/client/base.js +155 -0
  6. package/dist/client/base.js.map +1 -0
  7. package/dist/client/campaigns.d.ts +71 -0
  8. package/dist/client/campaigns.d.ts.map +1 -0
  9. package/dist/client/campaigns.js +125 -0
  10. package/dist/client/campaigns.js.map +1 -0
  11. package/dist/client/catalogs.d.ts +60 -0
  12. package/dist/client/catalogs.d.ts.map +1 -0
  13. package/dist/client/catalogs.js +138 -0
  14. package/dist/client/catalogs.js.map +1 -0
  15. package/dist/client/events.d.ts +38 -0
  16. package/dist/client/events.d.ts.map +1 -0
  17. package/dist/client/events.js +38 -0
  18. package/dist/client/events.js.map +1 -0
  19. package/dist/client/experiments.d.ts +24 -0
  20. package/dist/client/experiments.d.ts.map +1 -0
  21. package/dist/client/experiments.js +29 -0
  22. package/dist/client/experiments.js.map +1 -0
  23. package/dist/client/export.d.ts +27 -0
  24. package/dist/client/export.d.ts.map +1 -0
  25. package/dist/client/export.js +31 -0
  26. package/dist/client/export.js.map +1 -0
  27. package/dist/client/index.d.ts +315 -0
  28. package/dist/client/index.d.ts.map +1 -0
  29. package/dist/client/index.js +25 -0
  30. package/dist/client/index.js.map +1 -0
  31. package/dist/client/journeys.d.ts +26 -0
  32. package/dist/client/journeys.d.ts.map +1 -0
  33. package/dist/client/journeys.js +32 -0
  34. package/dist/client/journeys.js.map +1 -0
  35. package/dist/client/lists.d.ts +39 -0
  36. package/dist/client/lists.d.ts.map +1 -0
  37. package/dist/client/lists.js +80 -0
  38. package/dist/client/lists.js.map +1 -0
  39. package/dist/client/messaging.d.ts +39 -0
  40. package/dist/client/messaging.d.ts.map +1 -0
  41. package/dist/client/messaging.js +110 -0
  42. package/dist/client/messaging.js.map +1 -0
  43. package/dist/client/snippets.d.ts +37 -0
  44. package/dist/client/snippets.d.ts.map +1 -0
  45. package/dist/client/snippets.js +29 -0
  46. package/dist/client/snippets.js.map +1 -0
  47. package/dist/client/subscriptions.d.ts +26 -0
  48. package/dist/client/subscriptions.d.ts.map +1 -0
  49. package/dist/client/subscriptions.js +31 -0
  50. package/dist/client/subscriptions.js.map +1 -0
  51. package/dist/client/templates.d.ts +52 -0
  52. package/dist/client/templates.d.ts.map +1 -0
  53. package/dist/client/templates.js +132 -0
  54. package/dist/client/templates.js.map +1 -0
  55. package/dist/client/users.d.ts +76 -0
  56. package/dist/client/users.d.ts.map +1 -0
  57. package/dist/client/users.js +115 -0
  58. package/dist/client/users.js.map +1 -0
  59. package/dist/client/webhooks.d.ts +25 -0
  60. package/dist/client/webhooks.d.ts.map +1 -0
  61. package/dist/client/webhooks.js +17 -0
  62. package/dist/client/webhooks.js.map +1 -0
  63. package/dist/config.d.ts +26 -0
  64. package/dist/config.d.ts.map +1 -0
  65. package/dist/config.js +51 -0
  66. package/dist/config.js.map +1 -0
  67. package/dist/errors.d.ts +45 -0
  68. package/dist/errors.d.ts.map +1 -0
  69. package/dist/errors.js +144 -0
  70. package/dist/errors.js.map +1 -0
  71. package/dist/index.d.ts +21 -0
  72. package/dist/index.d.ts.map +1 -0
  73. package/dist/index.js +25 -0
  74. package/dist/index.js.map +1 -0
  75. package/dist/logger.d.ts +3 -0
  76. package/dist/logger.d.ts.map +1 -0
  77. package/dist/logger.js +32 -0
  78. package/dist/logger.js.map +1 -0
  79. package/dist/types/campaigns.d.ts +307 -0
  80. package/dist/types/campaigns.d.ts.map +1 -0
  81. package/dist/types/campaigns.js +226 -0
  82. package/dist/types/campaigns.js.map +1 -0
  83. package/dist/types/catalogs.d.ts +138 -0
  84. package/dist/types/catalogs.d.ts.map +1 -0
  85. package/dist/types/catalogs.js +139 -0
  86. package/dist/types/catalogs.js.map +1 -0
  87. package/dist/types/common.d.ts +145 -0
  88. package/dist/types/common.d.ts.map +1 -0
  89. package/dist/types/common.js +110 -0
  90. package/dist/types/common.js.map +1 -0
  91. package/dist/types/events.d.ts +124 -0
  92. package/dist/types/events.d.ts.map +1 -0
  93. package/dist/types/events.js +118 -0
  94. package/dist/types/events.js.map +1 -0
  95. package/dist/types/experiments.d.ts +14 -0
  96. package/dist/types/experiments.d.ts.map +1 -0
  97. package/dist/types/experiments.js +24 -0
  98. package/dist/types/experiments.js.map +1 -0
  99. package/dist/types/export.d.ts +121 -0
  100. package/dist/types/export.d.ts.map +1 -0
  101. package/dist/types/export.js +105 -0
  102. package/dist/types/export.js.map +1 -0
  103. package/dist/types/journeys.d.ts +72 -0
  104. package/dist/types/journeys.d.ts.map +1 -0
  105. package/dist/types/journeys.js +65 -0
  106. package/dist/types/journeys.js.map +1 -0
  107. package/dist/types/lists.d.ts +149 -0
  108. package/dist/types/lists.d.ts.map +1 -0
  109. package/dist/types/lists.js +140 -0
  110. package/dist/types/lists.js.map +1 -0
  111. package/dist/types/messaging.d.ts +246 -0
  112. package/dist/types/messaging.d.ts.map +1 -0
  113. package/dist/types/messaging.js +323 -0
  114. package/dist/types/messaging.js.map +1 -0
  115. package/dist/types/snippets.d.ts +89 -0
  116. package/dist/types/snippets.d.ts.map +1 -0
  117. package/dist/types/snippets.js +85 -0
  118. package/dist/types/snippets.js.map +1 -0
  119. package/dist/types/subscriptions.d.ts +63 -0
  120. package/dist/types/subscriptions.d.ts.map +1 -0
  121. package/dist/types/subscriptions.js +40 -0
  122. package/dist/types/subscriptions.js.map +1 -0
  123. package/dist/types/templates.d.ts +315 -0
  124. package/dist/types/templates.d.ts.map +1 -0
  125. package/dist/types/templates.js +357 -0
  126. package/dist/types/templates.js.map +1 -0
  127. package/dist/types/users.d.ts +144 -0
  128. package/dist/types/users.d.ts.map +1 -0
  129. package/dist/types/users.js +189 -0
  130. package/dist/types/users.js.map +1 -0
  131. package/dist/types/webhooks.d.ts +52 -0
  132. package/dist/types/webhooks.d.ts.map +1 -0
  133. package/dist/types/webhooks.js +32 -0
  134. package/dist/types/webhooks.js.map +1 -0
  135. package/package.json +73 -0
@@ -0,0 +1,357 @@
1
+ import { z } from "zod";
2
+ import { IterableDateTimeSchema, UnixTimestampSchema } from "./common.js";
3
+ /**
4
+ * Template management schemas and types
5
+ */
6
+ // Base template schema with common fields across all template types
7
+ const BaseTemplateSchema = z.object({
8
+ templateId: z.number().describe("Template ID"),
9
+ name: z.string().describe("Name of the template"),
10
+ campaignId: z.number().optional().describe("Campaign ID"),
11
+ clientTemplateId: z
12
+ .string()
13
+ .optional()
14
+ .describe("Client template ID. Used as a secondary key to reference the template"),
15
+ creatorUserId: z.string().optional().describe("Creator email"),
16
+ messageTypeId: z.number().optional().describe("Message type ID"),
17
+ locale: z
18
+ .string()
19
+ .optional()
20
+ .describe("The locale for the content in this request. Leave empty for default locale"),
21
+ isDefaultLocale: z
22
+ .boolean()
23
+ .optional()
24
+ .describe("Identifies if the locale associated with the response is the template's default"),
25
+ // Read-only timestamp fields (only present in some responses)
26
+ createdAt: UnixTimestampSchema.optional().describe("Date created"),
27
+ updatedAt: UnixTimestampSchema.optional().describe("Date last updated"),
28
+ });
29
+ export const EmailTemplateSchema = BaseTemplateSchema.extend({
30
+ bccEmails: z.array(z.string()).optional().describe("BCC emails"),
31
+ cacheDataFeed: z
32
+ .boolean()
33
+ .optional()
34
+ .describe("Cache data feed lookups for 1 hour"),
35
+ campaignDataFields: z
36
+ .record(z.string(), z.any())
37
+ .optional()
38
+ .describe("Campaign-level data fields available as {{field}} merge parameters during message rendering. These fields have higher priority than project-level fields but lower priority than user/event data."),
39
+ ccEmails: z.array(z.string()).optional().describe("CC emails"),
40
+ dataFeedId: z
41
+ .number()
42
+ .optional()
43
+ .describe("[Deprecated - use dataFeedIds instead] Id for data feed used in template rendering"),
44
+ dataFeedIds: z
45
+ .array(z.number())
46
+ .optional()
47
+ .describe("Ids for data feeds used in template rendering"),
48
+ fromEmail: z
49
+ .string()
50
+ .optional()
51
+ .describe("From email (must be an authorized sender)"),
52
+ fromName: z.string().optional().describe("From name"),
53
+ googleAnalyticsCampaignName: z
54
+ .string()
55
+ .optional()
56
+ .describe("Google analytics utm_campaign value"),
57
+ html: z.string().optional().describe("HTML contents"),
58
+ linkParams: z
59
+ .array(z.any())
60
+ .optional()
61
+ .describe("Parameters to append to each URL in html contents"),
62
+ mergeDataFeedContext: z
63
+ .boolean()
64
+ .optional()
65
+ .describe("Merge data feed contents into user context, so fields be referenced by {{field}} instead of [[field]]"),
66
+ metadata: z.any().optional().describe("Metadata"),
67
+ plainText: z.string().optional().describe("Plain text contents"),
68
+ preheaderText: z.string().optional().describe("Preheader text"),
69
+ replyToEmail: z.string().optional().describe("Reply to email"),
70
+ subject: z.string().optional().describe("Subject"),
71
+ });
72
+ export const SMSTemplateSchema = BaseTemplateSchema.extend({
73
+ campaignDataFields: z
74
+ .record(z.string(), z.any())
75
+ .optional()
76
+ .describe("Campaign-level data fields available as {{field}} merge parameters during message rendering. These fields have higher priority than project-level fields but lower priority than user/event data."),
77
+ googleAnalyticsCampaignName: z
78
+ .string()
79
+ .optional()
80
+ .describe("Google analytics utm_campaign value"),
81
+ imageUrl: z.string().optional().describe("Image Url"),
82
+ linkParams: z
83
+ .array(z.any())
84
+ .optional()
85
+ .describe("Parameters to append to each URL in contents"),
86
+ message: z.string().optional().describe("SMS message"),
87
+ trackingDomain: z.string().optional().describe("Tracking Domain"),
88
+ });
89
+ export const PushTemplateSchema = BaseTemplateSchema.extend({
90
+ badge: z.string().optional().describe("Badge to set for push notification"),
91
+ buttons: z
92
+ .array(z.any())
93
+ .optional()
94
+ .describe("Array of buttons that appear to respond to the push. Max of 3"),
95
+ cacheDataFeed: z
96
+ .boolean()
97
+ .optional()
98
+ .describe("Cache data feed lookups for 1 hour"),
99
+ campaignDataFields: z
100
+ .record(z.string(), z.any())
101
+ .optional()
102
+ .describe("Campaign-level data fields available as {{field}} merge parameters during message rendering. These fields have higher priority than project-level fields but lower priority than user/event data."),
103
+ dataFeedIds: z
104
+ .array(z.number())
105
+ .optional()
106
+ .describe("Ids for data feeds used in template rendering"),
107
+ deeplink: z
108
+ .record(z.string(), z.any())
109
+ .optional()
110
+ .describe("Deep Link. A mapping that accepts two optional properties: 'ios' & 'android' and their respective deep link values"),
111
+ interruptionLevel: z
112
+ .string()
113
+ .optional()
114
+ .describe("An interruption level helps iOS determine when to alert a user about the arrival of a push notification"),
115
+ isSilentPush: z
116
+ .boolean()
117
+ .optional()
118
+ .describe("Whether or not this is a silent push notification template"),
119
+ mergeDataFeedContext: z
120
+ .boolean()
121
+ .optional()
122
+ .describe("Merge data feed contents into user context, so fields can be referenced by {{field}} instead of [[field]]"),
123
+ message: z.string().optional().describe("Push message"),
124
+ payload: z
125
+ .record(z.string(), z.any())
126
+ .optional()
127
+ .describe("Payload to send with push notification"),
128
+ relevanceScore: z
129
+ .number()
130
+ .optional()
131
+ .describe("Relevance score for iOS notifications on iOS 15+. Number is clamped between 0 and 1.0"),
132
+ richMedia: z
133
+ .record(z.string(), z.any())
134
+ .optional()
135
+ .describe("Rich Media URL. A mapping that accepts two optional properties: 'ios' & 'android' and their respective rich media url values"),
136
+ sound: z.string().optional().describe("Sound"),
137
+ title: z.string().optional().describe("Push message title"),
138
+ wake: z
139
+ .boolean()
140
+ .optional()
141
+ .describe("Set the content-available flag on iOS notifications, which will wake the app in the background"),
142
+ });
143
+ export const InAppTemplateSchema = BaseTemplateSchema.extend({
144
+ campaignDataFields: z
145
+ .record(z.string(), z.any())
146
+ .optional()
147
+ .describe("Campaign-level data fields available as {{field}} merge parameters during message rendering. These fields have higher priority than project-level fields but lower priority than user/event data."),
148
+ expirationDateTime: z
149
+ .string()
150
+ .optional()
151
+ .describe("The in-app message's absolute expiration time. Format is YYYY-MM-DD HH:MM:SS (UTC timestamp, time zones not allowed)"),
152
+ expirationDuration: z
153
+ .string()
154
+ .optional()
155
+ .describe("The in-app message's expiration time, relative to its send time. Should be an expression such as now+90d"),
156
+ html: z.string().optional().describe("Html of the in-app notification"),
157
+ inAppDisplaySettings: z
158
+ .record(z.string(), z.any())
159
+ .optional()
160
+ .describe("Display settings"),
161
+ inboxMetadata: z
162
+ .record(z.string(), z.any())
163
+ .optional()
164
+ .describe("Title, subtitle, and thumbnail"),
165
+ payload: z.record(z.string(), z.any()).optional().describe("Payload"),
166
+ webInAppDisplaySettings: z
167
+ .record(z.string(), z.any())
168
+ .optional()
169
+ .describe("Web In-app Display settings"),
170
+ });
171
+ export const CreateTemplateResponseSchema = BaseTemplateSchema.extend({
172
+ createdAt: UnixTimestampSchema.describe("Date created (Unix timestamp)"), // API returns epoch milliseconds
173
+ updatedAt: UnixTimestampSchema.describe("Date last updated (Unix timestamp)"), // API returns epoch milliseconds
174
+ creatorUserId: z.string().describe("Creator email"),
175
+ messageTypeId: z.number().describe("Message type ID"),
176
+ });
177
+ // ApiTemplateResponse schema based on API docs - for getTemplates endpoint
178
+ export const ApiTemplateResponseSchema = z.object({
179
+ templateId: z.number().describe("Template ID"),
180
+ name: z.string().describe("Name of the template"),
181
+ createdAt: UnixTimestampSchema.describe("Date created (Unix timestamp)"), // API returns Unix timestamp
182
+ updatedAt: UnixTimestampSchema.describe("Date last updated (Unix timestamp)"), // API returns Unix timestamp
183
+ creatorUserId: z.string().describe("Creator email"),
184
+ messageTypeId: z.number().describe("Message type ID"),
185
+ // Optional fields
186
+ campaignId: z.number().optional().describe("Campaign ID"),
187
+ clientTemplateId: z
188
+ .string()
189
+ .optional()
190
+ .describe("Client template ID. Used as a secondary key to reference the template"),
191
+ });
192
+ export const GetTemplatesResponseSchema = z.object({
193
+ templates: z.array(ApiTemplateResponseSchema),
194
+ });
195
+ export const GetTemplatesParamsSchema = z.object({
196
+ templateType: z
197
+ .enum(["Base", "Blast", "Triggered", "Workflow"])
198
+ .optional()
199
+ .describe("Filter by template type"),
200
+ messageMedium: z
201
+ .enum(["Email", "Push", "InApp", "SMS"])
202
+ .optional()
203
+ .describe("Filter by message medium"),
204
+ startDateTime: IterableDateTimeSchema.optional().describe("Get templates created at or after this date time (yyyy-MM-dd HH:mm:ss [ZZ])"),
205
+ endDateTime: IterableDateTimeSchema.optional().describe("Get templates created before this date time (yyyy-MM-dd HH:mm:ss [ZZ])"),
206
+ limit: z
207
+ .number()
208
+ .min(1)
209
+ .max(1000)
210
+ .optional()
211
+ .describe("Maximum number of templates to return"),
212
+ });
213
+ export const GetTemplateParamsSchema = z.object({
214
+ templateId: z.number().describe("Template ID to retrieve"),
215
+ locale: z.string().optional().describe("Locale of content to get"),
216
+ });
217
+ export const GetTemplateByClientIdParamsSchema = z.object({
218
+ clientTemplateId: z
219
+ .string()
220
+ .describe("Client template ID to look up template by"),
221
+ });
222
+ export const GetTemplateByClientIdResponseSchema = z.object({
223
+ templates: z.array(z.object({
224
+ templateId: z.number().describe("Template ID"),
225
+ campaignId: z.number().optional().describe("Campaign ID"),
226
+ locales: z
227
+ .array(z.string())
228
+ .describe("Available locales for this template"),
229
+ })),
230
+ });
231
+ // Shared fields across all template types
232
+ const BaseTemplateParamsSchema = z.object({
233
+ name: z.string().optional().describe("Template name"),
234
+ locale: z.string().optional().describe("Template locale"),
235
+ messageTypeId: z.number().optional().describe("Message type ID"),
236
+ creatorUserId: z.string().optional().describe("Creator user ID"),
237
+ campaignId: z.number().optional().describe("Associated campaign ID"),
238
+ });
239
+ // Base schema for upsert operations (create/update by clientTemplateId)
240
+ const UpsertTemplateParamsSchema = BaseTemplateParamsSchema.extend({
241
+ clientTemplateId: z.string().describe("Client template ID"), // Only field required by API
242
+ });
243
+ // Base schema for update operations (modify existing by templateId)
244
+ const UpdateTemplateParamsSchema = BaseTemplateParamsSchema.extend({
245
+ templateId: z.number().describe("Template ID to update"),
246
+ });
247
+ // Content field objects for each template type
248
+ const EmailContentFields = {
249
+ subject: z.string().optional().describe("Email subject"),
250
+ fromName: z.string().optional().describe("From name"),
251
+ fromEmail: z.email().optional().describe("From email"),
252
+ html: z.string().optional().describe("HTML content"),
253
+ plainText: z.string().optional().describe("Plain text content"),
254
+ campaignDataFields: z
255
+ .record(z.string(), z.any())
256
+ .optional()
257
+ .describe("Campaign-level data fields available as {{field}} merge parameters during message rendering. These fields have higher priority than project-level fields but lower priority than user/event data."),
258
+ };
259
+ const SMSContentFields = {
260
+ message: z.string().optional().describe("SMS message content"),
261
+ campaignDataFields: z
262
+ .record(z.string(), z.any())
263
+ .optional()
264
+ .describe("Campaign-level data fields available as {{field}} merge parameters during message rendering. These fields have higher priority than project-level fields but lower priority than user/event data."),
265
+ };
266
+ const PushContentFields = {
267
+ message: z.string().optional().describe("Push notification message"),
268
+ title: z.string().optional().describe("Push notification title"),
269
+ badge: z.number().optional().describe("Badge count"),
270
+ sound: z.string().optional().describe("Sound file"),
271
+ payload: z.record(z.string(), z.any()).optional().describe("Custom payload"),
272
+ campaignDataFields: z
273
+ .record(z.string(), z.any())
274
+ .optional()
275
+ .describe("Campaign-level data fields available as {{field}} merge parameters during message rendering. These fields have higher priority than project-level fields but lower priority than user/event data."),
276
+ };
277
+ const InAppContentFields = {
278
+ html: z
279
+ .string()
280
+ .optional()
281
+ .describe("HTML content of the in-app notification"),
282
+ campaignDataFields: z
283
+ .record(z.string(), z.any())
284
+ .optional()
285
+ .describe("Campaign-level data fields available as {{field}} merge parameters during message rendering. These fields have higher priority than project-level fields but lower priority than user/event data."),
286
+ };
287
+ // Email template upsert (create or update by clientTemplateId)
288
+ export const UpsertEmailTemplateParamsSchema = UpsertTemplateParamsSchema.extend(EmailContentFields);
289
+ // Email template update (modify existing by templateId)
290
+ export const UpdateEmailTemplateParamsSchema = UpdateTemplateParamsSchema.extend(EmailContentFields);
291
+ // SMS templates
292
+ export const UpsertSMSTemplateParamsSchema = UpsertTemplateParamsSchema.extend(SMSContentFields);
293
+ export const UpdateSMSTemplateParamsSchema = UpdateTemplateParamsSchema.extend(SMSContentFields);
294
+ // Push templates
295
+ export const UpsertPushTemplateParamsSchema = UpsertTemplateParamsSchema.extend(PushContentFields);
296
+ export const UpdatePushTemplateParamsSchema = UpdateTemplateParamsSchema.extend(PushContentFields);
297
+ // InApp templates
298
+ export const UpsertInAppTemplateParamsSchema = UpsertTemplateParamsSchema.extend(InAppContentFields);
299
+ export const UpdateInAppTemplateParamsSchema = UpdateTemplateParamsSchema.extend(InAppContentFields);
300
+ // Delete template schemas
301
+ export const DeleteTemplateParamsSchema = z.object({
302
+ templateId: z.number().positive().describe("Template ID to delete"),
303
+ });
304
+ export const BulkDeleteTemplatesParamsSchema = z.object({
305
+ ids: z.array(z.number()).describe("IDs of templates to delete"),
306
+ });
307
+ export const BulkDeleteTemplatesResponseSchema = z.object({
308
+ success: z.array(z.number()).describe("Successfully deleted template IDs"),
309
+ failed: z.array(z.number()).describe("Failed to delete template IDs"),
310
+ failureReason: z.string().optional().describe("Reason for failures"),
311
+ });
312
+ // Template proof schemas
313
+ export const TemplateProofRequestSchema = z
314
+ .object({
315
+ templateId: z.number().describe("Template ID to send proof for"),
316
+ recipientEmail: z
317
+ .email()
318
+ .optional()
319
+ .describe("An email address that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users."),
320
+ recipientUserId: z
321
+ .string()
322
+ .optional()
323
+ .describe("A user ID that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users."),
324
+ dataFields: z
325
+ .record(z.string(), z.any())
326
+ .optional()
327
+ .describe("Fields to merge into template for proof"),
328
+ locale: z
329
+ .string()
330
+ .optional()
331
+ .describe("Locale for the proof message. If provided, must be a valid locale for the project. If not provided, falls back to the user's locale, then to the project's default locale."),
332
+ })
333
+ .refine((data) => data.recipientEmail || data.recipientUserId, {
334
+ message: "Either recipientEmail or recipientUserId must be provided",
335
+ path: ["recipientEmail", "recipientUserId"],
336
+ });
337
+ // Template preview schemas
338
+ export const TemplatePreviewRequestSchema = z.object({
339
+ dataFields: z
340
+ .record(z.string(), z.any())
341
+ .optional()
342
+ .describe("Data fields for template rendering. Provide key-value pairs for any user profile, event, or custom fields that your template references. Note: Fields are accessible as {{fieldName}} in templates."),
343
+ dataFeed: z
344
+ .record(z.string(), z.any())
345
+ .optional()
346
+ .describe("Data feed content for template rendering. Provide key-value pairs for any data feed fields that your template references. Note: Data feed fields are accessible as [[fieldName]] when template's mergeDataFeedContext=false, or as {{fieldName}} when mergeDataFeedContext=true. The mergeDataFeedContext setting is configured when creating/updating templates. If fetchDataFeeds is true, this will be merged with (or overridden by) the fetched data feed data."),
347
+ fetchDataFeeds: z
348
+ .boolean()
349
+ .optional()
350
+ .describe("Whether to fetch and use actual data feeds configured in the template. If true, the data feeds associated with the template will be fetched and used for rendering. Data from dataFields will be used to render dynamic URLs in the data feed configuration. If dataFeed is also provided, it will be merged with (or override) the fetched data feed data. Defaults to false."),
351
+ });
352
+ export const PreviewTemplateParamsSchema = z.object({
353
+ templateId: z.number().describe("Template ID"),
354
+ locale: z.string().optional().describe("Locale of content to get"),
355
+ data: TemplatePreviewRequestSchema.optional().describe("Data to use for template rendering"),
356
+ });
357
+ //# sourceMappingURL=templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/types/templates.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,144 @@
1
+ import { z } from "zod";
2
+ import { EventRecordSchema } from "./events.js";
3
+ /**
4
+ * User management schemas and types
5
+ */
6
+ export declare const UserProfileSchema: z.ZodObject<{
7
+ email: z.ZodEmail;
8
+ userId: z.ZodOptional<z.ZodString>;
9
+ dataFields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
10
+ preferUserId: z.ZodOptional<z.ZodBoolean>;
11
+ mergeNestedObjects: z.ZodOptional<z.ZodBoolean>;
12
+ }, z.core.$strip>;
13
+ export type UserProfile = z.infer<typeof UserProfileSchema>;
14
+ export type UpdateUserParams = z.infer<typeof UpdateUserParamsSchema>;
15
+ export declare const UserResponseSchema: z.ZodObject<{
16
+ user: z.ZodObject<{
17
+ email: z.ZodString;
18
+ userId: z.ZodOptional<z.ZodString>;
19
+ dataFields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
20
+ profileUpdatedAt: z.ZodOptional<z.ZodString>;
21
+ }, z.core.$strip>;
22
+ }, z.core.$strip>;
23
+ export type UserResponse = z.infer<typeof UserResponseSchema>;
24
+ export declare const GetUserByEmailParamsSchema: z.ZodObject<{
25
+ email: z.ZodEmail;
26
+ }, z.core.$strip>;
27
+ export declare const UpdateUserParamsSchema: z.ZodObject<{
28
+ email: z.ZodOptional<z.ZodEmail>;
29
+ userId: z.ZodOptional<z.ZodString>;
30
+ dataFields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
31
+ mergeNestedObjects: z.ZodOptional<z.ZodBoolean>;
32
+ createNewFields: z.ZodOptional<z.ZodBoolean>;
33
+ preferUserId: z.ZodOptional<z.ZodBoolean>;
34
+ }, z.core.$strip>;
35
+ export declare const GetUserByIdParamsSchema: z.ZodObject<{
36
+ userId: z.ZodString;
37
+ }, z.core.$strip>;
38
+ export declare const BulkUpdateUsersParamsSchema: z.ZodObject<{
39
+ users: z.ZodArray<z.ZodObject<{
40
+ email: z.ZodOptional<z.ZodEmail>;
41
+ userId: z.ZodOptional<z.ZodString>;
42
+ dataFields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
43
+ mergeNestedObjects: z.ZodOptional<z.ZodBoolean>;
44
+ }, z.core.$strip>>;
45
+ }, z.core.$strip>;
46
+ export declare const DeleteUserByEmailParamsSchema: z.ZodObject<{
47
+ email: z.ZodEmail;
48
+ }, z.core.$strip>;
49
+ export declare const DeleteUserByUserIdParamsSchema: z.ZodObject<{
50
+ userId: z.ZodString;
51
+ }, z.core.$strip>;
52
+ export declare const UserEventsResponseSchema: z.ZodObject<{
53
+ events: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>>;
54
+ }, z.core.$strip>;
55
+ export declare const SentMessageSchema: z.ZodObject<{
56
+ messageId: z.ZodString;
57
+ campaignId: z.ZodNumber;
58
+ templateId: z.ZodOptional<z.ZodNumber>;
59
+ campaignName: z.ZodOptional<z.ZodString>;
60
+ templateName: z.ZodOptional<z.ZodString>;
61
+ messageMedium: z.ZodEnum<{
62
+ Email: "Email";
63
+ Push: "Push";
64
+ InApp: "InApp";
65
+ SMS: "SMS";
66
+ }>;
67
+ status: z.ZodString;
68
+ sentAt: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
69
+ createdAt: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
70
+ updatedAt: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
71
+ dataFields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
72
+ }, z.core.$strip>;
73
+ export declare const GetSentMessagesResponseSchema: z.ZodObject<{
74
+ messages: z.ZodArray<z.ZodObject<{
75
+ messageId: z.ZodString;
76
+ campaignId: z.ZodNumber;
77
+ templateId: z.ZodOptional<z.ZodNumber>;
78
+ campaignName: z.ZodOptional<z.ZodString>;
79
+ templateName: z.ZodOptional<z.ZodString>;
80
+ messageMedium: z.ZodEnum<{
81
+ Email: "Email";
82
+ Push: "Push";
83
+ InApp: "InApp";
84
+ SMS: "SMS";
85
+ }>;
86
+ status: z.ZodString;
87
+ sentAt: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
88
+ createdAt: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
89
+ updatedAt: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
90
+ dataFields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
91
+ }, z.core.$strip>>;
92
+ totalCount: z.ZodOptional<z.ZodNumber>;
93
+ }, z.core.$strip>;
94
+ export declare const GetSentMessagesParamsSchema: z.ZodObject<{
95
+ email: z.ZodOptional<z.ZodEmail>;
96
+ userId: z.ZodOptional<z.ZodString>;
97
+ limit: z.ZodOptional<z.ZodNumber>;
98
+ campaignIds: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
99
+ startDateTime: z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [z.ZodDate, z.ZodString]>, z.ZodTransform<string, string | Date>>>;
100
+ endDateTime: z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [z.ZodDate, z.ZodString]>, z.ZodTransform<string, string | Date>>>;
101
+ excludeBlastCampaigns: z.ZodOptional<z.ZodBoolean>;
102
+ messageMedium: z.ZodOptional<z.ZodEnum<{
103
+ Email: "Email";
104
+ Push: "Push";
105
+ InApp: "InApp";
106
+ SMS: "SMS";
107
+ }>>;
108
+ }, z.core.$strip>;
109
+ export declare const GetUserFieldsResponseSchema: z.ZodObject<{
110
+ fields: z.ZodRecord<z.ZodString, z.ZodString>;
111
+ }, z.core.$loose>;
112
+ export type GetUserFieldsResponse = z.infer<typeof GetUserFieldsResponseSchema>;
113
+ export type UserEvent = z.infer<typeof EventRecordSchema>;
114
+ export type SentMessage = z.infer<typeof SentMessageSchema>;
115
+ export type GetSentMessagesResponse = z.infer<typeof GetSentMessagesResponseSchema>;
116
+ export type GetSentMessagesParams = z.infer<typeof GetSentMessagesParamsSchema>;
117
+ export type BulkUpdateUsersParams = z.infer<typeof BulkUpdateUsersParamsSchema>;
118
+ /**
119
+ * Schema for updating user email address
120
+ * Only use with email-based projects. For userId/hybrid projects, use updateUser instead.
121
+ */
122
+ export declare const UpdateEmailParamsSchema: z.ZodObject<{
123
+ currentEmail: z.ZodOptional<z.ZodEmail>;
124
+ currentUserId: z.ZodOptional<z.ZodString>;
125
+ newEmail: z.ZodEmail;
126
+ }, z.core.$strip>;
127
+ export type UpdateEmailParams = z.infer<typeof UpdateEmailParamsSchema>;
128
+ /**
129
+ * Schema for updating user subscriptions
130
+ * IMPORTANT: This endpoint overwrites (does not merge) existing data for any non-null fields specified.
131
+ */
132
+ export declare const UpdateUserSubscriptionsParamsSchema: z.ZodObject<{
133
+ email: z.ZodOptional<z.ZodEmail>;
134
+ userId: z.ZodOptional<z.ZodString>;
135
+ emailListIds: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
136
+ subscribedMessageTypeIds: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
137
+ unsubscribedChannelIds: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
138
+ unsubscribedMessageTypeIds: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
139
+ campaignId: z.ZodOptional<z.ZodNumber>;
140
+ templateId: z.ZodOptional<z.ZodNumber>;
141
+ validateChannelAlignment: z.ZodOptional<z.ZodBoolean>;
142
+ }, z.core.$strip>;
143
+ export type UpdateUserSubscriptionsParams = z.infer<typeof UpdateUserSubscriptionsParamsSchema>;
144
+ //# sourceMappingURL=users.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.d.ts","sourceRoot":"","sources":["../../src/types/users.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD;;GAEG;AAEH,eAAO,MAAM,iBAAiB;;;;;;iBAM5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,kBAAkB;;;;;;;iBAO7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,0BAA0B;;iBAErC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;iBA4BhC,CAAC;AAEJ,eAAO,MAAM,uBAAuB;;iBAElC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;iBAoBtC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;iBAExC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;iBAEzC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;iBAEnC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;iBAY5B,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;iBAGxC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;iBAmCqB,CAAC;AAE9D,eAAO,MAAM,2BAA2B;;iBAIxB,CAAC;AAEjB,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC1D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAC3C,OAAO,6BAA6B,CACrC,CAAC;AACF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF;;;GAGG;AACH,eAAO,MAAM,uBAAuB;;;;iBAqBjC,CAAC;AAEJ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;;GAGG;AACH,eAAO,MAAM,mCAAmC;;;;;;;;;;iBAoD7C,CAAC;AAEJ,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CACjD,OAAO,mCAAmC,CAC3C,CAAC"}