retell-sdk 4.7.0 → 4.8.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 (54) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +4 -0
  3. package/_shims/node-types.d.ts +1 -1
  4. package/core.d.ts +6 -3
  5. package/core.d.ts.map +1 -1
  6. package/core.js +25 -9
  7. package/core.js.map +1 -1
  8. package/core.mjs +22 -7
  9. package/core.mjs.map +1 -1
  10. package/index.d.mts +5 -0
  11. package/index.d.ts +5 -0
  12. package/index.d.ts.map +1 -1
  13. package/index.js +2 -0
  14. package/index.js.map +1 -1
  15. package/index.mjs +2 -0
  16. package/index.mjs.map +1 -1
  17. package/package.json +3 -3
  18. package/resources/agent.d.ts +18 -0
  19. package/resources/agent.d.ts.map +1 -1
  20. package/resources/agent.js.map +1 -1
  21. package/resources/agent.mjs.map +1 -1
  22. package/resources/call.d.ts +1 -1
  23. package/resources/call.js +1 -1
  24. package/resources/call.mjs +1 -1
  25. package/resources/index.d.ts +1 -0
  26. package/resources/index.d.ts.map +1 -1
  27. package/resources/index.js +3 -1
  28. package/resources/index.js.map +1 -1
  29. package/resources/index.mjs +1 -0
  30. package/resources/index.mjs.map +1 -1
  31. package/resources/knowledge-base.d.ts +147 -0
  32. package/resources/knowledge-base.d.ts.map +1 -0
  33. package/resources/knowledge-base.js +62 -0
  34. package/resources/knowledge-base.js.map +1 -0
  35. package/resources/knowledge-base.mjs +35 -0
  36. package/resources/knowledge-base.mjs.map +1 -0
  37. package/resources/llm.d.ts +243 -18
  38. package/resources/llm.d.ts.map +1 -1
  39. package/resources/llm.js.map +1 -1
  40. package/resources/llm.mjs.map +1 -1
  41. package/shims/node.d.ts +1 -0
  42. package/shims/node.d.ts.map +1 -1
  43. package/src/_shims/node-types.d.ts +1 -1
  44. package/src/core.ts +34 -8
  45. package/src/index.ts +6 -0
  46. package/src/resources/agent.ts +21 -0
  47. package/src/resources/call.ts +1 -1
  48. package/src/resources/index.ts +6 -0
  49. package/src/resources/knowledge-base.ts +199 -0
  50. package/src/resources/llm.ts +306 -18
  51. package/src/version.ts +1 -1
  52. package/version.d.ts +1 -1
  53. package/version.js +1 -1
  54. package/version.mjs +1 -1
@@ -152,6 +152,13 @@ export interface AgentResponse {
152
152
  */
153
153
  enable_backchannel?: boolean;
154
154
 
155
+ /**
156
+ * If set to true, will format transcription to number, date, email, etc. If set to
157
+ * false, will return transcripts in raw words. If not set, default value of true
158
+ * will apply.
159
+ */
160
+ enable_transcription_formatting?: boolean;
161
+
155
162
  /**
156
163
  * If set to true, will detect whether the call enters a voicemail. Note that this
157
164
  * feature is only available for phone calls.
@@ -528,6 +535,13 @@ export interface AgentCreateParams {
528
535
  */
529
536
  enable_backchannel?: boolean;
530
537
 
538
+ /**
539
+ * If set to true, will format transcription to number, date, email, etc. If set to
540
+ * false, will return transcripts in raw words. If not set, default value of true
541
+ * will apply.
542
+ */
543
+ enable_transcription_formatting?: boolean;
544
+
531
545
  /**
532
546
  * If set to true, will detect whether the call enters a voicemail. Note that this
533
547
  * feature is only available for phone calls.
@@ -889,6 +903,13 @@ export interface AgentUpdateParams {
889
903
  */
890
904
  enable_backchannel?: boolean;
891
905
 
906
+ /**
907
+ * If set to true, will format transcription to number, date, email, etc. If set to
908
+ * false, will return transcripts in raw words. If not set, default value of true
909
+ * will apply.
910
+ */
911
+ enable_transcription_formatting?: boolean;
912
+
892
913
  /**
893
914
  * If set to true, will detect whether the call enters a voicemail. Note that this
894
915
  * feature is only available for phone calls.
@@ -40,7 +40,7 @@ export class Call extends APIResource {
40
40
  }
41
41
 
42
42
  /**
43
- * Register a new outbound phone call for custom telephony
43
+ * Register a new phone call for custom telephony
44
44
  */
45
45
  registerPhoneCall(
46
46
  body: CallRegisterPhoneCallParams,
@@ -13,6 +13,12 @@ export {
13
13
  Call,
14
14
  } from './call';
15
15
  export { ConcurrencyRetrieveResponse, Concurrency } from './concurrency';
16
+ export {
17
+ KnowledgeBaseResponse,
18
+ KnowledgeBaseListResponse,
19
+ KnowledgeBaseCreateParams,
20
+ KnowledgeBase,
21
+ } from './knowledge-base';
16
22
  export { LlmResponse, LlmListResponse, LlmCreateParams, LlmUpdateParams, Llm } from './llm';
17
23
  export {
18
24
  PhoneNumberResponse,
@@ -0,0 +1,199 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../resource';
4
+ import * as Core from '../core';
5
+ import * as KnowledgeBaseAPI from './knowledge-base';
6
+
7
+ export class KnowledgeBase extends APIResource {
8
+ /**
9
+ * Create a new knowledge base
10
+ */
11
+ create(
12
+ body: KnowledgeBaseCreateParams,
13
+ options?: Core.RequestOptions,
14
+ ): Core.APIPromise<KnowledgeBaseResponse> {
15
+ return this._client.post(
16
+ '/create-knowledge-base',
17
+ Core.multipartFormRequestOptions({ body, ...options }),
18
+ );
19
+ }
20
+
21
+ /**
22
+ * Retrieve details of a specific knowledge base
23
+ */
24
+ retrieve(knowledgeBaseId: string, options?: Core.RequestOptions): Core.APIPromise<KnowledgeBaseResponse> {
25
+ return this._client.get(`/get-knowledge-base/${knowledgeBaseId}`, options);
26
+ }
27
+
28
+ /**
29
+ * List all knowledge bases
30
+ */
31
+ list(options?: Core.RequestOptions): Core.APIPromise<KnowledgeBaseListResponse> {
32
+ return this._client.get('/list-knowledge-bases', options);
33
+ }
34
+
35
+ /**
36
+ * Delete an existing knowledge base
37
+ */
38
+ delete(knowledgeBaseId: string, options?: Core.RequestOptions): Core.APIPromise<void> {
39
+ return this._client.delete(`/delete-knowledge-base/${knowledgeBaseId}`, {
40
+ ...options,
41
+ headers: { Accept: '*/*', ...options?.headers },
42
+ });
43
+ }
44
+ }
45
+
46
+ export interface KnowledgeBaseResponse {
47
+ /**
48
+ * Unique id of the knowledge base.
49
+ */
50
+ knowledge_base_id: string;
51
+
52
+ /**
53
+ * Name of the knowledge base. Must be less than 40 characters.
54
+ */
55
+ knowledge_base_name: string;
56
+
57
+ /**
58
+ * Status of the knowledge base. When it's created and being processed, it's
59
+ * "in_progress". When the processing is done, it's "complete". When there's an
60
+ * error in processing, it's "error".
61
+ */
62
+ status: 'in_progress' | 'complete' | 'error';
63
+
64
+ /**
65
+ * Whether to enable auto refresh for the knowledge base urls. If set to true, will
66
+ * retrieve the data from the specified url every 12 hours.
67
+ */
68
+ enable_auto_refresh?: boolean;
69
+
70
+ /**
71
+ * Sources of the knowledge base. Will be populated after the processing is done
72
+ * (when status is "complete").
73
+ */
74
+ knowledge_base_sources?: Array<
75
+ | KnowledgeBaseResponse.KnowledgeBaseSourceDocument
76
+ | KnowledgeBaseResponse.KnowledgeBaseSourceText
77
+ | KnowledgeBaseResponse.KnowledgeBaseSourceURL
78
+ >;
79
+
80
+ /**
81
+ * Last refreshed timestamp (milliseconds since epoch). Only applicable when
82
+ * enable_auto_refresh is true.
83
+ */
84
+ last_refreshed_timestamp?: number;
85
+ }
86
+
87
+ export namespace KnowledgeBaseResponse {
88
+ export interface KnowledgeBaseSourceDocument {
89
+ /**
90
+ * URL of the document stored.
91
+ */
92
+ file_url: string;
93
+
94
+ /**
95
+ * Filename of the document.
96
+ */
97
+ filename: string;
98
+
99
+ /**
100
+ * Unique id of the knowledge base source.
101
+ */
102
+ source_id: string;
103
+
104
+ /**
105
+ * Type of the knowledge base source.
106
+ */
107
+ type: 'document';
108
+ }
109
+
110
+ export interface KnowledgeBaseSourceText {
111
+ /**
112
+ * URL of the text content stored.
113
+ */
114
+ content_url: string;
115
+
116
+ /**
117
+ * Unique id of the knowledge base source.
118
+ */
119
+ source_id: string;
120
+
121
+ /**
122
+ * Title of the text.
123
+ */
124
+ title: string;
125
+
126
+ /**
127
+ * Type of the knowledge base source.
128
+ */
129
+ type: 'text';
130
+ }
131
+
132
+ export interface KnowledgeBaseSourceURL {
133
+ /**
134
+ * Unique id of the knowledge base source.
135
+ */
136
+ source_id: string;
137
+
138
+ /**
139
+ * Type of the knowledge base source.
140
+ */
141
+ type: 'url';
142
+
143
+ /**
144
+ * URL used to be scraped and added to the knowledge base.
145
+ */
146
+ url: string;
147
+ }
148
+ }
149
+
150
+ export type KnowledgeBaseListResponse = Array<KnowledgeBaseResponse>;
151
+
152
+ export interface KnowledgeBaseCreateParams {
153
+ /**
154
+ * Name of the knowledge base. Must be less than 40 characters.
155
+ */
156
+ knowledge_base_name: string;
157
+
158
+ /**
159
+ * Whether to enable auto refresh for the knowledge base urls. If set to true, will
160
+ * retrieve the data from the specified url every 12 hours.
161
+ */
162
+ enable_auto_refresh?: boolean;
163
+
164
+ /**
165
+ * Files to add to the knowledge base. Limit to 25 files, where each file is
166
+ * limited to 50MB.
167
+ */
168
+ knowledge_base_files?: Array<Core.Uploadable>;
169
+
170
+ /**
171
+ * Texts to add to the knowledge base.
172
+ */
173
+ knowledge_base_texts?: Array<KnowledgeBaseCreateParams.KnowledgeBaseText>;
174
+
175
+ /**
176
+ * URLs to be scraped and added to the knowledge base. Must be valid urls.
177
+ */
178
+ knowledge_base_urls?: Array<string>;
179
+ }
180
+
181
+ export namespace KnowledgeBaseCreateParams {
182
+ export interface KnowledgeBaseText {
183
+ /**
184
+ * Text to add to the knowledge base.
185
+ */
186
+ text: string;
187
+
188
+ /**
189
+ * Title of the text.
190
+ */
191
+ title: string;
192
+ }
193
+ }
194
+
195
+ export namespace KnowledgeBase {
196
+ export import KnowledgeBaseResponse = KnowledgeBaseAPI.KnowledgeBaseResponse;
197
+ export import KnowledgeBaseListResponse = KnowledgeBaseAPI.KnowledgeBaseListResponse;
198
+ export import KnowledgeBaseCreateParams = KnowledgeBaseAPI.KnowledgeBaseCreateParams;
199
+ }