phonic 0.29.1 → 0.30.0-rc2
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.
- package/README.md +138 -746
- package/dist/cjs/Client.d.ts +50 -0
- package/dist/cjs/Client.js +84 -0
- package/dist/cjs/api/errors/BadRequestError.d.ts +8 -0
- package/dist/cjs/api/errors/BadRequestError.js +52 -0
- package/dist/cjs/api/errors/ConflictError.d.ts +8 -0
- package/dist/cjs/api/errors/ConflictError.js +52 -0
- package/dist/cjs/api/errors/ForbiddenError.d.ts +8 -0
- package/dist/cjs/api/errors/ForbiddenError.js +52 -0
- package/dist/cjs/api/errors/GatewayTimeoutError.d.ts +9 -0
- package/dist/cjs/api/errors/GatewayTimeoutError.js +52 -0
- package/dist/cjs/api/errors/InternalServerError.d.ts +9 -0
- package/dist/cjs/api/errors/InternalServerError.js +52 -0
- package/dist/cjs/api/errors/NotFoundError.d.ts +8 -0
- package/dist/cjs/api/errors/NotFoundError.js +52 -0
- package/dist/cjs/api/errors/UnauthorizedError.d.ts +9 -0
- package/dist/cjs/api/errors/UnauthorizedError.js +52 -0
- package/dist/cjs/api/errors/index.d.ts +7 -0
- package/dist/cjs/api/errors/index.js +23 -0
- package/dist/cjs/api/index.d.ts +4 -0
- package/dist/cjs/api/index.js +20 -0
- package/dist/cjs/api/resources/agents/client/Client.d.ts +201 -0
- package/dist/cjs/api/resources/agents/client/Client.js +582 -0
- package/dist/cjs/api/resources/agents/client/index.d.ts +2 -0
- package/dist/cjs/api/resources/agents/client/index.js +17 -0
- package/dist/cjs/api/resources/agents/client/requests/AgentsCreateRequest.d.ts +42 -0
- package/dist/cjs/api/resources/agents/client/requests/AgentsCreateRequest.js +5 -0
- package/dist/cjs/api/resources/agents/client/requests/AgentsDeleteRequest.d.ts +13 -0
- package/dist/cjs/api/resources/agents/client/requests/AgentsDeleteRequest.js +5 -0
- package/dist/cjs/api/resources/agents/client/requests/AgentsGetRequest.d.ts +13 -0
- package/dist/cjs/api/resources/agents/client/requests/AgentsGetRequest.js +5 -0
- package/dist/cjs/api/resources/agents/client/requests/AgentsListRequest.d.ts +13 -0
- package/dist/cjs/api/resources/agents/client/requests/AgentsListRequest.js +5 -0
- package/dist/cjs/api/resources/agents/client/requests/UpdateAgentRequest.d.ts +103 -0
- package/dist/cjs/api/resources/agents/client/requests/UpdateAgentRequest.js +13 -0
- package/dist/cjs/api/resources/agents/client/requests/UpsertAgentRequest.d.ts +39 -0
- package/dist/cjs/api/resources/agents/client/requests/UpsertAgentRequest.js +5 -0
- package/dist/cjs/api/resources/agents/client/requests/index.d.ts +6 -0
- package/dist/cjs/api/resources/agents/client/requests/index.js +2 -0
- package/dist/cjs/api/resources/agents/index.d.ts +2 -0
- package/dist/cjs/api/resources/agents/index.js +18 -0
- package/dist/cjs/api/resources/agents/types/AgentsCreateResponse.d.ts +9 -0
- package/dist/cjs/api/resources/agents/types/AgentsCreateResponse.js +5 -0
- package/dist/cjs/api/resources/agents/types/AgentsDeleteResponse.d.ts +7 -0
- package/dist/cjs/api/resources/agents/types/AgentsDeleteResponse.js +5 -0
- package/dist/cjs/api/resources/agents/types/AgentsGetResponse.d.ts +7 -0
- package/dist/cjs/api/resources/agents/types/AgentsGetResponse.js +5 -0
- package/dist/cjs/api/resources/agents/types/AgentsListResponse.d.ts +7 -0
- package/dist/cjs/api/resources/agents/types/AgentsListResponse.js +5 -0
- package/dist/cjs/api/resources/agents/types/AgentsUpdateResponse.d.ts +7 -0
- package/dist/cjs/api/resources/agents/types/AgentsUpdateResponse.js +5 -0
- package/dist/cjs/api/resources/agents/types/AgentsUpsertResponse.d.ts +11 -0
- package/dist/cjs/api/resources/agents/types/AgentsUpsertResponse.js +5 -0
- package/dist/cjs/api/resources/agents/types/index.d.ts +6 -0
- package/dist/cjs/api/resources/agents/types/index.js +22 -0
- package/dist/cjs/api/resources/conversations/client/Client.d.ts +237 -0
- package/dist/cjs/api/resources/conversations/client/Client.js +897 -0
- package/dist/cjs/api/resources/conversations/client/Socket.d.ts +57 -0
- package/dist/cjs/api/resources/conversations/client/Socket.js +172 -0
- package/dist/cjs/api/resources/conversations/client/index.d.ts +2 -0
- package/dist/cjs/api/resources/conversations/client/index.js +17 -0
- package/dist/cjs/api/resources/conversations/client/requests/ConversationsListRequest.d.ts +48 -0
- package/dist/cjs/api/resources/conversations/client/requests/ConversationsListRequest.js +5 -0
- package/dist/cjs/api/resources/conversations/client/requests/ConversationsSipOutboundCallRequest.d.ts +39 -0
- package/dist/cjs/api/resources/conversations/client/requests/ConversationsSipOutboundCallRequest.js +5 -0
- package/dist/cjs/api/resources/conversations/client/requests/EvaluateConversationRequest.d.ts +13 -0
- package/dist/cjs/api/resources/conversations/client/requests/EvaluateConversationRequest.js +5 -0
- package/dist/cjs/api/resources/conversations/client/requests/ExtractDataRequest.d.ts +13 -0
- package/dist/cjs/api/resources/conversations/client/requests/ExtractDataRequest.js +5 -0
- package/dist/cjs/api/resources/conversations/client/requests/OutboundCallRequest.d.ts +30 -0
- package/dist/cjs/api/resources/conversations/client/requests/OutboundCallRequest.js +5 -0
- package/dist/cjs/api/resources/conversations/client/requests/index.d.ts +5 -0
- package/dist/cjs/api/resources/conversations/client/requests/index.js +2 -0
- package/dist/cjs/api/resources/conversations/index.d.ts +2 -0
- package/dist/cjs/api/resources/conversations/index.js +18 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsCancelResponse.d.ts +7 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsCancelResponse.js +5 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsExtractDataResponse.d.ts +7 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsExtractDataResponse.js +5 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsGetAnalysisResponse.d.ts +7 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsGetAnalysisResponse.js +5 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsGetResponse.d.ts +7 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsGetResponse.js +5 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsListEvaluationsResponse.d.ts +7 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsListEvaluationsResponse.js +5 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsListExtractionsResponse.d.ts +7 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsListExtractionsResponse.js +5 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsListResponse.d.ts +9 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsListResponse.js +5 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsOutboundCallResponse.d.ts +7 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsOutboundCallResponse.js +5 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsSipOutboundCallResponse.d.ts +7 -0
- package/dist/cjs/api/resources/conversations/types/ConversationsSipOutboundCallResponse.js +5 -0
- package/dist/cjs/api/resources/conversations/types/index.d.ts +9 -0
- package/dist/cjs/api/resources/conversations/types/index.js +25 -0
- package/dist/cjs/api/resources/extractionSchemas/client/Client.d.ts +134 -0
- package/dist/cjs/api/resources/extractionSchemas/client/Client.js +460 -0
- package/dist/cjs/api/resources/extractionSchemas/client/index.d.ts +2 -0
- package/dist/cjs/api/resources/extractionSchemas/client/index.js +17 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/CreateExtractionSchemaRequest.d.ts +36 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/CreateExtractionSchemaRequest.js +5 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/ExtractionSchemasDeleteRequest.d.ts +13 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/ExtractionSchemasDeleteRequest.js +5 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/ExtractionSchemasGetRequest.d.ts +13 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/ExtractionSchemasGetRequest.js +5 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/ExtractionSchemasListRequest.d.ts +13 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/ExtractionSchemasListRequest.js +5 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/UpdateExtractionSchemaRequest.d.ts +32 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/UpdateExtractionSchemaRequest.js +5 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/index.d.ts +5 -0
- package/dist/cjs/api/resources/extractionSchemas/client/requests/index.js +2 -0
- package/dist/cjs/api/resources/extractionSchemas/index.d.ts +2 -0
- package/dist/cjs/api/resources/extractionSchemas/index.js +18 -0
- package/dist/cjs/api/resources/extractionSchemas/types/ExtractionSchemasCreateResponse.d.ts +9 -0
- package/dist/cjs/api/resources/extractionSchemas/types/ExtractionSchemasCreateResponse.js +5 -0
- package/dist/cjs/api/resources/extractionSchemas/types/ExtractionSchemasDeleteResponse.d.ts +7 -0
- package/dist/cjs/api/resources/extractionSchemas/types/ExtractionSchemasDeleteResponse.js +5 -0
- package/dist/cjs/api/resources/extractionSchemas/types/ExtractionSchemasGetResponse.d.ts +7 -0
- package/dist/cjs/api/resources/extractionSchemas/types/ExtractionSchemasGetResponse.js +5 -0
- package/dist/cjs/api/resources/extractionSchemas/types/ExtractionSchemasListResponse.d.ts +7 -0
- package/dist/cjs/api/resources/extractionSchemas/types/ExtractionSchemasListResponse.js +5 -0
- package/dist/cjs/api/resources/extractionSchemas/types/ExtractionSchemasUpdateResponse.d.ts +7 -0
- package/dist/cjs/api/resources/extractionSchemas/types/ExtractionSchemasUpdateResponse.js +5 -0
- package/dist/cjs/api/resources/extractionSchemas/types/index.d.ts +5 -0
- package/dist/cjs/api/resources/extractionSchemas/types/index.js +21 -0
- package/dist/cjs/api/resources/index.d.ts +18 -0
- package/dist/cjs/api/resources/index.js +57 -0
- package/dist/cjs/api/resources/projects/client/Client.d.ts +157 -0
- package/dist/cjs/api/resources/projects/client/Client.js +577 -0
- package/dist/cjs/api/resources/projects/client/index.d.ts +2 -0
- package/dist/cjs/api/resources/projects/client/index.js +17 -0
- package/dist/cjs/api/resources/projects/client/requests/CreateConversationEvalPromptRequest.d.ts +16 -0
- package/dist/cjs/api/resources/projects/client/requests/CreateConversationEvalPromptRequest.js +5 -0
- package/dist/cjs/api/resources/projects/client/requests/CreateProjectRequest.d.ts +13 -0
- package/dist/cjs/api/resources/projects/client/requests/CreateProjectRequest.js +5 -0
- package/dist/cjs/api/resources/projects/client/requests/UpdateProjectRequest.d.ts +15 -0
- package/dist/cjs/api/resources/projects/client/requests/UpdateProjectRequest.js +5 -0
- package/dist/cjs/api/resources/projects/client/requests/index.d.ts +3 -0
- package/dist/cjs/api/resources/projects/client/requests/index.js +2 -0
- package/dist/cjs/api/resources/projects/index.d.ts +2 -0
- package/dist/cjs/api/resources/projects/index.js +18 -0
- package/dist/cjs/api/resources/projects/types/ProjectsCreateEvalPromptResponse.d.ts +7 -0
- package/dist/cjs/api/resources/projects/types/ProjectsCreateEvalPromptResponse.js +5 -0
- package/dist/cjs/api/resources/projects/types/ProjectsCreateResponse.d.ts +9 -0
- package/dist/cjs/api/resources/projects/types/ProjectsCreateResponse.js +5 -0
- package/dist/cjs/api/resources/projects/types/ProjectsDeleteResponse.d.ts +7 -0
- package/dist/cjs/api/resources/projects/types/ProjectsDeleteResponse.js +5 -0
- package/dist/cjs/api/resources/projects/types/ProjectsGetResponse.d.ts +7 -0
- package/dist/cjs/api/resources/projects/types/ProjectsGetResponse.js +5 -0
- package/dist/cjs/api/resources/projects/types/ProjectsListEvalPromptsResponse.d.ts +7 -0
- package/dist/cjs/api/resources/projects/types/ProjectsListEvalPromptsResponse.js +5 -0
- package/dist/cjs/api/resources/projects/types/ProjectsListResponse.d.ts +7 -0
- package/dist/cjs/api/resources/projects/types/ProjectsListResponse.js +5 -0
- package/dist/cjs/api/resources/projects/types/ProjectsUpdateResponse.d.ts +7 -0
- package/dist/cjs/api/resources/projects/types/ProjectsUpdateResponse.js +5 -0
- package/dist/cjs/api/resources/projects/types/index.d.ts +7 -0
- package/dist/cjs/api/resources/projects/types/index.js +23 -0
- package/dist/cjs/api/resources/tools/client/Client.d.ts +151 -0
- package/dist/cjs/api/resources/tools/client/Client.js +470 -0
- package/dist/cjs/api/resources/tools/client/index.d.ts +2 -0
- package/dist/cjs/api/resources/tools/client/index.js +17 -0
- package/dist/cjs/api/resources/tools/client/requests/CreateToolRequest.d.ts +90 -0
- package/dist/cjs/api/resources/tools/client/requests/CreateToolRequest.js +17 -0
- package/dist/cjs/api/resources/tools/client/requests/ToolsDeleteRequest.d.ts +13 -0
- package/dist/cjs/api/resources/tools/client/requests/ToolsDeleteRequest.js +5 -0
- package/dist/cjs/api/resources/tools/client/requests/ToolsGetRequest.d.ts +16 -0
- package/dist/cjs/api/resources/tools/client/requests/ToolsGetRequest.js +5 -0
- package/dist/cjs/api/resources/tools/client/requests/ToolsListRequest.d.ts +13 -0
- package/dist/cjs/api/resources/tools/client/requests/ToolsListRequest.js +5 -0
- package/dist/cjs/api/resources/tools/client/requests/UpdateToolRequest.d.ts +53 -0
- package/dist/cjs/api/resources/tools/client/requests/UpdateToolRequest.js +17 -0
- package/dist/cjs/api/resources/tools/client/requests/index.d.ts +5 -0
- package/dist/cjs/api/resources/tools/client/requests/index.js +2 -0
- package/dist/cjs/api/resources/tools/index.d.ts +2 -0
- package/dist/cjs/api/resources/tools/index.js +18 -0
- package/dist/cjs/api/resources/tools/types/ToolsCreateResponse.d.ts +9 -0
- package/dist/cjs/api/resources/tools/types/ToolsCreateResponse.js +5 -0
- package/dist/cjs/api/resources/tools/types/ToolsDeleteResponse.d.ts +7 -0
- package/dist/cjs/api/resources/tools/types/ToolsDeleteResponse.js +5 -0
- package/dist/cjs/api/resources/tools/types/ToolsGetResponse.d.ts +7 -0
- package/dist/cjs/api/resources/tools/types/ToolsGetResponse.js +5 -0
- package/dist/cjs/api/resources/tools/types/ToolsListResponse.d.ts +7 -0
- package/dist/cjs/api/resources/tools/types/ToolsListResponse.js +5 -0
- package/dist/cjs/api/resources/tools/types/ToolsUpdateResponse.d.ts +7 -0
- package/dist/cjs/api/resources/tools/types/ToolsUpdateResponse.js +5 -0
- package/dist/cjs/api/resources/tools/types/index.d.ts +5 -0
- package/dist/cjs/api/resources/tools/types/index.js +21 -0
- package/dist/cjs/api/resources/voices/client/Client.d.ts +65 -0
- package/dist/cjs/api/resources/voices/client/Client.js +203 -0
- package/dist/cjs/api/resources/voices/client/index.d.ts +2 -0
- package/dist/cjs/api/resources/voices/client/index.js +17 -0
- package/dist/cjs/api/resources/voices/client/requests/VoicesListRequest.d.ts +15 -0
- package/dist/cjs/api/resources/voices/client/requests/VoicesListRequest.js +5 -0
- package/dist/cjs/api/resources/voices/client/requests/index.d.ts +1 -0
- package/dist/cjs/api/resources/voices/client/requests/index.js +2 -0
- package/dist/cjs/api/resources/voices/index.d.ts +2 -0
- package/dist/cjs/api/resources/voices/index.js +18 -0
- package/dist/cjs/api/resources/voices/types/VoicesGetResponse.d.ts +7 -0
- package/dist/cjs/api/resources/voices/types/VoicesGetResponse.js +5 -0
- package/dist/cjs/api/resources/voices/types/VoicesListResponse.d.ts +7 -0
- package/dist/cjs/api/resources/voices/types/VoicesListResponse.js +5 -0
- package/dist/cjs/api/resources/voices/types/index.d.ts +2 -0
- package/dist/cjs/api/resources/voices/types/index.js +18 -0
- package/dist/cjs/api/types/Agent.d.ts +80 -0
- package/dist/cjs/api/types/Agent.js +13 -0
- package/dist/cjs/api/types/AssistantChoseNotToRespondPayload.d.ts +6 -0
- package/dist/cjs/api/types/AssistantChoseNotToRespondPayload.js +5 -0
- package/dist/cjs/api/types/AssistantEndedConversationPayload.d.ts +6 -0
- package/dist/cjs/api/types/AssistantEndedConversationPayload.js +5 -0
- package/dist/cjs/api/types/AudioChunkPayload.d.ts +10 -0
- package/dist/cjs/api/types/AudioChunkPayload.js +5 -0
- package/dist/cjs/api/types/AudioChunkResponsePayload.d.ts +10 -0
- package/dist/cjs/api/types/AudioChunkResponsePayload.js +5 -0
- package/dist/cjs/api/types/AudioFinishedPayload.d.ts +6 -0
- package/dist/cjs/api/types/AudioFinishedPayload.js +5 -0
- package/dist/cjs/api/types/BadRequestErrorBody.d.ts +5 -0
- package/dist/cjs/api/types/BadRequestErrorBody.js +5 -0
- package/dist/cjs/api/types/BasicError.d.ts +14 -0
- package/dist/cjs/api/types/BasicError.js +5 -0
- package/dist/cjs/api/types/ConfigPayload.d.ts +66 -0
- package/dist/cjs/api/types/ConfigPayload.js +17 -0
- package/dist/cjs/api/types/Conversation.d.ts +49 -0
- package/dist/cjs/api/types/Conversation.js +5 -0
- package/dist/cjs/api/types/ConversationAnalysis.d.ts +9 -0
- package/dist/cjs/api/types/ConversationAnalysis.js +5 -0
- package/dist/cjs/api/types/ConversationCreatedPayload.d.ts +8 -0
- package/dist/cjs/api/types/ConversationCreatedPayload.js +5 -0
- package/dist/cjs/api/types/ConversationEval.d.ts +4 -0
- package/dist/cjs/api/types/ConversationEval.js +5 -0
- package/dist/cjs/api/types/ConversationEvalPrompt.d.ts +11 -0
- package/dist/cjs/api/types/ConversationEvalPrompt.js +5 -0
- package/dist/cjs/api/types/ConversationEvaluation.d.ts +8 -0
- package/dist/cjs/api/types/ConversationEvaluation.js +5 -0
- package/dist/cjs/api/types/ConversationEvaluationResult.d.ts +32 -0
- package/dist/cjs/api/types/ConversationEvaluationResult.js +15 -0
- package/dist/cjs/api/types/ConversationExtraction.d.ts +22 -0
- package/dist/cjs/api/types/ConversationExtraction.js +5 -0
- package/dist/cjs/api/types/ConversationItem.d.ts +33 -0
- package/dist/cjs/api/types/ConversationItem.js +13 -0
- package/dist/cjs/api/types/CreateAgentRequest.d.ts +70 -0
- package/dist/cjs/api/types/CreateAgentRequest.js +13 -0
- package/dist/cjs/api/types/DtmfPayload.d.ts +8 -0
- package/dist/cjs/api/types/DtmfPayload.js +5 -0
- package/dist/cjs/api/types/ErrorPayload.d.ts +17 -0
- package/dist/cjs/api/types/ErrorPayload.js +5 -0
- package/dist/cjs/api/types/Error_.d.ts +5 -0
- package/dist/cjs/api/types/Error_.js +5 -0
- package/dist/cjs/api/types/ExtractionField.d.ts +23 -0
- package/dist/cjs/api/types/ExtractionField.js +15 -0
- package/dist/cjs/api/types/ExtractionSchema.d.ts +14 -0
- package/dist/cjs/api/types/ExtractionSchema.js +5 -0
- package/dist/cjs/api/types/InputCancelledPayload.d.ts +6 -0
- package/dist/cjs/api/types/InputCancelledPayload.js +5 -0
- package/dist/cjs/api/types/InputTextPayload.d.ts +8 -0
- package/dist/cjs/api/types/InputTextPayload.js +5 -0
- package/dist/cjs/api/types/InterruptedResponsePayload.d.ts +8 -0
- package/dist/cjs/api/types/InterruptedResponsePayload.js +5 -0
- package/dist/cjs/api/types/OutboundCallConfig.d.ts +39 -0
- package/dist/cjs/api/types/OutboundCallConfig.js +5 -0
- package/dist/cjs/api/types/Project.d.ts +22 -0
- package/dist/cjs/api/types/Project.js +5 -0
- package/dist/cjs/api/types/ReadyToStartConversationPayload.d.ts +6 -0
- package/dist/cjs/api/types/ReadyToStartConversationPayload.js +5 -0
- package/dist/cjs/api/types/SetExternalIdPayload.d.ts +8 -0
- package/dist/cjs/api/types/SetExternalIdPayload.js +5 -0
- package/dist/cjs/api/types/SetTwilioCallSidPayload.d.ts +8 -0
- package/dist/cjs/api/types/SetTwilioCallSidPayload.js +5 -0
- package/dist/cjs/api/types/Task.d.ts +9 -0
- package/dist/cjs/api/types/Task.js +5 -0
- package/dist/cjs/api/types/Tool.d.ts +51 -0
- package/dist/cjs/api/types/Tool.js +17 -0
- package/dist/cjs/api/types/ToolCallInterruptedPayload.d.ts +12 -0
- package/dist/cjs/api/types/ToolCallInterruptedPayload.js +5 -0
- package/dist/cjs/api/types/ToolCallOutputPayload.d.ts +9 -0
- package/dist/cjs/api/types/ToolCallOutputPayload.js +5 -0
- package/dist/cjs/api/types/ToolCallOutputProcessedPayload.d.ts +35 -0
- package/dist/cjs/api/types/ToolCallOutputProcessedPayload.js +5 -0
- package/dist/cjs/api/types/ToolCallPayload.d.ts +12 -0
- package/dist/cjs/api/types/ToolCallPayload.js +5 -0
- package/dist/cjs/api/types/ToolParameter.d.ts +38 -0
- package/dist/cjs/api/types/ToolParameter.js +22 -0
- package/dist/cjs/api/types/UpdateSystemPromptPayload.d.ts +8 -0
- package/dist/cjs/api/types/UpdateSystemPromptPayload.js +5 -0
- package/dist/cjs/api/types/UserFinishedSpeakingPayload.d.ts +6 -0
- package/dist/cjs/api/types/UserFinishedSpeakingPayload.js +5 -0
- package/dist/cjs/api/types/UserStartedSpeakingPayload.d.ts +6 -0
- package/dist/cjs/api/types/UserStartedSpeakingPayload.js +5 -0
- package/dist/cjs/api/types/ValidationError.d.ts +14 -0
- package/dist/cjs/api/types/ValidationError.js +5 -0
- package/dist/cjs/api/types/Voice.d.ts +11 -0
- package/dist/cjs/api/types/Voice.js +5 -0
- package/dist/cjs/api/types/index.d.ts +44 -0
- package/dist/cjs/api/types/index.js +60 -0
- package/dist/cjs/api/types/overrides.d.ts +23 -0
- package/dist/cjs/api/types/overrides.js +2 -0
- package/dist/cjs/core/auth/BasicAuth.d.ts +8 -0
- package/dist/cjs/core/auth/BasicAuth.js +26 -0
- package/dist/cjs/core/auth/BearerToken.d.ts +5 -0
- package/dist/cjs/core/auth/BearerToken.js +15 -0
- package/dist/cjs/core/auth/index.d.ts +2 -0
- package/dist/cjs/core/auth/index.js +7 -0
- package/dist/cjs/core/base64.d.ts +2 -0
- package/dist/cjs/core/base64.js +26 -0
- package/dist/cjs/core/fetcher/APIResponse.d.ts +20 -0
- package/dist/cjs/core/fetcher/APIResponse.js +2 -0
- package/dist/cjs/core/fetcher/BinaryResponse.d.ts +20 -0
- package/dist/cjs/core/fetcher/BinaryResponse.js +17 -0
- package/dist/cjs/core/fetcher/Fetcher.d.ts +40 -0
- package/dist/cjs/core/fetcher/Fetcher.js +120 -0
- package/dist/cjs/core/fetcher/Headers.d.ts +2 -0
- package/dist/cjs/core/fetcher/Headers.js +84 -0
- package/dist/cjs/core/fetcher/HttpResponsePromise.d.ts +58 -0
- package/dist/cjs/core/fetcher/HttpResponsePromise.js +103 -0
- package/dist/cjs/core/fetcher/RawResponse.d.ts +29 -0
- package/dist/cjs/core/fetcher/RawResponse.js +44 -0
- package/dist/cjs/core/fetcher/ResponseWithBody.d.ts +4 -0
- package/dist/cjs/core/fetcher/ResponseWithBody.js +6 -0
- package/dist/cjs/core/fetcher/Supplier.d.ts +4 -0
- package/dist/cjs/core/fetcher/Supplier.js +22 -0
- package/dist/cjs/core/fetcher/createRequestUrl.d.ts +1 -0
- package/dist/cjs/core/fetcher/createRequestUrl.js +8 -0
- package/dist/cjs/core/fetcher/getErrorResponseBody.d.ts +1 -0
- package/dist/cjs/core/fetcher/getErrorResponseBody.js +44 -0
- package/dist/cjs/core/fetcher/getFetchFn.d.ts +1 -0
- package/dist/cjs/core/fetcher/getFetchFn.js +17 -0
- package/dist/cjs/core/fetcher/getHeader.d.ts +1 -0
- package/dist/cjs/core/fetcher/getHeader.js +11 -0
- package/dist/cjs/core/fetcher/getRequestBody.d.ts +7 -0
- package/dist/cjs/core/fetcher/getRequestBody.js +23 -0
- package/dist/cjs/core/fetcher/getResponseBody.d.ts +1 -0
- package/dist/cjs/core/fetcher/getResponseBody.js +55 -0
- package/dist/cjs/core/fetcher/index.d.ts +9 -0
- package/dist/cjs/core/fetcher/index.js +15 -0
- package/dist/cjs/core/fetcher/makeRequest.d.ts +1 -0
- package/dist/cjs/core/fetcher/makeRequest.js +42 -0
- package/dist/cjs/core/fetcher/requestWithRetries.d.ts +1 -0
- package/dist/cjs/core/fetcher/requestWithRetries.js +40 -0
- package/dist/cjs/core/fetcher/signals.d.ts +11 -0
- package/dist/cjs/core/fetcher/signals.js +36 -0
- package/dist/cjs/core/headers.d.ts +3 -0
- package/dist/cjs/core/headers.js +29 -0
- package/dist/cjs/core/index.d.ts +6 -0
- package/dist/cjs/core/index.js +45 -0
- package/dist/cjs/core/json.d.ts +15 -0
- package/dist/cjs/core/json.js +24 -0
- package/dist/cjs/core/runtime/index.d.ts +1 -0
- package/dist/cjs/core/runtime/index.js +5 -0
- package/dist/cjs/core/runtime/runtime.d.ts +9 -0
- package/dist/cjs/core/runtime/runtime.js +102 -0
- package/dist/cjs/core/url/index.d.ts +2 -0
- package/dist/cjs/core/url/index.js +7 -0
- package/dist/cjs/core/url/join.d.ts +1 -0
- package/dist/cjs/core/url/join.js +69 -0
- package/dist/cjs/core/url/qs.d.ts +6 -0
- package/dist/cjs/core/url/qs.js +64 -0
- package/dist/cjs/core/websocket/events.d.ts +36 -0
- package/dist/cjs/core/websocket/events.js +27 -0
- package/dist/cjs/core/websocket/index.d.ts +1 -0
- package/dist/cjs/core/websocket/index.js +17 -0
- package/dist/cjs/core/websocket/ws.d.ts +147 -0
- package/dist/cjs/core/websocket/ws.js +460 -0
- package/dist/cjs/environments.d.ts +14 -0
- package/dist/cjs/environments.js +12 -0
- package/dist/cjs/errors/PhonicError.d.ts +15 -0
- package/dist/cjs/errors/PhonicError.js +30 -0
- package/dist/cjs/errors/PhonicTimeoutError.d.ts +6 -0
- package/dist/cjs/errors/PhonicTimeoutError.js +13 -0
- package/dist/cjs/errors/index.d.ts +2 -0
- package/dist/cjs/errors/index.js +7 -0
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/index.js +44 -0
- package/dist/cjs/version.d.ts +1 -0
- package/dist/cjs/version.js +4 -0
- package/dist/esm/Client.d.mts +50 -0
- package/dist/esm/Client.mjs +47 -0
- package/dist/esm/api/errors/BadRequestError.d.mts +8 -0
- package/dist/esm/api/errors/BadRequestError.mjs +15 -0
- package/dist/esm/api/errors/ConflictError.d.mts +8 -0
- package/dist/esm/api/errors/ConflictError.mjs +15 -0
- package/dist/esm/api/errors/ForbiddenError.d.mts +8 -0
- package/dist/esm/api/errors/ForbiddenError.mjs +15 -0
- package/dist/esm/api/errors/GatewayTimeoutError.d.mts +9 -0
- package/dist/esm/api/errors/GatewayTimeoutError.mjs +15 -0
- package/dist/esm/api/errors/InternalServerError.d.mts +9 -0
- package/dist/esm/api/errors/InternalServerError.mjs +15 -0
- package/dist/esm/api/errors/NotFoundError.d.mts +8 -0
- package/dist/esm/api/errors/NotFoundError.mjs +15 -0
- package/dist/esm/api/errors/UnauthorizedError.d.mts +9 -0
- package/dist/esm/api/errors/UnauthorizedError.mjs +15 -0
- package/dist/esm/api/errors/index.d.mts +7 -0
- package/dist/esm/api/errors/index.mjs +7 -0
- package/dist/esm/api/index.d.mts +4 -0
- package/dist/esm/api/index.mjs +4 -0
- package/dist/esm/api/resources/agents/client/Client.d.mts +201 -0
- package/dist/esm/api/resources/agents/client/Client.mjs +545 -0
- package/dist/esm/api/resources/agents/client/index.d.mts +2 -0
- package/dist/esm/api/resources/agents/client/index.mjs +1 -0
- package/dist/esm/api/resources/agents/client/requests/AgentsCreateRequest.d.mts +42 -0
- package/dist/esm/api/resources/agents/client/requests/AgentsCreateRequest.mjs +4 -0
- package/dist/esm/api/resources/agents/client/requests/AgentsDeleteRequest.d.mts +13 -0
- package/dist/esm/api/resources/agents/client/requests/AgentsDeleteRequest.mjs +4 -0
- package/dist/esm/api/resources/agents/client/requests/AgentsGetRequest.d.mts +13 -0
- package/dist/esm/api/resources/agents/client/requests/AgentsGetRequest.mjs +4 -0
- package/dist/esm/api/resources/agents/client/requests/AgentsListRequest.d.mts +13 -0
- package/dist/esm/api/resources/agents/client/requests/AgentsListRequest.mjs +4 -0
- package/dist/esm/api/resources/agents/client/requests/UpdateAgentRequest.d.mts +103 -0
- package/dist/esm/api/resources/agents/client/requests/UpdateAgentRequest.mjs +10 -0
- package/dist/esm/api/resources/agents/client/requests/UpsertAgentRequest.d.mts +39 -0
- package/dist/esm/api/resources/agents/client/requests/UpsertAgentRequest.mjs +4 -0
- package/dist/esm/api/resources/agents/client/requests/index.d.mts +6 -0
- package/dist/esm/api/resources/agents/client/requests/index.mjs +1 -0
- package/dist/esm/api/resources/agents/index.d.mts +2 -0
- package/dist/esm/api/resources/agents/index.mjs +2 -0
- package/dist/esm/api/resources/agents/types/AgentsCreateResponse.d.mts +9 -0
- package/dist/esm/api/resources/agents/types/AgentsCreateResponse.mjs +4 -0
- package/dist/esm/api/resources/agents/types/AgentsDeleteResponse.d.mts +7 -0
- package/dist/esm/api/resources/agents/types/AgentsDeleteResponse.mjs +4 -0
- package/dist/esm/api/resources/agents/types/AgentsGetResponse.d.mts +7 -0
- package/dist/esm/api/resources/agents/types/AgentsGetResponse.mjs +4 -0
- package/dist/esm/api/resources/agents/types/AgentsListResponse.d.mts +7 -0
- package/dist/esm/api/resources/agents/types/AgentsListResponse.mjs +4 -0
- package/dist/esm/api/resources/agents/types/AgentsUpdateResponse.d.mts +7 -0
- package/dist/esm/api/resources/agents/types/AgentsUpdateResponse.mjs +4 -0
- package/dist/esm/api/resources/agents/types/AgentsUpsertResponse.d.mts +11 -0
- package/dist/esm/api/resources/agents/types/AgentsUpsertResponse.mjs +4 -0
- package/dist/esm/api/resources/agents/types/index.d.mts +6 -0
- package/dist/esm/api/resources/agents/types/index.mjs +6 -0
- package/dist/esm/api/resources/conversations/client/Client.d.mts +237 -0
- package/dist/esm/api/resources/conversations/client/Client.mjs +860 -0
- package/dist/esm/api/resources/conversations/client/Socket.d.mts +57 -0
- package/dist/esm/api/resources/conversations/client/Socket.mjs +135 -0
- package/dist/esm/api/resources/conversations/client/index.d.mts +2 -0
- package/dist/esm/api/resources/conversations/client/index.mjs +1 -0
- package/dist/esm/api/resources/conversations/client/requests/ConversationsListRequest.d.mts +48 -0
- package/dist/esm/api/resources/conversations/client/requests/ConversationsListRequest.mjs +4 -0
- package/dist/esm/api/resources/conversations/client/requests/ConversationsSipOutboundCallRequest.d.mts +39 -0
- package/dist/esm/api/resources/conversations/client/requests/ConversationsSipOutboundCallRequest.mjs +4 -0
- package/dist/esm/api/resources/conversations/client/requests/EvaluateConversationRequest.d.mts +13 -0
- package/dist/esm/api/resources/conversations/client/requests/EvaluateConversationRequest.mjs +4 -0
- package/dist/esm/api/resources/conversations/client/requests/ExtractDataRequest.d.mts +13 -0
- package/dist/esm/api/resources/conversations/client/requests/ExtractDataRequest.mjs +4 -0
- package/dist/esm/api/resources/conversations/client/requests/OutboundCallRequest.d.mts +30 -0
- package/dist/esm/api/resources/conversations/client/requests/OutboundCallRequest.mjs +4 -0
- package/dist/esm/api/resources/conversations/client/requests/index.d.mts +5 -0
- package/dist/esm/api/resources/conversations/client/requests/index.mjs +1 -0
- package/dist/esm/api/resources/conversations/index.d.mts +2 -0
- package/dist/esm/api/resources/conversations/index.mjs +2 -0
- package/dist/esm/api/resources/conversations/types/ConversationsCancelResponse.d.mts +7 -0
- package/dist/esm/api/resources/conversations/types/ConversationsCancelResponse.mjs +4 -0
- package/dist/esm/api/resources/conversations/types/ConversationsExtractDataResponse.d.mts +7 -0
- package/dist/esm/api/resources/conversations/types/ConversationsExtractDataResponse.mjs +4 -0
- package/dist/esm/api/resources/conversations/types/ConversationsGetAnalysisResponse.d.mts +7 -0
- package/dist/esm/api/resources/conversations/types/ConversationsGetAnalysisResponse.mjs +4 -0
- package/dist/esm/api/resources/conversations/types/ConversationsGetResponse.d.mts +7 -0
- package/dist/esm/api/resources/conversations/types/ConversationsGetResponse.mjs +4 -0
- package/dist/esm/api/resources/conversations/types/ConversationsListEvaluationsResponse.d.mts +7 -0
- package/dist/esm/api/resources/conversations/types/ConversationsListEvaluationsResponse.mjs +4 -0
- package/dist/esm/api/resources/conversations/types/ConversationsListExtractionsResponse.d.mts +7 -0
- package/dist/esm/api/resources/conversations/types/ConversationsListExtractionsResponse.mjs +4 -0
- package/dist/esm/api/resources/conversations/types/ConversationsListResponse.d.mts +9 -0
- package/dist/esm/api/resources/conversations/types/ConversationsListResponse.mjs +4 -0
- package/dist/esm/api/resources/conversations/types/ConversationsOutboundCallResponse.d.mts +7 -0
- package/dist/esm/api/resources/conversations/types/ConversationsOutboundCallResponse.mjs +4 -0
- package/dist/esm/api/resources/conversations/types/ConversationsSipOutboundCallResponse.d.mts +7 -0
- package/dist/esm/api/resources/conversations/types/ConversationsSipOutboundCallResponse.mjs +4 -0
- package/dist/esm/api/resources/conversations/types/index.d.mts +9 -0
- package/dist/esm/api/resources/conversations/types/index.mjs +9 -0
- package/dist/esm/api/resources/extractionSchemas/client/Client.d.mts +134 -0
- package/dist/esm/api/resources/extractionSchemas/client/Client.mjs +423 -0
- package/dist/esm/api/resources/extractionSchemas/client/index.d.mts +2 -0
- package/dist/esm/api/resources/extractionSchemas/client/index.mjs +1 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/CreateExtractionSchemaRequest.d.mts +36 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/CreateExtractionSchemaRequest.mjs +4 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasDeleteRequest.d.mts +13 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasDeleteRequest.mjs +4 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasGetRequest.d.mts +13 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasGetRequest.mjs +4 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasListRequest.d.mts +13 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/ExtractionSchemasListRequest.mjs +4 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/UpdateExtractionSchemaRequest.d.mts +32 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/UpdateExtractionSchemaRequest.mjs +4 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/index.d.mts +5 -0
- package/dist/esm/api/resources/extractionSchemas/client/requests/index.mjs +1 -0
- package/dist/esm/api/resources/extractionSchemas/index.d.mts +2 -0
- package/dist/esm/api/resources/extractionSchemas/index.mjs +2 -0
- package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasCreateResponse.d.mts +9 -0
- package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasCreateResponse.mjs +4 -0
- package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasDeleteResponse.d.mts +7 -0
- package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasDeleteResponse.mjs +4 -0
- package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasGetResponse.d.mts +7 -0
- package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasGetResponse.mjs +4 -0
- package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasListResponse.d.mts +7 -0
- package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasListResponse.mjs +4 -0
- package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasUpdateResponse.d.mts +7 -0
- package/dist/esm/api/resources/extractionSchemas/types/ExtractionSchemasUpdateResponse.mjs +4 -0
- package/dist/esm/api/resources/extractionSchemas/types/index.d.mts +5 -0
- package/dist/esm/api/resources/extractionSchemas/types/index.mjs +5 -0
- package/dist/esm/api/resources/index.d.mts +18 -0
- package/dist/esm/api/resources/index.mjs +18 -0
- package/dist/esm/api/resources/projects/client/Client.d.mts +157 -0
- package/dist/esm/api/resources/projects/client/Client.mjs +540 -0
- package/dist/esm/api/resources/projects/client/index.d.mts +2 -0
- package/dist/esm/api/resources/projects/client/index.mjs +1 -0
- package/dist/esm/api/resources/projects/client/requests/CreateConversationEvalPromptRequest.d.mts +16 -0
- package/dist/esm/api/resources/projects/client/requests/CreateConversationEvalPromptRequest.mjs +4 -0
- package/dist/esm/api/resources/projects/client/requests/CreateProjectRequest.d.mts +13 -0
- package/dist/esm/api/resources/projects/client/requests/CreateProjectRequest.mjs +4 -0
- package/dist/esm/api/resources/projects/client/requests/UpdateProjectRequest.d.mts +15 -0
- package/dist/esm/api/resources/projects/client/requests/UpdateProjectRequest.mjs +4 -0
- package/dist/esm/api/resources/projects/client/requests/index.d.mts +3 -0
- package/dist/esm/api/resources/projects/client/requests/index.mjs +1 -0
- package/dist/esm/api/resources/projects/index.d.mts +2 -0
- package/dist/esm/api/resources/projects/index.mjs +2 -0
- package/dist/esm/api/resources/projects/types/ProjectsCreateEvalPromptResponse.d.mts +7 -0
- package/dist/esm/api/resources/projects/types/ProjectsCreateEvalPromptResponse.mjs +4 -0
- package/dist/esm/api/resources/projects/types/ProjectsCreateResponse.d.mts +9 -0
- package/dist/esm/api/resources/projects/types/ProjectsCreateResponse.mjs +4 -0
- package/dist/esm/api/resources/projects/types/ProjectsDeleteResponse.d.mts +7 -0
- package/dist/esm/api/resources/projects/types/ProjectsDeleteResponse.mjs +4 -0
- package/dist/esm/api/resources/projects/types/ProjectsGetResponse.d.mts +7 -0
- package/dist/esm/api/resources/projects/types/ProjectsGetResponse.mjs +4 -0
- package/dist/esm/api/resources/projects/types/ProjectsListEvalPromptsResponse.d.mts +7 -0
- package/dist/esm/api/resources/projects/types/ProjectsListEvalPromptsResponse.mjs +4 -0
- package/dist/esm/api/resources/projects/types/ProjectsListResponse.d.mts +7 -0
- package/dist/esm/api/resources/projects/types/ProjectsListResponse.mjs +4 -0
- package/dist/esm/api/resources/projects/types/ProjectsUpdateResponse.d.mts +7 -0
- package/dist/esm/api/resources/projects/types/ProjectsUpdateResponse.mjs +4 -0
- package/dist/esm/api/resources/projects/types/index.d.mts +7 -0
- package/dist/esm/api/resources/projects/types/index.mjs +7 -0
- package/dist/esm/api/resources/tools/client/Client.d.mts +151 -0
- package/dist/esm/api/resources/tools/client/Client.mjs +433 -0
- package/dist/esm/api/resources/tools/client/index.d.mts +2 -0
- package/dist/esm/api/resources/tools/client/index.mjs +1 -0
- package/dist/esm/api/resources/tools/client/requests/CreateToolRequest.d.mts +90 -0
- package/dist/esm/api/resources/tools/client/requests/CreateToolRequest.mjs +14 -0
- package/dist/esm/api/resources/tools/client/requests/ToolsDeleteRequest.d.mts +13 -0
- package/dist/esm/api/resources/tools/client/requests/ToolsDeleteRequest.mjs +4 -0
- package/dist/esm/api/resources/tools/client/requests/ToolsGetRequest.d.mts +16 -0
- package/dist/esm/api/resources/tools/client/requests/ToolsGetRequest.mjs +4 -0
- package/dist/esm/api/resources/tools/client/requests/ToolsListRequest.d.mts +13 -0
- package/dist/esm/api/resources/tools/client/requests/ToolsListRequest.mjs +4 -0
- package/dist/esm/api/resources/tools/client/requests/UpdateToolRequest.d.mts +53 -0
- package/dist/esm/api/resources/tools/client/requests/UpdateToolRequest.mjs +14 -0
- package/dist/esm/api/resources/tools/client/requests/index.d.mts +5 -0
- package/dist/esm/api/resources/tools/client/requests/index.mjs +1 -0
- package/dist/esm/api/resources/tools/index.d.mts +2 -0
- package/dist/esm/api/resources/tools/index.mjs +2 -0
- package/dist/esm/api/resources/tools/types/ToolsCreateResponse.d.mts +9 -0
- package/dist/esm/api/resources/tools/types/ToolsCreateResponse.mjs +4 -0
- package/dist/esm/api/resources/tools/types/ToolsDeleteResponse.d.mts +7 -0
- package/dist/esm/api/resources/tools/types/ToolsDeleteResponse.mjs +4 -0
- package/dist/esm/api/resources/tools/types/ToolsGetResponse.d.mts +7 -0
- package/dist/esm/api/resources/tools/types/ToolsGetResponse.mjs +4 -0
- package/dist/esm/api/resources/tools/types/ToolsListResponse.d.mts +7 -0
- package/dist/esm/api/resources/tools/types/ToolsListResponse.mjs +4 -0
- package/dist/esm/api/resources/tools/types/ToolsUpdateResponse.d.mts +7 -0
- package/dist/esm/api/resources/tools/types/ToolsUpdateResponse.mjs +4 -0
- package/dist/esm/api/resources/tools/types/index.d.mts +5 -0
- package/dist/esm/api/resources/tools/types/index.mjs +5 -0
- package/dist/esm/api/resources/voices/client/Client.d.mts +65 -0
- package/dist/esm/api/resources/voices/client/Client.mjs +166 -0
- package/dist/esm/api/resources/voices/client/index.d.mts +2 -0
- package/dist/esm/api/resources/voices/client/index.mjs +1 -0
- package/dist/esm/api/resources/voices/client/requests/VoicesListRequest.d.mts +15 -0
- package/dist/esm/api/resources/voices/client/requests/VoicesListRequest.mjs +4 -0
- package/dist/esm/api/resources/voices/client/requests/index.d.mts +1 -0
- package/dist/esm/api/resources/voices/client/requests/index.mjs +1 -0
- package/dist/esm/api/resources/voices/index.d.mts +2 -0
- package/dist/esm/api/resources/voices/index.mjs +2 -0
- package/dist/esm/api/resources/voices/types/VoicesGetResponse.d.mts +7 -0
- package/dist/esm/api/resources/voices/types/VoicesGetResponse.mjs +4 -0
- package/dist/esm/api/resources/voices/types/VoicesListResponse.d.mts +7 -0
- package/dist/esm/api/resources/voices/types/VoicesListResponse.mjs +4 -0
- package/dist/esm/api/resources/voices/types/index.d.mts +2 -0
- package/dist/esm/api/resources/voices/types/index.mjs +2 -0
- package/dist/esm/api/types/Agent.d.mts +80 -0
- package/dist/esm/api/types/Agent.mjs +10 -0
- package/dist/esm/api/types/AssistantChoseNotToRespondPayload.d.mts +6 -0
- package/dist/esm/api/types/AssistantChoseNotToRespondPayload.mjs +4 -0
- package/dist/esm/api/types/AssistantEndedConversationPayload.d.mts +6 -0
- package/dist/esm/api/types/AssistantEndedConversationPayload.mjs +4 -0
- package/dist/esm/api/types/AudioChunkPayload.d.mts +10 -0
- package/dist/esm/api/types/AudioChunkPayload.mjs +4 -0
- package/dist/esm/api/types/AudioChunkResponsePayload.d.mts +10 -0
- package/dist/esm/api/types/AudioChunkResponsePayload.mjs +4 -0
- package/dist/esm/api/types/AudioFinishedPayload.d.mts +6 -0
- package/dist/esm/api/types/AudioFinishedPayload.mjs +4 -0
- package/dist/esm/api/types/BadRequestErrorBody.d.mts +5 -0
- package/dist/esm/api/types/BadRequestErrorBody.mjs +4 -0
- package/dist/esm/api/types/BasicError.d.mts +14 -0
- package/dist/esm/api/types/BasicError.mjs +4 -0
- package/dist/esm/api/types/ConfigPayload.d.mts +66 -0
- package/dist/esm/api/types/ConfigPayload.mjs +14 -0
- package/dist/esm/api/types/Conversation.d.mts +49 -0
- package/dist/esm/api/types/Conversation.mjs +4 -0
- package/dist/esm/api/types/ConversationAnalysis.d.mts +9 -0
- package/dist/esm/api/types/ConversationAnalysis.mjs +4 -0
- package/dist/esm/api/types/ConversationCreatedPayload.d.mts +8 -0
- package/dist/esm/api/types/ConversationCreatedPayload.mjs +4 -0
- package/dist/esm/api/types/ConversationEval.d.mts +4 -0
- package/dist/esm/api/types/ConversationEval.mjs +4 -0
- package/dist/esm/api/types/ConversationEvalPrompt.d.mts +11 -0
- package/dist/esm/api/types/ConversationEvalPrompt.mjs +4 -0
- package/dist/esm/api/types/ConversationEvaluation.d.mts +8 -0
- package/dist/esm/api/types/ConversationEvaluation.mjs +4 -0
- package/dist/esm/api/types/ConversationEvaluationResult.d.mts +32 -0
- package/dist/esm/api/types/ConversationEvaluationResult.mjs +12 -0
- package/dist/esm/api/types/ConversationExtraction.d.mts +22 -0
- package/dist/esm/api/types/ConversationExtraction.mjs +4 -0
- package/dist/esm/api/types/ConversationItem.d.mts +33 -0
- package/dist/esm/api/types/ConversationItem.mjs +10 -0
- package/dist/esm/api/types/CreateAgentRequest.d.mts +70 -0
- package/dist/esm/api/types/CreateAgentRequest.mjs +10 -0
- package/dist/esm/api/types/DtmfPayload.d.mts +8 -0
- package/dist/esm/api/types/DtmfPayload.mjs +4 -0
- package/dist/esm/api/types/ErrorPayload.d.mts +17 -0
- package/dist/esm/api/types/ErrorPayload.mjs +4 -0
- package/dist/esm/api/types/Error_.d.mts +5 -0
- package/dist/esm/api/types/Error_.mjs +4 -0
- package/dist/esm/api/types/ExtractionField.d.mts +23 -0
- package/dist/esm/api/types/ExtractionField.mjs +12 -0
- package/dist/esm/api/types/ExtractionSchema.d.mts +14 -0
- package/dist/esm/api/types/ExtractionSchema.mjs +4 -0
- package/dist/esm/api/types/InputCancelledPayload.d.mts +6 -0
- package/dist/esm/api/types/InputCancelledPayload.mjs +4 -0
- package/dist/esm/api/types/InputTextPayload.d.mts +8 -0
- package/dist/esm/api/types/InputTextPayload.mjs +4 -0
- package/dist/esm/api/types/InterruptedResponsePayload.d.mts +8 -0
- package/dist/esm/api/types/InterruptedResponsePayload.mjs +4 -0
- package/dist/esm/api/types/OutboundCallConfig.d.mts +39 -0
- package/dist/esm/api/types/OutboundCallConfig.mjs +4 -0
- package/dist/esm/api/types/Project.d.mts +22 -0
- package/dist/esm/api/types/Project.mjs +4 -0
- package/dist/esm/api/types/ReadyToStartConversationPayload.d.mts +6 -0
- package/dist/esm/api/types/ReadyToStartConversationPayload.mjs +4 -0
- package/dist/esm/api/types/SetExternalIdPayload.d.mts +8 -0
- package/dist/esm/api/types/SetExternalIdPayload.mjs +4 -0
- package/dist/esm/api/types/SetTwilioCallSidPayload.d.mts +8 -0
- package/dist/esm/api/types/SetTwilioCallSidPayload.mjs +4 -0
- package/dist/esm/api/types/Task.d.mts +9 -0
- package/dist/esm/api/types/Task.mjs +4 -0
- package/dist/esm/api/types/Tool.d.mts +51 -0
- package/dist/esm/api/types/Tool.mjs +14 -0
- package/dist/esm/api/types/ToolCallInterruptedPayload.d.mts +12 -0
- package/dist/esm/api/types/ToolCallInterruptedPayload.mjs +4 -0
- package/dist/esm/api/types/ToolCallOutputPayload.d.mts +9 -0
- package/dist/esm/api/types/ToolCallOutputPayload.mjs +4 -0
- package/dist/esm/api/types/ToolCallOutputProcessedPayload.d.mts +35 -0
- package/dist/esm/api/types/ToolCallOutputProcessedPayload.mjs +4 -0
- package/dist/esm/api/types/ToolCallPayload.d.mts +12 -0
- package/dist/esm/api/types/ToolCallPayload.mjs +4 -0
- package/dist/esm/api/types/ToolParameter.d.mts +38 -0
- package/dist/esm/api/types/ToolParameter.mjs +19 -0
- package/dist/esm/api/types/UpdateSystemPromptPayload.d.mts +8 -0
- package/dist/esm/api/types/UpdateSystemPromptPayload.mjs +4 -0
- package/dist/esm/api/types/UserFinishedSpeakingPayload.d.mts +6 -0
- package/dist/esm/api/types/UserFinishedSpeakingPayload.mjs +4 -0
- package/dist/esm/api/types/UserStartedSpeakingPayload.d.mts +6 -0
- package/dist/esm/api/types/UserStartedSpeakingPayload.mjs +4 -0
- package/dist/esm/api/types/ValidationError.d.mts +14 -0
- package/dist/esm/api/types/ValidationError.mjs +4 -0
- package/dist/esm/api/types/Voice.d.mts +11 -0
- package/dist/esm/api/types/Voice.mjs +4 -0
- package/dist/esm/api/types/index.d.mts +44 -0
- package/dist/esm/api/types/index.mjs +44 -0
- package/dist/esm/api/types/overrides.d.mts +23 -0
- package/dist/esm/api/types/overrides.mjs +1 -0
- package/dist/esm/core/auth/BasicAuth.d.mts +8 -0
- package/dist/esm/core/auth/BasicAuth.mjs +23 -0
- package/dist/esm/core/auth/BearerToken.d.mts +5 -0
- package/dist/esm/core/auth/BearerToken.mjs +12 -0
- package/dist/esm/core/auth/index.d.mts +2 -0
- package/dist/esm/core/auth/index.mjs +2 -0
- package/dist/esm/core/base64.d.mts +2 -0
- package/dist/esm/core/base64.mjs +22 -0
- package/dist/esm/core/fetcher/APIResponse.d.mts +20 -0
- package/dist/esm/core/fetcher/APIResponse.mjs +1 -0
- package/dist/esm/core/fetcher/BinaryResponse.d.mts +20 -0
- package/dist/esm/core/fetcher/BinaryResponse.mjs +14 -0
- package/dist/esm/core/fetcher/Fetcher.d.mts +40 -0
- package/dist/esm/core/fetcher/Fetcher.mjs +116 -0
- package/dist/esm/core/fetcher/Headers.d.mts +2 -0
- package/dist/esm/core/fetcher/Headers.mjs +82 -0
- package/dist/esm/core/fetcher/HttpResponsePromise.d.mts +58 -0
- package/dist/esm/core/fetcher/HttpResponsePromise.mjs +99 -0
- package/dist/esm/core/fetcher/RawResponse.d.mts +29 -0
- package/dist/esm/core/fetcher/RawResponse.mjs +40 -0
- package/dist/esm/core/fetcher/ResponseWithBody.d.mts +4 -0
- package/dist/esm/core/fetcher/ResponseWithBody.mjs +3 -0
- package/dist/esm/core/fetcher/Supplier.d.mts +4 -0
- package/dist/esm/core/fetcher/Supplier.mjs +19 -0
- package/dist/esm/core/fetcher/createRequestUrl.d.mts +1 -0
- package/dist/esm/core/fetcher/createRequestUrl.mjs +5 -0
- package/dist/esm/core/fetcher/getErrorResponseBody.d.mts +1 -0
- package/dist/esm/core/fetcher/getErrorResponseBody.mjs +41 -0
- package/dist/esm/core/fetcher/getFetchFn.d.mts +1 -0
- package/dist/esm/core/fetcher/getFetchFn.mjs +14 -0
- package/dist/esm/core/fetcher/getHeader.d.mts +1 -0
- package/dist/esm/core/fetcher/getHeader.mjs +8 -0
- package/dist/esm/core/fetcher/getRequestBody.d.mts +7 -0
- package/dist/esm/core/fetcher/getRequestBody.mjs +20 -0
- package/dist/esm/core/fetcher/getResponseBody.d.mts +1 -0
- package/dist/esm/core/fetcher/getResponseBody.mjs +52 -0
- package/dist/esm/core/fetcher/index.d.mts +9 -0
- package/dist/esm/core/fetcher/index.mjs +5 -0
- package/dist/esm/core/fetcher/makeRequest.d.mts +1 -0
- package/dist/esm/core/fetcher/makeRequest.mjs +38 -0
- package/dist/esm/core/fetcher/requestWithRetries.d.mts +1 -0
- package/dist/esm/core/fetcher/requestWithRetries.mjs +37 -0
- package/dist/esm/core/fetcher/signals.d.mts +11 -0
- package/dist/esm/core/fetcher/signals.mjs +32 -0
- package/dist/esm/core/headers.d.mts +3 -0
- package/dist/esm/core/headers.mjs +25 -0
- package/dist/esm/core/index.d.mts +6 -0
- package/dist/esm/core/index.mjs +6 -0
- package/dist/esm/core/json.d.mts +15 -0
- package/dist/esm/core/json.mjs +19 -0
- package/dist/esm/core/runtime/index.d.mts +1 -0
- package/dist/esm/core/runtime/index.mjs +1 -0
- package/dist/esm/core/runtime/runtime.d.mts +9 -0
- package/dist/esm/core/runtime/runtime.mjs +99 -0
- package/dist/esm/core/url/index.d.mts +2 -0
- package/dist/esm/core/url/index.mjs +2 -0
- package/dist/esm/core/url/join.d.mts +1 -0
- package/dist/esm/core/url/join.mjs +66 -0
- package/dist/esm/core/url/qs.d.mts +6 -0
- package/dist/esm/core/url/qs.mjs +61 -0
- package/dist/esm/core/websocket/events.d.mts +36 -0
- package/dist/esm/core/websocket/events.mjs +21 -0
- package/dist/esm/core/websocket/index.d.mts +1 -0
- package/dist/esm/core/websocket/index.mjs +1 -0
- package/dist/esm/core/websocket/ws.d.mts +147 -0
- package/dist/esm/core/websocket/ws.mjs +423 -0
- package/dist/esm/environments.d.mts +14 -0
- package/dist/esm/environments.mjs +9 -0
- package/dist/esm/errors/PhonicError.d.mts +15 -0
- package/dist/esm/errors/PhonicError.mjs +26 -0
- package/dist/esm/errors/PhonicTimeoutError.d.mts +6 -0
- package/dist/esm/errors/PhonicTimeoutError.mjs +9 -0
- package/dist/esm/errors/index.d.mts +2 -0
- package/dist/esm/errors/index.mjs +2 -0
- package/dist/esm/index.d.mts +4 -0
- package/dist/esm/index.mjs +4 -0
- package/dist/esm/version.d.mts +1 -0
- package/dist/esm/version.mjs +1 -0
- package/package.json +68 -64
- package/reference.md +2493 -0
- package/LICENSE +0 -7
- package/dist/index.d.mts +0 -684
- package/dist/index.d.ts +0 -684
- package/dist/index.js +0 -640
- package/dist/index.mjs +0 -603
package/README.md
CHANGED
|
@@ -1,810 +1,202 @@
|
|
|
1
|
-
# Phonic
|
|
2
|
-
|
|
3
|
-
Node.js library for the Phonic API.
|
|
4
|
-
|
|
5
|
-
- [Installation](#installation)
|
|
6
|
-
- [Setup](#setup)
|
|
7
|
-
- [Agents](#agents)
|
|
8
|
-
- [List agents](#list-agents)
|
|
9
|
-
- [Get agent](#get-agent)
|
|
10
|
-
- [Create agent](#create-agent)
|
|
11
|
-
- [Update agent](#update-agent)
|
|
12
|
-
- [Upsert agent](#upsert-agent)
|
|
13
|
-
- [Delete agent](#delete-agent)
|
|
14
|
-
- [Tools](#tools)
|
|
15
|
-
- [List tools](#list-tools)
|
|
16
|
-
- [Get tool](#get-tool)
|
|
17
|
-
- [Create tool](#create-tool)
|
|
18
|
-
- [Update tool](#update-tool)
|
|
19
|
-
- [Delete tool](#delete-tool)
|
|
20
|
-
- [Voices](#voices)
|
|
21
|
-
- [List voices](#list-voices)
|
|
22
|
-
- [Get voice](#get-voice)
|
|
23
|
-
- [Conversations](#conversations)
|
|
24
|
-
- [List conversations](#list-conversations)
|
|
25
|
-
- [Get conversation by id](#get-conversation-by-id)
|
|
26
|
-
- [Get conversation by external id](#get-conversation-by-external-id)
|
|
27
|
-
- [Outbound call](#outbound-call)
|
|
28
|
-
- [Outbound call using own Twilio account](#outbound-call-using-own-twilio-account)
|
|
29
|
-
- [STS via WebSocket](#sts-via-websocket)
|
|
30
|
-
- [Messages that Phonic sends back to you](#messages-that-phonic-sends-back-to-you)
|
|
31
|
-
- [Projects](#projects)
|
|
32
|
-
- [List projects](#list-projects)
|
|
33
|
-
- [Get project](#get-project)
|
|
34
|
-
- [Create project](#create-project)
|
|
35
|
-
- [Update project](#update-project)
|
|
36
|
-
- [Delete project](#delete-project)
|
|
37
|
-
- [License](#license)
|
|
1
|
+
# Phonic TypeScript Library
|
|
38
2
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
```bash
|
|
42
|
-
npm i phonic
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
## Setup
|
|
46
|
-
|
|
47
|
-
Grab an API key from the [Phonic API Keys](https://phonic.co/api-keys) section and pass it to the Phonic constructor.
|
|
48
|
-
|
|
49
|
-
```ts
|
|
50
|
-
import { Phonic } from "phonic";
|
|
51
|
-
|
|
52
|
-
const phonic = new Phonic("ph_...");
|
|
53
|
-
```
|
|
3
|
+
[](https://buildwithfern.com?utm_source=github&utm_medium=github&utm_campaign=readme&utm_source=https%3A%2F%2Fgithub.com%2Ffern-demo%2Fphonic-ts-sdk)
|
|
4
|
+
[](https://www.npmjs.com/package/phonic)
|
|
54
5
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
### List agents
|
|
58
|
-
|
|
59
|
-
```ts
|
|
60
|
-
const result = await phonic.agents.list({ project: "main" });
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
### Get agent
|
|
64
|
-
|
|
65
|
-
Returns an agent by name or ID.
|
|
66
|
-
|
|
67
|
-
```ts
|
|
68
|
-
const result = await phonic.agents.get("chris", { project: "main" });
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
### Create agent
|
|
72
|
-
|
|
73
|
-
```ts
|
|
74
|
-
const result = await phonic.agents.create({
|
|
75
|
-
name: "chris",
|
|
76
|
-
|
|
77
|
-
// Optional fields
|
|
78
|
-
project: "main", // Defaults to "main"
|
|
79
|
-
phoneNumber: "assign-automatically", // Defaults to null
|
|
80
|
-
timezone: "Australia/Melbourne", // Defaults to "America/Los_Angeles"
|
|
81
|
-
audioFormat: "mulaw_8000", // Defaults to "pcm_44100". Must be "mulaw_8000" when `phoneNumber` is "assign-automatically"
|
|
82
|
-
voiceId: "sarah", // Defaults to "grant"
|
|
83
|
-
welcomeMessage: "Hello, how can I help you?", // Defaults to ""
|
|
84
|
-
systemPrompt: "You are an expert in {{subject}}. Be kind to {{user_name}}.", // Defaults to "Respond in 1-2 sentences."
|
|
85
|
-
templateVariables: {
|
|
86
|
-
subject: {
|
|
87
|
-
defaultValue: "Maths"
|
|
88
|
-
},
|
|
89
|
-
user_name: {
|
|
90
|
-
defaultValue: null
|
|
91
|
-
}
|
|
92
|
-
},
|
|
93
|
-
tools: ["keypad_input", "natural_conversation_ending", "my-custom-tool"], // Defaults to []
|
|
94
|
-
noInputPokeSec: 30, // Defaults to null
|
|
95
|
-
noInputPokeText: "Hey, are you with me?", // Defaults to "Are you still there?"
|
|
96
|
-
noInputEndConversationSec: 150, // Defaults to 180
|
|
97
|
-
boostedKeywords: ["Salamanca Market", "Bonorong Wildlife Sanctuary"], // Defaults to []
|
|
98
|
-
configurationEndpoint: {
|
|
99
|
-
url: "https://myapp.com/webhooks/phonic-config",
|
|
100
|
-
headers: {
|
|
101
|
-
Authorization: "Bearer 123"
|
|
102
|
-
},
|
|
103
|
-
timeoutMs: 10000 // Defaults to 3000
|
|
104
|
-
} // Defaults to null
|
|
105
|
-
});
|
|
106
|
-
```
|
|
6
|
+
The Phonic TypeScript library provides convenient access to the Phonic API from TypeScript.
|
|
107
7
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
```ts
|
|
111
|
-
const result = await phonic.agents.update("chris", {
|
|
112
|
-
name: "chris",
|
|
113
|
-
|
|
114
|
-
// Optional fields
|
|
115
|
-
project: "main",
|
|
116
|
-
phoneNumber: "assign-automatically", // or null
|
|
117
|
-
timezone: "Australia/Melbourne",
|
|
118
|
-
voiceId: "sarah",
|
|
119
|
-
audioFormat: "mulaw_8000", // Must be "mulaw_8000" when `phoneNumber` is "assign-automatically"
|
|
120
|
-
welcomeMessage: "Hello, how can I help you?",
|
|
121
|
-
systemPrompt: "You are an expert in {{subject}}. Be kind to {{user_name}}.",
|
|
122
|
-
templateVariables: {
|
|
123
|
-
subject: {
|
|
124
|
-
defaultValue: "Maths"
|
|
125
|
-
},
|
|
126
|
-
user_name: {
|
|
127
|
-
defaultValue: null
|
|
128
|
-
}
|
|
129
|
-
},
|
|
130
|
-
tools: ["keypad_input", "natural_conversation_ending", "my-custom-tool"],
|
|
131
|
-
noInputPokeSec: 30,
|
|
132
|
-
noInputPokeText: "Hey, are you with me?",
|
|
133
|
-
noInputEndConversationSec: 150,
|
|
134
|
-
boostedKeywords: ["Salamanca Market", "Bonorong Wildlife Sanctuary"],
|
|
135
|
-
configurationEndpoint: {
|
|
136
|
-
url: "https://myapp.com/webhooks/phonic-config",
|
|
137
|
-
headers: {
|
|
138
|
-
Authorization: "Bearer 123"
|
|
139
|
-
},
|
|
140
|
-
timeoutMs: 7000
|
|
141
|
-
}
|
|
142
|
-
});
|
|
143
|
-
```
|
|
8
|
+
## Installation
|
|
144
9
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
10
|
+
```sh
|
|
11
|
+
npm i -s phonic
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Reference
|
|
15
|
+
|
|
16
|
+
A full reference for this library is available [here](https://github.com/fern-demo/phonic-ts-sdk/blob/HEAD/./reference.md).
|
|
17
|
+
|
|
18
|
+
## Usage
|
|
19
|
+
|
|
20
|
+
Instantiate and use the client with the following:
|
|
21
|
+
|
|
22
|
+
```typescript
|
|
23
|
+
import { PhonicClient } from "phonic";
|
|
24
|
+
|
|
25
|
+
const client = new PhonicClient({ apiKey: "YOUR_API_KEY" });
|
|
26
|
+
await client.agents.create({
|
|
27
|
+
body: {
|
|
28
|
+
name: "support-agent",
|
|
29
|
+
phone_number: "assign-automatically",
|
|
30
|
+
timezone: "America/Los_Angeles",
|
|
31
|
+
voice_id: "sarah",
|
|
32
|
+
audio_speed: 1,
|
|
33
|
+
welcome_message: "Hi {{customer_name}}. How can I help you today?",
|
|
34
|
+
system_prompt: "You are an expert in {{subject}}. Be friendly, helpful and concise.",
|
|
35
|
+
template_variables: {
|
|
36
|
+
customer_name: {},
|
|
37
|
+
subject: {
|
|
38
|
+
default_value: "Chess",
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
tools: ["keypad_input"],
|
|
42
|
+
no_input_poke_sec: 30,
|
|
43
|
+
no_input_poke_text: "Are you still there?",
|
|
44
|
+
boosted_keywords: ["Load ID", "dispatch"],
|
|
45
|
+
configuration_endpoint: {
|
|
46
|
+
url: "https://api.example.com/config",
|
|
47
|
+
headers: {
|
|
48
|
+
Authorization: "Bearer token123",
|
|
49
|
+
},
|
|
50
|
+
timeout_ms: 7000,
|
|
51
|
+
},
|
|
176
52
|
},
|
|
177
|
-
timeoutMs: 7000
|
|
178
|
-
}
|
|
179
53
|
});
|
|
180
54
|
```
|
|
181
55
|
|
|
182
|
-
|
|
56
|
+
## Request And Response Types
|
|
183
57
|
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
// Optional fields
|
|
187
|
-
project: "main",
|
|
188
|
-
});
|
|
189
|
-
```
|
|
58
|
+
The SDK exports all request and response types as TypeScript interfaces. Simply import them with the
|
|
59
|
+
following namespace:
|
|
190
60
|
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
### List tools
|
|
61
|
+
```typescript
|
|
62
|
+
import { Phonic } from "phonic";
|
|
194
63
|
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
});
|
|
64
|
+
const request: Phonic.AgentsListRequest = {
|
|
65
|
+
...
|
|
66
|
+
};
|
|
199
67
|
```
|
|
200
68
|
|
|
201
|
-
|
|
69
|
+
## Exception Handling
|
|
202
70
|
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
```ts
|
|
206
|
-
const result = await phonic.tools.get("next_invoice", {
|
|
207
|
-
project: "customer-support" // Optional. Defaults to "main".
|
|
208
|
-
});
|
|
209
|
-
```
|
|
71
|
+
When the API returns a non-success status code (4xx or 5xx response), a subclass of the following error
|
|
72
|
+
will be thrown.
|
|
210
73
|
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
#### Create webhook tool
|
|
214
|
-
|
|
215
|
-
```ts
|
|
216
|
-
const result = await phonic.tools.create({
|
|
217
|
-
project: "customer-support", // Optional. Defaults to "main".
|
|
218
|
-
name: "next_invoice",
|
|
219
|
-
description: "Returns the next invoice of the given user",
|
|
220
|
-
type: "custom_webhook",
|
|
221
|
-
executionMode: "sync",
|
|
222
|
-
endpointMethod: "POST",
|
|
223
|
-
endpointUrl: "https://myapp.com/webhooks/next-invoice",
|
|
224
|
-
endpointHeaders: {
|
|
225
|
-
Authorization: "Bearer 123"
|
|
226
|
-
},
|
|
227
|
-
endpointTimeoutMs: 20000, // Optional, defaults to 15000
|
|
228
|
-
parameters: [
|
|
229
|
-
{
|
|
230
|
-
type: "string",
|
|
231
|
-
name: "user",
|
|
232
|
-
description: "Full name of the user to get the invoice for",
|
|
233
|
-
isRequired: true
|
|
234
|
-
},
|
|
235
|
-
{
|
|
236
|
-
type: "array",
|
|
237
|
-
itemType: "string",
|
|
238
|
-
name: "invoice_items",
|
|
239
|
-
description: "List of invoice items",
|
|
240
|
-
isRequired: false
|
|
241
|
-
},
|
|
242
|
-
{
|
|
243
|
-
type: "number",
|
|
244
|
-
name: "invoice_total",
|
|
245
|
-
description: "Total invoice amount in USD",
|
|
246
|
-
isRequired: true
|
|
247
|
-
},
|
|
248
|
-
]
|
|
249
|
-
});
|
|
250
|
-
```
|
|
74
|
+
```typescript
|
|
75
|
+
import { PhonicError } from "phonic";
|
|
251
76
|
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
description: "Gets personalized product recommendations",
|
|
261
|
-
type: "custom_websocket",
|
|
262
|
-
executionMode: "async",
|
|
263
|
-
toolCallOutputTimeoutMs: 5000, // Optional, defaults to 15000
|
|
264
|
-
parameters: [
|
|
265
|
-
{
|
|
266
|
-
type: "string",
|
|
267
|
-
name: "category",
|
|
268
|
-
description: "Product category (e.g., 'handbags', 'shoes', 'electronics')",
|
|
269
|
-
isRequired: true
|
|
77
|
+
try {
|
|
78
|
+
await client.agents.create(...);
|
|
79
|
+
} catch (err) {
|
|
80
|
+
if (err instanceof PhonicError) {
|
|
81
|
+
console.log(err.statusCode);
|
|
82
|
+
console.log(err.message);
|
|
83
|
+
console.log(err.body);
|
|
84
|
+
console.log(err.rawResponse);
|
|
270
85
|
}
|
|
271
|
-
|
|
272
|
-
});
|
|
273
|
-
```
|
|
274
|
-
|
|
275
|
-
To use this tool in a conversation, add it to your agent or config:
|
|
276
|
-
|
|
277
|
-
```ts
|
|
278
|
-
// When creating an agent
|
|
279
|
-
const result = await phonic.agents.create({
|
|
280
|
-
name: "shopping-assistant",
|
|
281
|
-
tools: ["get_product_recommendations"],
|
|
282
|
-
// ... other config
|
|
283
|
-
});
|
|
284
|
-
|
|
285
|
-
// Or, override agent settings when starting a WebSocket conversation
|
|
286
|
-
const phonicWebSocket = phonic.sts.websocket({
|
|
287
|
-
name: "shopping-assistant",
|
|
288
|
-
tools: ["get_product_recommendations"],
|
|
289
|
-
// ... other config
|
|
290
|
-
});
|
|
291
|
-
|
|
292
|
-
// Handle the tool call when it's invoked
|
|
293
|
-
phonicWebSocket.onMessage(async (message) => {
|
|
294
|
-
if (message.type === "tool_call" && message.name === "get_product_recommendations") {
|
|
295
|
-
const category = message.parameters.category;
|
|
296
|
-
|
|
297
|
-
// Execute your business logic
|
|
298
|
-
const recommendations = fetchRecommendations(category);
|
|
299
|
-
|
|
300
|
-
// Send the result back
|
|
301
|
-
phonicWebSocket.[sendToolCallOutput](#send-tool-output-to-phonic)({
|
|
302
|
-
toolCallId: message.tool_call_id,
|
|
303
|
-
output: {
|
|
304
|
-
products: recommendations,
|
|
305
|
-
total: recommendations.length
|
|
306
|
-
}
|
|
307
|
-
});
|
|
308
|
-
}
|
|
309
|
-
});
|
|
310
|
-
```
|
|
311
|
-
|
|
312
|
-
### Update tool
|
|
313
|
-
|
|
314
|
-
Updates a tool by ID or name. All fields are optional - only provided fields will be updated.
|
|
315
|
-
|
|
316
|
-
```ts
|
|
317
|
-
const result = await phonic.tools.update("next_invoice", {
|
|
318
|
-
project: "customer-support", // Optional. Defaults to "main".
|
|
319
|
-
name: "next_invoice_updated",
|
|
320
|
-
description: "Updated description.",
|
|
321
|
-
type: "custom_webhook",
|
|
322
|
-
executionMode: "sync",
|
|
323
|
-
endpointMethod: "POST",
|
|
324
|
-
endpointUrl: "https://myapp.com/webhooks/next-invoice-updated",
|
|
325
|
-
endpointHeaders: {
|
|
326
|
-
Authorization: "Bearer 456"
|
|
327
|
-
},
|
|
328
|
-
endpointTimeoutMs: 30000,
|
|
329
|
-
parameters: [
|
|
330
|
-
{
|
|
331
|
-
type: "string",
|
|
332
|
-
name: "user",
|
|
333
|
-
description: "Full name of the user to get the invoice for",
|
|
334
|
-
isRequired: true
|
|
335
|
-
},
|
|
336
|
-
{
|
|
337
|
-
type: "array",
|
|
338
|
-
itemType: "string",
|
|
339
|
-
name: "invoice_items",
|
|
340
|
-
description: "List of invoice items",
|
|
341
|
-
isRequired: true
|
|
342
|
-
},
|
|
343
|
-
{
|
|
344
|
-
type: "number",
|
|
345
|
-
name: "invoice_total",
|
|
346
|
-
description: "Total invoice amount in USD",
|
|
347
|
-
isRequired: true
|
|
348
|
-
},
|
|
349
|
-
]
|
|
350
|
-
});
|
|
351
|
-
```
|
|
352
|
-
|
|
353
|
-
For WebSocket tools, you would use `toolCallOutputTimeoutMs` instead of the endpoint fields:
|
|
354
|
-
|
|
355
|
-
```ts
|
|
356
|
-
const result = await phonic.tools.update("get_product_recommendations", {
|
|
357
|
-
description: "Updated product recommendation tool",
|
|
358
|
-
toolCallOutputTimeoutMs: 7000
|
|
359
|
-
});
|
|
360
|
-
```
|
|
361
|
-
|
|
362
|
-
### Delete tool
|
|
363
|
-
|
|
364
|
-
Deletes a tool by ID or name.
|
|
365
|
-
|
|
366
|
-
```ts
|
|
367
|
-
const result = await phonic.tools.delete("next_invoice", {
|
|
368
|
-
project: "customer-support" // Optional. Defaults to "main".
|
|
369
|
-
});
|
|
370
|
-
```
|
|
371
|
-
|
|
372
|
-
## Voices
|
|
373
|
-
|
|
374
|
-
### List voices
|
|
375
|
-
|
|
376
|
-
```ts
|
|
377
|
-
const result = await phonic.voices.list({ model: "merritt" });
|
|
378
|
-
```
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
### Get voice
|
|
382
|
-
|
|
383
|
-
```ts
|
|
384
|
-
const result = await phonic.voices.get("grant");
|
|
385
|
-
```
|
|
386
|
-
|
|
387
|
-
## Conversations
|
|
388
|
-
|
|
389
|
-
### List conversations
|
|
390
|
-
|
|
391
|
-
```ts
|
|
392
|
-
const result = await phonic.conversations.list({
|
|
393
|
-
project: "main",
|
|
394
|
-
durationMin: 10, // sec
|
|
395
|
-
durationMax: 20, // sec
|
|
396
|
-
startedAtMin: "2025-04-17", // 00:00:00 UTC time is assumed
|
|
397
|
-
startedAtMax: "2025-09-05T10:30:00.000Z",
|
|
398
|
-
});
|
|
399
|
-
```
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
### Get conversation by id
|
|
403
|
-
|
|
404
|
-
```ts
|
|
405
|
-
const result = await phonic.conversations.get("conv_b1804883-5be4-42fe-b1cf-aa84450d5c84");
|
|
406
|
-
```
|
|
407
|
-
|
|
408
|
-
### Get conversation by external id
|
|
409
|
-
|
|
410
|
-
```ts
|
|
411
|
-
const result = await phonic.conversations.getByExternalId({
|
|
412
|
-
project: "main",
|
|
413
|
-
externalId: "CAdb9c032c809fec7feb932ea4c96d71e1"
|
|
414
|
-
});
|
|
415
|
-
```
|
|
416
|
-
|
|
417
|
-
### Outbound call
|
|
418
|
-
|
|
419
|
-
```ts
|
|
420
|
-
const result = await phonic.conversations.outboundCall("+19189396241", {
|
|
421
|
-
// Optional fields
|
|
422
|
-
agent: "chris",
|
|
423
|
-
template_variables: {
|
|
424
|
-
customer_name: "David",
|
|
425
|
-
subject: "Chess"
|
|
426
|
-
},
|
|
427
|
-
});
|
|
428
|
-
```
|
|
429
|
-
|
|
430
|
-
### Outbound call using own Twilio account
|
|
431
|
-
|
|
432
|
-
In Twilio, create a restricted API key with the following permissions: `voice -> calls -> read` and `voice -> calls -> create`.
|
|
433
|
-
|
|
434
|
-
```ts
|
|
435
|
-
const result = await phonic.conversations.twilio.outboundCall(
|
|
436
|
-
{
|
|
437
|
-
account_sid: "AC...",
|
|
438
|
-
api_key_sid: "SK...",
|
|
439
|
-
api_key_secret: "...",
|
|
440
|
-
from_phone_number: "+19189372905",
|
|
441
|
-
to_phone_number: "+19189396241",
|
|
442
|
-
},
|
|
443
|
-
{
|
|
444
|
-
// Optional fields
|
|
445
|
-
agent: "chris",
|
|
446
|
-
welcome_message: "Hello, how can I help you?",
|
|
447
|
-
project: "main",
|
|
448
|
-
system_prompt: "You are a helpful assistant.",
|
|
449
|
-
voice_id: "grant",
|
|
450
|
-
enable_silent_audio_fallback: true,
|
|
451
|
-
vad_prebuffer_duration_ms: 1800,
|
|
452
|
-
vad_min_speech_duration_ms: 40,
|
|
453
|
-
vad_min_silence_duration_ms: 550,
|
|
454
|
-
vad_threshold: 0.6,
|
|
455
|
-
tools: ["keypad_input", "natural_conversation_ending"]
|
|
456
|
-
}
|
|
457
|
-
);
|
|
458
|
-
```
|
|
459
|
-
|
|
460
|
-
## STS via WebSocket
|
|
461
|
-
|
|
462
|
-
To start a conversation, open a WebSocket connection:
|
|
463
|
-
|
|
464
|
-
```ts
|
|
465
|
-
const phonicWebSocket = phonic.sts.websocket({
|
|
466
|
-
input_format: "mulaw_8000",
|
|
467
|
-
|
|
468
|
-
// Optional fields
|
|
469
|
-
agent: "chris",
|
|
470
|
-
template_variables: {
|
|
471
|
-
customer_name: "David",
|
|
472
|
-
subject: "Chess"
|
|
473
|
-
},
|
|
474
|
-
welcome_message: "Hello, how can I help you?",
|
|
475
|
-
voice_id: "grant",
|
|
476
|
-
output_format: "mulaw_8000",
|
|
477
|
-
});
|
|
478
|
-
```
|
|
479
|
-
|
|
480
|
-
Stream input (user) audio chunks:
|
|
481
|
-
|
|
482
|
-
```ts
|
|
483
|
-
phonicWebSocket.audioChunk({
|
|
484
|
-
audio: "...", // base64 encoded audio chunk
|
|
485
|
-
});
|
|
86
|
+
}
|
|
486
87
|
```
|
|
487
88
|
|
|
488
|
-
|
|
89
|
+
## Advanced
|
|
489
90
|
|
|
490
|
-
|
|
491
|
-
phonicWebSocket.onMessage((message) => {
|
|
492
|
-
switch (message.type) {
|
|
493
|
-
case "input_text": {
|
|
494
|
-
console.log(`User: ${message.text}`);
|
|
495
|
-
break;
|
|
496
|
-
}
|
|
91
|
+
### Additional Headers
|
|
497
92
|
|
|
498
|
-
|
|
499
|
-
// Send the audio chunk to Twilio, for example:
|
|
500
|
-
twilioWebSocket.send(
|
|
501
|
-
JSON.stringify({
|
|
502
|
-
event: "media",
|
|
503
|
-
streamSid: "...",
|
|
504
|
-
media: {
|
|
505
|
-
payload: message.audio,
|
|
506
|
-
},
|
|
507
|
-
}),
|
|
508
|
-
);
|
|
509
|
-
break;
|
|
510
|
-
}
|
|
93
|
+
If you would like to send additional headers as part of the request, use the `headers` request option.
|
|
511
94
|
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
// Example: Process a product recommendations tool call
|
|
517
|
-
if (message.tool_name === "get_product_recommendations") {
|
|
518
|
-
const category = message.parameters.category;
|
|
519
|
-
const recommendations = fetchRecommendations(category);
|
|
520
|
-
|
|
521
|
-
phonicWebSocket.[sendToolCallOutput](#send-tool-output-to-phonic)({
|
|
522
|
-
toolCallId: message.tool_call_id,
|
|
523
|
-
output: {
|
|
524
|
-
products: recommendations,
|
|
525
|
-
total: recommendations.length
|
|
526
|
-
}
|
|
527
|
-
});
|
|
528
|
-
}
|
|
529
|
-
break;
|
|
95
|
+
```typescript
|
|
96
|
+
const response = await client.agents.create(..., {
|
|
97
|
+
headers: {
|
|
98
|
+
'X-Custom-Header': 'custom value'
|
|
530
99
|
}
|
|
531
|
-
}
|
|
532
100
|
});
|
|
533
101
|
```
|
|
534
102
|
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
```ts
|
|
538
|
-
phonicWebSocket.updateSystemPrompt({
|
|
539
|
-
systemPrompt: "..."
|
|
540
|
-
})
|
|
541
|
-
```
|
|
542
|
-
|
|
543
|
-
Set an external id for the conversation (can be the Twilio Call SID, for example):
|
|
544
|
-
|
|
545
|
-
```ts
|
|
546
|
-
phonicWebSocket.setExternalId({
|
|
547
|
-
externalId: "..."
|
|
548
|
-
})
|
|
549
|
-
```
|
|
550
|
-
|
|
551
|
-
### Send tool output to Phonic
|
|
552
|
-
|
|
553
|
-
When you receive a `tool_call` message for a WebSocket tool, you must respond with the tool's output using `sendToolCallOutput()`. This method sends the execution result back to Phonic so the conversation can continue.
|
|
103
|
+
### Additional Query String Parameters
|
|
554
104
|
|
|
555
|
-
|
|
556
|
-
phonicWebSocket.sendToolCallOutput({
|
|
557
|
-
toolCallId: "tool_call_123...", // The tool_call_id from the tool_call message
|
|
558
|
-
output: "Success! Found 2 items" // Can be any JSON-serializable value (string, number, object, array, etc.)
|
|
559
|
-
});
|
|
105
|
+
If you would like to send additional query string parameters as part of the request, use the `queryParams` request option.
|
|
560
106
|
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
result: "success",
|
|
566
|
-
data: {
|
|
567
|
-
items: ["item1", "item2"],
|
|
568
|
-
total: 2
|
|
107
|
+
```typescript
|
|
108
|
+
const response = await client.agents.create(..., {
|
|
109
|
+
queryParams: {
|
|
110
|
+
'customQueryParamKey': 'custom query param value'
|
|
569
111
|
}
|
|
570
|
-
}
|
|
571
112
|
});
|
|
572
113
|
```
|
|
573
114
|
|
|
574
|
-
|
|
575
|
-
- You must use the exact `tool_call_id` received in the `tool_call` message
|
|
576
|
-
- The `output` can be any JSON-serializable value (string, number, boolean, object, array, etc.)
|
|
577
|
-
- If you don't send a response within `toolCallOutputTimeoutMs`, the tool call will be marked as failed.
|
|
115
|
+
### Retries
|
|
578
116
|
|
|
579
|
-
|
|
117
|
+
The SDK is instrumented with automatic retries with exponential backoff. A request will be retried as long
|
|
118
|
+
as the request is deemed retryable and the number of retry attempts has not grown larger than the configured
|
|
119
|
+
retry limit (default: 2).
|
|
580
120
|
|
|
581
|
-
|
|
582
|
-
phonicWebSocket.close();
|
|
583
|
-
```
|
|
121
|
+
A request is deemed retryable when any of the following HTTP status codes is returned:
|
|
584
122
|
|
|
585
|
-
|
|
123
|
+
- [408](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/408) (Timeout)
|
|
124
|
+
- [429](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429) (Too Many Requests)
|
|
125
|
+
- [5XX](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500) (Internal Server Errors)
|
|
586
126
|
|
|
587
|
-
|
|
588
|
-
phonicWebSocket.onClose((event) => {
|
|
589
|
-
console.log(
|
|
590
|
-
`Phonic WebSocket closed with code ${event.code} and reason "${event.reason}"`,
|
|
591
|
-
);
|
|
592
|
-
});
|
|
127
|
+
Use the `maxRetries` request option to configure this behavior.
|
|
593
128
|
|
|
594
|
-
|
|
595
|
-
|
|
129
|
+
```typescript
|
|
130
|
+
const response = await client.agents.create(..., {
|
|
131
|
+
maxRetries: 0 // override maxRetries at the request level
|
|
596
132
|
});
|
|
597
133
|
```
|
|
598
134
|
|
|
599
|
-
###
|
|
135
|
+
### Timeouts
|
|
600
136
|
|
|
601
|
-
|
|
137
|
+
The SDK defaults to a 60 second timeout. Use the `timeoutInSeconds` option to configure this behavior.
|
|
602
138
|
|
|
603
|
-
```
|
|
604
|
-
{
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
}
|
|
608
|
-
```
|
|
609
|
-
|
|
610
|
-
Sent when the conversation has been successfully created.
|
|
611
|
-
|
|
612
|
-
#### `ready_to_start_conversation`
|
|
613
|
-
|
|
614
|
-
```ts
|
|
615
|
-
{
|
|
616
|
-
type: "ready_to_start_conversation";
|
|
617
|
-
}
|
|
618
|
-
```
|
|
619
|
-
|
|
620
|
-
Sent when Phonic is ready to begin processing audio. You should start sending audio chunks after receiving this message.
|
|
621
|
-
|
|
622
|
-
#### `input_text`
|
|
623
|
-
|
|
624
|
-
```ts
|
|
625
|
-
{
|
|
626
|
-
type: "input_text";
|
|
627
|
-
text: string;
|
|
628
|
-
}
|
|
629
|
-
```
|
|
630
|
-
|
|
631
|
-
Phonic sends this message once user's audio is transcribed.
|
|
632
|
-
|
|
633
|
-
#### `audio_chunk`
|
|
634
|
-
|
|
635
|
-
```ts
|
|
636
|
-
{
|
|
637
|
-
type: "audio_chunk";
|
|
638
|
-
audio: string; // base64 encoded array of audio data (each value is in range [-32768..32767] for "pcm_44100" output format, and in range [0..255] for "mulaw_8000" output format)
|
|
639
|
-
text: string; // May potentially be "", but will typically be one word.
|
|
640
|
-
}
|
|
641
|
-
```
|
|
642
|
-
|
|
643
|
-
These are the assistant response audio chunks.
|
|
644
|
-
|
|
645
|
-
#### `audio_finished`
|
|
646
|
-
|
|
647
|
-
```ts
|
|
648
|
-
{
|
|
649
|
-
type: "audio_finished";
|
|
650
|
-
}
|
|
651
|
-
```
|
|
652
|
-
|
|
653
|
-
Sent after the last "audio_chunk" is sent.
|
|
654
|
-
|
|
655
|
-
#### `user_started_speaking`
|
|
656
|
-
|
|
657
|
-
```ts
|
|
658
|
-
{
|
|
659
|
-
type: "user_started_speaking";
|
|
660
|
-
}
|
|
661
|
-
```
|
|
662
|
-
|
|
663
|
-
Sent when the user begins speaking.
|
|
664
|
-
|
|
665
|
-
#### `user_finished_speaking`
|
|
666
|
-
|
|
667
|
-
```ts
|
|
668
|
-
{
|
|
669
|
-
type: "user_finished_speaking";
|
|
670
|
-
}
|
|
671
|
-
```
|
|
672
|
-
|
|
673
|
-
Sent when the user stops speaking.
|
|
674
|
-
|
|
675
|
-
#### `interrupted_response`
|
|
676
|
-
|
|
677
|
-
```ts
|
|
678
|
-
{
|
|
679
|
-
type: "interrupted_response",
|
|
680
|
-
text: string, // partial assistant response that cuts off approximately where the user interrupted
|
|
681
|
-
}
|
|
682
|
-
```
|
|
683
|
-
|
|
684
|
-
Sent when the user interrupts the assistant, after the user has finished speaking.
|
|
685
|
-
|
|
686
|
-
#### `assistant_chose_not_to_respond`
|
|
687
|
-
|
|
688
|
-
```ts
|
|
689
|
-
{
|
|
690
|
-
type: "assistant_chose_not_to_respond";
|
|
691
|
-
}
|
|
692
|
-
```
|
|
693
|
-
|
|
694
|
-
Sent when the assistant decides not to respond to the user's input.
|
|
695
|
-
|
|
696
|
-
#### `assistant_ended_conversation`
|
|
697
|
-
|
|
698
|
-
```ts
|
|
699
|
-
{
|
|
700
|
-
type: "assistant_ended_conversation";
|
|
701
|
-
}
|
|
702
|
-
```
|
|
703
|
-
|
|
704
|
-
Sent when the assistant decides to end the conversation.
|
|
705
|
-
|
|
706
|
-
#### `tool_call`
|
|
707
|
-
|
|
708
|
-
```ts
|
|
709
|
-
{
|
|
710
|
-
type: "tool_call";
|
|
711
|
-
tool_call_id: string;
|
|
712
|
-
tool_name: string;
|
|
713
|
-
parameters: Record<string, unknown>;
|
|
714
|
-
}
|
|
715
|
-
```
|
|
716
|
-
|
|
717
|
-
Sent when a WebSocket tool is called during the conversation. When you receive this message, you should:
|
|
718
|
-
1. Process the tool call using the provided `tool_name` and `parameters`
|
|
719
|
-
2. Send back the result using [`phonicWebSocket.sendToolCallOutput`](#send-tool-output-to-phonic)
|
|
720
|
-
|
|
721
|
-
This is only sent for tools created with `type: "custom_websocket"`. Webhook tools are executed server-side and only send `tool_call_output_processed` messages.
|
|
722
|
-
|
|
723
|
-
#### `tool_call_output_processed`
|
|
724
|
-
|
|
725
|
-
```ts
|
|
726
|
-
{
|
|
727
|
-
type: "tool_call_output_processed";
|
|
728
|
-
tool_call_id: string;
|
|
729
|
-
tool: {
|
|
730
|
-
id: string;
|
|
731
|
-
name: string;
|
|
732
|
-
};
|
|
733
|
-
endpoint_url: string | null;
|
|
734
|
-
endpoint_timeout_ms: number | null;
|
|
735
|
-
endpoint_called_at: string | null;
|
|
736
|
-
request_body: {
|
|
737
|
-
call_info: {
|
|
738
|
-
from_phone_number: string;
|
|
739
|
-
to_phone_number: string;
|
|
740
|
-
} | null;
|
|
741
|
-
[key: string]: unknown;
|
|
742
|
-
} | null;
|
|
743
|
-
response_body: Record<string, unknown> | null;
|
|
744
|
-
response_status_code: number | null;
|
|
745
|
-
timed_out: boolean | null;
|
|
746
|
-
error_message: string | null;
|
|
747
|
-
}
|
|
139
|
+
```typescript
|
|
140
|
+
const response = await client.agents.create(..., {
|
|
141
|
+
timeoutInSeconds: 30 // override timeout to 30s
|
|
142
|
+
});
|
|
748
143
|
```
|
|
749
|
-
Sent when a tool is called during the conversation. Built-in tools will have null values for endpoint-related fields.
|
|
750
144
|
|
|
751
|
-
|
|
752
|
-
If the conversation is not a phone call, `call_info` will be `null`. If it is a phone call, `call_info` will be an object with `from_phone_number` and `to_phone_number` fields, both formatted as E.164 phone numbers (e.g., "+1234567890").
|
|
145
|
+
### Aborting Requests
|
|
753
146
|
|
|
754
|
-
|
|
147
|
+
The SDK allows users to abort requests at any point by passing in an abort signal.
|
|
755
148
|
|
|
756
|
-
```
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
};
|
|
763
|
-
param_errors?: Record<string, string>;
|
|
764
|
-
}
|
|
149
|
+
```typescript
|
|
150
|
+
const controller = new AbortController();
|
|
151
|
+
const response = await client.agents.create(..., {
|
|
152
|
+
abortSignal: controller.signal
|
|
153
|
+
});
|
|
154
|
+
controller.abort(); // aborts the request
|
|
765
155
|
```
|
|
766
156
|
|
|
767
|
-
|
|
157
|
+
### Access Raw Response Data
|
|
768
158
|
|
|
769
|
-
|
|
159
|
+
The SDK provides access to raw response data, including headers, through the `.withRawResponse()` method.
|
|
160
|
+
The `.withRawResponse()` method returns a promise that results to an object with a `data` and a `rawResponse` property.
|
|
770
161
|
|
|
771
|
-
|
|
162
|
+
```typescript
|
|
163
|
+
const { data, rawResponse } = await client.agents.create(...).withRawResponse();
|
|
772
164
|
|
|
773
|
-
|
|
774
|
-
|
|
165
|
+
console.log(data);
|
|
166
|
+
console.log(rawResponse.headers['X-My-Header']);
|
|
775
167
|
```
|
|
776
168
|
|
|
777
|
-
###
|
|
169
|
+
### Runtime Compatibility
|
|
778
170
|
|
|
779
|
-
|
|
171
|
+
The SDK works in the following runtimes:
|
|
780
172
|
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
173
|
+
- Node.js 18+
|
|
174
|
+
- Vercel
|
|
175
|
+
- Cloudflare Workers
|
|
176
|
+
- Deno v1.25+
|
|
177
|
+
- Bun 1.0+
|
|
178
|
+
- React Native
|
|
784
179
|
|
|
785
|
-
###
|
|
180
|
+
### Customizing Fetch Client
|
|
786
181
|
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
name: "customer-support",
|
|
790
|
-
});
|
|
791
|
-
```
|
|
182
|
+
The SDK provides a way for you to customize the underlying HTTP client / Fetch function. If you're running in an
|
|
183
|
+
unsupported environment, this provides a way for you to break glass and ensure the SDK works.
|
|
792
184
|
|
|
793
|
-
|
|
185
|
+
```typescript
|
|
186
|
+
import { PhonicClient } from "phonic";
|
|
794
187
|
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
defaultAgent: "another-agent"
|
|
188
|
+
const client = new PhonicClient({
|
|
189
|
+
...
|
|
190
|
+
fetcher: // provide your implementation here
|
|
799
191
|
});
|
|
800
192
|
```
|
|
801
193
|
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
```ts
|
|
805
|
-
const result = await phonic.projects.delete("customer-support");
|
|
806
|
-
```
|
|
194
|
+
## Contributing
|
|
807
195
|
|
|
808
|
-
|
|
196
|
+
While we value open-source contributions to this SDK, this library is generated programmatically.
|
|
197
|
+
Additions made directly to this library would have to be moved over to our generation code,
|
|
198
|
+
otherwise they would be overwritten upon the next generated release. Feel free to open a PR as
|
|
199
|
+
a proof of concept, but know that we will not be able to merge it as-is. We suggest opening
|
|
200
|
+
an issue first to discuss with us!
|
|
809
201
|
|
|
810
|
-
|
|
202
|
+
On the other hand, contributions to the README are always very welcome!
|