@voltade/envoy-sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +194 -0
  2. package/dist/client.d.ts +57 -0
  3. package/dist/client.d.ts.map +1 -0
  4. package/dist/client.js +49 -0
  5. package/dist/client.js.map +1 -0
  6. package/dist/errors.d.ts +59 -0
  7. package/dist/errors.d.ts.map +1 -0
  8. package/dist/errors.js +91 -0
  9. package/dist/errors.js.map +1 -0
  10. package/dist/http-client.d.ts +64 -0
  11. package/dist/http-client.d.ts.map +1 -0
  12. package/dist/http-client.js +159 -0
  13. package/dist/http-client.js.map +1 -0
  14. package/dist/index.d.ts +31 -0
  15. package/dist/index.d.ts.map +1 -0
  16. package/dist/index.js +34 -0
  17. package/dist/index.js.map +1 -0
  18. package/dist/resources/conversations/index.d.ts +75 -0
  19. package/dist/resources/conversations/index.d.ts.map +1 -0
  20. package/dist/resources/conversations/index.js +89 -0
  21. package/dist/resources/conversations/index.js.map +1 -0
  22. package/dist/resources/conversations/types.d.ts +958 -0
  23. package/dist/resources/conversations/types.d.ts.map +1 -0
  24. package/dist/resources/conversations/types.js +160 -0
  25. package/dist/resources/conversations/types.js.map +1 -0
  26. package/dist/resources/inboxes/index.d.ts +39 -0
  27. package/dist/resources/inboxes/index.d.ts.map +1 -0
  28. package/dist/resources/inboxes/index.js +46 -0
  29. package/dist/resources/inboxes/index.js.map +1 -0
  30. package/dist/resources/inboxes/types.d.ts +88 -0
  31. package/dist/resources/inboxes/types.d.ts.map +1 -0
  32. package/dist/resources/inboxes/types.js +24 -0
  33. package/dist/resources/inboxes/types.js.map +1 -0
  34. package/dist/resources/index.d.ts +7 -0
  35. package/dist/resources/index.d.ts.map +1 -0
  36. package/dist/resources/index.js +7 -0
  37. package/dist/resources/index.js.map +1 -0
  38. package/package.json +78 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../http-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Envoy API Package
3
+ * A comprehensive SDK for interacting with the Envoy API
4
+ *
5
+ * @example
6
+ * ```typescript
7
+ * import { EnvoyClient } from '@voltade/envoy-sdk';
8
+ *
9
+ * const client = new EnvoyClient({
10
+ * apiKey: 'your-api-key',
11
+ * accountId: 'your-account-id'
12
+ * });
13
+ *
14
+ * // Create and send a message
15
+ * const message = await client.conversations.createMessage(123, {
16
+ * content: 'Hello, how can I help you?',
17
+ * message_type: 'outgoing',
18
+ * private: false
19
+ * });
20
+ *
21
+ * // Escalate to human
22
+ * const result = await client.conversations.escalateToHuman(123);
23
+ * ```
24
+ */
25
+ export { EnvoyClient, type EnvoyClientConfig } from './client.js';
26
+ export type { Agent, Article, Assignee, Contact, ContactInbox, Conversation, ConversationMeta, ConversationStatus, ContentType, CreateMessageParams, EscalationResponse, EscalationType, Message, MessageType, MessagesResponse, MessagesResponseMeta, Priority, SearchParams, SearchResponse, Team, } from './resources/index.js';
27
+ export { Conversations, Inboxes } from './resources/index.js';
28
+ export { AgentSchema, ArticleSchema, AssigneeSchema, ContactInboxSchema, ContactSchema, ConversationMetaSchema, ConversationSchema, ConversationStatusSchema, ContentTypeSchema, CreateMessageParamsSchema, EscalationResponseSchema, EscalationTypeSchema, MessageSchema, MessagesResponseMetaSchema, MessagesResponseSchema, MessageTypeSchema, PrioritySchema, SearchParamsSchema, SearchResponseSchema, TeamSchema, } from './resources/index.js';
29
+ export { HttpClient } from './http-client.js';
30
+ export { AuthenticationError, BadRequestError, EnvoyError, NetworkError, NotFoundError, RateLimitError, ServerError, ValidationError, } from './errors.js';
31
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAGH,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGlE,YAAY,EACV,KAAK,EACL,OAAO,EACP,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,IAAI,GACL,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG9D,OAAO,EACL,WAAW,EACX,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,aAAa,EACb,0BAA0B,EAC1B,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,UAAU,GACX,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,UAAU,EACV,YAAY,EACZ,aAAa,EACb,cAAc,EACd,WAAW,EACX,eAAe,GAChB,MAAM,aAAa,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Envoy API Package
3
+ * A comprehensive SDK for interacting with the Envoy API
4
+ *
5
+ * @example
6
+ * ```typescript
7
+ * import { EnvoyClient } from '@voltade/envoy-sdk';
8
+ *
9
+ * const client = new EnvoyClient({
10
+ * apiKey: 'your-api-key',
11
+ * accountId: 'your-account-id'
12
+ * });
13
+ *
14
+ * // Create and send a message
15
+ * const message = await client.conversations.createMessage(123, {
16
+ * content: 'Hello, how can I help you?',
17
+ * message_type: 'outgoing',
18
+ * private: false
19
+ * });
20
+ *
21
+ * // Escalate to human
22
+ * const result = await client.conversations.escalateToHuman(123);
23
+ * ```
24
+ */
25
+ // Main client export
26
+ export { EnvoyClient } from './client.js';
27
+ export { Conversations, Inboxes } from './resources/index.js';
28
+ // Zod schema exports
29
+ export { AgentSchema, ArticleSchema, AssigneeSchema, ContactInboxSchema, ContactSchema, ConversationMetaSchema, ConversationSchema, ConversationStatusSchema, ContentTypeSchema, CreateMessageParamsSchema, EscalationResponseSchema, EscalationTypeSchema, MessageSchema, MessagesResponseMetaSchema, MessagesResponseSchema, MessageTypeSchema, PrioritySchema, SearchParamsSchema, SearchResponseSchema, TeamSchema, } from './resources/index.js';
30
+ // Utility exports
31
+ export { HttpClient } from './http-client.js';
32
+ // Error exports
33
+ export { AuthenticationError, BadRequestError, EnvoyError, NetworkError, NotFoundError, RateLimitError, ServerError, ValidationError, } from './errors.js';
34
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,qBAAqB;AACrB,OAAO,EAAE,WAAW,EAA0B,MAAM,aAAa,CAAC;AAyBlE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE9D,qBAAqB;AACrB,OAAO,EACL,WAAW,EACX,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,aAAa,EACb,0BAA0B,EAC1B,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,UAAU,GACX,MAAM,sBAAsB,CAAC;AAE9B,kBAAkB;AAClB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,gBAAgB;AAChB,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,UAAU,EACV,YAAY,EACZ,aAAa,EACb,cAAc,EACd,WAAW,EACX,eAAe,GAChB,MAAM,aAAa,CAAC"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Conversations resource module
3
+ * Provides functionality for managing conversations and messages in Envoy
4
+ */
5
+ import type { HttpClient } from '../../http-client.js';
6
+ import type { Conversation, CreateMessageParams, EscalationResponse, Message, MessagesResponse } from './types.js';
7
+ /**
8
+ * Base resource class that all resource classes extend from
9
+ */
10
+ declare abstract class BaseResource {
11
+ protected readonly client: HttpClient;
12
+ constructor(client: HttpClient);
13
+ }
14
+ /**
15
+ * Conversations resource class for managing conversation-related operations
16
+ */
17
+ export declare class Conversations extends BaseResource {
18
+ /**
19
+ * Create and send a message to a conversation
20
+ * @param conversationId - The conversation ID
21
+ * @param params - Message parameters
22
+ * @returns The created message
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * const message = await client.conversations.createMessage(123, {
27
+ * content: 'Hello, how can I help you?',
28
+ * message_type: 'outgoing',
29
+ * private: false
30
+ * });
31
+ * ```
32
+ */
33
+ createMessage(conversationId: number, params: CreateMessageParams): Promise<Message>;
34
+ /**
35
+ * Escalate a conversation to a human agent
36
+ * @param conversationId - The conversation ID
37
+ * @returns The escalation response
38
+ *
39
+ * @example
40
+ * ```typescript
41
+ * const result = await client.conversations.escalateToHuman(123);
42
+ * if (result.success) {
43
+ * console.log(`Escalated to ${result.escalation_type}`);
44
+ * }
45
+ * ```
46
+ */
47
+ escalateToHuman(conversationId: number): Promise<EscalationResponse>;
48
+ /**
49
+ * Get a conversation by ID
50
+ * @param conversationId - The conversation ID
51
+ * @returns The conversation details
52
+ *
53
+ * @example
54
+ * ```typescript
55
+ * const conversation = await client.conversations.get(123);
56
+ * console.log(conversation.status);
57
+ * ```
58
+ */
59
+ get(conversationId: number): Promise<Conversation>;
60
+ /**
61
+ * Get all messages for a conversation
62
+ * @param conversationId - The conversation ID
63
+ * @returns Messages response with metadata and message list
64
+ *
65
+ * @example
66
+ * ```typescript
67
+ * const response = await client.conversations.getMessages(123);
68
+ * console.log(response.payload); // Array of messages
69
+ * ```
70
+ */
71
+ getMessages(conversationId: number): Promise<MessagesResponse>;
72
+ }
73
+ export type { Agent, Assignee, Contact, ContactInbox, Conversation, ConversationMeta, ConversationStatus, ContentType, CreateMessageParams, EscalationResponse, EscalationType, Message, MessageType, MessagesResponse, MessagesResponseMeta, Priority, Team, } from './types.js';
74
+ export { AgentSchema, AssigneeSchema, ContactInboxSchema, ContactSchema, ConversationMetaSchema, ConversationSchema, ConversationStatusSchema, ContentTypeSchema, CreateMessageParamsSchema, EscalationResponseSchema, EscalationTypeSchema, MessageSchema, MessagesResponseMetaSchema, MessagesResponseSchema, MessageTypeSchema, PrioritySchema, TeamSchema, } from './types.js';
75
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../resources/conversations/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,OAAO,EACP,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,uBAAe,YAAY;IACb,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU;gBAAlB,MAAM,EAAE,UAAU;CAClD;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,YAAY;IAC7C;;;;;;;;;;;;;;OAcG;IACG,aAAa,CACjB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,OAAO,CAAC;IAenB;;;;;;;;;;;;OAYG;IACG,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAM1E;;;;;;;;;;OAUG;IACG,GAAG,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAMxD;;;;;;;;;;OAUG;IACG,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAKrE;AAGD,YAAY,EACV,KAAK,EACL,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,QAAQ,EACR,IAAI,GACL,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,aAAa,EACb,0BAA0B,EAC1B,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACd,UAAU,GACX,MAAM,YAAY,CAAC"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Conversations resource module
3
+ * Provides functionality for managing conversations and messages in Envoy
4
+ */
5
+ /**
6
+ * Base resource class that all resource classes extend from
7
+ */
8
+ class BaseResource {
9
+ constructor(client) {
10
+ this.client = client;
11
+ }
12
+ }
13
+ /**
14
+ * Conversations resource class for managing conversation-related operations
15
+ */
16
+ export class Conversations extends BaseResource {
17
+ /**
18
+ * Create and send a message to a conversation
19
+ * @param conversationId - The conversation ID
20
+ * @param params - Message parameters
21
+ * @returns The created message
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * const message = await client.conversations.createMessage(123, {
26
+ * content: 'Hello, how can I help you?',
27
+ * message_type: 'outgoing',
28
+ * private: false
29
+ * });
30
+ * ```
31
+ */
32
+ async createMessage(conversationId, params) {
33
+ const payload = {
34
+ content: params.content,
35
+ message_type: params.message_type || 'outgoing',
36
+ private: params.private ?? false,
37
+ content_type: params.content_type || 'text',
38
+ content_attributes: params.content_attributes || {},
39
+ };
40
+ return await this.client.post(`/conversations/${conversationId}/messages`, payload);
41
+ }
42
+ /**
43
+ * Escalate a conversation to a human agent
44
+ * @param conversationId - The conversation ID
45
+ * @returns The escalation response
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * const result = await client.conversations.escalateToHuman(123);
50
+ * if (result.success) {
51
+ * console.log(`Escalated to ${result.escalation_type}`);
52
+ * }
53
+ * ```
54
+ */
55
+ async escalateToHuman(conversationId) {
56
+ return await this.client.post(`/conversations/${conversationId}/escalate_with_ai`);
57
+ }
58
+ /**
59
+ * Get a conversation by ID
60
+ * @param conversationId - The conversation ID
61
+ * @returns The conversation details
62
+ *
63
+ * @example
64
+ * ```typescript
65
+ * const conversation = await client.conversations.get(123);
66
+ * console.log(conversation.status);
67
+ * ```
68
+ */
69
+ async get(conversationId) {
70
+ return await this.client.get(`/conversations/${conversationId}`);
71
+ }
72
+ /**
73
+ * Get all messages for a conversation
74
+ * @param conversationId - The conversation ID
75
+ * @returns Messages response with metadata and message list
76
+ *
77
+ * @example
78
+ * ```typescript
79
+ * const response = await client.conversations.getMessages(123);
80
+ * console.log(response.payload); // Array of messages
81
+ * ```
82
+ */
83
+ async getMessages(conversationId) {
84
+ return await this.client.get(`/conversations/${conversationId}/messages`);
85
+ }
86
+ }
87
+ // Re-export Zod schemas
88
+ export { AgentSchema, AssigneeSchema, ContactInboxSchema, ContactSchema, ConversationMetaSchema, ConversationSchema, ConversationStatusSchema, ContentTypeSchema, CreateMessageParamsSchema, EscalationResponseSchema, EscalationTypeSchema, MessageSchema, MessagesResponseMetaSchema, MessagesResponseSchema, MessageTypeSchema, PrioritySchema, TeamSchema, } from './types.js';
89
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../resources/conversations/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH;;GAEG;AACH,MAAe,YAAY;IACzB,YAA+B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;IAAG,CAAC;CACtD;AAED;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,YAAY;IAC7C;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,aAAa,CACjB,cAAsB,EACtB,MAA2B;QAE3B,MAAM,OAAO,GAAG;YACd,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,UAAU;YAC/C,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,KAAK;YAChC,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,MAAM;YAC3C,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,IAAI,EAAE;SACpD,CAAC;QAEF,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAC3B,kBAAkB,cAAc,WAAW,EAC3C,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,eAAe,CAAC,cAAsB;QAC1C,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAC3B,kBAAkB,cAAc,mBAAmB,CACpD,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,GAAG,CAAC,cAAsB;QAC9B,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAC1B,kBAAkB,cAAc,EAAE,CACnC,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,WAAW,CAAC,cAAsB;QACtC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAC1B,kBAAkB,cAAc,WAAW,CAC5C,CAAC;IACJ,CAAC;CACF;AAuBD,wBAAwB;AACxB,OAAO,EACL,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,aAAa,EACb,0BAA0B,EAC1B,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACd,UAAU,GACX,MAAM,YAAY,CAAC"}