telnyx 7.18.0 → 7.19.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 (92) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/client.d.mts +3 -0
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +3 -0
  5. package/client.d.ts.map +1 -1
  6. package/client.js +3 -0
  7. package/client.js.map +1 -1
  8. package/client.mjs +3 -0
  9. package/client.mjs.map +1 -1
  10. package/lib/webhooks.d.mts +1 -1
  11. package/lib/webhooks.d.mts.map +1 -1
  12. package/lib/webhooks.d.ts +1 -1
  13. package/lib/webhooks.d.ts.map +1 -1
  14. package/lib/webhooks.js +74 -39
  15. package/lib/webhooks.js.map +1 -1
  16. package/lib/webhooks.mjs +52 -17
  17. package/lib/webhooks.mjs.map +1 -1
  18. package/package.json +1 -1
  19. package/resources/ai/assistants/assistants.d.mts +40 -20
  20. package/resources/ai/assistants/assistants.d.mts.map +1 -1
  21. package/resources/ai/assistants/assistants.d.ts +40 -20
  22. package/resources/ai/assistants/assistants.d.ts.map +1 -1
  23. package/resources/ai/assistants/assistants.js.map +1 -1
  24. package/resources/ai/assistants/assistants.mjs.map +1 -1
  25. package/resources/credential-connections/credential-connections.d.mts +2 -2
  26. package/resources/credential-connections/credential-connections.d.ts +2 -2
  27. package/resources/external-requirements/external-requirements.d.mts +10 -0
  28. package/resources/external-requirements/external-requirements.d.mts.map +1 -0
  29. package/resources/external-requirements/external-requirements.d.ts +10 -0
  30. package/resources/external-requirements/external-requirements.d.ts.map +1 -0
  31. package/resources/external-requirements/external-requirements.js +17 -0
  32. package/resources/external-requirements/external-requirements.js.map +1 -0
  33. package/resources/external-requirements/external-requirements.mjs +12 -0
  34. package/resources/external-requirements/external-requirements.mjs.map +1 -0
  35. package/resources/external-requirements/index.d.mts +3 -0
  36. package/resources/external-requirements/index.d.mts.map +1 -0
  37. package/resources/external-requirements/index.d.ts +3 -0
  38. package/resources/external-requirements/index.d.ts.map +1 -0
  39. package/resources/external-requirements/index.js +9 -0
  40. package/resources/external-requirements/index.js.map +1 -0
  41. package/resources/external-requirements/index.mjs +4 -0
  42. package/resources/external-requirements/index.mjs.map +1 -0
  43. package/resources/external-requirements/sub-number-orders.d.mts +151 -0
  44. package/resources/external-requirements/sub-number-orders.d.mts.map +1 -0
  45. package/resources/external-requirements/sub-number-orders.d.ts +151 -0
  46. package/resources/external-requirements/sub-number-orders.d.ts.map +1 -0
  47. package/resources/external-requirements/sub-number-orders.js +61 -0
  48. package/resources/external-requirements/sub-number-orders.js.map +1 -0
  49. package/resources/external-requirements/sub-number-orders.mjs +57 -0
  50. package/resources/external-requirements/sub-number-orders.mjs.map +1 -0
  51. package/resources/external-requirements.d.mts +2 -0
  52. package/resources/external-requirements.d.mts.map +1 -0
  53. package/resources/external-requirements.d.ts +2 -0
  54. package/resources/external-requirements.d.ts.map +1 -0
  55. package/resources/external-requirements.js +6 -0
  56. package/resources/external-requirements.js.map +1 -0
  57. package/resources/external-requirements.mjs +3 -0
  58. package/resources/external-requirements.mjs.map +1 -0
  59. package/resources/index.d.mts +1 -0
  60. package/resources/index.d.mts.map +1 -1
  61. package/resources/index.d.ts +1 -0
  62. package/resources/index.d.ts.map +1 -1
  63. package/resources/index.js +6 -4
  64. package/resources/index.js.map +1 -1
  65. package/resources/index.mjs +1 -0
  66. package/resources/index.mjs.map +1 -1
  67. package/resources/outbound-voice-profiles.d.mts +30 -30
  68. package/resources/outbound-voice-profiles.d.ts +30 -30
  69. package/resources/webhooks.d.mts +1 -1
  70. package/resources/webhooks.d.mts.map +1 -1
  71. package/resources/webhooks.d.ts +1 -1
  72. package/resources/webhooks.d.ts.map +1 -1
  73. package/resources/webhooks.js +4 -11
  74. package/resources/webhooks.js.map +1 -1
  75. package/resources/webhooks.mjs +4 -11
  76. package/resources/webhooks.mjs.map +1 -1
  77. package/src/client.ts +5 -0
  78. package/src/lib/webhooks.ts +59 -18
  79. package/src/resources/ai/assistants/assistants.ts +42 -19
  80. package/src/resources/credential-connections/credential-connections.ts +2 -2
  81. package/src/resources/external-requirements/external-requirements.ts +27 -0
  82. package/src/resources/external-requirements/index.ts +10 -0
  83. package/src/resources/external-requirements/sub-number-orders.ts +202 -0
  84. package/src/resources/external-requirements.ts +3 -0
  85. package/src/resources/index.ts +1 -0
  86. package/src/resources/outbound-voice-profiles.ts +30 -30
  87. package/src/resources/webhooks.ts +5 -11
  88. package/src/version.ts +1 -1
  89. package/version.d.mts +1 -1
  90. package/version.d.ts +1 -1
  91. package/version.js +1 -1
  92. package/version.mjs +1 -1
@@ -2701,17 +2701,19 @@ export interface TranscriptionSettings {
2701
2701
  * supported models will automatically detect the language. For `deepgram/flux`,
2702
2702
  * supported values are: `auto` (Telnyx language detection controls the language
2703
2703
  * hint), `multi` (no language hint), and language-specific hints `en`, `es`, `fr`,
2704
- * `de`, `hi`, `ru`, `pt`, `ja`, `it`, and `nl`. For `soniox/stt-rt-v4`, `auto`
2705
- * omits the language hint and lets Soniox auto-detect; ISO 639-1 codes (e.g. `en`,
2706
- * `es`) bias detection toward that language. For `humain/realtime`, supported
2707
- * values are `ar`, `en`, `codeswitch` (Arabic/English code-switching), and `auto`
2708
- * (resolves server-side to code-switching). Unlike other models, `humain/realtime`
2709
- * does not fall back to `auto` when `language` is omitted — omitting it applies
2710
- * `en` instead. For `reson8/turns`, supported values are `auto` (or unset) for
2711
- * automatic language detection, and the language codes `nl`, `en`, `fr`, `fy`,
2712
- * `de`, `it`, `pl`, `pt`, `es`, and `sv` to fix the transcription language. For
2713
- * `cohere/ar-stt`, supported values are `ar` and `en`; unlike other models, this
2714
- * model does not auto-detect and defaults to `ar` when `language` is omitted.
2704
+ * `de`, `hi`, `ru`, `pt`, `ja`, `it`, and `nl`. For `soniox/stt-rt-v4` and
2705
+ * `soniox/stt-rt-v5`, `auto` omits the language hint and lets Soniox auto-detect;
2706
+ * ISO 639-1 codes (e.g. `en`, `es`) bias detection toward that language;
2707
+ * `settings.language_hints` can pin multiple languages at once instead. For
2708
+ * `humain/realtime`, supported values are `ar`, `en`, `codeswitch` (Arabic/English
2709
+ * code-switching), and `auto` (resolves server-side to code-switching). Unlike
2710
+ * other models, `humain/realtime` does not fall back to `auto` when `language` is
2711
+ * omitted — omitting it applies `en` instead. For `reson8/turns`, supported values
2712
+ * are `auto` (or unset) for automatic language detection, and the language codes
2713
+ * `nl`, `en`, `fr`, `fy`, `de`, `it`, `pl`, `pt`, `es`, and `sv` to fix the
2714
+ * transcription language. For `cohere/ar-stt`, supported values are `ar` and `en`;
2715
+ * unlike other models, this model does not auto-detect and defaults to `ar` when
2716
+ * `language` is omitted.
2715
2717
  */
2716
2718
  language?: string;
2717
2719
 
@@ -2726,8 +2728,9 @@ export interface TranscriptionSettings {
2726
2728
  * - `assemblyai/universal-streaming` is a multilingual streaming model with
2727
2729
  * configurable turn detection.
2728
2730
  * - `xai/grok-stt` is a multilingual Grok STT model.
2729
- * - `soniox/stt-rt-v4` is a multilingual streaming model with automatic language
2730
- * detection and configurable endpointing.
2731
+ * - `soniox/stt-rt-v4` and `soniox/stt-rt-v5` are multilingual streaming models
2732
+ * with automatic language detection, configurable endpointing, term biasing
2733
+ * (`context`), and `language_hints`.
2731
2734
  * - `nvidia/parakeet-v3` is a multilingual transcription model with automatic
2732
2735
  * language detection.
2733
2736
  * - `humain/realtime` is a streaming model with native Arabic and Arabic/English
@@ -2744,6 +2747,7 @@ export interface TranscriptionSettings {
2744
2747
  | 'assemblyai/universal-streaming'
2745
2748
  | 'xai/grok-stt'
2746
2749
  | 'soniox/stt-rt-v4'
2750
+ | 'soniox/stt-rt-v5'
2747
2751
  | 'nvidia/parakeet-v3'
2748
2752
  | 'humain/realtime'
2749
2753
  | 'reson8/turns'
@@ -2761,6 +2765,17 @@ export interface TranscriptionSettings {
2761
2765
  }
2762
2766
 
2763
2767
  export interface TranscriptionSettingsConfig {
2768
+ /**
2769
+ * Available only for soniox/stt-rt-v4 and soniox/stt-rt-v5. A comma-separated list
2770
+ * of terms to boost for recognition during transcription, for staff names,
2771
+ * building names, or other domain-specific vocabulary. This field may be templated
2772
+ * with
2773
+ * [dynamic variables](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables)
2774
+ * using mustache syntax (e.g. `Telnyx,{{customer_name}},VoIP`). Variables are
2775
+ * resolved at call time before the value is sent to Soniox.
2776
+ */
2777
+ context?: string;
2778
+
2764
2779
  /**
2765
2780
  * Available only for deepgram/flux. Confidence threshold for eager end of turn
2766
2781
  * detection. Must be lower than or equal to eot_threshold. Setting this equal to
@@ -2769,8 +2784,9 @@ export interface TranscriptionSettingsConfig {
2769
2784
  eager_eot_threshold?: number;
2770
2785
 
2771
2786
  /**
2772
- * Available only for soniox/stt-rt-v4. When true, Soniox emits end-of-utterance
2773
- * events at the cadence configured by `max_endpoint_delay_ms`.
2787
+ * Available only for soniox/stt-rt-v4 and soniox/stt-rt-v5. When true, Soniox
2788
+ * emits end-of-utterance events at the cadence configured by
2789
+ * `max_endpoint_delay_ms`.
2774
2790
  */
2775
2791
  enable_endpoint_detection?: boolean;
2776
2792
 
@@ -2794,8 +2810,8 @@ export interface TranscriptionSettingsConfig {
2794
2810
  eot_timeout_ms?: number;
2795
2811
 
2796
2812
  /**
2797
- * Available only for soniox/stt-rt-v4. When true, Soniox streams interim
2798
- * (non-final) results in addition to finalized transcripts.
2813
+ * Available only for soniox/stt-rt-v4 and soniox/stt-rt-v5. When true, Soniox
2814
+ * streams interim (non-final) results in addition to finalized transcripts.
2799
2815
  */
2800
2816
  interim_results?: boolean;
2801
2817
 
@@ -2811,8 +2827,15 @@ export interface TranscriptionSettingsConfig {
2811
2827
  keyterm?: string;
2812
2828
 
2813
2829
  /**
2814
- * Available only for soniox/stt-rt-v4. Maximum silence (in milliseconds) before
2815
- * Soniox emits an end-of-utterance event. Only honored when
2830
+ * Available only for soniox/stt-rt-v4 and soniox/stt-rt-v5. A list of ISO 639-1
2831
+ * language codes (e.g. `["nl", "fr"]`) to pin recognition to multiple languages at
2832
+ * once, overriding the single hint derived from `language`.
2833
+ */
2834
+ language_hints?: Array<string>;
2835
+
2836
+ /**
2837
+ * Available only for soniox/stt-rt-v4 and soniox/stt-rt-v5. Maximum silence (in
2838
+ * milliseconds) before Soniox emits an end-of-utterance event. Only honored when
2816
2839
  * `enable_endpoint_detection` is true.
2817
2840
  */
2818
2841
  max_endpoint_delay_ms?: number;
@@ -130,8 +130,8 @@ export type ConnectionNoiseSuppression = 'inbound' | 'outbound' | 'both' | 'disa
130
130
 
131
131
  export interface ConnectionRtcpSettings {
132
132
  /**
133
- * BETA - Enable the capture and storage of RTCP messages to create QoS reports on
134
- * the Telnyx Mission Control Portal.
133
+ * Enable the capture and storage of RTCP messages to create QoS reports on the
134
+ * Telnyx Mission Control Portal.
135
135
  */
136
136
  capture_enabled?: boolean;
137
137
 
@@ -0,0 +1,27 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../core/resource';
4
+ import * as SubNumberOrdersAPI from './sub-number-orders';
5
+ import {
6
+ SubNumberOrderRetrieveParams,
7
+ SubNumberOrderRetrieveResponse,
8
+ SubNumberOrderUpdateParams,
9
+ SubNumberOrderUpdateResponse,
10
+ SubNumberOrders,
11
+ } from './sub-number-orders';
12
+
13
+ export class ExternalRequirements extends APIResource {
14
+ subNumberOrders: SubNumberOrdersAPI.SubNumberOrders = new SubNumberOrdersAPI.SubNumberOrders(this._client);
15
+ }
16
+
17
+ ExternalRequirements.SubNumberOrders = SubNumberOrders;
18
+
19
+ export declare namespace ExternalRequirements {
20
+ export {
21
+ SubNumberOrders as SubNumberOrders,
22
+ type SubNumberOrderRetrieveResponse as SubNumberOrderRetrieveResponse,
23
+ type SubNumberOrderUpdateResponse as SubNumberOrderUpdateResponse,
24
+ type SubNumberOrderRetrieveParams as SubNumberOrderRetrieveParams,
25
+ type SubNumberOrderUpdateParams as SubNumberOrderUpdateParams,
26
+ };
27
+ }
@@ -0,0 +1,10 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export { ExternalRequirements } from './external-requirements';
4
+ export {
5
+ SubNumberOrders,
6
+ type SubNumberOrderRetrieveResponse,
7
+ type SubNumberOrderUpdateResponse,
8
+ type SubNumberOrderRetrieveParams,
9
+ type SubNumberOrderUpdateParams,
10
+ } from './sub-number-orders';
@@ -0,0 +1,202 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../core/resource';
4
+ import { APIPromise } from '../../core/api-promise';
5
+ import { RequestOptions } from '../../internal/request-options';
6
+ import { path } from '../../internal/utils/path';
7
+
8
+ /**
9
+ * Requirement Groups
10
+ */
11
+ export class SubNumberOrders extends APIResource {
12
+ /**
13
+ * Returns the input fields an action requirement needs and the current requirement
14
+ * action for a sub number order. Action requirements are fulfilled by an external
15
+ * step rather than by uploading documents. Australia mobile ID verification is
16
+ * currently the only action requirement. Once a verification link has been
17
+ * generated, it is returned in `requirement_action.value`.
18
+ *
19
+ * @example
20
+ * ```ts
21
+ * const subNumberOrder =
22
+ * await client.externalRequirements.subNumberOrders.retrieve(
23
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
24
+ * {
25
+ * regulatory_requirement_id:
26
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
27
+ * },
28
+ * );
29
+ * ```
30
+ */
31
+ retrieve(
32
+ subNumberOrderID: string,
33
+ params: SubNumberOrderRetrieveParams,
34
+ options?: RequestOptions,
35
+ ): APIPromise<SubNumberOrderRetrieveResponse> {
36
+ const { regulatory_requirement_id } = params;
37
+ return this._client.get(
38
+ path`/external_requirements/${regulatory_requirement_id}/sub_number_orders/${subNumberOrderID}`,
39
+ options,
40
+ );
41
+ }
42
+
43
+ /**
44
+ * Submits the end user's details to the external verification provider and returns
45
+ * the requirement action. Australia mobile ID verification is currently the only
46
+ * action requirement. It generates a unique Onfido verification link, returned in
47
+ * `requirement_action.value`, which you share with the end user. The end user's
48
+ * `first_name` and `last_name` must be nested inside a `requirement` object;
49
+ * sending them at the top level is rejected.
50
+ *
51
+ * @example
52
+ * ```ts
53
+ * const subNumberOrder =
54
+ * await client.externalRequirements.subNumberOrders.update(
55
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
56
+ * {
57
+ * regulatory_requirement_id:
58
+ * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
59
+ * requirement: { first_name: 'Jane', last_name: 'Doe' },
60
+ * },
61
+ * );
62
+ * ```
63
+ */
64
+ update(
65
+ subNumberOrderID: string,
66
+ params: SubNumberOrderUpdateParams,
67
+ options?: RequestOptions,
68
+ ): APIPromise<SubNumberOrderUpdateResponse> {
69
+ const { regulatory_requirement_id, ...body } = params;
70
+ return this._client.post(
71
+ path`/external_requirements/${regulatory_requirement_id}/sub_number_orders/${subNumberOrderID}`,
72
+ { body, ...options },
73
+ );
74
+ }
75
+ }
76
+
77
+ export interface SubNumberOrderRetrieveResponse {
78
+ data?: SubNumberOrderRetrieveResponse.Data;
79
+ }
80
+
81
+ export namespace SubNumberOrderRetrieveResponse {
82
+ export interface Data {
83
+ /**
84
+ * The fields the end user must provide to fulfill this requirement.
85
+ */
86
+ fields_required?: Array<Data.FieldsRequired>;
87
+
88
+ regulatory_requirement_id?: string;
89
+
90
+ requirement_action?: Data.RequirementAction;
91
+ }
92
+
93
+ export namespace Data {
94
+ export interface FieldsRequired {
95
+ description?: string;
96
+
97
+ /**
98
+ * The field name to send inside the `requirement` object on the POST.
99
+ */
100
+ name?: string;
101
+
102
+ type?: string;
103
+
104
+ /**
105
+ * The value already stored for this field, or null if not yet provided.
106
+ */
107
+ value?: string | null;
108
+ }
109
+
110
+ export interface RequirementAction {
111
+ /**
112
+ * The type of action the end user must complete.
113
+ */
114
+ type?: string;
115
+
116
+ /**
117
+ * The action value. For ID verification this is the verification link URL, or null
118
+ * until it has been generated.
119
+ */
120
+ value?: string | null;
121
+ }
122
+ }
123
+ }
124
+
125
+ export interface SubNumberOrderUpdateResponse {
126
+ data?: SubNumberOrderUpdateResponse.Data;
127
+ }
128
+
129
+ export namespace SubNumberOrderUpdateResponse {
130
+ export interface Data {
131
+ regulatory_requirement_id?: string;
132
+
133
+ requirement_action?: Data.RequirementAction;
134
+
135
+ sub_order_id?: string;
136
+ }
137
+
138
+ export namespace Data {
139
+ export interface RequirementAction {
140
+ type?: string;
141
+
142
+ /**
143
+ * For Australia mobile ID verification, the unique Onfido verification link to
144
+ * share with the end user.
145
+ */
146
+ value?: string | null;
147
+ }
148
+ }
149
+ }
150
+
151
+ export interface SubNumberOrderRetrieveParams {
152
+ /**
153
+ * The ID of the regulatory (action) requirement. For Australia mobile ID
154
+ * verification this is `b7c72fb8-fa08-4529-aaf6-b9117d3f3698`.
155
+ */
156
+ regulatory_requirement_id: string;
157
+ }
158
+
159
+ export interface SubNumberOrderUpdateParams {
160
+ /**
161
+ * Path param: The ID of the regulatory (action) requirement. For Australia mobile
162
+ * ID verification this is `b7c72fb8-fa08-4529-aaf6-b9117d3f3698`.
163
+ */
164
+ regulatory_requirement_id: string;
165
+
166
+ /**
167
+ * Body param: The end user's identity details for the action requirement.
168
+ * Australia mobile ID verification is currently the only action requirement. It
169
+ * requires `first_name` and `last_name`, the same fields the corresponding GET
170
+ * lists in `fields_required`.
171
+ */
172
+ requirement: SubNumberOrderUpdateParams.Requirement;
173
+ }
174
+
175
+ export namespace SubNumberOrderUpdateParams {
176
+ /**
177
+ * The end user's identity details for the action requirement. Australia mobile ID
178
+ * verification is currently the only action requirement. It requires `first_name`
179
+ * and `last_name`, the same fields the corresponding GET lists in
180
+ * `fields_required`.
181
+ */
182
+ export interface Requirement {
183
+ /**
184
+ * The end user's first name.
185
+ */
186
+ first_name: string;
187
+
188
+ /**
189
+ * The end user's last name.
190
+ */
191
+ last_name: string;
192
+ }
193
+ }
194
+
195
+ export declare namespace SubNumberOrders {
196
+ export {
197
+ type SubNumberOrderRetrieveResponse as SubNumberOrderRetrieveResponse,
198
+ type SubNumberOrderUpdateResponse as SubNumberOrderUpdateResponse,
199
+ type SubNumberOrderRetrieveParams as SubNumberOrderRetrieveParams,
200
+ type SubNumberOrderUpdateParams as SubNumberOrderUpdateParams,
201
+ };
202
+ }
@@ -0,0 +1,3 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export * from './external-requirements/index';
@@ -459,6 +459,7 @@ export {
459
459
  type ExternalConnectionUpdateLocationParams,
460
460
  type ExternalConnectionsDefaultFlatPagination,
461
461
  } from './external-connections/external-connections';
462
+ export { ExternalRequirements } from './external-requirements/external-requirements';
462
463
  export {
463
464
  FaxApplications,
464
465
  type FaxApplication,
@@ -148,8 +148,8 @@ export interface OutboundVoiceProfile {
148
148
  call_recording?: OutboundCallRecording;
149
149
 
150
150
  /**
151
- * (BETA) Specifies the time window and call limits for calls made using this
152
- * outbound voice profile. Note that all times are UTC in 24-hour clock time.
151
+ * Specifies the time window and call limits for calls made using this outbound
152
+ * voice profile. Note that all times are UTC in 24-hour clock time.
153
153
  */
154
154
  calling_window?: OutboundVoiceProfile.CallingWindow;
155
155
 
@@ -228,25 +228,25 @@ export interface OutboundVoiceProfile {
228
228
 
229
229
  export namespace OutboundVoiceProfile {
230
230
  /**
231
- * (BETA) Specifies the time window and call limits for calls made using this
232
- * outbound voice profile. Note that all times are UTC in 24-hour clock time.
231
+ * Specifies the time window and call limits for calls made using this outbound
232
+ * voice profile. Note that all times are UTC in 24-hour clock time.
233
233
  */
234
234
  export interface CallingWindow {
235
235
  /**
236
- * (BETA) The maximum number of calls that can be initiated to a single called
237
- * party (CLD) within the calling window. A null value means no limit.
236
+ * The maximum number of calls that can be initiated to a single called party (CLD)
237
+ * within the calling window. A null value means no limit.
238
238
  */
239
239
  calls_per_cld?: number;
240
240
 
241
241
  /**
242
- * (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are no
243
- * longer allowed to start.
242
+ * The UTC time of day (in HH:MM format, 24-hour clock) when calls are no longer
243
+ * allowed to start.
244
244
  */
245
245
  end_time?: string;
246
246
 
247
247
  /**
248
- * (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are
249
- * allowed to start.
248
+ * The UTC time of day (in HH:MM format, 24-hour clock) when calls are allowed to
249
+ * start.
250
250
  */
251
251
  start_time?: string;
252
252
  }
@@ -361,8 +361,8 @@ export interface OutboundVoiceProfileCreateParams {
361
361
  call_recording?: OutboundCallRecording;
362
362
 
363
363
  /**
364
- * (BETA) Specifies the time window and call limits for calls made using this
365
- * outbound voice profile. Note that all times are UTC in 24-hour clock time.
364
+ * Specifies the time window and call limits for calls made using this outbound
365
+ * voice profile. Note that all times are UTC in 24-hour clock time.
366
366
  */
367
367
  calling_window?: OutboundVoiceProfileCreateParams.CallingWindow;
368
368
 
@@ -421,25 +421,25 @@ export interface OutboundVoiceProfileCreateParams {
421
421
 
422
422
  export namespace OutboundVoiceProfileCreateParams {
423
423
  /**
424
- * (BETA) Specifies the time window and call limits for calls made using this
425
- * outbound voice profile. Note that all times are UTC in 24-hour clock time.
424
+ * Specifies the time window and call limits for calls made using this outbound
425
+ * voice profile. Note that all times are UTC in 24-hour clock time.
426
426
  */
427
427
  export interface CallingWindow {
428
428
  /**
429
- * (BETA) The maximum number of calls that can be initiated to a single called
430
- * party (CLD) within the calling window. A null value means no limit.
429
+ * The maximum number of calls that can be initiated to a single called party (CLD)
430
+ * within the calling window. A null value means no limit.
431
431
  */
432
432
  calls_per_cld?: number;
433
433
 
434
434
  /**
435
- * (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are no
436
- * longer allowed to start.
435
+ * The UTC time of day (in HH:MM format, 24-hour clock) when calls are no longer
436
+ * allowed to start.
437
437
  */
438
438
  end_time?: string;
439
439
 
440
440
  /**
441
- * (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are
442
- * allowed to start.
441
+ * The UTC time of day (in HH:MM format, 24-hour clock) when calls are allowed to
442
+ * start.
443
443
  */
444
444
  start_time?: string;
445
445
  }
@@ -460,8 +460,8 @@ export interface OutboundVoiceProfileUpdateParams {
460
460
  call_recording?: OutboundCallRecording;
461
461
 
462
462
  /**
463
- * (BETA) Specifies the time window and call limits for calls made using this
464
- * outbound voice profile.
463
+ * Specifies the time window and call limits for calls made using this outbound
464
+ * voice profile.
465
465
  */
466
466
  calling_window?: OutboundVoiceProfileUpdateParams.CallingWindow;
467
467
 
@@ -520,25 +520,25 @@ export interface OutboundVoiceProfileUpdateParams {
520
520
 
521
521
  export namespace OutboundVoiceProfileUpdateParams {
522
522
  /**
523
- * (BETA) Specifies the time window and call limits for calls made using this
524
- * outbound voice profile.
523
+ * Specifies the time window and call limits for calls made using this outbound
524
+ * voice profile.
525
525
  */
526
526
  export interface CallingWindow {
527
527
  /**
528
- * (BETA) The maximum number of calls that can be initiated to a single called
529
- * party (CLD) within the calling window. A null value means no limit.
528
+ * The maximum number of calls that can be initiated to a single called party (CLD)
529
+ * within the calling window. A null value means no limit.
530
530
  */
531
531
  calls_per_cld?: number;
532
532
 
533
533
  /**
534
- * (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are no
535
- * longer allowed to start.
534
+ * The UTC time of day (in HH:MM format, 24-hour clock) when calls are no longer
535
+ * allowed to start.
536
536
  */
537
537
  end_time?: string;
538
538
 
539
539
  /**
540
- * (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are
541
- * allowed to start.
540
+ * The UTC time of day (in HH:MM format, 24-hour clock) when calls are allowed to
541
+ * start.
542
542
  */
543
543
  start_time?: string;
544
544
  }
@@ -6,25 +6,19 @@ import * as NumberOrdersAPI from './number-orders';
6
6
  import * as CallsAPI from './calls/calls';
7
7
  import * as MessagesAPI from './messages/messages';
8
8
  import * as ThreadsAPI from './email-inboxes/threads/threads';
9
- import { Webhook } from 'standardwebhooks';
10
9
  import { EmailBracketCursorPagination } from '../core/pagination';
10
+ import { unsafeUnwrapWebhook, unwrapWebhook } from '../lib/webhooks';
11
11
 
12
12
  export class Webhooks extends APIResource {
13
- unwrap(
13
+ async unwrap(
14
14
  body: string,
15
15
  { headers, key }: { headers: Record<string, string>; key?: string },
16
- ): UnwrapWebhookEvent {
17
- if (headers !== undefined) {
18
- const keyStr: string | null = key === undefined ? this._client.publicKey : key;
19
- if (keyStr === null) throw new Error('Webhook key must not be null in order to unwrap');
20
- const wh = new Webhook(keyStr);
21
- wh.verify(body, headers);
22
- }
23
- return JSON.parse(body) as UnwrapWebhookEvent;
16
+ ): Promise<UnwrapWebhookEvent> {
17
+ return unwrapWebhook<UnwrapWebhookEvent>(body, { headers, key }, this._client.publicKey);
24
18
  }
25
19
 
26
20
  unsafeUnwrap(body: string): UnsafeUnwrapWebhookEvent {
27
- return JSON.parse(body) as UnsafeUnwrapWebhookEvent;
21
+ return unsafeUnwrapWebhook<UnsafeUnwrapWebhookEvent>(body);
28
22
  }
29
23
  }
30
24
 
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const VERSION = '7.18.0'; // x-release-please-version
1
+ export const VERSION = '7.19.0'; // x-release-please-version
package/version.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "7.18.0";
1
+ export declare const VERSION = "7.19.0";
2
2
  //# sourceMappingURL=version.d.mts.map
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "7.18.0";
1
+ export declare const VERSION = "7.19.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
- exports.VERSION = '7.18.0'; // x-release-please-version
4
+ exports.VERSION = '7.19.0'; // x-release-please-version
5
5
  //# sourceMappingURL=version.js.map
package/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '7.18.0'; // x-release-please-version
1
+ export const VERSION = '7.19.0'; // x-release-please-version
2
2
  //# sourceMappingURL=version.mjs.map