@sentdm/sentdm 0.26.0 → 0.27.2
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/CHANGELOG.md +24 -0
- package/client.d.mts +12 -12
- package/client.d.mts.map +1 -1
- package/client.d.ts +12 -12
- package/client.d.ts.map +1 -1
- package/client.js.map +1 -1
- package/client.mjs.map +1 -1
- package/package.json +1 -1
- package/resources/contacts.d.mts +48 -486
- package/resources/contacts.d.mts.map +1 -1
- package/resources/contacts.d.ts +48 -486
- package/resources/contacts.d.ts.map +1 -1
- package/resources/contacts.js +3 -3
- package/resources/contacts.js.map +1 -1
- package/resources/contacts.mjs +3 -3
- package/resources/contacts.mjs.map +1 -1
- package/resources/index.d.mts +6 -6
- package/resources/index.d.mts.map +1 -1
- package/resources/index.d.ts +6 -6
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/me.d.mts +40 -113
- package/resources/me.d.mts.map +1 -1
- package/resources/me.d.ts +40 -113
- package/resources/me.d.ts.map +1 -1
- package/resources/me.js.map +1 -1
- package/resources/me.mjs.map +1 -1
- package/resources/messages.d.mts +7 -126
- package/resources/messages.d.mts.map +1 -1
- package/resources/messages.d.ts +7 -126
- package/resources/messages.d.ts.map +1 -1
- package/resources/messages.js.map +1 -1
- package/resources/messages.mjs.map +1 -1
- package/resources/numbers.d.mts +3 -42
- package/resources/numbers.d.mts.map +1 -1
- package/resources/numbers.d.ts +3 -42
- package/resources/numbers.d.ts.map +1 -1
- package/resources/numbers.js.map +1 -1
- package/resources/numbers.mjs.map +1 -1
- package/resources/profiles/campaigns.d.mts +149 -480
- package/resources/profiles/campaigns.d.mts.map +1 -1
- package/resources/profiles/campaigns.d.ts +149 -480
- package/resources/profiles/campaigns.d.ts.map +1 -1
- package/resources/profiles/campaigns.js +41 -39
- package/resources/profiles/campaigns.js.map +1 -1
- package/resources/profiles/campaigns.mjs +41 -39
- package/resources/profiles/campaigns.mjs.map +1 -1
- package/resources/profiles/index.d.mts +2 -2
- package/resources/profiles/index.d.mts.map +1 -1
- package/resources/profiles/index.d.ts +2 -2
- package/resources/profiles/index.d.ts.map +1 -1
- package/resources/profiles/index.js.map +1 -1
- package/resources/profiles/index.mjs.map +1 -1
- package/resources/profiles/profiles.d.mts +391 -1699
- package/resources/profiles/profiles.d.mts.map +1 -1
- package/resources/profiles/profiles.d.ts +391 -1699
- package/resources/profiles/profiles.d.ts.map +1 -1
- package/resources/profiles/profiles.js +6 -3
- package/resources/profiles/profiles.js.map +1 -1
- package/resources/profiles/profiles.mjs +6 -3
- package/resources/profiles/profiles.mjs.map +1 -1
- package/resources/templates.d.mts +176 -993
- package/resources/templates.d.mts.map +1 -1
- package/resources/templates.d.ts +176 -993
- package/resources/templates.d.ts.map +1 -1
- package/resources/templates.js +3 -3
- package/resources/templates.js.map +1 -1
- package/resources/templates.mjs +3 -3
- package/resources/templates.mjs.map +1 -1
- package/resources/users.d.mts +46 -373
- package/resources/users.d.mts.map +1 -1
- package/resources/users.d.ts +46 -373
- package/resources/users.d.ts.map +1 -1
- package/resources/users.js +7 -3
- package/resources/users.js.map +1 -1
- package/resources/users.mjs +7 -3
- package/resources/users.mjs.map +1 -1
- package/resources/webhooks.d.mts +110 -624
- package/resources/webhooks.d.mts.map +1 -1
- package/resources/webhooks.d.ts +110 -624
- package/resources/webhooks.d.ts.map +1 -1
- package/resources/webhooks.js +7 -6
- package/resources/webhooks.js.map +1 -1
- package/resources/webhooks.mjs +7 -6
- package/resources/webhooks.mjs.map +1 -1
- package/src/client.ts +68 -33
- package/src/resources/contacts.ts +49 -566
- package/src/resources/index.ts +34 -17
- package/src/resources/me.ts +51 -132
- package/src/resources/messages.ts +7 -141
- package/src/resources/numbers.ts +3 -47
- package/src/resources/profiles/campaigns.ts +172 -667
- package/src/resources/profiles/index.ts +17 -5
- package/src/resources/profiles/profiles.ts +549 -2282
- package/src/resources/templates.ts +206 -1256
- package/src/resources/users.ts +47 -430
- package/src/resources/webhooks.ts +120 -742
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
2
|
|
|
3
3
|
import { APIResource } from '../core/resource';
|
|
4
|
+
import * as TemplatesAPI from './templates';
|
|
5
|
+
import * as WebhooksAPI from './webhooks';
|
|
4
6
|
import { APIPromise } from '../core/api-promise';
|
|
5
7
|
import { buildHeaders } from '../internal/headers';
|
|
6
8
|
import { RequestOptions } from '../internal/request-options';
|
|
@@ -17,10 +19,10 @@ export class Templates extends APIResource {
|
|
|
17
19
|
*
|
|
18
20
|
* @example
|
|
19
21
|
* ```ts
|
|
20
|
-
* const
|
|
22
|
+
* const apiResponseTemplate = await client.templates.create();
|
|
21
23
|
* ```
|
|
22
24
|
*/
|
|
23
|
-
create(params: TemplateCreateParams, options?: RequestOptions): APIPromise<
|
|
25
|
+
create(params: TemplateCreateParams, options?: RequestOptions): APIPromise<APIResponseTemplate> {
|
|
24
26
|
const { 'Idempotency-Key': idempotencyKey, 'x-profile-id': xProfileID, ...body } = params;
|
|
25
27
|
return this._client.post('/v3/templates', {
|
|
26
28
|
body,
|
|
@@ -41,7 +43,7 @@ export class Templates extends APIResource {
|
|
|
41
43
|
*
|
|
42
44
|
* @example
|
|
43
45
|
* ```ts
|
|
44
|
-
* const
|
|
46
|
+
* const apiResponseTemplate = await client.templates.retrieve(
|
|
45
47
|
* '7ba7b820-9dad-11d1-80b4-00c04fd430c8',
|
|
46
48
|
* );
|
|
47
49
|
* ```
|
|
@@ -50,7 +52,7 @@ export class Templates extends APIResource {
|
|
|
50
52
|
id: string,
|
|
51
53
|
params: TemplateRetrieveParams | null | undefined = {},
|
|
52
54
|
options?: RequestOptions,
|
|
53
|
-
): APIPromise<
|
|
55
|
+
): APIPromise<APIResponseTemplate> {
|
|
54
56
|
const { 'x-profile-id': xProfileID } = params ?? {};
|
|
55
57
|
return this._client.get(path`/v3/templates/${id}`, {
|
|
56
58
|
...options,
|
|
@@ -67,7 +69,7 @@ export class Templates extends APIResource {
|
|
|
67
69
|
*
|
|
68
70
|
* @example
|
|
69
71
|
* ```ts
|
|
70
|
-
* const
|
|
72
|
+
* const apiResponseTemplate = await client.templates.update(
|
|
71
73
|
* '7ba7b820-9dad-11d1-80b4-00c04fd430c8',
|
|
72
74
|
* );
|
|
73
75
|
* ```
|
|
@@ -76,7 +78,7 @@ export class Templates extends APIResource {
|
|
|
76
78
|
id: string,
|
|
77
79
|
params: TemplateUpdateParams,
|
|
78
80
|
options?: RequestOptions,
|
|
79
|
-
): APIPromise<
|
|
81
|
+
): APIPromise<APIResponseTemplate> {
|
|
80
82
|
const { 'Idempotency-Key': idempotencyKey, 'x-profile-id': xProfileID, ...body } = params;
|
|
81
83
|
return this._client.put(path`/v3/templates/${id}`, {
|
|
82
84
|
body,
|
|
@@ -142,21 +144,21 @@ export class Templates extends APIResource {
|
|
|
142
144
|
/**
|
|
143
145
|
* Standard API response envelope for all v3 endpoints
|
|
144
146
|
*/
|
|
145
|
-
export interface
|
|
147
|
+
export interface APIResponseTemplate {
|
|
146
148
|
/**
|
|
147
149
|
* Template response for v3 API
|
|
148
150
|
*/
|
|
149
|
-
data?:
|
|
151
|
+
data?: Template | null;
|
|
150
152
|
|
|
151
153
|
/**
|
|
152
154
|
* Error information
|
|
153
155
|
*/
|
|
154
|
-
error?:
|
|
156
|
+
error?: WebhooksAPI.ErrorDetail | null;
|
|
155
157
|
|
|
156
158
|
/**
|
|
157
159
|
* Request and response metadata
|
|
158
160
|
*/
|
|
159
|
-
meta?:
|
|
161
|
+
meta?: WebhooksAPI.APIMeta;
|
|
160
162
|
|
|
161
163
|
/**
|
|
162
164
|
* Indicates whether the request was successful
|
|
@@ -164,359 +166,261 @@ export interface TemplateCreateResponse {
|
|
|
164
166
|
success?: boolean;
|
|
165
167
|
}
|
|
166
168
|
|
|
167
|
-
|
|
169
|
+
/**
|
|
170
|
+
* Configuration for AUTHENTICATION category templates
|
|
171
|
+
*/
|
|
172
|
+
export interface SentDmServicesCommonContractsPocOsAuthenticationConfig {
|
|
168
173
|
/**
|
|
169
|
-
*
|
|
174
|
+
* Whether to add the security recommendation text: "For your security, do not
|
|
175
|
+
* share this code."
|
|
170
176
|
*/
|
|
171
|
-
|
|
172
|
-
/**
|
|
173
|
-
* Unique template identifier
|
|
174
|
-
*/
|
|
175
|
-
id?: string;
|
|
176
|
-
|
|
177
|
-
/**
|
|
178
|
-
* Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
179
|
-
*/
|
|
180
|
-
category?: string;
|
|
181
|
-
|
|
182
|
-
/**
|
|
183
|
-
* Supported channels: sms, whatsapp
|
|
184
|
-
*/
|
|
185
|
-
channels?: Array<string> | null;
|
|
177
|
+
addSecurityRecommendation?: boolean;
|
|
186
178
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
179
|
+
/**
|
|
180
|
+
* Code expiration time in minutes (1-90). If set, adds footer: "This code expires
|
|
181
|
+
* in X minutes."
|
|
182
|
+
*/
|
|
183
|
+
codeExpirationMinutes?: number | null;
|
|
184
|
+
}
|
|
191
185
|
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
186
|
+
/**
|
|
187
|
+
* Body section of a message template with channel-specific content
|
|
188
|
+
*/
|
|
189
|
+
export interface SentDmServicesCommonContractsPocOsTemplateBody {
|
|
190
|
+
/**
|
|
191
|
+
* Content that will be used for all channels (SMS and WhatsApp) unless
|
|
192
|
+
* channel-specific content is provided
|
|
193
|
+
*/
|
|
194
|
+
multiChannel?: TemplateBodyContent | null;
|
|
196
195
|
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
196
|
+
/**
|
|
197
|
+
* RCS-specific content that overrides multi-channel content for RCS messages
|
|
198
|
+
*/
|
|
199
|
+
rcs?: TemplateBodyContent | null;
|
|
201
200
|
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
201
|
+
/**
|
|
202
|
+
* SMS-specific content that overrides multi-channel content for SMS messages
|
|
203
|
+
*/
|
|
204
|
+
sms?: TemplateBodyContent | null;
|
|
206
205
|
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
206
|
+
/**
|
|
207
|
+
* WhatsApp-specific content that overrides multi-channel content for WhatsApp
|
|
208
|
+
* messages
|
|
209
|
+
*/
|
|
210
|
+
whatsapp?: TemplateBodyContent | null;
|
|
211
|
+
}
|
|
211
212
|
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
213
|
+
/**
|
|
214
|
+
* Interactive button in a message template
|
|
215
|
+
*/
|
|
216
|
+
export interface SentDmServicesCommonContractsPocOsTemplateButton {
|
|
217
|
+
/**
|
|
218
|
+
* Properties specific to the button type
|
|
219
|
+
*/
|
|
220
|
+
props: SentDmServicesCommonContractsPocOsTemplateButtonProps;
|
|
216
221
|
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
}
|
|
222
|
+
/**
|
|
223
|
+
* The type of button (e.g., QUICK_REPLY, URL, PHONE_NUMBER, VOICE_CALL, COPY_CODE)
|
|
224
|
+
*/
|
|
225
|
+
type: string;
|
|
222
226
|
|
|
223
227
|
/**
|
|
224
|
-
*
|
|
228
|
+
* The unique identifier of the button (1-based index)
|
|
225
229
|
*/
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
* Machine-readable error code (e.g., "RESOURCE_001")
|
|
229
|
-
*/
|
|
230
|
-
code?: string;
|
|
230
|
+
id?: number;
|
|
231
|
+
}
|
|
231
232
|
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
*/
|
|
235
|
-
details?: { [key: string]: Array<string> } | null;
|
|
233
|
+
export interface SentDmServicesCommonContractsPocOsTemplateButtonProps {
|
|
234
|
+
activeFor: number;
|
|
236
235
|
|
|
237
|
-
|
|
238
|
-
* URL to documentation about this error
|
|
239
|
-
*/
|
|
240
|
-
doc_url?: string | null;
|
|
236
|
+
countryCode: string;
|
|
241
237
|
|
|
242
|
-
|
|
243
|
-
* Human-readable error message
|
|
244
|
-
*/
|
|
245
|
-
message?: string;
|
|
246
|
-
}
|
|
238
|
+
offerCode: string;
|
|
247
239
|
|
|
248
|
-
|
|
249
|
-
* Request and response metadata
|
|
250
|
-
*/
|
|
251
|
-
export interface Meta {
|
|
252
|
-
/**
|
|
253
|
-
* Unique identifier for this request (for tracing and support)
|
|
254
|
-
*/
|
|
255
|
-
request_id?: string;
|
|
240
|
+
phoneNumber: string;
|
|
256
241
|
|
|
257
|
-
|
|
258
|
-
* Server timestamp when the response was generated
|
|
259
|
-
*/
|
|
260
|
-
timestamp?: string;
|
|
242
|
+
quickReplyType: string;
|
|
261
243
|
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
244
|
+
text: string;
|
|
245
|
+
|
|
246
|
+
url: string;
|
|
247
|
+
|
|
248
|
+
urlType: string;
|
|
249
|
+
|
|
250
|
+
autofillText?: string | null;
|
|
251
|
+
|
|
252
|
+
otpType?: string | null;
|
|
253
|
+
|
|
254
|
+
packageName?: string | null;
|
|
255
|
+
|
|
256
|
+
signatureHash?: string | null;
|
|
267
257
|
}
|
|
268
258
|
|
|
269
259
|
/**
|
|
270
|
-
*
|
|
260
|
+
* Footer section of a message template
|
|
271
261
|
*/
|
|
272
|
-
export interface
|
|
262
|
+
export interface SentDmServicesCommonContractsPocOsTemplateFooter {
|
|
273
263
|
/**
|
|
274
|
-
*
|
|
264
|
+
* The footer template text with optional variable placeholders
|
|
275
265
|
*/
|
|
276
|
-
|
|
266
|
+
template: string;
|
|
277
267
|
|
|
278
268
|
/**
|
|
279
|
-
*
|
|
269
|
+
* The type of footer (typically "text")
|
|
280
270
|
*/
|
|
281
|
-
|
|
271
|
+
type?: string | null;
|
|
282
272
|
|
|
283
273
|
/**
|
|
284
|
-
*
|
|
274
|
+
* List of variables used in the footer template
|
|
285
275
|
*/
|
|
286
|
-
|
|
276
|
+
variables?: Array<TemplateVariable> | null;
|
|
277
|
+
}
|
|
287
278
|
|
|
279
|
+
/**
|
|
280
|
+
* Header section of a message template
|
|
281
|
+
*/
|
|
282
|
+
export interface SentDmServicesCommonContractsPocOsTemplateHeader {
|
|
288
283
|
/**
|
|
289
|
-
*
|
|
284
|
+
* The header template text with optional variable placeholders (e.g., "Welcome to
|
|
285
|
+
* {{0:variable}}")
|
|
290
286
|
*/
|
|
291
|
-
|
|
292
|
-
}
|
|
287
|
+
template: string;
|
|
293
288
|
|
|
294
|
-
export namespace TemplateRetrieveResponse {
|
|
295
289
|
/**
|
|
296
|
-
*
|
|
290
|
+
* The type of header (e.g., "text", "image", "video", "document")
|
|
297
291
|
*/
|
|
298
|
-
|
|
299
|
-
/**
|
|
300
|
-
* Unique template identifier
|
|
301
|
-
*/
|
|
302
|
-
id?: string;
|
|
303
|
-
|
|
304
|
-
/**
|
|
305
|
-
* Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
306
|
-
*/
|
|
307
|
-
category?: string;
|
|
308
|
-
|
|
309
|
-
/**
|
|
310
|
-
* Supported channels: sms, whatsapp
|
|
311
|
-
*/
|
|
312
|
-
channels?: Array<string> | null;
|
|
313
|
-
|
|
314
|
-
/**
|
|
315
|
-
* When the template was created
|
|
316
|
-
*/
|
|
317
|
-
created_at?: string;
|
|
292
|
+
type?: string | null;
|
|
318
293
|
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
294
|
+
/**
|
|
295
|
+
* List of variables used in the header template
|
|
296
|
+
*/
|
|
297
|
+
variables?: Array<TemplateVariable> | null;
|
|
298
|
+
}
|
|
323
299
|
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
300
|
+
/**
|
|
301
|
+
* Template response for v3 API
|
|
302
|
+
*/
|
|
303
|
+
export interface Template {
|
|
304
|
+
/**
|
|
305
|
+
* Unique template identifier
|
|
306
|
+
*/
|
|
307
|
+
id?: string;
|
|
328
308
|
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
309
|
+
/**
|
|
310
|
+
* Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
311
|
+
*/
|
|
312
|
+
category?: string;
|
|
333
313
|
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
314
|
+
/**
|
|
315
|
+
* Supported channels: sms, whatsapp
|
|
316
|
+
*/
|
|
317
|
+
channels?: Array<string> | null;
|
|
338
318
|
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
319
|
+
/**
|
|
320
|
+
* When the template was created
|
|
321
|
+
*/
|
|
322
|
+
created_at?: string;
|
|
343
323
|
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
}
|
|
324
|
+
/**
|
|
325
|
+
* Whether the template is published and active
|
|
326
|
+
*/
|
|
327
|
+
is_published?: boolean;
|
|
349
328
|
|
|
350
329
|
/**
|
|
351
|
-
*
|
|
330
|
+
* Template language code (e.g., en_US)
|
|
352
331
|
*/
|
|
353
|
-
|
|
354
|
-
/**
|
|
355
|
-
* Machine-readable error code (e.g., "RESOURCE_001")
|
|
356
|
-
*/
|
|
357
|
-
code?: string;
|
|
332
|
+
language?: string;
|
|
358
333
|
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
334
|
+
/**
|
|
335
|
+
* Template display name
|
|
336
|
+
*/
|
|
337
|
+
name?: string;
|
|
363
338
|
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
339
|
+
/**
|
|
340
|
+
* Template status: APPROVED, PENDING, REJECTED
|
|
341
|
+
*/
|
|
342
|
+
status?: string;
|
|
368
343
|
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
}
|
|
344
|
+
/**
|
|
345
|
+
* When the template was last updated
|
|
346
|
+
*/
|
|
347
|
+
updated_at?: string | null;
|
|
374
348
|
|
|
375
349
|
/**
|
|
376
|
-
*
|
|
350
|
+
* Template variables for personalization
|
|
377
351
|
*/
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
* Unique identifier for this request (for tracing and support)
|
|
381
|
-
*/
|
|
382
|
-
request_id?: string;
|
|
352
|
+
variables?: Array<string> | null;
|
|
353
|
+
}
|
|
383
354
|
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
*/
|
|
387
|
-
timestamp?: string;
|
|
355
|
+
export interface TemplateBodyContent {
|
|
356
|
+
template: string;
|
|
388
357
|
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
version?: string;
|
|
393
|
-
}
|
|
358
|
+
type?: string | null;
|
|
359
|
+
|
|
360
|
+
variables?: Array<TemplateVariable> | null;
|
|
394
361
|
}
|
|
395
362
|
|
|
396
363
|
/**
|
|
397
|
-
*
|
|
364
|
+
* Complete definition of a message template including header, body, footer, and
|
|
365
|
+
* buttons
|
|
398
366
|
*/
|
|
399
|
-
export interface
|
|
367
|
+
export interface TemplateDefinition {
|
|
400
368
|
/**
|
|
401
|
-
*
|
|
369
|
+
* Body section of a message template with channel-specific content
|
|
402
370
|
*/
|
|
403
|
-
|
|
371
|
+
body: SentDmServicesCommonContractsPocOsTemplateBody;
|
|
404
372
|
|
|
405
373
|
/**
|
|
406
|
-
*
|
|
374
|
+
* Configuration for AUTHENTICATION category templates
|
|
407
375
|
*/
|
|
408
|
-
|
|
376
|
+
authenticationConfig?: SentDmServicesCommonContractsPocOsAuthenticationConfig | null;
|
|
409
377
|
|
|
410
378
|
/**
|
|
411
|
-
*
|
|
379
|
+
* Optional list of interactive buttons (e.g., quick replies, URLs, phone numbers)
|
|
412
380
|
*/
|
|
413
|
-
|
|
381
|
+
buttons?: Array<SentDmServicesCommonContractsPocOsTemplateButton> | null;
|
|
414
382
|
|
|
415
383
|
/**
|
|
416
|
-
*
|
|
384
|
+
* The version of the template definition format
|
|
417
385
|
*/
|
|
418
|
-
|
|
419
|
-
}
|
|
386
|
+
definitionVersion?: string | null;
|
|
420
387
|
|
|
421
|
-
export namespace TemplateUpdateResponse {
|
|
422
388
|
/**
|
|
423
|
-
*
|
|
389
|
+
* Footer section of a message template
|
|
424
390
|
*/
|
|
425
|
-
|
|
426
|
-
/**
|
|
427
|
-
* Unique template identifier
|
|
428
|
-
*/
|
|
429
|
-
id?: string;
|
|
430
|
-
|
|
431
|
-
/**
|
|
432
|
-
* Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
433
|
-
*/
|
|
434
|
-
category?: string;
|
|
435
|
-
|
|
436
|
-
/**
|
|
437
|
-
* Supported channels: sms, whatsapp
|
|
438
|
-
*/
|
|
439
|
-
channels?: Array<string> | null;
|
|
391
|
+
footer?: SentDmServicesCommonContractsPocOsTemplateFooter | null;
|
|
440
392
|
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
/**
|
|
447
|
-
* Whether the template is published and active
|
|
448
|
-
*/
|
|
449
|
-
is_published?: boolean;
|
|
450
|
-
|
|
451
|
-
/**
|
|
452
|
-
* Template language code (e.g., en_US)
|
|
453
|
-
*/
|
|
454
|
-
language?: string;
|
|
393
|
+
/**
|
|
394
|
+
* Header section of a message template
|
|
395
|
+
*/
|
|
396
|
+
header?: SentDmServicesCommonContractsPocOsTemplateHeader | null;
|
|
397
|
+
}
|
|
455
398
|
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
*/
|
|
459
|
-
name?: string;
|
|
399
|
+
export interface TemplateVariable {
|
|
400
|
+
name: string;
|
|
460
401
|
|
|
461
|
-
|
|
462
|
-
* Template status: APPROVED, PENDING, REJECTED
|
|
463
|
-
*/
|
|
464
|
-
status?: string;
|
|
402
|
+
props: TemplateVariable.Props;
|
|
465
403
|
|
|
466
|
-
|
|
467
|
-
* When the template was last updated
|
|
468
|
-
*/
|
|
469
|
-
updated_at?: string | null;
|
|
404
|
+
type: string;
|
|
470
405
|
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
*/
|
|
474
|
-
variables?: Array<string> | null;
|
|
475
|
-
}
|
|
406
|
+
id?: number;
|
|
407
|
+
}
|
|
476
408
|
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
export interface Error {
|
|
481
|
-
/**
|
|
482
|
-
* Machine-readable error code (e.g., "RESOURCE_001")
|
|
483
|
-
*/
|
|
484
|
-
code?: string;
|
|
409
|
+
export namespace TemplateVariable {
|
|
410
|
+
export interface Props {
|
|
411
|
+
mediaType: string;
|
|
485
412
|
|
|
486
|
-
|
|
487
|
-
* Additional validation error details (field-level errors)
|
|
488
|
-
*/
|
|
489
|
-
details?: { [key: string]: Array<string> } | null;
|
|
413
|
+
sample: string;
|
|
490
414
|
|
|
491
|
-
|
|
492
|
-
* URL to documentation about this error
|
|
493
|
-
*/
|
|
494
|
-
doc_url?: string | null;
|
|
415
|
+
url: string;
|
|
495
416
|
|
|
496
|
-
|
|
497
|
-
* Human-readable error message
|
|
498
|
-
*/
|
|
499
|
-
message?: string;
|
|
500
|
-
}
|
|
417
|
+
variableType: string;
|
|
501
418
|
|
|
502
|
-
|
|
503
|
-
* Request and response metadata
|
|
504
|
-
*/
|
|
505
|
-
export interface Meta {
|
|
506
|
-
/**
|
|
507
|
-
* Unique identifier for this request (for tracing and support)
|
|
508
|
-
*/
|
|
509
|
-
request_id?: string;
|
|
419
|
+
alt?: string | null;
|
|
510
420
|
|
|
511
|
-
|
|
512
|
-
* Server timestamp when the response was generated
|
|
513
|
-
*/
|
|
514
|
-
timestamp?: string;
|
|
421
|
+
regex?: string | null;
|
|
515
422
|
|
|
516
|
-
|
|
517
|
-
* API version used for this request
|
|
518
|
-
*/
|
|
519
|
-
version?: string;
|
|
423
|
+
shortUrl?: string | null;
|
|
520
424
|
}
|
|
521
425
|
}
|
|
522
426
|
|
|
@@ -532,12 +436,12 @@ export interface TemplateListResponse {
|
|
|
532
436
|
/**
|
|
533
437
|
* Error information
|
|
534
438
|
*/
|
|
535
|
-
error?:
|
|
439
|
+
error?: WebhooksAPI.ErrorDetail | null;
|
|
536
440
|
|
|
537
441
|
/**
|
|
538
442
|
* Request and response metadata
|
|
539
443
|
*/
|
|
540
|
-
meta?:
|
|
444
|
+
meta?: WebhooksAPI.APIMeta;
|
|
541
445
|
|
|
542
446
|
/**
|
|
543
447
|
* Indicates whether the request was successful
|
|
@@ -553,166 +457,12 @@ export namespace TemplateListResponse {
|
|
|
553
457
|
/**
|
|
554
458
|
* Pagination metadata for list responses
|
|
555
459
|
*/
|
|
556
|
-
pagination?:
|
|
460
|
+
pagination?: WebhooksAPI.PaginationMeta;
|
|
557
461
|
|
|
558
462
|
/**
|
|
559
463
|
* List of templates
|
|
560
464
|
*/
|
|
561
|
-
templates?: Array<
|
|
562
|
-
}
|
|
563
|
-
|
|
564
|
-
export namespace Data {
|
|
565
|
-
/**
|
|
566
|
-
* Pagination metadata for list responses
|
|
567
|
-
*/
|
|
568
|
-
export interface Pagination {
|
|
569
|
-
/**
|
|
570
|
-
* Cursor-based pagination pointers
|
|
571
|
-
*/
|
|
572
|
-
cursors?: Pagination.Cursors | null;
|
|
573
|
-
|
|
574
|
-
/**
|
|
575
|
-
* Whether there are more pages after this one
|
|
576
|
-
*/
|
|
577
|
-
has_more?: boolean;
|
|
578
|
-
|
|
579
|
-
/**
|
|
580
|
-
* Current page number (1-indexed)
|
|
581
|
-
*/
|
|
582
|
-
page?: number;
|
|
583
|
-
|
|
584
|
-
/**
|
|
585
|
-
* Number of items per page
|
|
586
|
-
*/
|
|
587
|
-
page_size?: number;
|
|
588
|
-
|
|
589
|
-
/**
|
|
590
|
-
* Total number of items across all pages
|
|
591
|
-
*/
|
|
592
|
-
total_count?: number;
|
|
593
|
-
|
|
594
|
-
/**
|
|
595
|
-
* Total number of pages
|
|
596
|
-
*/
|
|
597
|
-
total_pages?: number;
|
|
598
|
-
}
|
|
599
|
-
|
|
600
|
-
export namespace Pagination {
|
|
601
|
-
/**
|
|
602
|
-
* Cursor-based pagination pointers
|
|
603
|
-
*/
|
|
604
|
-
export interface Cursors {
|
|
605
|
-
/**
|
|
606
|
-
* Cursor to fetch the next page
|
|
607
|
-
*/
|
|
608
|
-
after?: string | null;
|
|
609
|
-
|
|
610
|
-
/**
|
|
611
|
-
* Cursor to fetch the previous page
|
|
612
|
-
*/
|
|
613
|
-
before?: string | null;
|
|
614
|
-
}
|
|
615
|
-
}
|
|
616
|
-
|
|
617
|
-
/**
|
|
618
|
-
* Template response for v3 API
|
|
619
|
-
*/
|
|
620
|
-
export interface Template {
|
|
621
|
-
/**
|
|
622
|
-
* Unique template identifier
|
|
623
|
-
*/
|
|
624
|
-
id?: string;
|
|
625
|
-
|
|
626
|
-
/**
|
|
627
|
-
* Template category: MARKETING, UTILITY, AUTHENTICATION
|
|
628
|
-
*/
|
|
629
|
-
category?: string;
|
|
630
|
-
|
|
631
|
-
/**
|
|
632
|
-
* Supported channels: sms, whatsapp
|
|
633
|
-
*/
|
|
634
|
-
channels?: Array<string> | null;
|
|
635
|
-
|
|
636
|
-
/**
|
|
637
|
-
* When the template was created
|
|
638
|
-
*/
|
|
639
|
-
created_at?: string;
|
|
640
|
-
|
|
641
|
-
/**
|
|
642
|
-
* Whether the template is published and active
|
|
643
|
-
*/
|
|
644
|
-
is_published?: boolean;
|
|
645
|
-
|
|
646
|
-
/**
|
|
647
|
-
* Template language code (e.g., en_US)
|
|
648
|
-
*/
|
|
649
|
-
language?: string;
|
|
650
|
-
|
|
651
|
-
/**
|
|
652
|
-
* Template display name
|
|
653
|
-
*/
|
|
654
|
-
name?: string;
|
|
655
|
-
|
|
656
|
-
/**
|
|
657
|
-
* Template status: APPROVED, PENDING, REJECTED
|
|
658
|
-
*/
|
|
659
|
-
status?: string;
|
|
660
|
-
|
|
661
|
-
/**
|
|
662
|
-
* When the template was last updated
|
|
663
|
-
*/
|
|
664
|
-
updated_at?: string | null;
|
|
665
|
-
|
|
666
|
-
/**
|
|
667
|
-
* Template variables for personalization
|
|
668
|
-
*/
|
|
669
|
-
variables?: Array<string> | null;
|
|
670
|
-
}
|
|
671
|
-
}
|
|
672
|
-
|
|
673
|
-
/**
|
|
674
|
-
* Error information
|
|
675
|
-
*/
|
|
676
|
-
export interface Error {
|
|
677
|
-
/**
|
|
678
|
-
* Machine-readable error code (e.g., "RESOURCE_001")
|
|
679
|
-
*/
|
|
680
|
-
code?: string;
|
|
681
|
-
|
|
682
|
-
/**
|
|
683
|
-
* Additional validation error details (field-level errors)
|
|
684
|
-
*/
|
|
685
|
-
details?: { [key: string]: Array<string> } | null;
|
|
686
|
-
|
|
687
|
-
/**
|
|
688
|
-
* URL to documentation about this error
|
|
689
|
-
*/
|
|
690
|
-
doc_url?: string | null;
|
|
691
|
-
|
|
692
|
-
/**
|
|
693
|
-
* Human-readable error message
|
|
694
|
-
*/
|
|
695
|
-
message?: string;
|
|
696
|
-
}
|
|
697
|
-
|
|
698
|
-
/**
|
|
699
|
-
* Request and response metadata
|
|
700
|
-
*/
|
|
701
|
-
export interface Meta {
|
|
702
|
-
/**
|
|
703
|
-
* Unique identifier for this request (for tracing and support)
|
|
704
|
-
*/
|
|
705
|
-
request_id?: string;
|
|
706
|
-
|
|
707
|
-
/**
|
|
708
|
-
* Server timestamp when the response was generated
|
|
709
|
-
*/
|
|
710
|
-
timestamp?: string;
|
|
711
|
-
|
|
712
|
-
/**
|
|
713
|
-
* API version used for this request
|
|
714
|
-
*/
|
|
715
|
-
version?: string;
|
|
465
|
+
templates?: Array<TemplatesAPI.Template>;
|
|
716
466
|
}
|
|
717
467
|
}
|
|
718
468
|
|
|
@@ -732,7 +482,7 @@ export interface TemplateCreateParams {
|
|
|
732
482
|
* Body param: Complete definition of a message template including header, body,
|
|
733
483
|
* footer, and buttons
|
|
734
484
|
*/
|
|
735
|
-
definition?:
|
|
485
|
+
definition?: TemplateDefinition;
|
|
736
486
|
|
|
737
487
|
/**
|
|
738
488
|
* Body param: Template language code (e.g., en_US) (optional, auto-detected if not
|
|
@@ -767,417 +517,13 @@ export interface TemplateCreateParams {
|
|
|
767
517
|
'x-profile-id'?: string;
|
|
768
518
|
}
|
|
769
519
|
|
|
770
|
-
export
|
|
520
|
+
export interface TemplateRetrieveParams {
|
|
771
521
|
/**
|
|
772
|
-
*
|
|
773
|
-
*
|
|
522
|
+
* Profile UUID to scope the request to a child profile. Only organization API keys
|
|
523
|
+
* can use this header. The profile must belong to the calling organization.
|
|
774
524
|
*/
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
* Body section of a message template with channel-specific content
|
|
778
|
-
*/
|
|
779
|
-
body: Definition.Body;
|
|
780
|
-
|
|
781
|
-
/**
|
|
782
|
-
* Configuration for AUTHENTICATION category templates
|
|
783
|
-
*/
|
|
784
|
-
authenticationConfig?: Definition.AuthenticationConfig | null;
|
|
785
|
-
|
|
786
|
-
/**
|
|
787
|
-
* Optional list of interactive buttons (e.g., quick replies, URLs, phone numbers)
|
|
788
|
-
*/
|
|
789
|
-
buttons?: Array<Definition.Button> | null;
|
|
790
|
-
|
|
791
|
-
/**
|
|
792
|
-
* The version of the template definition format
|
|
793
|
-
*/
|
|
794
|
-
definitionVersion?: string | null;
|
|
795
|
-
|
|
796
|
-
/**
|
|
797
|
-
* Footer section of a message template
|
|
798
|
-
*/
|
|
799
|
-
footer?: Definition.Footer | null;
|
|
800
|
-
|
|
801
|
-
/**
|
|
802
|
-
* Header section of a message template
|
|
803
|
-
*/
|
|
804
|
-
header?: Definition.Header | null;
|
|
805
|
-
}
|
|
806
|
-
|
|
807
|
-
export namespace Definition {
|
|
808
|
-
/**
|
|
809
|
-
* Body section of a message template with channel-specific content
|
|
810
|
-
*/
|
|
811
|
-
export interface Body {
|
|
812
|
-
/**
|
|
813
|
-
* Content that will be used for all channels (SMS and WhatsApp) unless
|
|
814
|
-
* channel-specific content is provided
|
|
815
|
-
*/
|
|
816
|
-
multiChannel?: Body.MultiChannel | null;
|
|
817
|
-
|
|
818
|
-
/**
|
|
819
|
-
* RCS-specific content that overrides multi-channel content for RCS messages
|
|
820
|
-
*/
|
|
821
|
-
rcs?: Body.Rcs | null;
|
|
822
|
-
|
|
823
|
-
/**
|
|
824
|
-
* SMS-specific content that overrides multi-channel content for SMS messages
|
|
825
|
-
*/
|
|
826
|
-
sms?: Body.SMS | null;
|
|
827
|
-
|
|
828
|
-
/**
|
|
829
|
-
* WhatsApp-specific content that overrides multi-channel content for WhatsApp
|
|
830
|
-
* messages
|
|
831
|
-
*/
|
|
832
|
-
whatsapp?: Body.Whatsapp | null;
|
|
833
|
-
}
|
|
834
|
-
|
|
835
|
-
export namespace Body {
|
|
836
|
-
/**
|
|
837
|
-
* Content that will be used for all channels (SMS and WhatsApp) unless
|
|
838
|
-
* channel-specific content is provided
|
|
839
|
-
*/
|
|
840
|
-
export interface MultiChannel {
|
|
841
|
-
template: string;
|
|
842
|
-
|
|
843
|
-
type?: string | null;
|
|
844
|
-
|
|
845
|
-
variables?: Array<MultiChannel.Variable> | null;
|
|
846
|
-
}
|
|
847
|
-
|
|
848
|
-
export namespace MultiChannel {
|
|
849
|
-
export interface Variable {
|
|
850
|
-
name: string;
|
|
851
|
-
|
|
852
|
-
props: Variable.Props;
|
|
853
|
-
|
|
854
|
-
type: string;
|
|
855
|
-
|
|
856
|
-
id?: number;
|
|
857
|
-
}
|
|
858
|
-
|
|
859
|
-
export namespace Variable {
|
|
860
|
-
export interface Props {
|
|
861
|
-
mediaType: string;
|
|
862
|
-
|
|
863
|
-
sample: string;
|
|
864
|
-
|
|
865
|
-
url: string;
|
|
866
|
-
|
|
867
|
-
variableType: string;
|
|
868
|
-
|
|
869
|
-
alt?: string | null;
|
|
870
|
-
|
|
871
|
-
regex?: string | null;
|
|
872
|
-
|
|
873
|
-
shortUrl?: string | null;
|
|
874
|
-
}
|
|
875
|
-
}
|
|
876
|
-
}
|
|
877
|
-
|
|
878
|
-
/**
|
|
879
|
-
* RCS-specific content that overrides multi-channel content for RCS messages
|
|
880
|
-
*/
|
|
881
|
-
export interface Rcs {
|
|
882
|
-
template: string;
|
|
883
|
-
|
|
884
|
-
type?: string | null;
|
|
885
|
-
|
|
886
|
-
variables?: Array<Rcs.Variable> | null;
|
|
887
|
-
}
|
|
888
|
-
|
|
889
|
-
export namespace Rcs {
|
|
890
|
-
export interface Variable {
|
|
891
|
-
name: string;
|
|
892
|
-
|
|
893
|
-
props: Variable.Props;
|
|
894
|
-
|
|
895
|
-
type: string;
|
|
896
|
-
|
|
897
|
-
id?: number;
|
|
898
|
-
}
|
|
899
|
-
|
|
900
|
-
export namespace Variable {
|
|
901
|
-
export interface Props {
|
|
902
|
-
mediaType: string;
|
|
903
|
-
|
|
904
|
-
sample: string;
|
|
905
|
-
|
|
906
|
-
url: string;
|
|
907
|
-
|
|
908
|
-
variableType: string;
|
|
909
|
-
|
|
910
|
-
alt?: string | null;
|
|
911
|
-
|
|
912
|
-
regex?: string | null;
|
|
913
|
-
|
|
914
|
-
shortUrl?: string | null;
|
|
915
|
-
}
|
|
916
|
-
}
|
|
917
|
-
}
|
|
918
|
-
|
|
919
|
-
/**
|
|
920
|
-
* SMS-specific content that overrides multi-channel content for SMS messages
|
|
921
|
-
*/
|
|
922
|
-
export interface SMS {
|
|
923
|
-
template: string;
|
|
924
|
-
|
|
925
|
-
type?: string | null;
|
|
926
|
-
|
|
927
|
-
variables?: Array<SMS.Variable> | null;
|
|
928
|
-
}
|
|
929
|
-
|
|
930
|
-
export namespace SMS {
|
|
931
|
-
export interface Variable {
|
|
932
|
-
name: string;
|
|
933
|
-
|
|
934
|
-
props: Variable.Props;
|
|
935
|
-
|
|
936
|
-
type: string;
|
|
937
|
-
|
|
938
|
-
id?: number;
|
|
939
|
-
}
|
|
940
|
-
|
|
941
|
-
export namespace Variable {
|
|
942
|
-
export interface Props {
|
|
943
|
-
mediaType: string;
|
|
944
|
-
|
|
945
|
-
sample: string;
|
|
946
|
-
|
|
947
|
-
url: string;
|
|
948
|
-
|
|
949
|
-
variableType: string;
|
|
950
|
-
|
|
951
|
-
alt?: string | null;
|
|
952
|
-
|
|
953
|
-
regex?: string | null;
|
|
954
|
-
|
|
955
|
-
shortUrl?: string | null;
|
|
956
|
-
}
|
|
957
|
-
}
|
|
958
|
-
}
|
|
959
|
-
|
|
960
|
-
/**
|
|
961
|
-
* WhatsApp-specific content that overrides multi-channel content for WhatsApp
|
|
962
|
-
* messages
|
|
963
|
-
*/
|
|
964
|
-
export interface Whatsapp {
|
|
965
|
-
template: string;
|
|
966
|
-
|
|
967
|
-
type?: string | null;
|
|
968
|
-
|
|
969
|
-
variables?: Array<Whatsapp.Variable> | null;
|
|
970
|
-
}
|
|
971
|
-
|
|
972
|
-
export namespace Whatsapp {
|
|
973
|
-
export interface Variable {
|
|
974
|
-
name: string;
|
|
975
|
-
|
|
976
|
-
props: Variable.Props;
|
|
977
|
-
|
|
978
|
-
type: string;
|
|
979
|
-
|
|
980
|
-
id?: number;
|
|
981
|
-
}
|
|
982
|
-
|
|
983
|
-
export namespace Variable {
|
|
984
|
-
export interface Props {
|
|
985
|
-
mediaType: string;
|
|
986
|
-
|
|
987
|
-
sample: string;
|
|
988
|
-
|
|
989
|
-
url: string;
|
|
990
|
-
|
|
991
|
-
variableType: string;
|
|
992
|
-
|
|
993
|
-
alt?: string | null;
|
|
994
|
-
|
|
995
|
-
regex?: string | null;
|
|
996
|
-
|
|
997
|
-
shortUrl?: string | null;
|
|
998
|
-
}
|
|
999
|
-
}
|
|
1000
|
-
}
|
|
1001
|
-
}
|
|
1002
|
-
|
|
1003
|
-
/**
|
|
1004
|
-
* Configuration for AUTHENTICATION category templates
|
|
1005
|
-
*/
|
|
1006
|
-
export interface AuthenticationConfig {
|
|
1007
|
-
/**
|
|
1008
|
-
* Whether to add the security recommendation text: "For your security, do not
|
|
1009
|
-
* share this code."
|
|
1010
|
-
*/
|
|
1011
|
-
addSecurityRecommendation?: boolean;
|
|
1012
|
-
|
|
1013
|
-
/**
|
|
1014
|
-
* Code expiration time in minutes (1-90). If set, adds footer: "This code expires
|
|
1015
|
-
* in X minutes."
|
|
1016
|
-
*/
|
|
1017
|
-
codeExpirationMinutes?: number | null;
|
|
1018
|
-
}
|
|
1019
|
-
|
|
1020
|
-
/**
|
|
1021
|
-
* Interactive button in a message template
|
|
1022
|
-
*/
|
|
1023
|
-
export interface Button {
|
|
1024
|
-
/**
|
|
1025
|
-
* Properties specific to the button type
|
|
1026
|
-
*/
|
|
1027
|
-
props: Button.Props;
|
|
1028
|
-
|
|
1029
|
-
/**
|
|
1030
|
-
* The type of button (e.g., QUICK_REPLY, URL, PHONE_NUMBER, VOICE_CALL, COPY_CODE)
|
|
1031
|
-
*/
|
|
1032
|
-
type: string;
|
|
1033
|
-
|
|
1034
|
-
/**
|
|
1035
|
-
* The unique identifier of the button (1-based index)
|
|
1036
|
-
*/
|
|
1037
|
-
id?: number;
|
|
1038
|
-
}
|
|
1039
|
-
|
|
1040
|
-
export namespace Button {
|
|
1041
|
-
/**
|
|
1042
|
-
* Properties specific to the button type
|
|
1043
|
-
*/
|
|
1044
|
-
export interface Props {
|
|
1045
|
-
activeFor: number;
|
|
1046
|
-
|
|
1047
|
-
countryCode: string;
|
|
1048
|
-
|
|
1049
|
-
offerCode: string;
|
|
1050
|
-
|
|
1051
|
-
phoneNumber: string;
|
|
1052
|
-
|
|
1053
|
-
quickReplyType: string;
|
|
1054
|
-
|
|
1055
|
-
text: string;
|
|
1056
|
-
|
|
1057
|
-
url: string;
|
|
1058
|
-
|
|
1059
|
-
urlType: string;
|
|
1060
|
-
|
|
1061
|
-
autofillText?: string | null;
|
|
1062
|
-
|
|
1063
|
-
otpType?: string | null;
|
|
1064
|
-
|
|
1065
|
-
packageName?: string | null;
|
|
1066
|
-
|
|
1067
|
-
signatureHash?: string | null;
|
|
1068
|
-
}
|
|
1069
|
-
}
|
|
1070
|
-
|
|
1071
|
-
/**
|
|
1072
|
-
* Footer section of a message template
|
|
1073
|
-
*/
|
|
1074
|
-
export interface Footer {
|
|
1075
|
-
/**
|
|
1076
|
-
* The footer template text with optional variable placeholders
|
|
1077
|
-
*/
|
|
1078
|
-
template: string;
|
|
1079
|
-
|
|
1080
|
-
/**
|
|
1081
|
-
* The type of footer (typically "text")
|
|
1082
|
-
*/
|
|
1083
|
-
type?: string | null;
|
|
1084
|
-
|
|
1085
|
-
/**
|
|
1086
|
-
* List of variables used in the footer template
|
|
1087
|
-
*/
|
|
1088
|
-
variables?: Array<Footer.Variable> | null;
|
|
1089
|
-
}
|
|
1090
|
-
|
|
1091
|
-
export namespace Footer {
|
|
1092
|
-
export interface Variable {
|
|
1093
|
-
name: string;
|
|
1094
|
-
|
|
1095
|
-
props: Variable.Props;
|
|
1096
|
-
|
|
1097
|
-
type: string;
|
|
1098
|
-
|
|
1099
|
-
id?: number;
|
|
1100
|
-
}
|
|
1101
|
-
|
|
1102
|
-
export namespace Variable {
|
|
1103
|
-
export interface Props {
|
|
1104
|
-
mediaType: string;
|
|
1105
|
-
|
|
1106
|
-
sample: string;
|
|
1107
|
-
|
|
1108
|
-
url: string;
|
|
1109
|
-
|
|
1110
|
-
variableType: string;
|
|
1111
|
-
|
|
1112
|
-
alt?: string | null;
|
|
1113
|
-
|
|
1114
|
-
regex?: string | null;
|
|
1115
|
-
|
|
1116
|
-
shortUrl?: string | null;
|
|
1117
|
-
}
|
|
1118
|
-
}
|
|
1119
|
-
}
|
|
1120
|
-
|
|
1121
|
-
/**
|
|
1122
|
-
* Header section of a message template
|
|
1123
|
-
*/
|
|
1124
|
-
export interface Header {
|
|
1125
|
-
/**
|
|
1126
|
-
* The header template text with optional variable placeholders (e.g., "Welcome to
|
|
1127
|
-
* {{0:variable}}")
|
|
1128
|
-
*/
|
|
1129
|
-
template: string;
|
|
1130
|
-
|
|
1131
|
-
/**
|
|
1132
|
-
* The type of header (e.g., "text", "image", "video", "document")
|
|
1133
|
-
*/
|
|
1134
|
-
type?: string | null;
|
|
1135
|
-
|
|
1136
|
-
/**
|
|
1137
|
-
* List of variables used in the header template
|
|
1138
|
-
*/
|
|
1139
|
-
variables?: Array<Header.Variable> | null;
|
|
1140
|
-
}
|
|
1141
|
-
|
|
1142
|
-
export namespace Header {
|
|
1143
|
-
export interface Variable {
|
|
1144
|
-
name: string;
|
|
1145
|
-
|
|
1146
|
-
props: Variable.Props;
|
|
1147
|
-
|
|
1148
|
-
type: string;
|
|
1149
|
-
|
|
1150
|
-
id?: number;
|
|
1151
|
-
}
|
|
1152
|
-
|
|
1153
|
-
export namespace Variable {
|
|
1154
|
-
export interface Props {
|
|
1155
|
-
mediaType: string;
|
|
1156
|
-
|
|
1157
|
-
sample: string;
|
|
1158
|
-
|
|
1159
|
-
url: string;
|
|
1160
|
-
|
|
1161
|
-
variableType: string;
|
|
1162
|
-
|
|
1163
|
-
alt?: string | null;
|
|
1164
|
-
|
|
1165
|
-
regex?: string | null;
|
|
1166
|
-
|
|
1167
|
-
shortUrl?: string | null;
|
|
1168
|
-
}
|
|
1169
|
-
}
|
|
1170
|
-
}
|
|
1171
|
-
}
|
|
1172
|
-
}
|
|
1173
|
-
|
|
1174
|
-
export interface TemplateRetrieveParams {
|
|
1175
|
-
/**
|
|
1176
|
-
* Profile UUID to scope the request to a child profile. Only organization API keys
|
|
1177
|
-
* can use this header. The profile must belong to the calling organization.
|
|
1178
|
-
*/
|
|
1179
|
-
'x-profile-id'?: string;
|
|
1180
|
-
}
|
|
525
|
+
'x-profile-id'?: string;
|
|
526
|
+
}
|
|
1181
527
|
|
|
1182
528
|
export interface TemplateUpdateParams {
|
|
1183
529
|
/**
|
|
@@ -1189,7 +535,7 @@ export interface TemplateUpdateParams {
|
|
|
1189
535
|
* Body param: Complete definition of a message template including header, body,
|
|
1190
536
|
* footer, and buttons
|
|
1191
537
|
*/
|
|
1192
|
-
definition?:
|
|
538
|
+
definition?: TemplateDefinition | null;
|
|
1193
539
|
|
|
1194
540
|
/**
|
|
1195
541
|
* Body param: Template language code (e.g., en_US)
|
|
@@ -1228,410 +574,6 @@ export interface TemplateUpdateParams {
|
|
|
1228
574
|
'x-profile-id'?: string;
|
|
1229
575
|
}
|
|
1230
576
|
|
|
1231
|
-
export namespace TemplateUpdateParams {
|
|
1232
|
-
/**
|
|
1233
|
-
* Complete definition of a message template including header, body, footer, and
|
|
1234
|
-
* buttons
|
|
1235
|
-
*/
|
|
1236
|
-
export interface Definition {
|
|
1237
|
-
/**
|
|
1238
|
-
* Body section of a message template with channel-specific content
|
|
1239
|
-
*/
|
|
1240
|
-
body: Definition.Body;
|
|
1241
|
-
|
|
1242
|
-
/**
|
|
1243
|
-
* Configuration for AUTHENTICATION category templates
|
|
1244
|
-
*/
|
|
1245
|
-
authenticationConfig?: Definition.AuthenticationConfig | null;
|
|
1246
|
-
|
|
1247
|
-
/**
|
|
1248
|
-
* Optional list of interactive buttons (e.g., quick replies, URLs, phone numbers)
|
|
1249
|
-
*/
|
|
1250
|
-
buttons?: Array<Definition.Button> | null;
|
|
1251
|
-
|
|
1252
|
-
/**
|
|
1253
|
-
* The version of the template definition format
|
|
1254
|
-
*/
|
|
1255
|
-
definitionVersion?: string | null;
|
|
1256
|
-
|
|
1257
|
-
/**
|
|
1258
|
-
* Footer section of a message template
|
|
1259
|
-
*/
|
|
1260
|
-
footer?: Definition.Footer | null;
|
|
1261
|
-
|
|
1262
|
-
/**
|
|
1263
|
-
* Header section of a message template
|
|
1264
|
-
*/
|
|
1265
|
-
header?: Definition.Header | null;
|
|
1266
|
-
}
|
|
1267
|
-
|
|
1268
|
-
export namespace Definition {
|
|
1269
|
-
/**
|
|
1270
|
-
* Body section of a message template with channel-specific content
|
|
1271
|
-
*/
|
|
1272
|
-
export interface Body {
|
|
1273
|
-
/**
|
|
1274
|
-
* Content that will be used for all channels (SMS and WhatsApp) unless
|
|
1275
|
-
* channel-specific content is provided
|
|
1276
|
-
*/
|
|
1277
|
-
multiChannel?: Body.MultiChannel | null;
|
|
1278
|
-
|
|
1279
|
-
/**
|
|
1280
|
-
* RCS-specific content that overrides multi-channel content for RCS messages
|
|
1281
|
-
*/
|
|
1282
|
-
rcs?: Body.Rcs | null;
|
|
1283
|
-
|
|
1284
|
-
/**
|
|
1285
|
-
* SMS-specific content that overrides multi-channel content for SMS messages
|
|
1286
|
-
*/
|
|
1287
|
-
sms?: Body.SMS | null;
|
|
1288
|
-
|
|
1289
|
-
/**
|
|
1290
|
-
* WhatsApp-specific content that overrides multi-channel content for WhatsApp
|
|
1291
|
-
* messages
|
|
1292
|
-
*/
|
|
1293
|
-
whatsapp?: Body.Whatsapp | null;
|
|
1294
|
-
}
|
|
1295
|
-
|
|
1296
|
-
export namespace Body {
|
|
1297
|
-
/**
|
|
1298
|
-
* Content that will be used for all channels (SMS and WhatsApp) unless
|
|
1299
|
-
* channel-specific content is provided
|
|
1300
|
-
*/
|
|
1301
|
-
export interface MultiChannel {
|
|
1302
|
-
template: string;
|
|
1303
|
-
|
|
1304
|
-
type?: string | null;
|
|
1305
|
-
|
|
1306
|
-
variables?: Array<MultiChannel.Variable> | null;
|
|
1307
|
-
}
|
|
1308
|
-
|
|
1309
|
-
export namespace MultiChannel {
|
|
1310
|
-
export interface Variable {
|
|
1311
|
-
name: string;
|
|
1312
|
-
|
|
1313
|
-
props: Variable.Props;
|
|
1314
|
-
|
|
1315
|
-
type: string;
|
|
1316
|
-
|
|
1317
|
-
id?: number;
|
|
1318
|
-
}
|
|
1319
|
-
|
|
1320
|
-
export namespace Variable {
|
|
1321
|
-
export interface Props {
|
|
1322
|
-
mediaType: string;
|
|
1323
|
-
|
|
1324
|
-
sample: string;
|
|
1325
|
-
|
|
1326
|
-
url: string;
|
|
1327
|
-
|
|
1328
|
-
variableType: string;
|
|
1329
|
-
|
|
1330
|
-
alt?: string | null;
|
|
1331
|
-
|
|
1332
|
-
regex?: string | null;
|
|
1333
|
-
|
|
1334
|
-
shortUrl?: string | null;
|
|
1335
|
-
}
|
|
1336
|
-
}
|
|
1337
|
-
}
|
|
1338
|
-
|
|
1339
|
-
/**
|
|
1340
|
-
* RCS-specific content that overrides multi-channel content for RCS messages
|
|
1341
|
-
*/
|
|
1342
|
-
export interface Rcs {
|
|
1343
|
-
template: string;
|
|
1344
|
-
|
|
1345
|
-
type?: string | null;
|
|
1346
|
-
|
|
1347
|
-
variables?: Array<Rcs.Variable> | null;
|
|
1348
|
-
}
|
|
1349
|
-
|
|
1350
|
-
export namespace Rcs {
|
|
1351
|
-
export interface Variable {
|
|
1352
|
-
name: string;
|
|
1353
|
-
|
|
1354
|
-
props: Variable.Props;
|
|
1355
|
-
|
|
1356
|
-
type: string;
|
|
1357
|
-
|
|
1358
|
-
id?: number;
|
|
1359
|
-
}
|
|
1360
|
-
|
|
1361
|
-
export namespace Variable {
|
|
1362
|
-
export interface Props {
|
|
1363
|
-
mediaType: string;
|
|
1364
|
-
|
|
1365
|
-
sample: string;
|
|
1366
|
-
|
|
1367
|
-
url: string;
|
|
1368
|
-
|
|
1369
|
-
variableType: string;
|
|
1370
|
-
|
|
1371
|
-
alt?: string | null;
|
|
1372
|
-
|
|
1373
|
-
regex?: string | null;
|
|
1374
|
-
|
|
1375
|
-
shortUrl?: string | null;
|
|
1376
|
-
}
|
|
1377
|
-
}
|
|
1378
|
-
}
|
|
1379
|
-
|
|
1380
|
-
/**
|
|
1381
|
-
* SMS-specific content that overrides multi-channel content for SMS messages
|
|
1382
|
-
*/
|
|
1383
|
-
export interface SMS {
|
|
1384
|
-
template: string;
|
|
1385
|
-
|
|
1386
|
-
type?: string | null;
|
|
1387
|
-
|
|
1388
|
-
variables?: Array<SMS.Variable> | null;
|
|
1389
|
-
}
|
|
1390
|
-
|
|
1391
|
-
export namespace SMS {
|
|
1392
|
-
export interface Variable {
|
|
1393
|
-
name: string;
|
|
1394
|
-
|
|
1395
|
-
props: Variable.Props;
|
|
1396
|
-
|
|
1397
|
-
type: string;
|
|
1398
|
-
|
|
1399
|
-
id?: number;
|
|
1400
|
-
}
|
|
1401
|
-
|
|
1402
|
-
export namespace Variable {
|
|
1403
|
-
export interface Props {
|
|
1404
|
-
mediaType: string;
|
|
1405
|
-
|
|
1406
|
-
sample: string;
|
|
1407
|
-
|
|
1408
|
-
url: string;
|
|
1409
|
-
|
|
1410
|
-
variableType: string;
|
|
1411
|
-
|
|
1412
|
-
alt?: string | null;
|
|
1413
|
-
|
|
1414
|
-
regex?: string | null;
|
|
1415
|
-
|
|
1416
|
-
shortUrl?: string | null;
|
|
1417
|
-
}
|
|
1418
|
-
}
|
|
1419
|
-
}
|
|
1420
|
-
|
|
1421
|
-
/**
|
|
1422
|
-
* WhatsApp-specific content that overrides multi-channel content for WhatsApp
|
|
1423
|
-
* messages
|
|
1424
|
-
*/
|
|
1425
|
-
export interface Whatsapp {
|
|
1426
|
-
template: string;
|
|
1427
|
-
|
|
1428
|
-
type?: string | null;
|
|
1429
|
-
|
|
1430
|
-
variables?: Array<Whatsapp.Variable> | null;
|
|
1431
|
-
}
|
|
1432
|
-
|
|
1433
|
-
export namespace Whatsapp {
|
|
1434
|
-
export interface Variable {
|
|
1435
|
-
name: string;
|
|
1436
|
-
|
|
1437
|
-
props: Variable.Props;
|
|
1438
|
-
|
|
1439
|
-
type: string;
|
|
1440
|
-
|
|
1441
|
-
id?: number;
|
|
1442
|
-
}
|
|
1443
|
-
|
|
1444
|
-
export namespace Variable {
|
|
1445
|
-
export interface Props {
|
|
1446
|
-
mediaType: string;
|
|
1447
|
-
|
|
1448
|
-
sample: string;
|
|
1449
|
-
|
|
1450
|
-
url: string;
|
|
1451
|
-
|
|
1452
|
-
variableType: string;
|
|
1453
|
-
|
|
1454
|
-
alt?: string | null;
|
|
1455
|
-
|
|
1456
|
-
regex?: string | null;
|
|
1457
|
-
|
|
1458
|
-
shortUrl?: string | null;
|
|
1459
|
-
}
|
|
1460
|
-
}
|
|
1461
|
-
}
|
|
1462
|
-
}
|
|
1463
|
-
|
|
1464
|
-
/**
|
|
1465
|
-
* Configuration for AUTHENTICATION category templates
|
|
1466
|
-
*/
|
|
1467
|
-
export interface AuthenticationConfig {
|
|
1468
|
-
/**
|
|
1469
|
-
* Whether to add the security recommendation text: "For your security, do not
|
|
1470
|
-
* share this code."
|
|
1471
|
-
*/
|
|
1472
|
-
addSecurityRecommendation?: boolean;
|
|
1473
|
-
|
|
1474
|
-
/**
|
|
1475
|
-
* Code expiration time in minutes (1-90). If set, adds footer: "This code expires
|
|
1476
|
-
* in X minutes."
|
|
1477
|
-
*/
|
|
1478
|
-
codeExpirationMinutes?: number | null;
|
|
1479
|
-
}
|
|
1480
|
-
|
|
1481
|
-
/**
|
|
1482
|
-
* Interactive button in a message template
|
|
1483
|
-
*/
|
|
1484
|
-
export interface Button {
|
|
1485
|
-
/**
|
|
1486
|
-
* Properties specific to the button type
|
|
1487
|
-
*/
|
|
1488
|
-
props: Button.Props;
|
|
1489
|
-
|
|
1490
|
-
/**
|
|
1491
|
-
* The type of button (e.g., QUICK_REPLY, URL, PHONE_NUMBER, VOICE_CALL, COPY_CODE)
|
|
1492
|
-
*/
|
|
1493
|
-
type: string;
|
|
1494
|
-
|
|
1495
|
-
/**
|
|
1496
|
-
* The unique identifier of the button (1-based index)
|
|
1497
|
-
*/
|
|
1498
|
-
id?: number;
|
|
1499
|
-
}
|
|
1500
|
-
|
|
1501
|
-
export namespace Button {
|
|
1502
|
-
/**
|
|
1503
|
-
* Properties specific to the button type
|
|
1504
|
-
*/
|
|
1505
|
-
export interface Props {
|
|
1506
|
-
activeFor: number;
|
|
1507
|
-
|
|
1508
|
-
countryCode: string;
|
|
1509
|
-
|
|
1510
|
-
offerCode: string;
|
|
1511
|
-
|
|
1512
|
-
phoneNumber: string;
|
|
1513
|
-
|
|
1514
|
-
quickReplyType: string;
|
|
1515
|
-
|
|
1516
|
-
text: string;
|
|
1517
|
-
|
|
1518
|
-
url: string;
|
|
1519
|
-
|
|
1520
|
-
urlType: string;
|
|
1521
|
-
|
|
1522
|
-
autofillText?: string | null;
|
|
1523
|
-
|
|
1524
|
-
otpType?: string | null;
|
|
1525
|
-
|
|
1526
|
-
packageName?: string | null;
|
|
1527
|
-
|
|
1528
|
-
signatureHash?: string | null;
|
|
1529
|
-
}
|
|
1530
|
-
}
|
|
1531
|
-
|
|
1532
|
-
/**
|
|
1533
|
-
* Footer section of a message template
|
|
1534
|
-
*/
|
|
1535
|
-
export interface Footer {
|
|
1536
|
-
/**
|
|
1537
|
-
* The footer template text with optional variable placeholders
|
|
1538
|
-
*/
|
|
1539
|
-
template: string;
|
|
1540
|
-
|
|
1541
|
-
/**
|
|
1542
|
-
* The type of footer (typically "text")
|
|
1543
|
-
*/
|
|
1544
|
-
type?: string | null;
|
|
1545
|
-
|
|
1546
|
-
/**
|
|
1547
|
-
* List of variables used in the footer template
|
|
1548
|
-
*/
|
|
1549
|
-
variables?: Array<Footer.Variable> | null;
|
|
1550
|
-
}
|
|
1551
|
-
|
|
1552
|
-
export namespace Footer {
|
|
1553
|
-
export interface Variable {
|
|
1554
|
-
name: string;
|
|
1555
|
-
|
|
1556
|
-
props: Variable.Props;
|
|
1557
|
-
|
|
1558
|
-
type: string;
|
|
1559
|
-
|
|
1560
|
-
id?: number;
|
|
1561
|
-
}
|
|
1562
|
-
|
|
1563
|
-
export namespace Variable {
|
|
1564
|
-
export interface Props {
|
|
1565
|
-
mediaType: string;
|
|
1566
|
-
|
|
1567
|
-
sample: string;
|
|
1568
|
-
|
|
1569
|
-
url: string;
|
|
1570
|
-
|
|
1571
|
-
variableType: string;
|
|
1572
|
-
|
|
1573
|
-
alt?: string | null;
|
|
1574
|
-
|
|
1575
|
-
regex?: string | null;
|
|
1576
|
-
|
|
1577
|
-
shortUrl?: string | null;
|
|
1578
|
-
}
|
|
1579
|
-
}
|
|
1580
|
-
}
|
|
1581
|
-
|
|
1582
|
-
/**
|
|
1583
|
-
* Header section of a message template
|
|
1584
|
-
*/
|
|
1585
|
-
export interface Header {
|
|
1586
|
-
/**
|
|
1587
|
-
* The header template text with optional variable placeholders (e.g., "Welcome to
|
|
1588
|
-
* {{0:variable}}")
|
|
1589
|
-
*/
|
|
1590
|
-
template: string;
|
|
1591
|
-
|
|
1592
|
-
/**
|
|
1593
|
-
* The type of header (e.g., "text", "image", "video", "document")
|
|
1594
|
-
*/
|
|
1595
|
-
type?: string | null;
|
|
1596
|
-
|
|
1597
|
-
/**
|
|
1598
|
-
* List of variables used in the header template
|
|
1599
|
-
*/
|
|
1600
|
-
variables?: Array<Header.Variable> | null;
|
|
1601
|
-
}
|
|
1602
|
-
|
|
1603
|
-
export namespace Header {
|
|
1604
|
-
export interface Variable {
|
|
1605
|
-
name: string;
|
|
1606
|
-
|
|
1607
|
-
props: Variable.Props;
|
|
1608
|
-
|
|
1609
|
-
type: string;
|
|
1610
|
-
|
|
1611
|
-
id?: number;
|
|
1612
|
-
}
|
|
1613
|
-
|
|
1614
|
-
export namespace Variable {
|
|
1615
|
-
export interface Props {
|
|
1616
|
-
mediaType: string;
|
|
1617
|
-
|
|
1618
|
-
sample: string;
|
|
1619
|
-
|
|
1620
|
-
url: string;
|
|
1621
|
-
|
|
1622
|
-
variableType: string;
|
|
1623
|
-
|
|
1624
|
-
alt?: string | null;
|
|
1625
|
-
|
|
1626
|
-
regex?: string | null;
|
|
1627
|
-
|
|
1628
|
-
shortUrl?: string | null;
|
|
1629
|
-
}
|
|
1630
|
-
}
|
|
1631
|
-
}
|
|
1632
|
-
}
|
|
1633
|
-
}
|
|
1634
|
-
|
|
1635
577
|
export interface TemplateListParams {
|
|
1636
578
|
/**
|
|
1637
579
|
* Query param: Page number (1-indexed)
|
|
@@ -1694,9 +636,17 @@ export interface TemplateDeleteParams {
|
|
|
1694
636
|
|
|
1695
637
|
export declare namespace Templates {
|
|
1696
638
|
export {
|
|
1697
|
-
type
|
|
1698
|
-
type
|
|
1699
|
-
type
|
|
639
|
+
type APIResponseTemplate as APIResponseTemplate,
|
|
640
|
+
type SentDmServicesCommonContractsPocOsAuthenticationConfig as SentDmServicesCommonContractsPocOsAuthenticationConfig,
|
|
641
|
+
type SentDmServicesCommonContractsPocOsTemplateBody as SentDmServicesCommonContractsPocOsTemplateBody,
|
|
642
|
+
type SentDmServicesCommonContractsPocOsTemplateButton as SentDmServicesCommonContractsPocOsTemplateButton,
|
|
643
|
+
type SentDmServicesCommonContractsPocOsTemplateButtonProps as SentDmServicesCommonContractsPocOsTemplateButtonProps,
|
|
644
|
+
type SentDmServicesCommonContractsPocOsTemplateFooter as SentDmServicesCommonContractsPocOsTemplateFooter,
|
|
645
|
+
type SentDmServicesCommonContractsPocOsTemplateHeader as SentDmServicesCommonContractsPocOsTemplateHeader,
|
|
646
|
+
type Template as Template,
|
|
647
|
+
type TemplateBodyContent as TemplateBodyContent,
|
|
648
|
+
type TemplateDefinition as TemplateDefinition,
|
|
649
|
+
type TemplateVariable as TemplateVariable,
|
|
1700
650
|
type TemplateListResponse as TemplateListResponse,
|
|
1701
651
|
type TemplateCreateParams as TemplateCreateParams,
|
|
1702
652
|
type TemplateRetrieveParams as TemplateRetrieveParams,
|