phonic 0.30.3 → 0.30.4

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 (387) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/Client.js +2 -2
  3. package/dist/cjs/version.d.ts +1 -1
  4. package/dist/cjs/version.js +1 -1
  5. package/dist/esm/Client.d.mts +50 -0
  6. package/dist/esm/Client.mjs +47 -0
  7. package/dist/esm/api/errors/BadRequestError.d.mts +8 -0
  8. package/dist/esm/api/errors/BadRequestError.mjs +15 -0
  9. package/dist/esm/api/errors/ConflictError.d.mts +8 -0
  10. package/dist/esm/api/errors/ConflictError.mjs +15 -0
  11. package/dist/esm/api/errors/ForbiddenError.d.mts +8 -0
  12. package/dist/esm/api/errors/ForbiddenError.mjs +15 -0
  13. package/dist/esm/api/errors/GatewayTimeoutError.d.mts +9 -0
  14. package/dist/esm/api/errors/GatewayTimeoutError.mjs +15 -0
  15. package/dist/esm/api/errors/InternalServerError.d.mts +9 -0
  16. package/dist/esm/api/errors/InternalServerError.mjs +15 -0
  17. package/dist/esm/api/errors/NotFoundError.d.mts +8 -0
  18. package/dist/esm/api/errors/NotFoundError.mjs +15 -0
  19. package/dist/esm/api/errors/UnauthorizedError.d.mts +9 -0
  20. package/dist/esm/api/errors/UnauthorizedError.mjs +15 -0
  21. package/dist/esm/api/errors/index.d.mts +7 -0
  22. package/dist/esm/api/errors/index.mjs +7 -0
  23. package/dist/esm/api/index.d.mts +4 -0
  24. package/dist/esm/api/index.mjs +4 -0
  25. package/dist/esm/api/resources/agents/client/Client.d.mts +208 -0
  26. package/dist/esm/api/resources/agents/client/Client.mjs +558 -0
  27. package/dist/esm/api/resources/agents/client/index.d.mts +2 -0
  28. package/dist/esm/api/resources/agents/client/index.mjs +1 -0
  29. package/dist/esm/api/resources/agents/client/requests/AgentsCreateRequest.d.mts +41 -0
  30. package/dist/esm/api/resources/agents/client/requests/AgentsCreateRequest.mjs +4 -0
  31. package/dist/esm/api/resources/agents/client/requests/AgentsDeleteRequest.d.mts +13 -0
  32. package/dist/esm/api/resources/agents/client/requests/AgentsDeleteRequest.mjs +4 -0
  33. package/dist/esm/api/resources/agents/client/requests/AgentsGetRequest.d.mts +13 -0
  34. package/dist/esm/api/resources/agents/client/requests/AgentsGetRequest.mjs +4 -0
  35. package/dist/esm/api/resources/agents/client/requests/AgentsListRequest.d.mts +11 -0
  36. package/dist/esm/api/resources/agents/client/requests/AgentsListRequest.mjs +4 -0
  37. package/dist/esm/api/resources/agents/client/requests/UpdateAgentRequest.d.mts +102 -0
  38. package/dist/esm/api/resources/agents/client/requests/UpdateAgentRequest.mjs +10 -0
  39. package/dist/esm/api/resources/agents/client/requests/UpsertAgentRequest.d.mts +38 -0
  40. package/dist/esm/api/resources/agents/client/requests/UpsertAgentRequest.mjs +4 -0
  41. package/dist/esm/api/resources/agents/client/requests/index.d.mts +6 -0
  42. package/dist/esm/api/resources/agents/client/requests/index.mjs +1 -0
  43. package/dist/esm/api/resources/agents/index.d.mts +2 -0
  44. package/dist/esm/api/resources/agents/index.mjs +2 -0
  45. package/dist/esm/api/resources/agents/types/AgentsCreateResponse.d.mts +9 -0
  46. package/dist/esm/api/resources/agents/types/AgentsCreateResponse.mjs +4 -0
  47. package/dist/esm/api/resources/agents/types/AgentsDeleteResponse.d.mts +7 -0
  48. package/dist/esm/api/resources/agents/types/AgentsDeleteResponse.mjs +4 -0
  49. package/dist/esm/api/resources/agents/types/AgentsGetResponse.d.mts +7 -0
  50. package/dist/esm/api/resources/agents/types/AgentsGetResponse.mjs +4 -0
  51. package/dist/esm/api/resources/agents/types/AgentsListResponse.d.mts +7 -0
  52. package/dist/esm/api/resources/agents/types/AgentsListResponse.mjs +4 -0
  53. package/dist/esm/api/resources/agents/types/AgentsUpdateResponse.d.mts +7 -0
  54. package/dist/esm/api/resources/agents/types/AgentsUpdateResponse.mjs +4 -0
  55. package/dist/esm/api/resources/agents/types/AgentsUpsertResponse.d.mts +11 -0
  56. package/dist/esm/api/resources/agents/types/AgentsUpsertResponse.mjs +4 -0
  57. package/dist/esm/api/resources/agents/types/index.d.mts +6 -0
  58. package/dist/esm/api/resources/agents/types/index.mjs +6 -0
  59. package/dist/esm/api/resources/conversations/client/Client.d.mts +236 -0
  60. package/dist/esm/api/resources/conversations/client/Client.mjs +858 -0
  61. package/dist/esm/api/resources/conversations/client/Socket.d.mts +64 -0
  62. package/dist/esm/api/resources/conversations/client/Socket.mjs +159 -0
  63. package/dist/esm/api/resources/conversations/client/index.d.mts +2 -0
  64. package/dist/esm/api/resources/conversations/client/index.mjs +1 -0
  65. package/dist/esm/api/resources/conversations/client/requests/ConversationsListRequest.d.mts +30 -0
  66. package/dist/esm/api/resources/conversations/client/requests/ConversationsListRequest.mjs +4 -0
  67. package/dist/esm/api/resources/conversations/client/requests/ConversationsSipOutboundCallRequest.d.mts +29 -0
  68. package/dist/esm/api/resources/conversations/client/requests/ConversationsSipOutboundCallRequest.mjs +4 -0
  69. package/dist/esm/api/resources/conversations/client/requests/EvaluateConversationRequest.d.mts +13 -0
  70. package/dist/esm/api/resources/conversations/client/requests/EvaluateConversationRequest.mjs +4 -0
  71. package/dist/esm/api/resources/conversations/client/requests/ExtractDataRequest.d.mts +13 -0
  72. package/dist/esm/api/resources/conversations/client/requests/ExtractDataRequest.mjs +4 -0
  73. package/dist/esm/api/resources/conversations/client/requests/OutboundCallRequest.d.mts +30 -0
  74. package/dist/esm/api/resources/conversations/client/requests/OutboundCallRequest.mjs +4 -0
  75. package/dist/esm/api/resources/conversations/client/requests/index.d.mts +5 -0
  76. package/dist/esm/api/resources/conversations/client/requests/index.mjs +1 -0
  77. package/dist/esm/api/resources/conversations/index.d.mts +2 -0
  78. package/dist/esm/api/resources/conversations/index.mjs +2 -0
  79. package/dist/esm/api/resources/conversations/types/ConversationsCancelResponse.d.mts +7 -0
  80. package/dist/esm/api/resources/conversations/types/ConversationsCancelResponse.mjs +4 -0
  81. package/dist/esm/api/resources/conversations/types/ConversationsExtractDataResponse.d.mts +7 -0
  82. package/dist/esm/api/resources/conversations/types/ConversationsExtractDataResponse.mjs +4 -0
  83. package/dist/esm/api/resources/conversations/types/ConversationsGetAnalysisResponse.d.mts +7 -0
  84. package/dist/esm/api/resources/conversations/types/ConversationsGetAnalysisResponse.mjs +4 -0
  85. package/dist/esm/api/resources/conversations/types/ConversationsGetResponse.d.mts +7 -0
  86. package/dist/esm/api/resources/conversations/types/ConversationsGetResponse.mjs +4 -0
  87. package/dist/esm/api/resources/conversations/types/ConversationsListEvaluationsResponse.d.mts +7 -0
  88. package/dist/esm/api/resources/conversations/types/ConversationsListEvaluationsResponse.mjs +4 -0
  89. package/dist/esm/api/resources/conversations/types/ConversationsListExtractionsResponse.d.mts +7 -0
  90. package/dist/esm/api/resources/conversations/types/ConversationsListExtractionsResponse.mjs +4 -0
  91. package/dist/esm/api/resources/conversations/types/ConversationsListResponse.d.mts +9 -0
  92. package/dist/esm/api/resources/conversations/types/ConversationsListResponse.mjs +4 -0
  93. package/dist/esm/api/resources/conversations/types/ConversationsOutboundCallResponse.d.mts +7 -0
  94. package/dist/esm/api/resources/conversations/types/ConversationsOutboundCallResponse.mjs +4 -0
  95. package/dist/esm/api/resources/conversations/types/ConversationsSipOutboundCallResponse.d.mts +7 -0
  96. package/dist/esm/api/resources/conversations/types/ConversationsSipOutboundCallResponse.mjs +4 -0
  97. package/dist/esm/api/resources/conversations/types/index.d.mts +9 -0
  98. package/dist/esm/api/resources/conversations/types/index.mjs +9 -0
  99. package/dist/esm/api/resources/extractionSchemas/client/Client.d.mts +142 -0
  100. package/dist/esm/api/resources/extractionSchemas/client/Client.mjs +436 -0
  101. package/dist/esm/api/resources/extractionSchemas/client/index.d.mts +2 -0
  102. package/dist/esm/api/resources/extractionSchemas/client/index.mjs +1 -0
  103. package/dist/esm/api/resources/extractionSchemas/client/requests/CreateExtractionSchemaRequest.d.mts +35 -0
  104. package/dist/esm/api/resources/extractionSchemas/client/requests/CreateExtractionSchemaRequest.mjs +4 -0
  105. package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasDeleteRequest.d.mts +13 -0
  106. package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasDeleteRequest.mjs +4 -0
  107. package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasGetRequest.d.mts +13 -0
  108. package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasGetRequest.mjs +4 -0
  109. package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasListRequest.d.mts +13 -0
  110. package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasListRequest.mjs +4 -0
  111. package/dist/esm/api/resources/extractionSchemas/client/requests/UpdateExtractionSchemaRequest.d.mts +31 -0
  112. package/dist/esm/api/resources/extractionSchemas/client/requests/UpdateExtractionSchemaRequest.mjs +4 -0
  113. package/dist/esm/api/resources/extractionSchemas/client/requests/index.d.mts +5 -0
  114. package/dist/esm/api/resources/extractionSchemas/client/requests/index.mjs +1 -0
  115. package/dist/esm/api/resources/extractionSchemas/index.d.mts +2 -0
  116. package/dist/esm/api/resources/extractionSchemas/index.mjs +2 -0
  117. package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasCreateResponse.d.mts +9 -0
  118. package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasCreateResponse.mjs +4 -0
  119. package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasDeleteResponse.d.mts +7 -0
  120. package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasDeleteResponse.mjs +4 -0
  121. package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasGetResponse.d.mts +7 -0
  122. package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasGetResponse.mjs +4 -0
  123. package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasListResponse.d.mts +7 -0
  124. package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasListResponse.mjs +4 -0
  125. package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasUpdateResponse.d.mts +7 -0
  126. package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasUpdateResponse.mjs +4 -0
  127. package/dist/esm/api/resources/extractionSchemas/types/index.d.mts +5 -0
  128. package/dist/esm/api/resources/extractionSchemas/types/index.mjs +5 -0
  129. package/dist/esm/api/resources/index.d.mts +18 -0
  130. package/dist/esm/api/resources/index.mjs +18 -0
  131. package/dist/esm/api/resources/projects/client/Client.d.mts +157 -0
  132. package/dist/esm/api/resources/projects/client/Client.mjs +547 -0
  133. package/dist/esm/api/resources/projects/client/index.d.mts +2 -0
  134. package/dist/esm/api/resources/projects/client/index.mjs +1 -0
  135. package/dist/esm/api/resources/projects/client/requests/CreateConversationEvalPromptRequest.d.mts +16 -0
  136. package/dist/esm/api/resources/projects/client/requests/CreateConversationEvalPromptRequest.mjs +4 -0
  137. package/dist/esm/api/resources/projects/client/requests/CreateProjectRequest.d.mts +13 -0
  138. package/dist/esm/api/resources/projects/client/requests/CreateProjectRequest.mjs +4 -0
  139. package/dist/esm/api/resources/projects/client/requests/UpdateProjectRequest.d.mts +15 -0
  140. package/dist/esm/api/resources/projects/client/requests/UpdateProjectRequest.mjs +4 -0
  141. package/dist/esm/api/resources/projects/client/requests/index.d.mts +3 -0
  142. package/dist/esm/api/resources/projects/client/requests/index.mjs +1 -0
  143. package/dist/esm/api/resources/projects/index.d.mts +2 -0
  144. package/dist/esm/api/resources/projects/index.mjs +2 -0
  145. package/dist/esm/api/resources/projects/types/ProjectsCreateEvalPromptResponse.d.mts +7 -0
  146. package/dist/esm/api/resources/projects/types/ProjectsCreateEvalPromptResponse.mjs +4 -0
  147. package/dist/esm/api/resources/projects/types/ProjectsCreateResponse.d.mts +9 -0
  148. package/dist/esm/api/resources/projects/types/ProjectsCreateResponse.mjs +4 -0
  149. package/dist/esm/api/resources/projects/types/ProjectsDeleteResponse.d.mts +7 -0
  150. package/dist/esm/api/resources/projects/types/ProjectsDeleteResponse.mjs +4 -0
  151. package/dist/esm/api/resources/projects/types/ProjectsGetResponse.d.mts +7 -0
  152. package/dist/esm/api/resources/projects/types/ProjectsGetResponse.mjs +4 -0
  153. package/dist/esm/api/resources/projects/types/ProjectsListEvalPromptsResponse.d.mts +7 -0
  154. package/dist/esm/api/resources/projects/types/ProjectsListEvalPromptsResponse.mjs +4 -0
  155. package/dist/esm/api/resources/projects/types/ProjectsListResponse.d.mts +7 -0
  156. package/dist/esm/api/resources/projects/types/ProjectsListResponse.mjs +4 -0
  157. package/dist/esm/api/resources/projects/types/ProjectsUpdateResponse.d.mts +7 -0
  158. package/dist/esm/api/resources/projects/types/ProjectsUpdateResponse.mjs +4 -0
  159. package/dist/esm/api/resources/projects/types/index.d.mts +7 -0
  160. package/dist/esm/api/resources/projects/types/index.mjs +7 -0
  161. package/dist/esm/api/resources/tools/client/Client.d.mts +170 -0
  162. package/dist/esm/api/resources/tools/client/Client.mjs +457 -0
  163. package/dist/esm/api/resources/tools/client/index.d.mts +2 -0
  164. package/dist/esm/api/resources/tools/client/index.mjs +1 -0
  165. package/dist/esm/api/resources/tools/client/requests/CreateToolRequest.d.mts +103 -0
  166. package/dist/esm/api/resources/tools/client/requests/CreateToolRequest.mjs +15 -0
  167. package/dist/esm/api/resources/tools/client/requests/ToolsDeleteRequest.d.mts +13 -0
  168. package/dist/esm/api/resources/tools/client/requests/ToolsDeleteRequest.mjs +4 -0
  169. package/dist/esm/api/resources/tools/client/requests/ToolsGetRequest.d.mts +23 -0
  170. package/dist/esm/api/resources/tools/client/requests/ToolsGetRequest.mjs +4 -0
  171. package/dist/esm/api/resources/tools/client/requests/ToolsListRequest.d.mts +13 -0
  172. package/dist/esm/api/resources/tools/client/requests/ToolsListRequest.mjs +4 -0
  173. package/dist/esm/api/resources/tools/client/requests/UpdateToolRequest.d.mts +55 -0
  174. package/dist/esm/api/resources/tools/client/requests/UpdateToolRequest.mjs +15 -0
  175. package/dist/esm/api/resources/tools/client/requests/index.d.mts +5 -0
  176. package/dist/esm/api/resources/tools/client/requests/index.mjs +1 -0
  177. package/dist/esm/api/resources/tools/index.d.mts +2 -0
  178. package/dist/esm/api/resources/tools/index.mjs +2 -0
  179. package/dist/esm/api/resources/tools/types/ToolsCreateResponse.d.mts +9 -0
  180. package/dist/esm/api/resources/tools/types/ToolsCreateResponse.mjs +4 -0
  181. package/dist/esm/api/resources/tools/types/ToolsDeleteResponse.d.mts +7 -0
  182. package/dist/esm/api/resources/tools/types/ToolsDeleteResponse.mjs +4 -0
  183. package/dist/esm/api/resources/tools/types/ToolsGetResponse.d.mts +7 -0
  184. package/dist/esm/api/resources/tools/types/ToolsGetResponse.mjs +4 -0
  185. package/dist/esm/api/resources/tools/types/ToolsListResponse.d.mts +7 -0
  186. package/dist/esm/api/resources/tools/types/ToolsListResponse.mjs +4 -0
  187. package/dist/esm/api/resources/tools/types/ToolsUpdateResponse.d.mts +7 -0
  188. package/dist/esm/api/resources/tools/types/ToolsUpdateResponse.mjs +4 -0
  189. package/dist/esm/api/resources/tools/types/index.d.mts +5 -0
  190. package/dist/esm/api/resources/tools/types/index.mjs +5 -0
  191. package/dist/esm/api/resources/voices/client/Client.d.mts +65 -0
  192. package/dist/esm/api/resources/voices/client/Client.mjs +168 -0
  193. package/dist/esm/api/resources/voices/client/index.d.mts +2 -0
  194. package/dist/esm/api/resources/voices/client/index.mjs +1 -0
  195. package/dist/esm/api/resources/voices/client/requests/VoicesListRequest.d.mts +13 -0
  196. package/dist/esm/api/resources/voices/client/requests/VoicesListRequest.mjs +4 -0
  197. package/dist/esm/api/resources/voices/client/requests/index.d.mts +1 -0
  198. package/dist/esm/api/resources/voices/client/requests/index.mjs +1 -0
  199. package/dist/esm/api/resources/voices/index.d.mts +2 -0
  200. package/dist/esm/api/resources/voices/index.mjs +2 -0
  201. package/dist/esm/api/resources/voices/types/VoicesGetResponse.d.mts +7 -0
  202. package/dist/esm/api/resources/voices/types/VoicesGetResponse.mjs +4 -0
  203. package/dist/esm/api/resources/voices/types/VoicesListResponse.d.mts +7 -0
  204. package/dist/esm/api/resources/voices/types/VoicesListResponse.mjs +4 -0
  205. package/dist/esm/api/resources/voices/types/index.d.mts +2 -0
  206. package/dist/esm/api/resources/voices/types/index.mjs +2 -0
  207. package/dist/esm/api/types/Agent.d.mts +80 -0
  208. package/dist/esm/api/types/Agent.mjs +10 -0
  209. package/dist/esm/api/types/AssistantChoseNotToRespondPayload.d.mts +6 -0
  210. package/dist/esm/api/types/AssistantChoseNotToRespondPayload.mjs +4 -0
  211. package/dist/esm/api/types/AssistantEndedConversationPayload.d.mts +6 -0
  212. package/dist/esm/api/types/AssistantEndedConversationPayload.mjs +4 -0
  213. package/dist/esm/api/types/AudioChunkPayload.d.mts +10 -0
  214. package/dist/esm/api/types/AudioChunkPayload.mjs +4 -0
  215. package/dist/esm/api/types/AudioChunkResponsePayload.d.mts +10 -0
  216. package/dist/esm/api/types/AudioChunkResponsePayload.mjs +4 -0
  217. package/dist/esm/api/types/AudioFinishedPayload.d.mts +6 -0
  218. package/dist/esm/api/types/AudioFinishedPayload.mjs +4 -0
  219. package/dist/esm/api/types/BadRequestErrorBody.d.mts +5 -0
  220. package/dist/esm/api/types/BadRequestErrorBody.mjs +4 -0
  221. package/dist/esm/api/types/BasicError.d.mts +14 -0
  222. package/dist/esm/api/types/BasicError.mjs +4 -0
  223. package/dist/esm/api/types/ConfigPayload.d.mts +66 -0
  224. package/dist/esm/api/types/ConfigPayload.mjs +14 -0
  225. package/dist/esm/api/types/Conversation.d.mts +51 -0
  226. package/dist/esm/api/types/Conversation.mjs +4 -0
  227. package/dist/esm/api/types/ConversationAnalysis.d.mts +9 -0
  228. package/dist/esm/api/types/ConversationAnalysis.mjs +4 -0
  229. package/dist/esm/api/types/ConversationCreatedPayload.d.mts +8 -0
  230. package/dist/esm/api/types/ConversationCreatedPayload.mjs +4 -0
  231. package/dist/esm/api/types/ConversationEval.d.mts +4 -0
  232. package/dist/esm/api/types/ConversationEval.mjs +4 -0
  233. package/dist/esm/api/types/ConversationEvalPrompt.d.mts +11 -0
  234. package/dist/esm/api/types/ConversationEvalPrompt.mjs +4 -0
  235. package/dist/esm/api/types/ConversationEvaluation.d.mts +8 -0
  236. package/dist/esm/api/types/ConversationEvaluation.mjs +4 -0
  237. package/dist/esm/api/types/ConversationEvaluationResult.d.mts +32 -0
  238. package/dist/esm/api/types/ConversationEvaluationResult.mjs +12 -0
  239. package/dist/esm/api/types/ConversationExtraction.d.mts +22 -0
  240. package/dist/esm/api/types/ConversationExtraction.mjs +4 -0
  241. package/dist/esm/api/types/ConversationItem.d.mts +31 -0
  242. package/dist/esm/api/types/ConversationItem.mjs +10 -0
  243. package/dist/esm/api/types/CreateAgentRequest.d.mts +70 -0
  244. package/dist/esm/api/types/CreateAgentRequest.mjs +10 -0
  245. package/dist/esm/api/types/DtmfPayload.d.mts +8 -0
  246. package/dist/esm/api/types/DtmfPayload.mjs +4 -0
  247. package/dist/esm/api/types/ErrorPayload.d.mts +17 -0
  248. package/dist/esm/api/types/ErrorPayload.mjs +4 -0
  249. package/dist/esm/api/types/Error_.d.mts +5 -0
  250. package/dist/esm/api/types/Error_.mjs +4 -0
  251. package/dist/esm/api/types/ExtractionField.d.mts +23 -0
  252. package/dist/esm/api/types/ExtractionField.mjs +12 -0
  253. package/dist/esm/api/types/ExtractionSchema.d.mts +14 -0
  254. package/dist/esm/api/types/ExtractionSchema.mjs +4 -0
  255. package/dist/esm/api/types/InputCancelledPayload.d.mts +6 -0
  256. package/dist/esm/api/types/InputCancelledPayload.mjs +4 -0
  257. package/dist/esm/api/types/InputTextPayload.d.mts +8 -0
  258. package/dist/esm/api/types/InputTextPayload.mjs +4 -0
  259. package/dist/esm/api/types/InterruptedResponsePayload.d.mts +8 -0
  260. package/dist/esm/api/types/InterruptedResponsePayload.mjs +4 -0
  261. package/dist/esm/api/types/IsUserSpeakingPayload.d.mts +8 -0
  262. package/dist/esm/api/types/IsUserSpeakingPayload.mjs +4 -0
  263. package/dist/esm/api/types/OutboundCallConfig.d.mts +39 -0
  264. package/dist/esm/api/types/OutboundCallConfig.mjs +4 -0
  265. package/dist/esm/api/types/Project.d.mts +22 -0
  266. package/dist/esm/api/types/Project.mjs +4 -0
  267. package/dist/esm/api/types/ReadyToStartConversationPayload.d.mts +6 -0
  268. package/dist/esm/api/types/ReadyToStartConversationPayload.mjs +4 -0
  269. package/dist/esm/api/types/SetExternalIdPayload.d.mts +8 -0
  270. package/dist/esm/api/types/SetExternalIdPayload.mjs +4 -0
  271. package/dist/esm/api/types/SetTwilioCallSidPayload.d.mts +8 -0
  272. package/dist/esm/api/types/SetTwilioCallSidPayload.mjs +4 -0
  273. package/dist/esm/api/types/Task.d.mts +9 -0
  274. package/dist/esm/api/types/Task.mjs +4 -0
  275. package/dist/esm/api/types/Tool.d.mts +54 -0
  276. package/dist/esm/api/types/Tool.mjs +15 -0
  277. package/dist/esm/api/types/ToolCallInterruptedPayload.d.mts +12 -0
  278. package/dist/esm/api/types/ToolCallInterruptedPayload.mjs +4 -0
  279. package/dist/esm/api/types/ToolCallOutputPayload.d.mts +9 -0
  280. package/dist/esm/api/types/ToolCallOutputPayload.mjs +4 -0
  281. package/dist/esm/api/types/ToolCallOutputProcessedPayload.d.mts +35 -0
  282. package/dist/esm/api/types/ToolCallOutputProcessedPayload.mjs +4 -0
  283. package/dist/esm/api/types/ToolCallPayload.d.mts +12 -0
  284. package/dist/esm/api/types/ToolCallPayload.mjs +4 -0
  285. package/dist/esm/api/types/ToolParameter.d.mts +38 -0
  286. package/dist/esm/api/types/ToolParameter.mjs +19 -0
  287. package/dist/esm/api/types/UpdateSystemPromptPayload.d.mts +8 -0
  288. package/dist/esm/api/types/UpdateSystemPromptPayload.mjs +4 -0
  289. package/dist/esm/api/types/UserFinishedSpeakingPayload.d.mts +6 -0
  290. package/dist/esm/api/types/UserFinishedSpeakingPayload.mjs +4 -0
  291. package/dist/esm/api/types/UserStartedSpeakingPayload.d.mts +6 -0
  292. package/dist/esm/api/types/UserStartedSpeakingPayload.mjs +4 -0
  293. package/dist/esm/api/types/ValidationError.d.mts +14 -0
  294. package/dist/esm/api/types/ValidationError.mjs +4 -0
  295. package/dist/esm/api/types/Voice.d.mts +11 -0
  296. package/dist/esm/api/types/Voice.mjs +4 -0
  297. package/dist/esm/api/types/index.d.mts +45 -0
  298. package/dist/esm/api/types/index.mjs +45 -0
  299. package/dist/esm/api/types/overrides.d.mts +50 -0
  300. package/dist/esm/api/types/overrides.mjs +1 -0
  301. package/dist/esm/core/auth/AuthProvider.d.mts +4 -0
  302. package/dist/esm/core/auth/AuthProvider.mjs +1 -0
  303. package/dist/esm/core/auth/AuthRequest.d.mts +9 -0
  304. package/dist/esm/core/auth/AuthRequest.mjs +1 -0
  305. package/dist/esm/core/auth/BasicAuth.d.mts +8 -0
  306. package/dist/esm/core/auth/BasicAuth.mjs +23 -0
  307. package/dist/esm/core/auth/BearerToken.d.mts +5 -0
  308. package/dist/esm/core/auth/BearerToken.mjs +12 -0
  309. package/dist/esm/core/auth/index.d.mts +4 -0
  310. package/dist/esm/core/auth/index.mjs +2 -0
  311. package/dist/esm/core/base64.d.mts +2 -0
  312. package/dist/esm/core/base64.mjs +22 -0
  313. package/dist/esm/core/fetcher/APIResponse.d.mts +20 -0
  314. package/dist/esm/core/fetcher/APIResponse.mjs +1 -0
  315. package/dist/esm/core/fetcher/BinaryResponse.d.mts +20 -0
  316. package/dist/esm/core/fetcher/BinaryResponse.mjs +14 -0
  317. package/dist/esm/core/fetcher/Fetcher.d.mts +40 -0
  318. package/dist/esm/core/fetcher/Fetcher.mjs +116 -0
  319. package/dist/esm/core/fetcher/Headers.d.mts +2 -0
  320. package/dist/esm/core/fetcher/Headers.mjs +82 -0
  321. package/dist/esm/core/fetcher/HttpResponsePromise.d.mts +58 -0
  322. package/dist/esm/core/fetcher/HttpResponsePromise.mjs +99 -0
  323. package/dist/esm/core/fetcher/RawResponse.d.mts +29 -0
  324. package/dist/esm/core/fetcher/RawResponse.mjs +40 -0
  325. package/dist/esm/core/fetcher/ResponseWithBody.d.mts +4 -0
  326. package/dist/esm/core/fetcher/ResponseWithBody.mjs +3 -0
  327. package/dist/esm/core/fetcher/Supplier.d.mts +4 -0
  328. package/dist/esm/core/fetcher/Supplier.mjs +19 -0
  329. package/dist/esm/core/fetcher/createRequestUrl.d.mts +1 -0
  330. package/dist/esm/core/fetcher/createRequestUrl.mjs +5 -0
  331. package/dist/esm/core/fetcher/getErrorResponseBody.d.mts +1 -0
  332. package/dist/esm/core/fetcher/getErrorResponseBody.mjs +41 -0
  333. package/dist/esm/core/fetcher/getFetchFn.d.mts +1 -0
  334. package/dist/esm/core/fetcher/getFetchFn.mjs +14 -0
  335. package/dist/esm/core/fetcher/getHeader.d.mts +1 -0
  336. package/dist/esm/core/fetcher/getHeader.mjs +8 -0
  337. package/dist/esm/core/fetcher/getRequestBody.d.mts +7 -0
  338. package/dist/esm/core/fetcher/getRequestBody.mjs +20 -0
  339. package/dist/esm/core/fetcher/getResponseBody.d.mts +1 -0
  340. package/dist/esm/core/fetcher/getResponseBody.mjs +52 -0
  341. package/dist/esm/core/fetcher/index.d.mts +9 -0
  342. package/dist/esm/core/fetcher/index.mjs +5 -0
  343. package/dist/esm/core/fetcher/makeRequest.d.mts +1 -0
  344. package/dist/esm/core/fetcher/makeRequest.mjs +38 -0
  345. package/dist/esm/core/fetcher/requestWithRetries.d.mts +1 -0
  346. package/dist/esm/core/fetcher/requestWithRetries.mjs +37 -0
  347. package/dist/esm/core/fetcher/signals.d.mts +11 -0
  348. package/dist/esm/core/fetcher/signals.mjs +32 -0
  349. package/dist/esm/core/headers.d.mts +3 -0
  350. package/dist/esm/core/headers.mjs +25 -0
  351. package/dist/esm/core/index.d.mts +6 -0
  352. package/dist/esm/core/index.mjs +6 -0
  353. package/dist/esm/core/json.d.mts +15 -0
  354. package/dist/esm/core/json.mjs +19 -0
  355. package/dist/esm/core/runtime/index.d.mts +1 -0
  356. package/dist/esm/core/runtime/index.mjs +1 -0
  357. package/dist/esm/core/runtime/runtime.d.mts +9 -0
  358. package/dist/esm/core/runtime/runtime.mjs +99 -0
  359. package/dist/esm/core/url/index.d.mts +2 -0
  360. package/dist/esm/core/url/index.mjs +2 -0
  361. package/dist/esm/core/url/join.d.mts +1 -0
  362. package/dist/esm/core/url/join.mjs +66 -0
  363. package/dist/esm/core/url/qs.d.mts +6 -0
  364. package/dist/esm/core/url/qs.mjs +61 -0
  365. package/dist/esm/core/websocket/events.d.mts +36 -0
  366. package/dist/esm/core/websocket/events.mjs +21 -0
  367. package/dist/esm/core/websocket/index.d.mts +1 -0
  368. package/dist/esm/core/websocket/index.mjs +1 -0
  369. package/dist/esm/core/websocket/ws.d.mts +147 -0
  370. package/dist/esm/core/websocket/ws.mjs +423 -0
  371. package/dist/esm/environments.d.mts +14 -0
  372. package/dist/esm/environments.mjs +9 -0
  373. package/dist/esm/errors/PhonicError.d.mts +15 -0
  374. package/dist/esm/errors/PhonicError.mjs +26 -0
  375. package/dist/esm/errors/PhonicTimeoutError.d.mts +6 -0
  376. package/dist/esm/errors/PhonicTimeoutError.mjs +9 -0
  377. package/dist/esm/errors/index.d.mts +2 -0
  378. package/dist/esm/errors/index.mjs +2 -0
  379. package/dist/esm/index.d.mts +4 -0
  380. package/dist/esm/index.mjs +4 -0
  381. package/dist/esm/version.d.mts +1 -0
  382. package/dist/esm/version.mjs +1 -0
  383. package/package.json +1 -1
  384. package/dist/index.d.mts +0 -640
  385. package/dist/index.d.ts +0 -640
  386. package/dist/index.js +0 -628
  387. package/dist/index.mjs +0 -591
package/dist/index.mjs DELETED
@@ -1,591 +0,0 @@
1
- // package.json
2
- var version = "0.27.0";
3
-
4
- // src/agents/index.ts
5
- var Agents = class {
6
- constructor(phonic) {
7
- this.phonic = phonic;
8
- }
9
- getQueryString(params) {
10
- const project = params?.project;
11
- const queryString = new URLSearchParams({
12
- ...project !== void 0 && { project }
13
- }).toString();
14
- return queryString;
15
- }
16
- getTemplateVariablesForBody(templateVariables) {
17
- if (templateVariables === void 0) {
18
- return void 0;
19
- }
20
- return Object.fromEntries(
21
- Object.entries(templateVariables).map(([key, value]) => [
22
- key,
23
- {
24
- default_value: value.defaultValue
25
- }
26
- ])
27
- );
28
- }
29
- getConfigurationEndpointForBody(configurationEndpoint) {
30
- if (configurationEndpoint === void 0 || configurationEndpoint === null) {
31
- return configurationEndpoint;
32
- }
33
- return {
34
- url: configurationEndpoint.url,
35
- headers: configurationEndpoint.headers,
36
- timeout_ms: configurationEndpoint.timeoutMs
37
- };
38
- }
39
- async list(params) {
40
- const response = await this.phonic.get(
41
- `/agents?${this.getQueryString(params)}`
42
- );
43
- return response;
44
- }
45
- async get(name, params) {
46
- const response = await this.phonic.get(
47
- `/agents/${name}?${this.getQueryString(params)}`
48
- );
49
- return response;
50
- }
51
- async create(params) {
52
- const response = await this.phonic.post(
53
- `/agents?${this.getQueryString(params)}`,
54
- {
55
- name: params.name,
56
- phone_number: params.phoneNumber,
57
- timezone: params.timezone,
58
- audio_format: params.phoneNumber === "assign-automatically" ? "mulaw_8000" : params.audioFormat,
59
- voice_id: params.voiceId,
60
- welcome_message: params.welcomeMessage,
61
- system_prompt: params.systemPrompt,
62
- template_variables: this.getTemplateVariablesForBody(
63
- params.templateVariables
64
- ),
65
- tools: params.tools,
66
- no_input_poke_sec: params.noInputPokeSec,
67
- no_input_poke_text: params.noInputPokeText,
68
- no_input_end_conversation_sec: params.noInputEndConversationSec,
69
- boosted_keywords: params.boostedKeywords,
70
- configuration_endpoint: this.getConfigurationEndpointForBody(
71
- params.configurationEndpoint
72
- )
73
- }
74
- );
75
- return response;
76
- }
77
- async update(name, params) {
78
- const response = await this.phonic.patch(
79
- `/agents/${name}?${this.getQueryString(params)}`,
80
- {
81
- name: params.name,
82
- phone_number: params.phoneNumber,
83
- timezone: params.timezone,
84
- audio_format: params.phoneNumber === "assign-automatically" ? "mulaw_8000" : params.audioFormat,
85
- voice_id: params.voiceId,
86
- welcome_message: params.welcomeMessage,
87
- system_prompt: params.systemPrompt,
88
- template_variables: this.getTemplateVariablesForBody(
89
- params.templateVariables
90
- ),
91
- tools: params.tools,
92
- no_input_poke_sec: params.noInputPokeSec,
93
- no_input_poke_text: params.noInputPokeText,
94
- no_input_end_conversation_sec: params.noInputEndConversationSec,
95
- boosted_keywords: params.boostedKeywords,
96
- configuration_endpoint: this.getConfigurationEndpointForBody(
97
- params.configurationEndpoint
98
- )
99
- }
100
- );
101
- return response;
102
- }
103
- async upsert(params) {
104
- const response = await this.phonic.put(
105
- `/agents/upsert?${this.getQueryString(params)}`,
106
- {
107
- name: params.name,
108
- phone_number: params.phoneNumber,
109
- timezone: params.timezone,
110
- audio_format: params.phoneNumber === "assign-automatically" ? "mulaw_8000" : params.audioFormat,
111
- voice_id: params.voiceId,
112
- welcome_message: params.welcomeMessage,
113
- system_prompt: params.systemPrompt,
114
- template_variables: this.getTemplateVariablesForBody(
115
- params.templateVariables
116
- ),
117
- tools: params.tools,
118
- no_input_poke_sec: params.noInputPokeSec,
119
- no_input_poke_text: params.noInputPokeText,
120
- no_input_end_conversation_sec: params.noInputEndConversationSec,
121
- boosted_keywords: params.boostedKeywords,
122
- configuration_endpoint: this.getConfigurationEndpointForBody(
123
- params.configurationEndpoint
124
- )
125
- }
126
- );
127
- return response;
128
- }
129
- async delete(name, params) {
130
- const response = await this.phonic.delete(
131
- `/agents/${name}?${this.getQueryString(params)}`
132
- );
133
- return response;
134
- }
135
- };
136
-
137
- // src/conversations/twilio/index.ts
138
- var Twilio = class {
139
- constructor(phonic) {
140
- this.phonic = phonic;
141
- }
142
- async outboundCall(params, config) {
143
- const response = await this.phonic.post(
144
- "/conversations/twilio/outbound_call",
145
- {
146
- from_phone_number: params.from_phone_number,
147
- to_phone_number: params.to_phone_number,
148
- config
149
- },
150
- {
151
- "X-Twilio-Account-Sid": params.account_sid,
152
- "X-Twilio-Api-Key-Sid": params.api_key_sid,
153
- "X-Twilio-Api-Key-Secret": params.api_key_secret
154
- }
155
- );
156
- return response;
157
- }
158
- };
159
-
160
- // src/conversations/index.ts
161
- var Conversations = class {
162
- constructor(phonic) {
163
- this.phonic = phonic;
164
- this.twilio = new Twilio(phonic);
165
- }
166
- twilio;
167
- async list({
168
- project,
169
- durationMin,
170
- durationMax,
171
- startedAtMin,
172
- startedAtMax
173
- }) {
174
- const queryString = new URLSearchParams({
175
- ...project !== void 0 && { project },
176
- ...durationMin !== void 0 && { duration_min: String(durationMin) },
177
- ...durationMax !== void 0 && { duration_max: String(durationMax) },
178
- ...startedAtMin !== void 0 && { started_at_min: startedAtMin },
179
- ...startedAtMax !== void 0 && { started_at_max: startedAtMax }
180
- }).toString();
181
- const response = await this.phonic.get(
182
- `/conversations?${queryString}`
183
- );
184
- return response;
185
- }
186
- async get(id) {
187
- const response = await this.phonic.get(
188
- `/conversations/${id}`
189
- );
190
- return response;
191
- }
192
- async getByExternalId({
193
- project,
194
- externalId
195
- }) {
196
- const queryString = new URLSearchParams({
197
- ...project !== void 0 && { project },
198
- external_id: externalId
199
- }).toString();
200
- const response = await this.phonic.get(
201
- `/conversations?${queryString}`
202
- );
203
- return response;
204
- }
205
- async outboundCall(toPhoneNumber, config) {
206
- const response = await this.phonic.post(
207
- "/conversations/outbound_call",
208
- {
209
- to_phone_number: toPhoneNumber,
210
- config
211
- }
212
- );
213
- return response;
214
- }
215
- };
216
-
217
- // src/projects/index.ts
218
- var Projects = class {
219
- constructor(phonic) {
220
- this.phonic = phonic;
221
- }
222
- async list() {
223
- return this.phonic.get("/projects");
224
- }
225
- async get(id) {
226
- return this.phonic.get(`/projects/${id}`);
227
- }
228
- async create(params) {
229
- return this.phonic.post("/projects", {
230
- name: params.name
231
- });
232
- }
233
- async update(id, params) {
234
- return this.phonic.put(`/projects/${id}`, {
235
- name: params.name
236
- });
237
- }
238
- async delete(id) {
239
- return this.phonic.delete(`/projects/${id}`);
240
- }
241
- async setDefaultAgent(id, params) {
242
- return this.phonic.put(
243
- `/projects/${id}/default-agent`,
244
- {
245
- agent_id: params.agent_id
246
- }
247
- );
248
- }
249
- async clearDefaultAgent(id) {
250
- return this.phonic.delete(
251
- `/projects/${id}/default-agent`
252
- );
253
- }
254
- };
255
-
256
- // src/sts/index.ts
257
- import WebSocket from "ws";
258
-
259
- // src/sts/websocket.ts
260
- var PhonicSTSWebSocket = class {
261
- constructor(ws, config) {
262
- this.ws = ws;
263
- this.config = config;
264
- this.buffer.push(
265
- JSON.stringify({
266
- type: "config",
267
- ...this.config
268
- })
269
- );
270
- this.ws.onopen = () => {
271
- for (const message of this.buffer) {
272
- this.ws.send(message);
273
- }
274
- this.isOpen = true;
275
- };
276
- this.ws.onmessage = (event) => {
277
- if (this.onMessageCallback === null) {
278
- return;
279
- }
280
- if (typeof event.data !== "string") {
281
- throw new Error("Received non-string message");
282
- }
283
- const dataObj = JSON.parse(
284
- event.data
285
- );
286
- this.onMessageCallback(dataObj);
287
- };
288
- this.ws.onclose = (event) => {
289
- if (this.onCloseCallback === null) {
290
- return;
291
- }
292
- this.onCloseCallback(event);
293
- };
294
- this.ws.onerror = (event) => {
295
- if (this.onErrorCallback === null) {
296
- return;
297
- }
298
- this.onErrorCallback(event);
299
- };
300
- this.onMessage = this.onMessage.bind(this);
301
- this.onClose = this.onClose.bind(this);
302
- this.onError = this.onError.bind(this);
303
- this.audioChunk = this.audioChunk.bind(this);
304
- this.sendToolCallOutput = this.sendToolCallOutput.bind(this);
305
- this.updateSystemPrompt = this.updateSystemPrompt.bind(this);
306
- this.setExternalId = this.setExternalId.bind(this);
307
- this.close = this.close.bind(this);
308
- }
309
- onMessageCallback = null;
310
- onCloseCallback = null;
311
- onErrorCallback = null;
312
- buffer = [];
313
- isOpen = false;
314
- processUserMessage(message) {
315
- const messageStr = JSON.stringify(message);
316
- if (this.isOpen) {
317
- this.ws.send(messageStr);
318
- } else {
319
- this.buffer.push(messageStr);
320
- }
321
- }
322
- onMessage(callback) {
323
- this.onMessageCallback = callback;
324
- }
325
- onClose(callback) {
326
- this.onCloseCallback = callback;
327
- }
328
- onError(callback) {
329
- this.onErrorCallback = callback;
330
- }
331
- audioChunk({ audio }) {
332
- this.processUserMessage({
333
- type: "audio_chunk",
334
- audio
335
- });
336
- }
337
- sendToolCallOutput({
338
- toolCallId,
339
- output
340
- }) {
341
- this.processUserMessage({
342
- type: "tool_call_output",
343
- tool_call_id: toolCallId,
344
- output
345
- });
346
- }
347
- updateSystemPrompt({ systemPrompt }) {
348
- this.processUserMessage({
349
- type: "update_system_prompt",
350
- system_prompt: systemPrompt
351
- });
352
- }
353
- setExternalId({ externalId }) {
354
- this.processUserMessage({
355
- type: "set_external_id",
356
- external_id: externalId
357
- });
358
- }
359
- close(code) {
360
- this.ws.close(code ?? 1e3);
361
- }
362
- };
363
-
364
- // src/sts/index.ts
365
- var SpeechToSpeech = class {
366
- constructor(phonic) {
367
- this.phonic = phonic;
368
- }
369
- websocket(config) {
370
- const wsBaseUrl = this.phonic.baseUrl.replace(/^http/, "ws");
371
- const queryString = new URLSearchParams({
372
- ...this.phonic.__downstreamWebSocketUrl !== null && {
373
- downstream_websocket_url: this.phonic.__downstreamWebSocketUrl
374
- }
375
- }).toString();
376
- const phonicApiWsUrl = `${wsBaseUrl}/v1/sts/ws?${queryString}`;
377
- const ws = new WebSocket(phonicApiWsUrl, {
378
- headers: this.phonic.headers
379
- });
380
- return new PhonicSTSWebSocket(ws, config);
381
- }
382
- };
383
-
384
- // src/tools/index.ts
385
- var Tools = class {
386
- constructor(phonic) {
387
- this.phonic = phonic;
388
- }
389
- getParametersForBody(parameters) {
390
- if (parameters === void 0) {
391
- return void 0;
392
- }
393
- return parameters.map((parameter) => {
394
- return {
395
- type: parameter.type,
396
- name: parameter.name,
397
- description: parameter.description,
398
- is_required: parameter.isRequired,
399
- ...parameter.type === "array" && {
400
- item_type: parameter.itemType
401
- }
402
- };
403
- });
404
- }
405
- async list() {
406
- const response = await this.phonic.get("/tools");
407
- return response;
408
- }
409
- async get(name) {
410
- const response = await this.phonic.get(
411
- `/tools/${name}`
412
- );
413
- return response;
414
- }
415
- async create(params) {
416
- const body = {
417
- name: params.name,
418
- description: params.description,
419
- type: params.type,
420
- execution_mode: params.executionMode,
421
- parameters: this.getParametersForBody(params.parameters)
422
- };
423
- if (params.type === "custom_webhook") {
424
- body.endpoint_method = params.endpointMethod;
425
- body.endpoint_url = params.endpointUrl;
426
- body.endpoint_headers = params.endpointHeaders;
427
- body.endpoint_timeout_ms = params.endpointTimeoutMs;
428
- }
429
- if (params.type === "custom_websocket") {
430
- body.tool_call_output_timeout_ms = params.toolCallOutputTimeoutMs;
431
- }
432
- const response = await this.phonic.post(
433
- "/tools",
434
- body
435
- );
436
- return response;
437
- }
438
- async update(name, params) {
439
- const response = await this.phonic.patch(
440
- `/tools/${name}`,
441
- {
442
- name: params.name,
443
- description: params.description,
444
- type: params.type,
445
- execution_mode: params.executionMode,
446
- endpoint_method: params.endpointMethod,
447
- endpoint_url: params.endpointUrl,
448
- endpoint_headers: params.endpointHeaders,
449
- endpoint_timeout_ms: params.endpointTimeoutMs,
450
- parameters: this.getParametersForBody(params.parameters),
451
- tool_call_output_timeout_ms: params.toolCallOutputTimeoutMs
452
- }
453
- );
454
- return response;
455
- }
456
- async delete(name) {
457
- const response = await this.phonic.delete(
458
- `/tools/${name}`
459
- );
460
- return response;
461
- }
462
- };
463
-
464
- // src/voices/index.ts
465
- var Voices = class {
466
- constructor(phonic) {
467
- this.phonic = phonic;
468
- }
469
- async list({ model }) {
470
- const response = await this.phonic.get(
471
- `/voices?model=${encodeURIComponent(model)}`
472
- );
473
- return response;
474
- }
475
- async get(id) {
476
- const response = await this.phonic.get(
477
- `/voices/${id}`
478
- );
479
- return response;
480
- }
481
- };
482
-
483
- // src/phonic.ts
484
- var defaultBaseUrl = "https://api.phonic.co";
485
- var defaultUserAgent = `phonic-node:${version}`;
486
- var Phonic = class {
487
- constructor(apiKey, config) {
488
- this.apiKey = apiKey;
489
- if (typeof process === "undefined") {
490
- throw new Error(
491
- "Phonic SDK is intended to be used in Node.js environment."
492
- );
493
- }
494
- if (!this.apiKey) {
495
- throw new Error(
496
- 'API key is missing. Pass it to the constructor: `new Phonic("ph_...")`'
497
- );
498
- }
499
- this.baseUrl = (config?.baseUrl ?? defaultBaseUrl).replace(/\/$/, "");
500
- this.__downstreamWebSocketUrl = config?.__downstreamWebSocketUrl || null;
501
- this.headers = {
502
- Authorization: `Bearer ${this.apiKey}`,
503
- "User-Agent": process.env.PHONIC_USER_AGENT || defaultUserAgent,
504
- "Content-Type": "application/json",
505
- ...config?.headers
506
- };
507
- }
508
- baseUrl;
509
- __downstreamWebSocketUrl;
510
- headers;
511
- agents = new Agents(this);
512
- conversations = new Conversations(this);
513
- projects = new Projects(this);
514
- tools = new Tools(this);
515
- voices = new Voices(this);
516
- sts = new SpeechToSpeech(this);
517
- async fetchRequest(path, options) {
518
- try {
519
- const { headers, ...restOptions } = options;
520
- const response = await fetch(`${this.baseUrl}/v1${path}`, {
521
- headers: {
522
- ...this.headers,
523
- ...headers
524
- },
525
- ...restOptions
526
- });
527
- if (response.ok) {
528
- const data = await response.json();
529
- return { data, error: null };
530
- }
531
- try {
532
- const data = await response.json();
533
- return {
534
- data: null,
535
- error: {
536
- message: data.error.message || response.statusText,
537
- param_errors: data.param_errors
538
- }
539
- };
540
- } catch (error) {
541
- return {
542
- data: null,
543
- error: {
544
- message: response.statusText
545
- }
546
- };
547
- }
548
- } catch (error) {
549
- console.error(error);
550
- return {
551
- data: null,
552
- error: {
553
- message: "Fetch request failed"
554
- }
555
- };
556
- }
557
- }
558
- async get(path) {
559
- return this.fetchRequest(path, { method: "GET" });
560
- }
561
- async post(path, body, headers) {
562
- return this.fetchRequest(path, {
563
- method: "POST",
564
- body: JSON.stringify(body),
565
- headers
566
- });
567
- }
568
- async patch(path, body, headers) {
569
- return this.fetchRequest(path, {
570
- method: "PATCH",
571
- body: JSON.stringify(body),
572
- headers
573
- });
574
- }
575
- async put(path, body, headers) {
576
- return this.fetchRequest(path, {
577
- method: "PUT",
578
- body: JSON.stringify(body),
579
- headers
580
- });
581
- }
582
- async delete(path, headers) {
583
- return this.fetchRequest(path, {
584
- method: "DELETE",
585
- headers
586
- });
587
- }
588
- };
589
- export {
590
- Phonic
591
- };