@sentdm/sentdm 0.33.0 → 0.35.0

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 (120) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/client.d.mts +53 -22
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +53 -22
  5. package/client.d.ts.map +1 -1
  6. package/client.js +39 -8
  7. package/client.js.map +1 -1
  8. package/client.mjs +39 -8
  9. package/client.mjs.map +1 -1
  10. package/package.json +1 -1
  11. package/resources/contacts.d.mts +606 -89
  12. package/resources/contacts.d.mts.map +1 -1
  13. package/resources/contacts.d.ts +606 -89
  14. package/resources/contacts.d.ts.map +1 -1
  15. package/resources/contacts.js +21 -15
  16. package/resources/contacts.js.map +1 -1
  17. package/resources/contacts.mjs +21 -15
  18. package/resources/contacts.mjs.map +1 -1
  19. package/resources/conversations.d.mts +335 -69
  20. package/resources/conversations.d.mts.map +1 -1
  21. package/resources/conversations.d.ts +335 -69
  22. package/resources/conversations.d.ts.map +1 -1
  23. package/resources/conversations.js +15 -10
  24. package/resources/conversations.js.map +1 -1
  25. package/resources/conversations.mjs +15 -10
  26. package/resources/conversations.mjs.map +1 -1
  27. package/resources/index.d.mts +7 -7
  28. package/resources/index.d.mts.map +1 -1
  29. package/resources/index.d.ts +7 -7
  30. package/resources/index.d.ts.map +1 -1
  31. package/resources/index.js.map +1 -1
  32. package/resources/index.mjs.map +1 -1
  33. package/resources/me.d.mts +132 -41
  34. package/resources/me.d.mts.map +1 -1
  35. package/resources/me.d.ts +132 -41
  36. package/resources/me.d.ts.map +1 -1
  37. package/resources/me.js +3 -1
  38. package/resources/me.js.map +1 -1
  39. package/resources/me.mjs +3 -1
  40. package/resources/me.mjs.map +1 -1
  41. package/resources/messages.d.mts +212 -31
  42. package/resources/messages.d.mts.map +1 -1
  43. package/resources/messages.d.ts +212 -31
  44. package/resources/messages.d.ts.map +1 -1
  45. package/resources/messages.js +11 -5
  46. package/resources/messages.js.map +1 -1
  47. package/resources/messages.mjs +11 -5
  48. package/resources/messages.mjs.map +1 -1
  49. package/resources/numbers.d.mts +45 -4
  50. package/resources/numbers.d.mts.map +1 -1
  51. package/resources/numbers.d.ts +45 -4
  52. package/resources/numbers.d.ts.map +1 -1
  53. package/resources/numbers.js +3 -1
  54. package/resources/numbers.js.map +1 -1
  55. package/resources/numbers.mjs +3 -1
  56. package/resources/numbers.mjs.map +1 -1
  57. package/resources/profiles/campaigns.d.mts +579 -209
  58. package/resources/profiles/campaigns.d.mts.map +1 -1
  59. package/resources/profiles/campaigns.d.ts +579 -209
  60. package/resources/profiles/campaigns.d.ts.map +1 -1
  61. package/resources/profiles/campaigns.js +33 -64
  62. package/resources/profiles/campaigns.js.map +1 -1
  63. package/resources/profiles/campaigns.mjs +33 -64
  64. package/resources/profiles/campaigns.mjs.map +1 -1
  65. package/resources/profiles/index.d.mts +2 -2
  66. package/resources/profiles/index.d.mts.map +1 -1
  67. package/resources/profiles/index.d.ts +2 -2
  68. package/resources/profiles/index.d.ts.map +1 -1
  69. package/resources/profiles/index.js.map +1 -1
  70. package/resources/profiles/index.mjs.map +1 -1
  71. package/resources/profiles/profiles.d.mts +2006 -499
  72. package/resources/profiles/profiles.d.mts.map +1 -1
  73. package/resources/profiles/profiles.d.ts +2006 -499
  74. package/resources/profiles/profiles.d.ts.map +1 -1
  75. package/resources/profiles/profiles.js +97 -68
  76. package/resources/profiles/profiles.js.map +1 -1
  77. package/resources/profiles/profiles.mjs +97 -68
  78. package/resources/profiles/profiles.mjs.map +1 -1
  79. package/resources/templates.d.mts +497 -84
  80. package/resources/templates.d.mts.map +1 -1
  81. package/resources/templates.d.ts +497 -84
  82. package/resources/templates.d.ts.map +1 -1
  83. package/resources/templates.js +6 -4
  84. package/resources/templates.js.map +1 -1
  85. package/resources/templates.mjs +6 -4
  86. package/resources/templates.mjs.map +1 -1
  87. package/resources/users.d.mts +449 -46
  88. package/resources/users.d.mts.map +1 -1
  89. package/resources/users.d.ts +449 -46
  90. package/resources/users.d.ts.map +1 -1
  91. package/resources/users.js +11 -7
  92. package/resources/users.js.map +1 -1
  93. package/resources/users.mjs +11 -7
  94. package/resources/users.mjs.map +1 -1
  95. package/resources/webhooks.d.mts +934 -109
  96. package/resources/webhooks.d.mts.map +1 -1
  97. package/resources/webhooks.d.ts +934 -109
  98. package/resources/webhooks.d.ts.map +1 -1
  99. package/resources/webhooks.js +11 -8
  100. package/resources/webhooks.js.map +1 -1
  101. package/resources/webhooks.mjs +11 -8
  102. package/resources/webhooks.mjs.map +1 -1
  103. package/src/client.ts +90 -60
  104. package/src/resources/contacts.ts +696 -92
  105. package/src/resources/conversations.ts +400 -77
  106. package/src/resources/index.ts +26 -26
  107. package/src/resources/me.ts +151 -52
  108. package/src/resources/messages.ts +236 -31
  109. package/src/resources/numbers.ts +50 -4
  110. package/src/resources/profiles/campaigns.ts +706 -232
  111. package/src/resources/profiles/index.ts +6 -14
  112. package/src/resources/profiles/profiles.ts +2421 -637
  113. package/src/resources/templates.ts +583 -99
  114. package/src/resources/users.ts +519 -47
  115. package/src/resources/webhooks.ts +1170 -179
  116. package/src/version.ts +1 -1
  117. package/version.d.mts +1 -1
  118. package/version.d.ts +1 -1
  119. package/version.js +1 -1
  120. package/version.mjs +1 -1
@@ -1,9 +1,12 @@
1
1
  import { APIResource } from "../core/resource.js";
2
- import * as WebhooksAPI from "./webhooks.js";
3
2
  import { APIPromise } from "../core/api-promise.js";
4
3
  import { RequestOptions } from "../internal/request-options.js";
5
4
  /**
6
- * Send and track SMS and WhatsApp messages
5
+ * Send a message and follow what happened to it.
6
+ *
7
+ * One endpoint sends on any channel: pass `channel: "sent"` and we pick between SMS, WhatsApp and RCS per recipient using your routing rules, or name a channel to pin it. A send is accepted asynchronously — `POST /v3/messages` returns an id, and delivery is reported through `GET /v3/messages/{id}`, its activities, or a webhook.
8
+ *
9
+ * **A message needs a sender.** What you can send, where, and at what cost is decided by the markets under **Channels** — so a recipient in a country you hold no sender for is refused here rather than queued.
7
10
  */
8
11
  export declare class Messages extends APIResource {
9
12
  /**
@@ -35,10 +38,12 @@ export declare class Messages extends APIResource {
35
38
  * multi-channel broadcast — when multiple channels are specified (e.g. ["sms",
36
39
  * "whatsapp"]), a separate message is created for each (recipient, channel) pair.
37
40
  * Returns immediately with per-recipient message IDs for async tracking via
38
- * webhooks or the GET /messages/{id} endpoint. Account-level preconditions such as
39
- * insufficient balance do not reject the request: the send is accepted with 202
40
- * and the affected messages are reported as BLOCKED on GET /messages/{id} and the
41
- * message status webhook.
41
+ * webhooks or the GET /messages/{id} endpoint. Sends gated before any delivery
42
+ * attempt do not reject the request — an account-level precondition such as
43
+ * insufficient balance, a template not approved for sending, or free-form content
44
+ * with no open conversation with the contact. The send is accepted with 202 and
45
+ * the affected messages are reported as BLOCKED on GET /messages/{id} and the
46
+ * message.blocked webhook.
42
47
  *
43
48
  * @example
44
49
  * ```ts
@@ -58,11 +63,11 @@ export interface MessageRetrieveActivitiesResponse {
58
63
  /**
59
64
  * Error information
60
65
  */
61
- error?: WebhooksAPI.ErrorDetail | null;
66
+ error?: MessageRetrieveActivitiesResponse.Error | null;
62
67
  /**
63
68
  * Request and response metadata
64
69
  */
65
- meta?: WebhooksAPI.APIMeta;
70
+ meta?: MessageRetrieveActivitiesResponse.Meta;
66
71
  /**
67
72
  * Indicates whether the request was successful
68
73
  */
@@ -81,6 +86,10 @@ export declare namespace MessageRetrieveActivitiesResponse {
81
86
  * The message ID these activities belong to
82
87
  */
83
88
  message_id?: string;
89
+ /**
90
+ * Pagination metadata for list responses
91
+ */
92
+ pagination?: Data.Pagination;
84
93
  }
85
94
  namespace Data {
86
95
  /**
@@ -117,6 +126,90 @@ export declare namespace MessageRetrieveActivitiesResponse {
117
126
  */
118
127
  timestamp?: string;
119
128
  }
129
+ /**
130
+ * Pagination metadata for list responses
131
+ */
132
+ interface Pagination {
133
+ /**
134
+ * @deprecated Cursor-based pagination. Never populated — see Cursors.
135
+ */
136
+ cursors?: Pagination.Cursors | null;
137
+ /**
138
+ * Whether there are more pages after this one
139
+ */
140
+ has_more?: boolean;
141
+ /**
142
+ * Current page number (1-indexed)
143
+ */
144
+ page?: number;
145
+ /**
146
+ * Number of items per page
147
+ */
148
+ page_size?: number;
149
+ /**
150
+ * Total number of items across all pages
151
+ */
152
+ total_count?: number;
153
+ /**
154
+ * Total number of pages
155
+ */
156
+ total_pages?: number;
157
+ }
158
+ namespace Pagination {
159
+ /**
160
+ * @deprecated Cursor-based pagination. Never populated — see Cursors.
161
+ */
162
+ interface Cursors {
163
+ /**
164
+ * Cursor to fetch the next page.
165
+ */
166
+ after?: string | null;
167
+ /**
168
+ * Cursor to fetch the previous page.
169
+ */
170
+ before?: string | null;
171
+ }
172
+ }
173
+ }
174
+ /**
175
+ * Error information
176
+ */
177
+ interface Error {
178
+ /**
179
+ * Machine-readable error code (e.g., "RESOURCE_001")
180
+ */
181
+ code?: string;
182
+ /**
183
+ * Additional validation error details (field-level errors)
184
+ */
185
+ details?: {
186
+ [key: string]: Array<string>;
187
+ } | null;
188
+ /**
189
+ * URL to documentation about this error
190
+ */
191
+ doc_url?: string | null;
192
+ /**
193
+ * Human-readable error message
194
+ */
195
+ message?: string;
196
+ }
197
+ /**
198
+ * Request and response metadata
199
+ */
200
+ interface Meta {
201
+ /**
202
+ * Unique identifier for this request (for tracing and support)
203
+ */
204
+ request_id?: string;
205
+ /**
206
+ * Server timestamp when the response was generated
207
+ */
208
+ timestamp?: string;
209
+ /**
210
+ * API version used for this request
211
+ */
212
+ version?: string;
120
213
  }
121
214
  }
122
215
  /**
@@ -130,11 +223,11 @@ export interface MessageRetrieveStatusResponse {
130
223
  /**
131
224
  * Error information
132
225
  */
133
- error?: WebhooksAPI.ErrorDetail | null;
226
+ error?: MessageRetrieveStatusResponse.Error | null;
134
227
  /**
135
228
  * Request and response metadata
136
229
  */
137
- meta?: WebhooksAPI.APIMeta;
230
+ meta?: MessageRetrieveStatusResponse.Meta;
138
231
  /**
139
232
  * Indicates whether the request was successful
140
233
  */
@@ -195,23 +288,72 @@ export declare namespace MessageRetrieveStatusResponse {
195
288
  }
196
289
  }
197
290
  }
291
+ /**
292
+ * Error information
293
+ */
294
+ interface Error {
295
+ /**
296
+ * Machine-readable error code (e.g., "RESOURCE_001")
297
+ */
298
+ code?: string;
299
+ /**
300
+ * Additional validation error details (field-level errors)
301
+ */
302
+ details?: {
303
+ [key: string]: Array<string>;
304
+ } | null;
305
+ /**
306
+ * URL to documentation about this error
307
+ */
308
+ doc_url?: string | null;
309
+ /**
310
+ * Human-readable error message
311
+ */
312
+ message?: string;
313
+ }
314
+ /**
315
+ * Request and response metadata
316
+ */
317
+ interface Meta {
318
+ /**
319
+ * Unique identifier for this request (for tracing and support)
320
+ */
321
+ request_id?: string;
322
+ /**
323
+ * Server timestamp when the response was generated
324
+ */
325
+ timestamp?: string;
326
+ /**
327
+ * API version used for this request
328
+ */
329
+ version?: string;
330
+ }
198
331
  }
199
332
  /**
200
333
  * Standard API response envelope for all v3 endpoints
201
334
  */
202
335
  export interface MessageSendResponse {
203
336
  /**
204
- * Response for the multi-recipient send message endpoint
337
+ * The result of a multi-recipient send.
338
+ *
339
+ * Declared here rather than in the service layer. POST /v3/messages used to
340
+ * publish MessageSendResult — a type in Common.Services.Messaging.Contracts — so
341
+ * the public contract was whatever the send service happened to return, and
342
+ * changing that service for an internal reason changed the API. The service keeps
343
+ * its result; this is what a caller sees, and the mapping between them is a
344
+ * decision the endpoint makes.
345
+ *
346
+ * The wire is unchanged by the move: same names, same values.
205
347
  */
206
348
  data?: MessageSendResponse.Data | null;
207
349
  /**
208
350
  * Error information
209
351
  */
210
- error?: WebhooksAPI.ErrorDetail | null;
352
+ error?: MessageSendResponse.Error | null;
211
353
  /**
212
354
  * Request and response metadata
213
355
  */
214
- meta?: WebhooksAPI.APIMeta;
356
+ meta?: MessageSendResponse.Meta;
215
357
  /**
216
358
  * Indicates whether the request was successful
217
359
  */
@@ -219,51 +361,90 @@ export interface MessageSendResponse {
219
361
  }
220
362
  export declare namespace MessageSendResponse {
221
363
  /**
222
- * Response for the multi-recipient send message endpoint
364
+ * The result of a multi-recipient send.
365
+ *
366
+ * Declared here rather than in the service layer. POST /v3/messages used to
367
+ * publish MessageSendResult — a type in Common.Services.Messaging.Contracts — so
368
+ * the public contract was whatever the send service happened to return, and
369
+ * changing that service for an internal reason changed the API. The service keeps
370
+ * its result; this is what a caller sees, and the mapping between them is a
371
+ * decision the endpoint makes.
372
+ *
373
+ * The wire is unchanged by the move: same names, same values.
223
374
  */
224
375
  interface Data {
225
- /**
226
- * Per-recipient message results
227
- */
228
376
  recipients?: Array<Data.Recipient>;
229
377
  /**
230
- * Overall request status: "QUEUED" when the batch has been accepted for delivery.
378
+ * Overall status — QUEUED once the batch is accepted for delivery.
231
379
  */
232
380
  status?: string;
233
- /**
234
- * Template ID that was used
235
- */
236
381
  template_id?: string;
237
- /**
238
- * Template display name
239
- */
240
382
  template_name?: string;
241
383
  }
242
384
  namespace Data {
243
385
  /**
244
- * Per-recipient result in the send message response
386
+ * What one recipient of a send got, as the API reports it.
245
387
  */
246
388
  interface Recipient {
247
389
  /**
248
- * Resolved template body text for this recipient's channel, or null for
249
- * auto-detect
390
+ * Resolved template body for this recipient's channel, or null when the channel is
391
+ * auto-detected.
250
392
  */
251
393
  body?: string | null;
252
394
  /**
253
- * Channel this message will be sent on (e.g. "sms", "whatsapp"), or null for
254
- * auto-detect
395
+ * Channel this message will be sent on — sms, whatsapp — or null to auto-detect.
255
396
  */
256
397
  channel?: string | null;
257
398
  /**
258
- * Unique message identifier for tracking this recipient's message
399
+ * Identifier for tracking this recipient's message.
259
400
  */
260
401
  message_id?: string;
261
402
  /**
262
- * Phone number in E.164 format
403
+ * Phone number in E.164 format.
263
404
  */
264
405
  to?: string;
265
406
  }
266
407
  }
408
+ /**
409
+ * Error information
410
+ */
411
+ interface Error {
412
+ /**
413
+ * Machine-readable error code (e.g., "RESOURCE_001")
414
+ */
415
+ code?: string;
416
+ /**
417
+ * Additional validation error details (field-level errors)
418
+ */
419
+ details?: {
420
+ [key: string]: Array<string>;
421
+ } | null;
422
+ /**
423
+ * URL to documentation about this error
424
+ */
425
+ doc_url?: string | null;
426
+ /**
427
+ * Human-readable error message
428
+ */
429
+ message?: string;
430
+ }
431
+ /**
432
+ * Request and response metadata
433
+ */
434
+ interface Meta {
435
+ /**
436
+ * Unique identifier for this request (for tracing and support)
437
+ */
438
+ request_id?: string;
439
+ /**
440
+ * Server timestamp when the response was generated
441
+ */
442
+ timestamp?: string;
443
+ /**
444
+ * API version used for this request
445
+ */
446
+ version?: string;
447
+ }
267
448
  }
268
449
  export interface MessageRetrieveActivitiesParams {
269
450
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../src/resources/messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../src/resources/messages.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,11 @@ const resource_1 = require("../core/resource.js");
6
6
  const headers_1 = require("../internal/headers.js");
7
7
  const path_1 = require("../internal/utils/path.js");
8
8
  /**
9
- * Send and track SMS and WhatsApp messages
9
+ * Send a message and follow what happened to it.
10
+ *
11
+ * One endpoint sends on any channel: pass `channel: "sent"` and we pick between SMS, WhatsApp and RCS per recipient using your routing rules, or name a channel to pin it. A send is accepted asynchronously — `POST /v3/messages` returns an id, and delivery is reported through `GET /v3/messages/{id}`, its activities, or a webhook.
12
+ *
13
+ * **A message needs a sender.** What you can send, where, and at what cost is decided by the markets under **Channels** — so a recipient in a country you hold no sender for is refused here rather than queued.
10
14
  */
11
15
  class Messages extends resource_1.APIResource {
12
16
  /**
@@ -56,10 +60,12 @@ class Messages extends resource_1.APIResource {
56
60
  * multi-channel broadcast — when multiple channels are specified (e.g. ["sms",
57
61
  * "whatsapp"]), a separate message is created for each (recipient, channel) pair.
58
62
  * Returns immediately with per-recipient message IDs for async tracking via
59
- * webhooks or the GET /messages/{id} endpoint. Account-level preconditions such as
60
- * insufficient balance do not reject the request: the send is accepted with 202
61
- * and the affected messages are reported as BLOCKED on GET /messages/{id} and the
62
- * message status webhook.
63
+ * webhooks or the GET /messages/{id} endpoint. Sends gated before any delivery
64
+ * attempt do not reject the request — an account-level precondition such as
65
+ * insufficient balance, a template not approved for sending, or free-form content
66
+ * with no open conversation with the contact. The send is accepted with 202 and
67
+ * the affected messages are reported as BLOCKED on GET /messages/{id} and the
68
+ * message.blocked webhook.
63
69
  *
64
70
  * @example
65
71
  * ```ts
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../src/resources/messages.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAA+C;AAG/C,oDAAmD;AAEnD,oDAA8C;AAE9C;;GAEG;AACH,MAAa,QAAS,SAAQ,sBAAW;IACvC;;;;;;;;;;OAUG;IACH,kBAAkB,CAChB,EAAU,EACV,SAA6D,EAAE,EAC/D,OAAwB;QAExB,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,gBAAgB,EAAE,aAAa,EAAE;YAC3D,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC;gBACpB,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxE,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,cAAc,CACZ,EAAU,EACV,SAAyD,EAAE,EAC3D,OAAwB;QAExB,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,gBAAgB,EAAE,EAAE,EAAE;YAChD,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC;gBACpB,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxE,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,IAAI,CAAC,MAAyB,EAAE,OAAwB;QACtD,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;QAC1F,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE;YACvC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC;gBACpB;oBACE,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC/E,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;iBACrE;gBACD,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF;AAlFD,4BAkFC"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../src/resources/messages.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAA+C;AAE/C,oDAAmD;AAEnD,oDAA8C;AAE9C;;;;;;GAMG;AACH,MAAa,QAAS,SAAQ,sBAAW;IACvC;;;;;;;;;;OAUG;IACH,kBAAkB,CAChB,EAAU,EACV,SAA6D,EAAE,EAC/D,OAAwB;QAExB,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,gBAAgB,EAAE,aAAa,EAAE;YAC3D,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC;gBACpB,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxE,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,cAAc,CACZ,EAAU,EACV,SAAyD,EAAE,EAC3D,OAAwB;QAExB,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,gBAAgB,EAAE,EAAE,EAAE;YAChD,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC;gBACpB,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxE,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,IAAI,CAAC,MAAyB,EAAE,OAAwB;QACtD,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;QAC1F,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE;YACvC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC;gBACpB;oBACE,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC/E,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;iBACrE;gBACD,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF;AApFD,4BAoFC"}
@@ -3,7 +3,11 @@ import { APIResource } from "../core/resource.mjs";
3
3
  import { buildHeaders } from "../internal/headers.mjs";
4
4
  import { path } from "../internal/utils/path.mjs";
5
5
  /**
6
- * Send and track SMS and WhatsApp messages
6
+ * Send a message and follow what happened to it.
7
+ *
8
+ * One endpoint sends on any channel: pass `channel: "sent"` and we pick between SMS, WhatsApp and RCS per recipient using your routing rules, or name a channel to pin it. A send is accepted asynchronously — `POST /v3/messages` returns an id, and delivery is reported through `GET /v3/messages/{id}`, its activities, or a webhook.
9
+ *
10
+ * **A message needs a sender.** What you can send, where, and at what cost is decided by the markets under **Channels** — so a recipient in a country you hold no sender for is refused here rather than queued.
7
11
  */
8
12
  export class Messages extends APIResource {
9
13
  /**
@@ -53,10 +57,12 @@ export class Messages extends APIResource {
53
57
  * multi-channel broadcast — when multiple channels are specified (e.g. ["sms",
54
58
  * "whatsapp"]), a separate message is created for each (recipient, channel) pair.
55
59
  * Returns immediately with per-recipient message IDs for async tracking via
56
- * webhooks or the GET /messages/{id} endpoint. Account-level preconditions such as
57
- * insufficient balance do not reject the request: the send is accepted with 202
58
- * and the affected messages are reported as BLOCKED on GET /messages/{id} and the
59
- * message status webhook.
60
+ * webhooks or the GET /messages/{id} endpoint. Sends gated before any delivery
61
+ * attempt do not reject the request — an account-level precondition such as
62
+ * insufficient balance, a template not approved for sending, or free-form content
63
+ * with no open conversation with the contact. The send is accepted with 202 and
64
+ * the affected messages are reported as BLOCKED on GET /messages/{id} and the
65
+ * message.blocked webhook.
60
66
  *
61
67
  * @example
62
68
  * ```ts
@@ -1 +1 @@
1
- {"version":3,"file":"messages.mjs","sourceRoot":"","sources":["../src/resources/messages.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAEtF,OAAO,EAAE,WAAW,EAAE,6BAAyB;AAG/C,OAAO,EAAE,YAAY,EAAE,gCAA4B;AAEnD,OAAO,EAAE,IAAI,EAAE,mCAA+B;AAE9C;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,WAAW;IACvC;;;;;;;;;;OAUG;IACH,kBAAkB,CAChB,EAAU,EACV,SAA6D,EAAE,EAC/D,OAAwB;QAExB,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,gBAAgB,EAAE,aAAa,EAAE;YAC3D,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC;gBACpB,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxE,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,cAAc,CACZ,EAAU,EACV,SAAyD,EAAE,EAC3D,OAAwB;QAExB,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,gBAAgB,EAAE,EAAE,EAAE;YAChD,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC;gBACpB,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxE,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,IAAI,CAAC,MAAyB,EAAE,OAAwB;QACtD,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;QAC1F,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE;YACvC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC;gBACpB;oBACE,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC/E,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;iBACrE;gBACD,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"messages.mjs","sourceRoot":"","sources":["../src/resources/messages.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAEtF,OAAO,EAAE,WAAW,EAAE,6BAAyB;AAE/C,OAAO,EAAE,YAAY,EAAE,gCAA4B;AAEnD,OAAO,EAAE,IAAI,EAAE,mCAA+B;AAE9C;;;;;;GAMG;AACH,MAAM,OAAO,QAAS,SAAQ,WAAW;IACvC;;;;;;;;;;OAUG;IACH,kBAAkB,CAChB,EAAU,EACV,SAA6D,EAAE,EAC/D,OAAwB;QAExB,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,gBAAgB,EAAE,aAAa,EAAE;YAC3D,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC;gBACpB,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxE,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,cAAc,CACZ,EAAU,EACV,SAAyD,EAAE,EAC3D,OAAwB;QAExB,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,gBAAgB,EAAE,EAAE,EAAE;YAChD,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC;gBACpB,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxE,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,IAAI,CAAC,MAAyB,EAAE,OAAwB;QACtD,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;QAC1F,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE;YACvC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC;gBACpB;oBACE,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC/E,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;iBACrE;gBACD,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,9 +1,10 @@
1
1
  import { APIResource } from "../core/resource.mjs";
2
- import * as WebhooksAPI from "./webhooks.mjs";
3
2
  import { APIPromise } from "../core/api-promise.mjs";
4
3
  import { RequestOptions } from "../internal/request-options.mjs";
5
4
  /**
6
- * Manage and lookup phone numbers
5
+ * What a phone number actually is, before you send to it.
6
+ *
7
+ * A lookup returns the number's country, line type and carrier, which is what decides whether it is reachable on a channel and what it costs. Worth doing on import rather than on send: a landline in a contact list is a message that can never be delivered.
7
8
  */
8
9
  export declare class Numbers extends APIResource {
9
10
  /**
@@ -31,11 +32,11 @@ export interface NumberLookupResponse {
31
32
  /**
32
33
  * Error information
33
34
  */
34
- error?: WebhooksAPI.ErrorDetail | null;
35
+ error?: NumberLookupResponse.Error | null;
35
36
  /**
36
37
  * Request and response metadata
37
38
  */
38
- meta?: WebhooksAPI.APIMeta;
39
+ meta?: NumberLookupResponse.Meta;
39
40
  /**
40
41
  * Indicates whether the request was successful
41
42
  */
@@ -56,6 +57,46 @@ export declare namespace NumberLookupResponse {
56
57
  mobile_network_code?: string | null;
57
58
  phone_number?: string;
58
59
  }
60
+ /**
61
+ * Error information
62
+ */
63
+ interface Error {
64
+ /**
65
+ * Machine-readable error code (e.g., "RESOURCE_001")
66
+ */
67
+ code?: string;
68
+ /**
69
+ * Additional validation error details (field-level errors)
70
+ */
71
+ details?: {
72
+ [key: string]: Array<string>;
73
+ } | null;
74
+ /**
75
+ * URL to documentation about this error
76
+ */
77
+ doc_url?: string | null;
78
+ /**
79
+ * Human-readable error message
80
+ */
81
+ message?: string;
82
+ }
83
+ /**
84
+ * Request and response metadata
85
+ */
86
+ interface Meta {
87
+ /**
88
+ * Unique identifier for this request (for tracing and support)
89
+ */
90
+ request_id?: string;
91
+ /**
92
+ * Server timestamp when the response was generated
93
+ */
94
+ timestamp?: string;
95
+ /**
96
+ * API version used for this request
97
+ */
98
+ version?: string;
99
+ }
59
100
  }
60
101
  export interface NumberLookupParams {
61
102
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"numbers.d.mts","sourceRoot":"","sources":["../src/resources/numbers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,6BAAyB;AAC/C,OAAO,KAAK,WAAW,uBAAmB;AAC1C,OAAO,EAAE,UAAU,EAAE,gCAA4B;AAEjD,OAAO,EAAE,cAAc,EAAE,wCAAoC;AAG7D;;GAEG;AACH,qBAAa,OAAQ,SAAQ,WAAW;IACtC;;;;;;;;;;;OAWG;IACH,MAAM,CACJ,WAAW,EAAE,MAAM,EACnB,MAAM,GAAE,kBAAkB,GAAG,IAAI,GAAG,SAAc,EAClD,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,oBAAoB,CAAC;CAUpC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,CAAC,IAAI,GAAG,IAAI,CAAC;IAExC;;OAEG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC;IAEvC;;OAEG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC;IAE3B;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yBAAiB,oBAAoB,CAAC;IACpC;;OAEG;IACH,UAAiB,IAAI;QACnB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE7B,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QAE3B,QAAQ,CAAC,EAAE,OAAO,CAAC;QAEnB,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QAEzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE1B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEpC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEpC,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB;CACF;AAED,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,OAAO,EAAE,KAAK,oBAAoB,IAAI,oBAAoB,EAAE,KAAK,kBAAkB,IAAI,kBAAkB,EAAE,CAAC;CAC7G"}
1
+ {"version":3,"file":"numbers.d.mts","sourceRoot":"","sources":["../src/resources/numbers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,6BAAyB;AAC/C,OAAO,EAAE,UAAU,EAAE,gCAA4B;AAEjD,OAAO,EAAE,cAAc,EAAE,wCAAoC;AAG7D;;;;GAIG;AACH,qBAAa,OAAQ,SAAQ,WAAW;IACtC;;;;;;;;;;;OAWG;IACH,MAAM,CACJ,WAAW,EAAE,MAAM,EACnB,MAAM,GAAE,kBAAkB,GAAG,IAAI,GAAG,SAAc,EAClD,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,oBAAoB,CAAC;CAUpC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,CAAC,IAAI,GAAG,IAAI,CAAC;IAExC;;OAEG;IACH,KAAK,CAAC,EAAE,oBAAoB,CAAC,KAAK,GAAG,IAAI,CAAC;IAE1C;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,CAAC,IAAI,CAAC;IAEjC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yBAAiB,oBAAoB,CAAC;IACpC;;OAEG;IACH,UAAiB,IAAI;QACnB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE7B,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QAE3B,QAAQ,CAAC,EAAE,OAAO,CAAC;QAEnB,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QAEzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE1B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEpC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEpC,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB;IAED;;OAEG;IACH,UAAiB,KAAK;QACpB;;WAEG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd;;WAEG;QACH,OAAO,CAAC,EAAE;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;SAAE,GAAG,IAAI,CAAC;QAElD;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAExB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;IAED;;OAEG;IACH,UAAiB,IAAI;QACnB;;WAEG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;QAEpB;;WAEG;QACH,SAAS,CAAC,EAAE,MAAM,CAAC;QAEnB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;CACF;AAED,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,OAAO,EAAE,KAAK,oBAAoB,IAAI,oBAAoB,EAAE,KAAK,kBAAkB,IAAI,kBAAkB,EAAE,CAAC;CAC7G"}
@@ -1,9 +1,10 @@
1
1
  import { APIResource } from "../core/resource.js";
2
- import * as WebhooksAPI from "./webhooks.js";
3
2
  import { APIPromise } from "../core/api-promise.js";
4
3
  import { RequestOptions } from "../internal/request-options.js";
5
4
  /**
6
- * Manage and lookup phone numbers
5
+ * What a phone number actually is, before you send to it.
6
+ *
7
+ * A lookup returns the number's country, line type and carrier, which is what decides whether it is reachable on a channel and what it costs. Worth doing on import rather than on send: a landline in a contact list is a message that can never be delivered.
7
8
  */
8
9
  export declare class Numbers extends APIResource {
9
10
  /**
@@ -31,11 +32,11 @@ export interface NumberLookupResponse {
31
32
  /**
32
33
  * Error information
33
34
  */
34
- error?: WebhooksAPI.ErrorDetail | null;
35
+ error?: NumberLookupResponse.Error | null;
35
36
  /**
36
37
  * Request and response metadata
37
38
  */
38
- meta?: WebhooksAPI.APIMeta;
39
+ meta?: NumberLookupResponse.Meta;
39
40
  /**
40
41
  * Indicates whether the request was successful
41
42
  */
@@ -56,6 +57,46 @@ export declare namespace NumberLookupResponse {
56
57
  mobile_network_code?: string | null;
57
58
  phone_number?: string;
58
59
  }
60
+ /**
61
+ * Error information
62
+ */
63
+ interface Error {
64
+ /**
65
+ * Machine-readable error code (e.g., "RESOURCE_001")
66
+ */
67
+ code?: string;
68
+ /**
69
+ * Additional validation error details (field-level errors)
70
+ */
71
+ details?: {
72
+ [key: string]: Array<string>;
73
+ } | null;
74
+ /**
75
+ * URL to documentation about this error
76
+ */
77
+ doc_url?: string | null;
78
+ /**
79
+ * Human-readable error message
80
+ */
81
+ message?: string;
82
+ }
83
+ /**
84
+ * Request and response metadata
85
+ */
86
+ interface Meta {
87
+ /**
88
+ * Unique identifier for this request (for tracing and support)
89
+ */
90
+ request_id?: string;
91
+ /**
92
+ * Server timestamp when the response was generated
93
+ */
94
+ timestamp?: string;
95
+ /**
96
+ * API version used for this request
97
+ */
98
+ version?: string;
99
+ }
59
100
  }
60
101
  export interface NumberLookupParams {
61
102
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"numbers.d.ts","sourceRoot":"","sources":["../src/resources/numbers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,4BAAyB;AAC/C,OAAO,KAAK,WAAW,sBAAmB;AAC1C,OAAO,EAAE,UAAU,EAAE,+BAA4B;AAEjD,OAAO,EAAE,cAAc,EAAE,uCAAoC;AAG7D;;GAEG;AACH,qBAAa,OAAQ,SAAQ,WAAW;IACtC;;;;;;;;;;;OAWG;IACH,MAAM,CACJ,WAAW,EAAE,MAAM,EACnB,MAAM,GAAE,kBAAkB,GAAG,IAAI,GAAG,SAAc,EAClD,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,oBAAoB,CAAC;CAUpC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,CAAC,IAAI,GAAG,IAAI,CAAC;IAExC;;OAEG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC;IAEvC;;OAEG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC;IAE3B;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yBAAiB,oBAAoB,CAAC;IACpC;;OAEG;IACH,UAAiB,IAAI;QACnB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE7B,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QAE3B,QAAQ,CAAC,EAAE,OAAO,CAAC;QAEnB,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QAEzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE1B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEpC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEpC,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB;CACF;AAED,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,OAAO,EAAE,KAAK,oBAAoB,IAAI,oBAAoB,EAAE,KAAK,kBAAkB,IAAI,kBAAkB,EAAE,CAAC;CAC7G"}
1
+ {"version":3,"file":"numbers.d.ts","sourceRoot":"","sources":["../src/resources/numbers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,4BAAyB;AAC/C,OAAO,EAAE,UAAU,EAAE,+BAA4B;AAEjD,OAAO,EAAE,cAAc,EAAE,uCAAoC;AAG7D;;;;GAIG;AACH,qBAAa,OAAQ,SAAQ,WAAW;IACtC;;;;;;;;;;;OAWG;IACH,MAAM,CACJ,WAAW,EAAE,MAAM,EACnB,MAAM,GAAE,kBAAkB,GAAG,IAAI,GAAG,SAAc,EAClD,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,oBAAoB,CAAC;CAUpC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,CAAC,IAAI,GAAG,IAAI,CAAC;IAExC;;OAEG;IACH,KAAK,CAAC,EAAE,oBAAoB,CAAC,KAAK,GAAG,IAAI,CAAC;IAE1C;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,CAAC,IAAI,CAAC;IAEjC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yBAAiB,oBAAoB,CAAC;IACpC;;OAEG;IACH,UAAiB,IAAI;QACnB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE7B,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QAE3B,QAAQ,CAAC,EAAE,OAAO,CAAC;QAEnB,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QAEzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAE1B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEpC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEpC,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB;IAED;;OAEG;IACH,UAAiB,KAAK;QACpB;;WAEG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd;;WAEG;QACH,OAAO,CAAC,EAAE;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;SAAE,GAAG,IAAI,CAAC;QAElD;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAExB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;IAED;;OAEG;IACH,UAAiB,IAAI;QACnB;;WAEG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;QAEpB;;WAEG;QACH,SAAS,CAAC,EAAE,MAAM,CAAC;QAEnB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;CACF;AAED,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,OAAO,EAAE,KAAK,oBAAoB,IAAI,oBAAoB,EAAE,KAAK,kBAAkB,IAAI,kBAAkB,EAAE,CAAC;CAC7G"}
@@ -6,7 +6,9 @@ const resource_1 = require("../core/resource.js");
6
6
  const headers_1 = require("../internal/headers.js");
7
7
  const path_1 = require("../internal/utils/path.js");
8
8
  /**
9
- * Manage and lookup phone numbers
9
+ * What a phone number actually is, before you send to it.
10
+ *
11
+ * A lookup returns the number's country, line type and carrier, which is what decides whether it is reachable on a channel and what it costs. Worth doing on import rather than on send: a landline in a contact list is a message that can never be delivered.
10
12
  */
11
13
  class Numbers extends resource_1.APIResource {
12
14
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"numbers.js","sourceRoot":"","sources":["../src/resources/numbers.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAA+C;AAG/C,oDAAmD;AAEnD,oDAA8C;AAE9C;;GAEG;AACH,MAAa,OAAQ,SAAQ,sBAAW;IACtC;;;;;;;;;;;OAWG;IACH,MAAM,CACJ,WAAmB,EACnB,SAAgD,EAAE,EAClD,OAAwB;QAExB,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,sBAAsB,WAAW,EAAE,EAAE;YAC/D,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC;gBACpB,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxE,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF;AA3BD,0BA2BC"}
1
+ {"version":3,"file":"numbers.js","sourceRoot":"","sources":["../src/resources/numbers.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAA+C;AAE/C,oDAAmD;AAEnD,oDAA8C;AAE9C;;;;GAIG;AACH,MAAa,OAAQ,SAAQ,sBAAW;IACtC;;;;;;;;;;;OAWG;IACH,MAAM,CACJ,WAAmB,EACnB,SAAgD,EAAE,EAClD,OAAwB;QAExB,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,sBAAsB,WAAW,EAAE,EAAE;YAC/D,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC;gBACpB,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxE,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF;AA3BD,0BA2BC"}
@@ -3,7 +3,9 @@ import { APIResource } from "../core/resource.mjs";
3
3
  import { buildHeaders } from "../internal/headers.mjs";
4
4
  import { path } from "../internal/utils/path.mjs";
5
5
  /**
6
- * Manage and lookup phone numbers
6
+ * What a phone number actually is, before you send to it.
7
+ *
8
+ * A lookup returns the number's country, line type and carrier, which is what decides whether it is reachable on a channel and what it costs. Worth doing on import rather than on send: a landline in a contact list is a message that can never be delivered.
7
9
  */
8
10
  export class Numbers extends APIResource {
9
11
  /**