retell-sdk 5.49.1 → 5.50.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 (129) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/client.d.mts +11 -9
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +11 -9
  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/index.d.mts +1 -0
  11. package/index.d.mts.map +1 -1
  12. package/index.d.ts +1 -0
  13. package/index.d.ts.map +1 -1
  14. package/index.js +4 -1
  15. package/index.js.map +1 -1
  16. package/index.mjs +1 -0
  17. package/index.mjs.map +1 -1
  18. package/lib/webhook_auth.d.mts +18 -0
  19. package/lib/webhook_auth.d.mts.map +1 -0
  20. package/lib/webhook_auth.d.ts +18 -0
  21. package/lib/webhook_auth.d.ts.map +1 -0
  22. package/lib/webhook_auth.js +80 -0
  23. package/lib/webhook_auth.js.map +1 -0
  24. package/lib/webhook_auth.mjs +75 -0
  25. package/lib/webhook_auth.mjs.map +1 -0
  26. package/package.json +11 -1
  27. package/resources/agent.d.mts +69 -69
  28. package/resources/agent.d.mts.map +1 -1
  29. package/resources/agent.d.ts +69 -69
  30. package/resources/agent.d.ts.map +1 -1
  31. package/resources/agent.js +30 -30
  32. package/resources/agent.js.map +1 -1
  33. package/resources/agent.mjs +30 -30
  34. package/resources/agent.mjs.map +1 -1
  35. package/resources/call.d.mts +1350 -1350
  36. package/resources/call.d.mts.map +1 -1
  37. package/resources/call.d.ts +1350 -1350
  38. package/resources/call.d.ts.map +1 -1
  39. package/resources/call.js +60 -60
  40. package/resources/call.js.map +1 -1
  41. package/resources/call.mjs +60 -60
  42. package/resources/call.mjs.map +1 -1
  43. package/resources/chat-agent.d.mts +70 -70
  44. package/resources/chat-agent.d.mts.map +1 -1
  45. package/resources/chat-agent.d.ts +70 -70
  46. package/resources/chat-agent.d.ts.map +1 -1
  47. package/resources/chat-agent.js +31 -31
  48. package/resources/chat-agent.js.map +1 -1
  49. package/resources/chat-agent.mjs +31 -31
  50. package/resources/chat-agent.mjs.map +1 -1
  51. package/resources/chat.d.mts +97 -97
  52. package/resources/chat.d.mts.map +1 -1
  53. package/resources/chat.d.ts +97 -97
  54. package/resources/chat.d.ts.map +1 -1
  55. package/resources/chat.js +55 -55
  56. package/resources/chat.js.map +1 -1
  57. package/resources/chat.mjs +55 -55
  58. package/resources/chat.mjs.map +1 -1
  59. package/resources/conversation-flow-component.d.mts +25 -25
  60. package/resources/conversation-flow-component.d.mts.map +1 -1
  61. package/resources/conversation-flow-component.d.ts +25 -25
  62. package/resources/conversation-flow-component.d.ts.map +1 -1
  63. package/resources/conversation-flow-component.js +12 -12
  64. package/resources/conversation-flow-component.js.map +1 -1
  65. package/resources/conversation-flow-component.mjs +12 -12
  66. package/resources/conversation-flow-component.mjs.map +1 -1
  67. package/resources/conversation-flow.d.mts +25 -25
  68. package/resources/conversation-flow.d.mts.map +1 -1
  69. package/resources/conversation-flow.d.ts +25 -25
  70. package/resources/conversation-flow.d.ts.map +1 -1
  71. package/resources/conversation-flow.js +12 -12
  72. package/resources/conversation-flow.js.map +1 -1
  73. package/resources/conversation-flow.mjs +12 -12
  74. package/resources/conversation-flow.mjs.map +1 -1
  75. package/resources/index.d.mts +9 -9
  76. package/resources/index.d.mts.map +1 -1
  77. package/resources/index.d.ts +9 -9
  78. package/resources/index.d.ts.map +1 -1
  79. package/resources/llm.d.mts +24 -24
  80. package/resources/llm.d.mts.map +1 -1
  81. package/resources/llm.d.ts +24 -24
  82. package/resources/llm.d.ts.map +1 -1
  83. package/resources/llm.js +11 -11
  84. package/resources/llm.js.map +1 -1
  85. package/resources/llm.mjs +11 -11
  86. package/resources/llm.mjs.map +1 -1
  87. package/resources/phone-number.d.mts +130 -130
  88. package/resources/phone-number.d.mts.map +1 -1
  89. package/resources/phone-number.d.ts +130 -130
  90. package/resources/phone-number.d.ts.map +1 -1
  91. package/resources/phone-number.js +27 -27
  92. package/resources/phone-number.js.map +1 -1
  93. package/resources/phone-number.mjs +27 -27
  94. package/resources/phone-number.mjs.map +1 -1
  95. package/resources/tests.d.mts +95 -95
  96. package/resources/tests.d.mts.map +1 -1
  97. package/resources/tests.d.ts +95 -95
  98. package/resources/tests.d.ts.map +1 -1
  99. package/resources/tests.js +27 -27
  100. package/resources/tests.js.map +1 -1
  101. package/resources/tests.mjs +27 -27
  102. package/resources/tests.mjs.map +1 -1
  103. package/resources/voice.d.mts +8 -8
  104. package/resources/voice.d.mts.map +1 -1
  105. package/resources/voice.d.ts +8 -8
  106. package/resources/voice.d.ts.map +1 -1
  107. package/resources/voice.js +12 -12
  108. package/resources/voice.js.map +1 -1
  109. package/resources/voice.mjs +12 -12
  110. package/resources/voice.mjs.map +1 -1
  111. package/src/client.ts +21 -18
  112. package/src/index.ts +1 -0
  113. package/src/lib/webhook_auth.ts +112 -0
  114. package/src/resources/agent.ts +90 -90
  115. package/src/resources/call.ts +1821 -1821
  116. package/src/resources/chat-agent.ts +95 -95
  117. package/src/resources/chat.ts +112 -112
  118. package/src/resources/conversation-flow-component.ts +34 -34
  119. package/src/resources/conversation-flow.ts +34 -34
  120. package/src/resources/index.ts +18 -18
  121. package/src/resources/llm.ts +30 -30
  122. package/src/resources/phone-number.ts +152 -152
  123. package/src/resources/tests.ts +136 -136
  124. package/src/resources/voice.ts +12 -12
  125. package/src/version.ts +1 -1
  126. package/version.d.mts +1 -1
  127. package/version.d.ts +1 -1
  128. package/version.js +1 -1
  129. package/version.mjs +1 -1
@@ -7,28 +7,16 @@ const headers_1 = require("../internal/headers.js");
7
7
  const path_1 = require("../internal/utils/path.js");
8
8
  class Tests extends resource_1.APIResource {
9
9
  /**
10
- * Create a new test case definition
11
- */
12
- createTestCaseDefinition(body, options) {
13
- return this._client.post('/create-test-case-definition', { body, ...options });
14
- }
15
- /**
16
- * Get a test case definition by ID
17
- */
18
- getTestCaseDefinition(testCaseDefinitionID, options) {
19
- return this._client.get((0, path_1.path) `/get-test-case-definition/${testCaseDefinitionID}`, options);
20
- }
21
- /**
22
- * List test case definitions with pagination
10
+ * Create a batch test to run multiple test cases
23
11
  */
24
- listTestCaseDefinitions(query, options) {
25
- return this._client.get('/v2/list-test-case-definitions', { query, ...options });
12
+ createBatchTest(body, options) {
13
+ return this._client.post('/create-batch-test', { body, ...options });
26
14
  }
27
15
  /**
28
- * Update a test case definition
16
+ * Create a new test case definition
29
17
  */
30
- updateTestCaseDefinition(testCaseDefinitionID, body, options) {
31
- return this._client.put((0, path_1.path) `/update-test-case-definition/${testCaseDefinitionID}`, { body, ...options });
18
+ createTestCaseDefinition(body, options) {
19
+ return this._client.post('/create-test-case-definition', { body, ...options });
32
20
  }
33
21
  /**
34
22
  * Delete a test case definition
@@ -39,12 +27,6 @@ class Tests extends resource_1.APIResource {
39
27
  headers: (0, headers_1.buildHeaders)([{ Accept: '*/*' }, options?.headers]),
40
28
  });
41
29
  }
42
- /**
43
- * Create a batch test to run multiple test cases
44
- */
45
- createBatchTest(body, options) {
46
- return this._client.post('/create-batch-test', { body, ...options });
47
- }
48
30
  /**
49
31
  * Get a batch test job by ID
50
32
  */
@@ -52,10 +34,10 @@ class Tests extends resource_1.APIResource {
52
34
  return this._client.get((0, path_1.path) `/get-batch-test/${testCaseBatchJobID}`, options);
53
35
  }
54
36
  /**
55
- * List batch test jobs with pagination
37
+ * Get a test case definition by ID
56
38
  */
57
- listBatchTests(query, options) {
58
- return this._client.get('/v2/list-batch-tests', { query, ...options });
39
+ getTestCaseDefinition(testCaseDefinitionID, options) {
40
+ return this._client.get((0, path_1.path) `/get-test-case-definition/${testCaseDefinitionID}`, options);
59
41
  }
60
42
  /**
61
43
  * Get a test case job (test run) by ID
@@ -63,12 +45,30 @@ class Tests extends resource_1.APIResource {
63
45
  getTestRun(testCaseJobID, options) {
64
46
  return this._client.get((0, path_1.path) `/get-test-run/${testCaseJobID}`, options);
65
47
  }
48
+ /**
49
+ * List batch test jobs with pagination
50
+ */
51
+ listBatchTests(query, options) {
52
+ return this._client.get('/v2/list-batch-tests', { query, ...options });
53
+ }
54
+ /**
55
+ * List test case definitions with pagination
56
+ */
57
+ listTestCaseDefinitions(query, options) {
58
+ return this._client.get('/v2/list-test-case-definitions', { query, ...options });
59
+ }
66
60
  /**
67
61
  * List test case jobs (test runs) for a batch test job with pagination
68
62
  */
69
63
  listTestRuns(testCaseBatchJobID, query = {}, options) {
70
64
  return this._client.get((0, path_1.path) `/v2/list-test-runs/${testCaseBatchJobID}`, { query, ...options });
71
65
  }
66
+ /**
67
+ * Update a test case definition
68
+ */
69
+ updateTestCaseDefinition(testCaseDefinitionID, body, options) {
70
+ return this._client.put((0, path_1.path) `/update-test-case-definition/${testCaseDefinitionID}`, { body, ...options });
71
+ }
72
72
  }
73
73
  exports.Tests = Tests;
74
74
  //# sourceMappingURL=tests.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tests.js","sourceRoot":"","sources":["../src/resources/tests.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAA+C;AAE/C,oDAAmD;AAEnD,oDAA8C;AAE9C,MAAa,KAAM,SAAQ,sBAAW;IACpC;;OAEG;IACH,wBAAwB,CACtB,IAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACH,qBAAqB,CACnB,oBAA4B,EAC5B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,6BAA6B,oBAAoB,EAAE,EAAE,OAAO,CAAC,CAAC;IAC5F,CAAC;IAED;;OAEG;IACH,uBAAuB,CACrB,KAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACnF,CAAC;IAED;;OAEG;IACH,wBAAwB,CACtB,oBAA4B,EAC5B,IAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,gCAAgC,oBAAoB,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5G,CAAC;IAED;;OAEG;IACH,wBAAwB,CAAC,oBAA4B,EAAE,OAAwB;QAC7E,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAA,WAAI,EAAA,gCAAgC,oBAAoB,EAAE,EAAE;YACrF,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,IAA+B,EAAE,OAAwB;QACvE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,kBAA0B,EAAE,OAAwB;QAC/D,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,mBAAmB,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,cAAc,CACZ,KAA+B,EAC/B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,aAAqB,EAAE,OAAwB;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,iBAAiB,aAAa,EAAE,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,YAAY,CACV,kBAA0B,EAC1B,QAAmD,EAAE,EACrD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,sBAAsB,kBAAkB,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjG,CAAC;CACF;AA7FD,sBA6FC"}
1
+ {"version":3,"file":"tests.js","sourceRoot":"","sources":["../src/resources/tests.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAA+C;AAE/C,oDAAmD;AAEnD,oDAA8C;AAE9C,MAAa,KAAM,SAAQ,sBAAW;IACpC;;OAEG;IACH,eAAe,CAAC,IAA+B,EAAE,OAAwB;QACvE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,wBAAwB,CACtB,IAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACH,wBAAwB,CAAC,oBAA4B,EAAE,OAAwB;QAC7E,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAA,WAAI,EAAA,gCAAgC,oBAAoB,EAAE,EAAE;YACrF,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,kBAA0B,EAAE,OAAwB;QAC/D,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,mBAAmB,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,qBAAqB,CACnB,oBAA4B,EAC5B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,6BAA6B,oBAAoB,EAAE,EAAE,OAAO,CAAC,CAAC;IAC5F,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,aAAqB,EAAE,OAAwB;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,iBAAiB,aAAa,EAAE,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,cAAc,CACZ,KAA+B,EAC/B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,uBAAuB,CACrB,KAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACnF,CAAC;IAED;;OAEG;IACH,YAAY,CACV,kBAA0B,EAC1B,QAAmD,EAAE,EACrD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,sBAAsB,kBAAkB,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjG,CAAC;IAED;;OAEG;IACH,wBAAwB,CACtB,oBAA4B,EAC5B,IAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,gCAAgC,oBAAoB,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5G,CAAC;CACF;AA7FD,sBA6FC"}
@@ -4,28 +4,16 @@ import { buildHeaders } from "../internal/headers.mjs";
4
4
  import { path } from "../internal/utils/path.mjs";
5
5
  export class Tests extends APIResource {
6
6
  /**
7
- * Create a new test case definition
8
- */
9
- createTestCaseDefinition(body, options) {
10
- return this._client.post('/create-test-case-definition', { body, ...options });
11
- }
12
- /**
13
- * Get a test case definition by ID
14
- */
15
- getTestCaseDefinition(testCaseDefinitionID, options) {
16
- return this._client.get(path `/get-test-case-definition/${testCaseDefinitionID}`, options);
17
- }
18
- /**
19
- * List test case definitions with pagination
7
+ * Create a batch test to run multiple test cases
20
8
  */
21
- listTestCaseDefinitions(query, options) {
22
- return this._client.get('/v2/list-test-case-definitions', { query, ...options });
9
+ createBatchTest(body, options) {
10
+ return this._client.post('/create-batch-test', { body, ...options });
23
11
  }
24
12
  /**
25
- * Update a test case definition
13
+ * Create a new test case definition
26
14
  */
27
- updateTestCaseDefinition(testCaseDefinitionID, body, options) {
28
- return this._client.put(path `/update-test-case-definition/${testCaseDefinitionID}`, { body, ...options });
15
+ createTestCaseDefinition(body, options) {
16
+ return this._client.post('/create-test-case-definition', { body, ...options });
29
17
  }
30
18
  /**
31
19
  * Delete a test case definition
@@ -36,12 +24,6 @@ export class Tests extends APIResource {
36
24
  headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
37
25
  });
38
26
  }
39
- /**
40
- * Create a batch test to run multiple test cases
41
- */
42
- createBatchTest(body, options) {
43
- return this._client.post('/create-batch-test', { body, ...options });
44
- }
45
27
  /**
46
28
  * Get a batch test job by ID
47
29
  */
@@ -49,10 +31,10 @@ export class Tests extends APIResource {
49
31
  return this._client.get(path `/get-batch-test/${testCaseBatchJobID}`, options);
50
32
  }
51
33
  /**
52
- * List batch test jobs with pagination
34
+ * Get a test case definition by ID
53
35
  */
54
- listBatchTests(query, options) {
55
- return this._client.get('/v2/list-batch-tests', { query, ...options });
36
+ getTestCaseDefinition(testCaseDefinitionID, options) {
37
+ return this._client.get(path `/get-test-case-definition/${testCaseDefinitionID}`, options);
56
38
  }
57
39
  /**
58
40
  * Get a test case job (test run) by ID
@@ -60,11 +42,29 @@ export class Tests extends APIResource {
60
42
  getTestRun(testCaseJobID, options) {
61
43
  return this._client.get(path `/get-test-run/${testCaseJobID}`, options);
62
44
  }
45
+ /**
46
+ * List batch test jobs with pagination
47
+ */
48
+ listBatchTests(query, options) {
49
+ return this._client.get('/v2/list-batch-tests', { query, ...options });
50
+ }
51
+ /**
52
+ * List test case definitions with pagination
53
+ */
54
+ listTestCaseDefinitions(query, options) {
55
+ return this._client.get('/v2/list-test-case-definitions', { query, ...options });
56
+ }
63
57
  /**
64
58
  * List test case jobs (test runs) for a batch test job with pagination
65
59
  */
66
60
  listTestRuns(testCaseBatchJobID, query = {}, options) {
67
61
  return this._client.get(path `/v2/list-test-runs/${testCaseBatchJobID}`, { query, ...options });
68
62
  }
63
+ /**
64
+ * Update a test case definition
65
+ */
66
+ updateTestCaseDefinition(testCaseDefinitionID, body, options) {
67
+ return this._client.put(path `/update-test-case-definition/${testCaseDefinitionID}`, { body, ...options });
68
+ }
69
69
  }
70
70
  //# sourceMappingURL=tests.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"tests.mjs","sourceRoot":"","sources":["../src/resources/tests.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,MAAM,OAAO,KAAM,SAAQ,WAAW;IACpC;;OAEG;IACH,wBAAwB,CACtB,IAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACH,qBAAqB,CACnB,oBAA4B,EAC5B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,6BAA6B,oBAAoB,EAAE,EAAE,OAAO,CAAC,CAAC;IAC5F,CAAC;IAED;;OAEG;IACH,uBAAuB,CACrB,KAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACnF,CAAC;IAED;;OAEG;IACH,wBAAwB,CACtB,oBAA4B,EAC5B,IAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,gCAAgC,oBAAoB,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5G,CAAC;IAED;;OAEG;IACH,wBAAwB,CAAC,oBAA4B,EAAE,OAAwB;QAC7E,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA,gCAAgC,oBAAoB,EAAE,EAAE;YACrF,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,IAA+B,EAAE,OAAwB;QACvE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,kBAA0B,EAAE,OAAwB;QAC/D,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,mBAAmB,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,cAAc,CACZ,KAA+B,EAC/B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,aAAqB,EAAE,OAAwB;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,iBAAiB,aAAa,EAAE,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,YAAY,CACV,kBAA0B,EAC1B,QAAmD,EAAE,EACrD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,sBAAsB,kBAAkB,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjG,CAAC;CACF"}
1
+ {"version":3,"file":"tests.mjs","sourceRoot":"","sources":["../src/resources/tests.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,MAAM,OAAO,KAAM,SAAQ,WAAW;IACpC;;OAEG;IACH,eAAe,CAAC,IAA+B,EAAE,OAAwB;QACvE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,wBAAwB,CACtB,IAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACH,wBAAwB,CAAC,oBAA4B,EAAE,OAAwB;QAC7E,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA,gCAAgC,oBAAoB,EAAE,EAAE;YACrF,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,kBAA0B,EAAE,OAAwB;QAC/D,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,mBAAmB,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,qBAAqB,CACnB,oBAA4B,EAC5B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,6BAA6B,oBAAoB,EAAE,EAAE,OAAO,CAAC,CAAC;IAC5F,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,aAAqB,EAAE,OAAwB;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,iBAAiB,aAAa,EAAE,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,cAAc,CACZ,KAA+B,EAC/B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,uBAAuB,CACrB,KAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACnF,CAAC;IAED;;OAEG;IACH,YAAY,CACV,kBAA0B,EAC1B,QAAmD,EAAE,EACrD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,sBAAsB,kBAAkB,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjG,CAAC;IAED;;OAEG;IACH,wBAAwB,CACtB,oBAA4B,EAC5B,IAAwC,EACxC,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,gCAAgC,oBAAoB,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5G,CAAC;CACF"}
@@ -3,14 +3,6 @@ import { APIPromise } from "../core/api-promise.mjs";
3
3
  import { type Uploadable } from "../core/uploads.mjs";
4
4
  import { RequestOptions } from "../internal/request-options.mjs";
5
5
  export declare class Voice extends APIResource {
6
- /**
7
- * Add a community voice to the voice library
8
- */
9
- addResource(body: VoiceAddResourceParams, options?: RequestOptions): APIPromise<VoiceResponse>;
10
- /**
11
- * Clone a voice from audio files
12
- */
13
- clone(body: VoiceCloneParams, options?: RequestOptions): APIPromise<VoiceResponse>;
14
6
  /**
15
7
  * Retrieve details of a specific voice
16
8
  */
@@ -19,6 +11,14 @@ export declare class Voice extends APIResource {
19
11
  * List all voices available to the user
20
12
  */
21
13
  list(options?: RequestOptions): APIPromise<VoiceListResponse>;
14
+ /**
15
+ * Add a community voice to the voice library
16
+ */
17
+ addResource(body: VoiceAddResourceParams, options?: RequestOptions): APIPromise<VoiceResponse>;
18
+ /**
19
+ * Clone a voice from audio files
20
+ */
21
+ clone(body: VoiceCloneParams, options?: RequestOptions): APIPromise<VoiceResponse>;
22
22
  /**
23
23
  * Search for community voices from voice providers
24
24
  */
@@ -1 +1 @@
1
- {"version":3,"file":"voice.d.mts","sourceRoot":"","sources":["../src/resources/voice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"voice.d.mts","sourceRoot":"","sources":["../src/resources/voice.ts"],"names":[],"mappings":"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"}
@@ -3,14 +3,6 @@ import { APIPromise } from "../core/api-promise.js";
3
3
  import { type Uploadable } from "../core/uploads.js";
4
4
  import { RequestOptions } from "../internal/request-options.js";
5
5
  export declare class Voice extends APIResource {
6
- /**
7
- * Add a community voice to the voice library
8
- */
9
- addResource(body: VoiceAddResourceParams, options?: RequestOptions): APIPromise<VoiceResponse>;
10
- /**
11
- * Clone a voice from audio files
12
- */
13
- clone(body: VoiceCloneParams, options?: RequestOptions): APIPromise<VoiceResponse>;
14
6
  /**
15
7
  * Retrieve details of a specific voice
16
8
  */
@@ -19,6 +11,14 @@ export declare class Voice extends APIResource {
19
11
  * List all voices available to the user
20
12
  */
21
13
  list(options?: RequestOptions): APIPromise<VoiceListResponse>;
14
+ /**
15
+ * Add a community voice to the voice library
16
+ */
17
+ addResource(body: VoiceAddResourceParams, options?: RequestOptions): APIPromise<VoiceResponse>;
18
+ /**
19
+ * Clone a voice from audio files
20
+ */
21
+ clone(body: VoiceCloneParams, options?: RequestOptions): APIPromise<VoiceResponse>;
22
22
  /**
23
23
  * Search for community voices from voice providers
24
24
  */
@@ -1 +1 @@
1
- {"version":3,"file":"voice.d.ts","sourceRoot":"","sources":["../src/resources/voice.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,4BAAyB;AAC/C,OAAO,EAAE,UAAU,EAAE,+BAA4B;AACjD,OAAO,EAAE,KAAK,UAAU,EAAE,2BAAwB;AAClD,OAAO,EAAE,cAAc,EAAE,uCAAoC;AAI7D,qBAAa,KAAM,SAAQ,WAAW;IACpC;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,sBAAsB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,aAAa,CAAC;IAI9F;;OAEG;IACH,KAAK,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,aAAa,CAAC;IAIlF;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,aAAa,CAAC;IAI9E;;OAEG;IACH,IAAI,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,iBAAiB,CAAC;IAI7D;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,mBAAmB,CAAC;CAG3F;AAED,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IAE1B;;OAEG;IACH,QAAQ,EAAE,YAAY,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,YAAY,GAAG,UAAU,CAAC;IAEvF;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;AAErD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;CAC1C;AAED,yBAAiB,mBAAmB,CAAC;IACnC;;OAEG;IACH,UAAiB,KAAK;QACpB;;WAEG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;WAEG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd;;WAEG;QACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAE3B;;WAEG;QACH,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB;CACF;AAED,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,cAAc,CAAC,EAAE,YAAY,GAAG,UAAU,GAAG,SAAS,GAAG,YAAY,CAAC;CACvE;AAED,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IAEzB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,cAAc,EAAE,YAAY,GAAG,UAAU,GAAG,SAAS,GAAG,YAAY,GAAG,UAAU,CAAC;CACnF;AAED,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,cAAc,CAAC,EAAE,YAAY,GAAG,UAAU,GAAG,SAAS,GAAG,YAAY,CAAC;CACvE;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,OAAO,EACL,KAAK,aAAa,IAAI,aAAa,EACnC,KAAK,iBAAiB,IAAI,iBAAiB,EAC3C,KAAK,mBAAmB,IAAI,mBAAmB,EAC/C,KAAK,sBAAsB,IAAI,sBAAsB,EACrD,KAAK,gBAAgB,IAAI,gBAAgB,EACzC,KAAK,iBAAiB,IAAI,iBAAiB,GAC5C,CAAC;CACH"}
1
+ {"version":3,"file":"voice.d.ts","sourceRoot":"","sources":["../src/resources/voice.ts"],"names":[],"mappings":"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"}
@@ -6,18 +6,6 @@ const resource_1 = require("../core/resource.js");
6
6
  const uploads_1 = require("../internal/uploads.js");
7
7
  const path_1 = require("../internal/utils/path.js");
8
8
  class Voice extends resource_1.APIResource {
9
- /**
10
- * Add a community voice to the voice library
11
- */
12
- addResource(body, options) {
13
- return this._client.post('/add-community-voice', { body, ...options });
14
- }
15
- /**
16
- * Clone a voice from audio files
17
- */
18
- clone(body, options) {
19
- return this._client.post('/clone-voice', (0, uploads_1.multipartFormRequestOptions)({ body, ...options }, this._client));
20
- }
21
9
  /**
22
10
  * Retrieve details of a specific voice
23
11
  */
@@ -30,6 +18,18 @@ class Voice extends resource_1.APIResource {
30
18
  list(options) {
31
19
  return this._client.get('/list-voices', options);
32
20
  }
21
+ /**
22
+ * Add a community voice to the voice library
23
+ */
24
+ addResource(body, options) {
25
+ return this._client.post('/add-community-voice', { body, ...options });
26
+ }
27
+ /**
28
+ * Clone a voice from audio files
29
+ */
30
+ clone(body, options) {
31
+ return this._client.post('/clone-voice', (0, uploads_1.multipartFormRequestOptions)({ body, ...options }, this._client));
32
+ }
33
33
  /**
34
34
  * Search for community voices from voice providers
35
35
  */
@@ -1 +1 @@
1
- {"version":3,"file":"voice.js","sourceRoot":"","sources":["../src/resources/voice.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAA+C;AAI/C,oDAAkE;AAClE,oDAA8C;AAE9C,MAAa,KAAM,SAAQ,sBAAW;IACpC;;OAEG;IACH,WAAW,CAAC,IAA4B,EAAE,OAAwB;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAsB,EAAE,OAAwB;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,IAAA,qCAA2B,EAAC,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5G,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,OAAe,EAAE,OAAwB;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,cAAc,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,OAAwB;QAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAuB,EAAE,OAAwB;QACtD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;CACF;AAnCD,sBAmCC"}
1
+ {"version":3,"file":"voice.js","sourceRoot":"","sources":["../src/resources/voice.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAA+C;AAI/C,oDAAkE;AAClE,oDAA8C;AAE9C,MAAa,KAAM,SAAQ,sBAAW;IACpC;;OAEG;IACH,QAAQ,CAAC,OAAe,EAAE,OAAwB;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,cAAc,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,OAAwB;QAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAA4B,EAAE,OAAwB;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAsB,EAAE,OAAwB;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,IAAA,qCAA2B,EAAC,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5G,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAuB,EAAE,OAAwB;QACtD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;CACF;AAnCD,sBAmCC"}
@@ -3,18 +3,6 @@ import { APIResource } from "../core/resource.mjs";
3
3
  import { multipartFormRequestOptions } from "../internal/uploads.mjs";
4
4
  import { path } from "../internal/utils/path.mjs";
5
5
  export class Voice extends APIResource {
6
- /**
7
- * Add a community voice to the voice library
8
- */
9
- addResource(body, options) {
10
- return this._client.post('/add-community-voice', { body, ...options });
11
- }
12
- /**
13
- * Clone a voice from audio files
14
- */
15
- clone(body, options) {
16
- return this._client.post('/clone-voice', multipartFormRequestOptions({ body, ...options }, this._client));
17
- }
18
6
  /**
19
7
  * Retrieve details of a specific voice
20
8
  */
@@ -27,6 +15,18 @@ export class Voice extends APIResource {
27
15
  list(options) {
28
16
  return this._client.get('/list-voices', options);
29
17
  }
18
+ /**
19
+ * Add a community voice to the voice library
20
+ */
21
+ addResource(body, options) {
22
+ return this._client.post('/add-community-voice', { body, ...options });
23
+ }
24
+ /**
25
+ * Clone a voice from audio files
26
+ */
27
+ clone(body, options) {
28
+ return this._client.post('/clone-voice', multipartFormRequestOptions({ body, ...options }, this._client));
29
+ }
30
30
  /**
31
31
  * Search for community voices from voice providers
32
32
  */
@@ -1 +1 @@
1
- {"version":3,"file":"voice.mjs","sourceRoot":"","sources":["../src/resources/voice.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAEtF,OAAO,EAAE,WAAW,EAAE,6BAAyB;AAI/C,OAAO,EAAE,2BAA2B,EAAE,gCAA4B;AAClE,OAAO,EAAE,IAAI,EAAE,mCAA+B;AAE9C,MAAM,OAAO,KAAM,SAAQ,WAAW;IACpC;;OAEG;IACH,WAAW,CAAC,IAA4B,EAAE,OAAwB;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAsB,EAAE,OAAwB;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,2BAA2B,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5G,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,OAAe,EAAE,OAAwB;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,cAAc,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,OAAwB;QAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAuB,EAAE,OAAwB;QACtD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;CACF"}
1
+ {"version":3,"file":"voice.mjs","sourceRoot":"","sources":["../src/resources/voice.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAEtF,OAAO,EAAE,WAAW,EAAE,6BAAyB;AAI/C,OAAO,EAAE,2BAA2B,EAAE,gCAA4B;AAClE,OAAO,EAAE,IAAI,EAAE,mCAA+B;AAE9C,MAAM,OAAO,KAAM,SAAQ,WAAW;IACpC;;OAEG;IACH,QAAQ,CAAC,OAAe,EAAE,OAAwB;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,cAAc,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,OAAwB;QAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAA4B,EAAE,OAAwB;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAsB,EAAE,OAAwB;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,2BAA2B,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5G,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAuB,EAAE,OAAwB;QACtD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;CACF"}
package/src/client.ts CHANGED
@@ -15,6 +15,7 @@ import { stringifyQuery } from './internal/utils/query';
15
15
  import { VERSION } from './version';
16
16
  import * as Errors from './core/error';
17
17
  import * as Uploads from './core/uploads';
18
+ import * as Webhooks from './lib/webhook_auth';
18
19
  import * as API from './resources/index';
19
20
  import { APIPromise } from './core/api-promise';
20
21
  import {
@@ -868,6 +869,8 @@ export class Retell {
868
869
  static UnprocessableEntityError = Errors.UnprocessableEntityError;
869
870
 
870
871
  static toFile = Uploads.toFile;
872
+ static verify = Webhooks.verify;
873
+ static sign = Webhooks.sign;
871
874
 
872
875
  call: API.Call = new API.Call(this);
873
876
  chat: API.Chat = new API.Chat(this);
@@ -913,11 +916,11 @@ export declare namespace Retell {
913
916
  type PhoneCallResponse as PhoneCallResponse,
914
917
  type WebCallResponse as WebCallResponse,
915
918
  type CallListResponse as CallListResponse,
919
+ type CallUpdateParams as CallUpdateParams,
920
+ type CallListParams as CallListParams,
916
921
  type CallCreatePhoneCallParams as CallCreatePhoneCallParams,
917
- type CallRegisterPhoneCallParams as CallRegisterPhoneCallParams,
918
922
  type CallCreateWebCallParams as CallCreateWebCallParams,
919
- type CallListParams as CallListParams,
920
- type CallUpdateParams as CallUpdateParams,
923
+ type CallRegisterPhoneCallParams as CallRegisterPhoneCallParams,
921
924
  };
922
925
 
923
926
  export {
@@ -926,10 +929,10 @@ export declare namespace Retell {
926
929
  type ChatListResponse as ChatListResponse,
927
930
  type ChatCreateChatCompletionResponse as ChatCreateChatCompletionResponse,
928
931
  type ChatCreateParams as ChatCreateParams,
929
- type ChatCreateSMSChatParams as ChatCreateSMSChatParams,
930
- type ChatCreateChatCompletionParams as ChatCreateChatCompletionParams,
931
- type ChatListParams as ChatListParams,
932
932
  type ChatUpdateParams as ChatUpdateParams,
933
+ type ChatListParams as ChatListParams,
934
+ type ChatCreateChatCompletionParams as ChatCreateChatCompletionParams,
935
+ type ChatCreateSMSChatParams as ChatCreateSMSChatParams,
933
936
  };
934
937
 
935
938
  export {
@@ -937,9 +940,9 @@ export declare namespace Retell {
937
940
  type PhoneNumberResponse as PhoneNumberResponse,
938
941
  type PhoneNumberListResponse as PhoneNumberListResponse,
939
942
  type PhoneNumberCreateParams as PhoneNumberCreateParams,
940
- type PhoneNumberImportParams as PhoneNumberImportParams,
941
- type PhoneNumberListParams as PhoneNumberListParams,
942
943
  type PhoneNumberUpdateParams as PhoneNumberUpdateParams,
944
+ type PhoneNumberListParams as PhoneNumberListParams,
945
+ type PhoneNumberImportParams as PhoneNumberImportParams,
943
946
  };
944
947
 
945
948
  export {
@@ -950,11 +953,11 @@ export declare namespace Retell {
950
953
  type AgentGetVersionsResponse as AgentGetVersionsResponse,
951
954
  type AgentCreateParams as AgentCreateParams,
952
955
  type AgentRetrieveParams as AgentRetrieveParams,
953
- type AgentListParams as AgentListParams,
954
956
  type AgentUpdateParams as AgentUpdateParams,
955
- type AgentPublishParams as AgentPublishParams,
957
+ type AgentListParams as AgentListParams,
956
958
  type AgentCreateVersionParams as AgentCreateVersionParams,
957
959
  type AgentDeleteVersionParams as AgentDeleteVersionParams,
960
+ type AgentPublishParams as AgentPublishParams,
958
961
  };
959
962
 
960
963
  export {
@@ -965,11 +968,11 @@ export declare namespace Retell {
965
968
  type ChatAgentGetVersionsResponse as ChatAgentGetVersionsResponse,
966
969
  type ChatAgentCreateParams as ChatAgentCreateParams,
967
970
  type ChatAgentRetrieveParams as ChatAgentRetrieveParams,
968
- type ChatAgentListParams as ChatAgentListParams,
969
971
  type ChatAgentUpdateParams as ChatAgentUpdateParams,
970
- type ChatAgentPublishParams as ChatAgentPublishParams,
972
+ type ChatAgentListParams as ChatAgentListParams,
971
973
  type ChatAgentCreateVersionParams as ChatAgentCreateVersionParams,
972
974
  type ChatAgentDeleteVersionParams as ChatAgentDeleteVersionParams,
975
+ type ChatAgentPublishParams as ChatAgentPublishParams,
973
976
  };
974
977
 
975
978
  export {
@@ -978,8 +981,8 @@ export declare namespace Retell {
978
981
  type LlmListResponse as LlmListResponse,
979
982
  type LlmCreateParams as LlmCreateParams,
980
983
  type LlmRetrieveParams as LlmRetrieveParams,
981
- type LlmListParams as LlmListParams,
982
984
  type LlmUpdateParams as LlmUpdateParams,
985
+ type LlmListParams as LlmListParams,
983
986
  };
984
987
 
985
988
  export {
@@ -988,8 +991,8 @@ export declare namespace Retell {
988
991
  type ConversationFlowListResponse as ConversationFlowListResponse,
989
992
  type ConversationFlowCreateParams as ConversationFlowCreateParams,
990
993
  type ConversationFlowRetrieveParams as ConversationFlowRetrieveParams,
991
- type ConversationFlowListParams as ConversationFlowListParams,
992
994
  type ConversationFlowUpdateParams as ConversationFlowUpdateParams,
995
+ type ConversationFlowListParams as ConversationFlowListParams,
993
996
  };
994
997
 
995
998
  export {
@@ -997,8 +1000,8 @@ export declare namespace Retell {
997
1000
  type ConversationFlowComponentResponse as ConversationFlowComponentResponse,
998
1001
  type ConversationFlowComponentListResponse as ConversationFlowComponentListResponse,
999
1002
  type ConversationFlowComponentCreateParams as ConversationFlowComponentCreateParams,
1000
- type ConversationFlowComponentListParams as ConversationFlowComponentListParams,
1001
1003
  type ConversationFlowComponentUpdateParams as ConversationFlowComponentUpdateParams,
1004
+ type ConversationFlowComponentListParams as ConversationFlowComponentListParams,
1002
1005
  };
1003
1006
 
1004
1007
  export {
@@ -1042,12 +1045,12 @@ export declare namespace Retell {
1042
1045
  type TestListBatchTestsResponse as TestListBatchTestsResponse,
1043
1046
  type TestListTestCaseDefinitionsResponse as TestListTestCaseDefinitionsResponse,
1044
1047
  type TestListTestRunsResponse as TestListTestRunsResponse,
1045
- type TestCreateTestCaseDefinitionParams as TestCreateTestCaseDefinitionParams,
1046
- type TestListTestCaseDefinitionsParams as TestListTestCaseDefinitionsParams,
1047
- type TestUpdateTestCaseDefinitionParams as TestUpdateTestCaseDefinitionParams,
1048
1048
  type TestCreateBatchTestParams as TestCreateBatchTestParams,
1049
+ type TestCreateTestCaseDefinitionParams as TestCreateTestCaseDefinitionParams,
1049
1050
  type TestListBatchTestsParams as TestListBatchTestsParams,
1051
+ type TestListTestCaseDefinitionsParams as TestListTestCaseDefinitionsParams,
1050
1052
  type TestListTestRunsParams as TestListTestRunsParams,
1053
+ type TestUpdateTestCaseDefinitionParams as TestUpdateTestCaseDefinitionParams,
1051
1054
  };
1052
1055
 
1053
1056
  export {
package/src/index.ts CHANGED
@@ -3,6 +3,7 @@
3
3
  export { Retell as default } from './client';
4
4
 
5
5
  export { type Uploadable, toFile } from './core/uploads';
6
+ export { verify, sign, type SecureWebhooks, type SecureWebhookVerifyOptions } from './lib/webhook_auth';
6
7
  export { APIPromise } from './core/api-promise';
7
8
  export { Retell, type ClientOptions } from './client';
8
9
  export {
@@ -0,0 +1,112 @@
1
+ const FIVE_MINUTES = 5 * 60 * 1000;
2
+ const SHA_256_HEX_LENGTH = 64;
3
+
4
+ export interface SecureWebhookVerifyOptions {
5
+ timeout?: number;
6
+ timestamp?: number;
7
+ }
8
+
9
+ export interface SecureWebhooks {
10
+ sign(input: string, secret: string, timestamp?: number): Promise<string>;
11
+ verify(
12
+ input: string,
13
+ secret: string,
14
+ signature: string,
15
+ opts?: SecureWebhookVerifyOptions,
16
+ ): Promise<boolean>;
17
+ }
18
+
19
+ function getSubtleCrypto() {
20
+ const subtle = globalThis.crypto?.subtle;
21
+ if (!subtle) {
22
+ throw new Error('Webhook verification requires a runtime with the Web Crypto API');
23
+ }
24
+ return subtle;
25
+ }
26
+
27
+ function encode(input: string): Uint8Array {
28
+ return new TextEncoder().encode(input);
29
+ }
30
+
31
+ async function importHmacKey(secret: string, usage: 'sign' | 'verify') {
32
+ return getSubtleCrypto().importKey('raw', encode(secret), { name: 'HMAC', hash: 'SHA-256' }, false, [
33
+ usage,
34
+ ]);
35
+ }
36
+
37
+ function bytesToHex(bytes: ArrayBuffer): string {
38
+ return Array.from(new Uint8Array(bytes))
39
+ .map((byte) => byte.toString(16).padStart(2, '0'))
40
+ .join('');
41
+ }
42
+
43
+ function hexToBytes(hex: string): Uint8Array | undefined {
44
+ if (hex.length !== SHA_256_HEX_LENGTH || !/^[0-9a-f]+$/i.test(hex)) {
45
+ return undefined;
46
+ }
47
+
48
+ return Uint8Array.from({ length: SHA_256_HEX_LENGTH / 2 }, (_, index) =>
49
+ Number.parseInt(hex.slice(index * 2, index * 2 + 2), 16),
50
+ );
51
+ }
52
+
53
+ async function hmacSha256Hex(secret: string, input: string): Promise<string> {
54
+ const subtle = getSubtleCrypto();
55
+ const key = await importHmacKey(secret, 'sign');
56
+ return bytesToHex(await subtle.sign('HMAC', key, encode(input)));
57
+ }
58
+
59
+ async function hmacSha256Verify(secret: string, input: string, digest: Uint8Array): Promise<boolean> {
60
+ const subtle = getSubtleCrypto();
61
+ const key = await importHmacKey(secret, 'verify');
62
+ return subtle.verify('HMAC', key, digest, encode(input));
63
+ }
64
+
65
+ export const symmetric: SecureWebhooks = {
66
+ async sign(input: string, secret: string, timestamp: number = Date.now()): Promise<string> {
67
+ const digest = await hmacSha256Hex(secret, input + timestamp);
68
+ return `v=${timestamp},d=${digest}`;
69
+ },
70
+
71
+ async verify(
72
+ input: string,
73
+ secret: string,
74
+ signature: string,
75
+ opts: SecureWebhookVerifyOptions = {},
76
+ ): Promise<boolean> {
77
+ const match = /^v=(\d+),d=([0-9a-f]+)$/i.exec(signature);
78
+ if (!match) return false;
79
+
80
+ const poststamp = Number(match[1]);
81
+ const postDigest = hexToBytes(match[2]!);
82
+ const timestamp = opts.timestamp ?? Date.now();
83
+ const timeout = opts.timeout ?? FIVE_MINUTES;
84
+
85
+ if (
86
+ !Number.isSafeInteger(poststamp) ||
87
+ !Number.isFinite(timestamp) ||
88
+ !Number.isFinite(timeout) ||
89
+ timeout < 0 ||
90
+ !postDigest ||
91
+ Math.abs(timestamp - poststamp) > timeout
92
+ ) {
93
+ return false;
94
+ }
95
+
96
+ return hmacSha256Verify(secret, input + poststamp, postDigest);
97
+ },
98
+ };
99
+
100
+ /**
101
+ * Verify a Retell webhook signature against the exact raw request body.
102
+ */
103
+ export const verify = (body: string, apiKey: string, signature: string): Promise<boolean> => {
104
+ return symmetric.verify(body, apiKey, signature);
105
+ };
106
+
107
+ /**
108
+ * Sign a webhook body using the Retell webhook signature format.
109
+ */
110
+ export const sign = (body: string, apiKey: string): Promise<string> => {
111
+ return symmetric.sign(body, apiKey);
112
+ };