@cossistant/types 0.0.30 → 0.0.31

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/api/ai-agent.d.ts CHANGED
@@ -181,6 +181,11 @@ declare const aiAgentBehaviorSettingsSchema: z.ZodObject<{
181
181
  canCategorize: z.ZodBoolean;
182
182
  canEscalate: z.ZodBoolean;
183
183
  defaultEscalationUserId: z.ZodNullable<z.ZodString>;
184
+ visitorContactPolicy: z.ZodEnum<{
185
+ only_if_needed: "only_if_needed";
186
+ ask_early: "ask_early";
187
+ ask_after_time: "ask_after_time";
188
+ }>;
184
189
  autoAnalyzeSentiment: z.ZodBoolean;
185
190
  autoGenerateTitle: z.ZodBoolean;
186
191
  autoCategorize: z.ZodBoolean;
@@ -203,6 +208,11 @@ declare const getBehaviorSettingsResponseSchema: z.ZodObject<{
203
208
  canCategorize: z.ZodBoolean;
204
209
  canEscalate: z.ZodBoolean;
205
210
  defaultEscalationUserId: z.ZodNullable<z.ZodString>;
211
+ visitorContactPolicy: z.ZodEnum<{
212
+ only_if_needed: "only_if_needed";
213
+ ask_early: "ask_early";
214
+ ask_after_time: "ask_after_time";
215
+ }>;
206
216
  autoAnalyzeSentiment: z.ZodBoolean;
207
217
  autoGenerateTitle: z.ZodBoolean;
208
218
  autoCategorize: z.ZodBoolean;
@@ -222,6 +232,11 @@ declare const updateBehaviorSettingsRequestSchema: z.ZodObject<{
222
232
  canCategorize: z.ZodOptional<z.ZodBoolean>;
223
233
  canEscalate: z.ZodOptional<z.ZodBoolean>;
224
234
  defaultEscalationUserId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
235
+ visitorContactPolicy: z.ZodOptional<z.ZodEnum<{
236
+ only_if_needed: "only_if_needed";
237
+ ask_early: "ask_early";
238
+ ask_after_time: "ask_after_time";
239
+ }>>;
225
240
  autoAnalyzeSentiment: z.ZodOptional<z.ZodBoolean>;
226
241
  autoGenerateTitle: z.ZodOptional<z.ZodBoolean>;
227
242
  autoCategorize: z.ZodOptional<z.ZodBoolean>;
@@ -238,6 +253,11 @@ declare const updateBehaviorSettingsResponseSchema: z.ZodObject<{
238
253
  canCategorize: z.ZodBoolean;
239
254
  canEscalate: z.ZodBoolean;
240
255
  defaultEscalationUserId: z.ZodNullable<z.ZodString>;
256
+ visitorContactPolicy: z.ZodEnum<{
257
+ only_if_needed: "only_if_needed";
258
+ ask_early: "ask_early";
259
+ ask_after_time: "ask_after_time";
260
+ }>;
241
261
  autoAnalyzeSentiment: z.ZodBoolean;
242
262
  autoGenerateTitle: z.ZodBoolean;
243
263
  autoCategorize: z.ZodBoolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent.d.ts","names":[],"sources":["../../src/api/ai-agent.ts"],"sourcesContent":[],"mappings":";;;;;;AAKA;AA6CY,cA7CC,SA6CiB,EAAA,SAAS,CAAA;EAC3B,SAAA,KAAA,EAAa,yBAAoB;EAKhC,SAAA,KAAA,EAAA,SAOH;EAEE,SAAA,QAAW,EAAA,aAAW;EAKrB,SAAA,IAAA,EAAA,OAAA;;;;;;;;;;;;;;;;;;;;;;;EAAqB,SAAA,QAAA,EAAA,QAAA;EAAA,SAAA,IAAA,EAAA,MAAA;EAkErB,SAAA,YAAA,EAAA,IAAA;;;;;;;;KAtFD,OAAA,WAAkB;KAClB,aAAA,WAAwB;;;;cAKvB;;EAgF0B,SAAA,KAAA,EAAA,4BAAA;CAAA,EAAA;EAqE1B,SAAA,KAAA,EAAA,SAAA;;;;;;;;;;;;;;;KA5ID,WAAA,WAAsB;;;;cAKrB,uBAAqB,CAAA,CAAA;;;;EAuIK,UAAA,aAAA;EAAA,KAAA,aAAA;EAkF1B,WAAA,eAAA,YAiBV,CAAA;;;;;EAjB0C,KAAA,eAAA,WAAA,YAAA,CAAA,CAAA;EAAA,SAAA,aAAA;EAsBhC,SAAA,aAAA;;;;;;AAkBA,cA/LA,0BAwMV,EAxMoC,CAAA,CAAA,SAwMpC,CAAA;;;EATiC,WAAA,eAAA,YAAA,CAAA;EAAA,UAAA,aAAA;EAevB,KAAA,aAAA;;;;;;;;cAzIA,4BAA0B,CAAA,CAAA;;EAyIK,SAAA,WAAA;EAAA,IAAA,aAAA;EA+C/B,WAAA,eAAA,cAoCV,YAAA,CAAA,CAAA;;;;;;;;;;;cA1IU,kCAAgC,CAAA,CAAA;;EAsGA,SAAA,WAAA;EAAA,QAAA,cAAA;AAsC7C,CAAA,eAAY,CAAA;AACZ;AACA;AACA;AAGY,cA5HC,0BA4HqC,EA5HX,CAAA,CAAA,SA4HW,CAAA;EACtC,WAAA,aAAiB;EACjB,SAAA,WAAA;AAGZ,CAAA,eAAY,CAAA;AAWZ;;;cA1Ha,yBAAuB,CAAA,CAAA;;;;;;;cAevB,iCAA+B,CAAA,CAAA;;;EA2GF,SAAA,aAAA;EAAA,KAAA,YAAA,YAAA,CAAA;EAqD9B,iBAAA,eAAuB,YAC3B,CAAA;AAMR,CAAA,eAAa,CAAA;;;;AAAgC,cAxHhC,gCAwHgC,EAxHA,CAAA,CAAA,SAwHA,CAAA;EAchC,UAAA,aAAA;;;;;;;;KAhGD,eAAA,GAAkB,CAAA,CAAE,aAAa;KACjC,oBAAA,GAAuB,CAAA,CAAE,aAAa;KACtC,oBAAA,GAAuB,CAAA,CAAE,aAAa;KACtC,0BAAA,GAA6B,CAAA,CAAE,aACnC;KAEI,oBAAA,GAAuB,CAAA,CAAE,aAAa;KACtC,iBAAA,GAAoB,CAAA,CAAE,aAAa;AAyFD,KAxFlC,yBAAA,GAA4B,CAAA,CAAE,KAwFI,CAAA,OAvFtC,+BAuFsC,CAAA;AAAA,KArFlC,0BAAA,GAA6B,CAAA,CAAE,KAqFG,CAAA,OApFtC,gCAoFsC,CAAA;AAc9C;;;;;;;cAxFa,+BAA6B,CAAA,CAAA;;;;;;;;;;;;KAqD9B,uBAAA,GAA0B,CAAA,CAAE,aAChC;;;;cAMK,kCAAgC,CAAA,CAAA;;;;;;AA+ChC,cAjCA,iCAoCV,EApC2C,CAAA,CAAA,SAoC3C,CAAA;;;;;;;;;;;;;;;AAEH;AAGY,cA3BC,mCA4BL,EA5BwC,CAAA,CAAA,SA4BxC,CAAA;EAEI,WAAA,aAAA;EAGA,SAAA,WAAA;;;;;;;;;;;;;;;;;cAdC,sCAAoC,CAAA,CAAA;;;;;;;;;;;;KAKrC,0BAAA,GAA6B,CAAA,CAAE,aACnC;KAEI,2BAAA,GAA8B,CAAA,CAAE,aACpC;KAEI,6BAAA,GAAgC,CAAA,CAAE,aACtC;KAEI,8BAAA,GAAiC,CAAA,CAAE,aACvC"}
1
+ {"version":3,"file":"ai-agent.d.ts","names":[],"sources":["../../src/api/ai-agent.ts"],"sourcesContent":[],"mappings":";;;;;;AAKA;AA6CY,cA7CC,SA6CiB,EAAA,SAAS,CAAA;EAC3B,SAAA,KAAA,EAAa,yBAAoB;EAKhC,SAAA,KAAA,EAAA,SAOH;EAEE,SAAA,QAAW,EAAA,aAAW;EAKrB,SAAA,IAAA,EAAA,OAAA;;;;;;;;;;;;;;;;;;;;;;;EAAqB,SAAA,QAAA,EAAA,QAAA;EAAA,SAAA,IAAA,EAAA,MAAA;EAkErB,SAAA,YAAA,EAAA,IAAA;;;;;;;;KAtFD,OAAA,WAAkB;KAClB,aAAA,WAAwB;;;;cAKvB;;EAgF0B,SAAA,KAAA,EAAA,4BAAA;CAAA,EAAA;EAqE1B,SAAA,KAAA,EAAA,SAAA;;;;;;;;;;;;;;;KA5ID,WAAA,WAAsB;;;;cAKrB,uBAAqB,CAAA,CAAA;;;;EAuIK,UAAA,aAAA;EAAA,KAAA,aAAA;EAkF1B,WAAA,eAAA,YAiBV,CAAA;;;;;EAjB0C,KAAA,eAAA,WAAA,YAAA,CAAA,CAAA;EAAA,SAAA,aAAA;EAsBhC,SAAA,aAAA;;;;;;AAkBA,cA/LA,0BAwMV,EAxMoC,CAAA,CAAA,SAwMpC,CAAA;;;EATiC,WAAA,eAAA,YAAA,CAAA;EAAA,UAAA,aAAA;EAevB,KAAA,aAAA;;;;;;;;cAzIA,4BAA0B,CAAA,CAAA;;EAyIK,SAAA,WAAA;EAAA,IAAA,aAAA;EA+C/B,WAAA,eAAA,cAoCV,YAAA,CAAA,CAAA;;;;;;;;;;;cA1IU,kCAAgC,CAAA,CAAA;;EAsGA,SAAA,WAAA;EAAA,QAAA,cAAA;AAsC7C,CAAA,eAAY,CAAA;AACZ;AACA;AACA;AAGY,cA5HC,0BA4HqC,EA5HX,CAAA,CAAA,SA4HW,CAAA;EACtC,WAAA,aAAiB;EACjB,SAAA,WAAA;AAGZ,CAAA,eAAY,CAAA;AAWZ;;;cA1Ha,yBAAuB,CAAA,CAAA;;;;;;;cAevB,iCAA+B,CAAA,CAAA;;;;EA2GF,KAAA,YAAA,YAAA,CAAA;EAAA,iBAAA,eAAA,YAAA,CAAA;AA8D1C,CAAA,eAAY,CAAA;AAOZ;;;AAA6C,cAjIhC,gCAiIgC,EAjIA,CAAA,CAAA,SAiIA,CAAA;EAAA,UAAA,aAAA;EAchC,WAAA,cAAA;;;;;;;KAzGD,eAAA,GAAkB,CAAA,CAAE,aAAa;KACjC,oBAAA,GAAuB,CAAA,CAAE,aAAa;KACtC,oBAAA,GAAuB,CAAA,CAAE,aAAa;KACtC,0BAAA,GAA6B,CAAA,CAAE,aACnC;KAEI,oBAAA,GAAuB,CAAA,CAAE,aAAa;KACtC,iBAAA,GAAoB,CAAA,CAAE,aAAa;KACnC,yBAAA,GAA4B,CAAA,CAAE,aAClC;KAEI,0BAAA,GAA6B,CAAA,CAAE,aACnC;;;AA2GR;;;;;cAjGa,+BAA6B,CAAA,CAAA;;;;;;;;;;;;;;;;;KA8D9B,uBAAA,GAA0B,CAAA,CAAE,aAChC;;;;cAMK,kCAAgC,CAAA,CAAA;;;;;AA+C7C;cAjCa,mCAAiC,CAAA,CAAA;;;;;;;;;;;;;EAiCG,oBAAA,cAAA;EAAA,iBAAA,cAAA;EAKrC,cAAA,cAAA;EAGA,SAAA,WAAA;AAGZ,CAAA,eAAY,CAAA;AAGZ;;;cAjCa,qCAAmC,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;cAmBnC,sCAAoC,CAAA,CAAA;;;;;;;;;;;;;;;;;KAKrC,0BAAA,GAA6B,CAAA,CAAE,aACnC;KAEI,2BAAA,GAA8B,CAAA,CAAE,aACpC;KAEI,6BAAA,GAAgC,CAAA,CAAE,aACtC;KAEI,8BAAA,GAAiC,CAAA,CAAE,aACvC"}
package/api/ai-agent.js CHANGED
@@ -352,6 +352,14 @@ const aiAgentBehaviorSettingsSchema = z.object({
352
352
  description: "Default user ID to assign escalated conversations to.",
353
353
  example: null
354
354
  }),
355
+ visitorContactPolicy: z.enum([
356
+ "only_if_needed",
357
+ "ask_early",
358
+ "ask_after_time"
359
+ ]).openapi({
360
+ description: "How aggressively the AI should ask for visitor contact information.",
361
+ example: "only_if_needed"
362
+ }),
355
363
  autoAnalyzeSentiment: z.boolean().openapi({
356
364
  description: "Whether to automatically analyze conversation sentiment.",
357
365
  example: true
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent.js","names":[],"sources":["../../src/api/ai-agent.ts"],"sourcesContent":["import { z } from \"@hono/zod-openapi\";\n\n/**\n * Available AI models from OpenRouter\n */\nexport const AI_MODELS = [\n\t{\n\t\tvalue: \"moonshotai/kimi-k2-0905\",\n\t\tlabel: \"Kimi K2\",\n\t\tprovider: \"Moonshot AI\",\n\t\ticon: \"agent\",\n\t\tfreeOnly: true,\n\t},\n\t{\n\t\tvalue: \"moonshotai/kimi-k2.5\",\n\t\tlabel: \"Kimi K2.5\",\n\t\tprovider: \"Moonshot AI\",\n\t\ticon: \"agent\",\n\t\tfreeOnly: true,\n\t},\n\t{\n\t\tvalue: \"openai/gpt-5.2-chat\",\n\t\tlabel: \"GPT-5.2\",\n\t\tprovider: \"OpenAI\",\n\t\ticon: \"star\",\n\t\trequiresPaid: true,\n\t},\n\t{\n\t\tvalue: \"openai/gpt-5.1-chat\",\n\t\tlabel: \"GPT-5.1\",\n\t\tprovider: \"OpenAI\",\n\t\ticon: \"star\",\n\t\trequiresPaid: true,\n\t},\n\t{\n\t\tvalue: \"openai/gpt-5-mini\",\n\t\tlabel: \"GPT-5 Mini\",\n\t\tprovider: \"OpenAI\",\n\t\ticon: \"star\",\n\t\trequiresPaid: true,\n\t},\n\t{\n\t\tvalue: \"google/gemini-3-flash-preview\",\n\t\tlabel: \"Gemini 3 Flash\",\n\t\tprovider: \"Google\",\n\t\ticon: \"dashboard\",\n\t\trequiresPaid: true,\n\t},\n] as const;\n\nexport type AIModel = (typeof AI_MODELS)[number][\"value\"];\nexport type AIModelConfig = (typeof AI_MODELS)[number];\n\n/**\n * Available AI agent goals/intents\n */\nexport const AI_AGENT_GOALS = [\n\t{ value: \"sales\", label: \"Increase sales conversions\" },\n\t{ value: \"support\", label: \"Provide customer support\" },\n\t{ value: \"product_qa\", label: \"Answer product questions\" },\n\t{ value: \"lead_qualification\", label: \"Qualify leads\" },\n\t{ value: \"scheduling\", label: \"Schedule appointments\" },\n\t{ value: \"feedback\", label: \"Collect customer feedback\" },\n] as const;\n\nexport type AIAgentGoal = (typeof AI_AGENT_GOALS)[number][\"value\"];\n\n/**\n * AI Agent response schema\n */\nexport const aiAgentResponseSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The AI agent's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The AI agent's display name.\",\n\t\texample: \"Support Assistant\",\n\t}),\n\tdescription: z.string().nullable().openapi({\n\t\tdescription: \"A brief description of the AI agent's purpose.\",\n\t\texample: \"Helps users with common support questions.\",\n\t}),\n\tbasePrompt: z.string().openapi({\n\t\tdescription: \"The system prompt that defines the AI agent's behavior.\",\n\t\texample: \"You are a helpful support assistant...\",\n\t}),\n\tmodel: z.string().openapi({\n\t\tdescription: \"The OpenRouter model identifier.\",\n\t\texample: \"anthropic/claude-sonnet-4-20250514\",\n\t}),\n\ttemperature: z.number().nullable().openapi({\n\t\tdescription: \"The temperature setting for response generation (0-2).\",\n\t\texample: 0.7,\n\t}),\n\tmaxOutputTokens: z.number().nullable().openapi({\n\t\tdescription: \"Maximum tokens for response generation.\",\n\t\texample: 1024,\n\t}),\n\tisActive: z.boolean().openapi({\n\t\tdescription: \"Whether the AI agent is currently active.\",\n\t\texample: true,\n\t}),\n\tlastUsedAt: z.string().nullable().openapi({\n\t\tdescription: \"When the AI agent was last used.\",\n\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t}),\n\tusageCount: z.number().openapi({\n\t\tdescription: \"Total number of times the AI agent has been used.\",\n\t\texample: 42,\n\t}),\n\tgoals: z\n\t\t.array(z.string())\n\t\t.nullable()\n\t\t.openapi({\n\t\t\tdescription: \"The goals/intents for this AI agent.\",\n\t\t\texample: [\"support\", \"product_qa\"],\n\t\t}),\n\tcreatedAt: z.string().openapi({\n\t\tdescription: \"When the AI agent was created.\",\n\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t}),\n\tupdatedAt: z.string().openapi({\n\t\tdescription: \"When the AI agent was last updated.\",\n\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t}),\n\tonboardingCompletedAt: z.string().nullable().openapi({\n\t\tdescription:\n\t\t\t\"When onboarding was completed. Null if still in onboarding flow.\",\n\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t}),\n});\n\n/**\n * Create AI Agent request schema\n */\nexport const createAiAgentRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug to create the AI agent for.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\tname: z\n\t\t\t.string()\n\t\t\t.min(1, { message: \"Name is required.\" })\n\t\t\t.max(100, { message: \"Name must be 100 characters or fewer.\" })\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The AI agent's display name.\",\n\t\t\t\texample: \"Support Assistant\",\n\t\t\t}),\n\t\tdescription: z\n\t\t\t.string()\n\t\t\t.max(500, { message: \"Description must be 500 characters or fewer.\" })\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"A brief description of the AI agent's purpose.\",\n\t\t\t\texample: \"Helps users with common support questions.\",\n\t\t\t}),\n\t\tbasePrompt: z\n\t\t\t.string()\n\t\t\t.min(1, { message: \"Base prompt is required.\" })\n\t\t\t.max(10_000, {\n\t\t\t\tmessage: \"Base prompt must be 10,000 characters or fewer.\",\n\t\t\t})\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The system prompt that defines the AI agent's behavior.\",\n\t\t\t\texample: \"You are a helpful support assistant...\",\n\t\t\t}),\n\t\tmodel: z.string().min(1, { message: \"Model is required.\" }).openapi({\n\t\t\tdescription: \"The OpenRouter model identifier.\",\n\t\t\texample: \"anthropic/claude-sonnet-4-20250514\",\n\t\t}),\n\t\ttemperature: z\n\t\t\t.number()\n\t\t\t.min(0, { message: \"Temperature must be at least 0.\" })\n\t\t\t.max(2, { message: \"Temperature must be at most 2.\" })\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The temperature setting for response generation (0-2).\",\n\t\t\t\texample: 0.7,\n\t\t\t}),\n\t\tmaxOutputTokens: z\n\t\t\t.number()\n\t\t\t.min(100, { message: \"Max tokens must be at least 100.\" })\n\t\t\t.max(16_000, { message: \"Max tokens must be at most 16,000.\" })\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"Maximum tokens for response generation.\",\n\t\t\t\texample: 1024,\n\t\t\t}),\n\t\tgoals: z\n\t\t\t.array(z.string())\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The goals/intents for this AI agent.\",\n\t\t\t\texample: [\"support\", \"product_qa\"],\n\t\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload used to create a new AI agent.\",\n\t});\n\n/**\n * Update AI Agent request schema\n */\nexport const updateAiAgentRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\taiAgentId: z.ulid().openapi({\n\t\t\tdescription: \"The AI agent's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tname: z\n\t\t\t.string()\n\t\t\t.min(1, { message: \"Name is required.\" })\n\t\t\t.max(100, { message: \"Name must be 100 characters or fewer.\" })\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The AI agent's display name.\",\n\t\t\t\texample: \"Support Assistant\",\n\t\t\t}),\n\t\tdescription: z\n\t\t\t.string()\n\t\t\t.max(500, { message: \"Description must be 500 characters or fewer.\" })\n\t\t\t.nullable()\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"A brief description of the AI agent's purpose.\",\n\t\t\t\texample: \"Helps users with common support questions.\",\n\t\t\t}),\n\t\tbasePrompt: z\n\t\t\t.string()\n\t\t\t.min(1, { message: \"Base prompt is required.\" })\n\t\t\t.max(10_000, {\n\t\t\t\tmessage: \"Base prompt must be 10,000 characters or fewer.\",\n\t\t\t})\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The system prompt that defines the AI agent's behavior.\",\n\t\t\t\texample: \"You are a helpful support assistant...\",\n\t\t\t}),\n\t\tmodel: z.string().min(1, { message: \"Model is required.\" }).openapi({\n\t\t\tdescription: \"The OpenRouter model identifier.\",\n\t\t\texample: \"anthropic/claude-sonnet-4-20250514\",\n\t\t}),\n\t\ttemperature: z\n\t\t\t.number()\n\t\t\t.min(0, { message: \"Temperature must be at least 0.\" })\n\t\t\t.max(2, { message: \"Temperature must be at most 2.\" })\n\t\t\t.nullable()\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The temperature setting for response generation (0-2).\",\n\t\t\t\texample: 0.7,\n\t\t\t}),\n\t\tmaxOutputTokens: z\n\t\t\t.number()\n\t\t\t.min(100, { message: \"Max tokens must be at least 100.\" })\n\t\t\t.max(16_000, { message: \"Max tokens must be at most 16,000.\" })\n\t\t\t.nullable()\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"Maximum tokens for response generation.\",\n\t\t\t\texample: 1024,\n\t\t\t}),\n\t\tgoals: z\n\t\t\t.array(z.string())\n\t\t\t.nullable()\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The goals/intents for this AI agent.\",\n\t\t\t\texample: [\"support\", \"product_qa\"],\n\t\t\t}),\n\t\tonboardingCompletedAt: z.string().nullable().optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Mark onboarding as complete by setting this timestamp. Set to current ISO timestamp to complete onboarding.\",\n\t\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload used to update an existing AI agent.\",\n\t});\n\n/**\n * Toggle AI Agent active status request schema\n */\nexport const toggleAiAgentActiveRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\taiAgentId: z.ulid().openapi({\n\t\t\tdescription: \"The AI agent's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tisActive: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI agent should be active.\",\n\t\t\texample: true,\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload used to toggle an AI agent's active status.\",\n\t});\n\n/**\n * Delete AI Agent request schema\n */\nexport const deleteAiAgentRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\taiAgentId: z.ulid().openapi({\n\t\t\tdescription: \"The AI agent's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload used to permanently delete an AI agent.\",\n\t});\n\n/**\n * Get AI Agent request schema\n */\nexport const getAiAgentRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Request to get the AI agent for a website.\",\n\t});\n\n/**\n * Generate Base Prompt request schema\n * Used to scrape a website and generate a tailored base prompt for the AI agent\n */\nexport const generateBasePromptRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\tsourceUrl: z\n\t\t\t.string()\n\t\t\t.url({ message: \"Please enter a valid URL.\" })\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription:\n\t\t\t\t\t\"The URL to scrape for content and brand information. Optional - if not provided, manualDescription should be used.\",\n\t\t\t\texample: \"https://example.com\",\n\t\t\t}),\n\t\tagentName: z\n\t\t\t.string()\n\t\t\t.min(1, { message: \"Agent name is required.\" })\n\t\t\t.max(100, { message: \"Agent name must be 100 characters or fewer.\" })\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The name for the AI agent.\",\n\t\t\t\texample: \"Support Assistant\",\n\t\t\t}),\n\t\tgoals: z.array(z.string()).openapi({\n\t\t\tdescription: \"The goals/intents for this AI agent.\",\n\t\t\texample: [\"support\", \"product_qa\"],\n\t\t}),\n\t\tmanualDescription: z\n\t\t\t.string()\n\t\t\t.max(1000, {\n\t\t\t\tmessage: \"Description must be 1000 characters or fewer.\",\n\t\t\t})\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription:\n\t\t\t\t\t\"Manual description of the business, used when scraping returns no description or no URL is provided.\",\n\t\t\t\texample: \"We help small businesses manage their inventory efficiently.\",\n\t\t\t}),\n\t})\n\t.openapi({\n\t\tdescription:\n\t\t\t\"Request to generate a base prompt by scraping a website and using AI.\",\n\t});\n\n/**\n * Generate Base Prompt response schema\n */\nexport const generateBasePromptResponseSchema = z\n\t.object({\n\t\tbasePrompt: z.string().openapi({\n\t\t\tdescription: \"The generated base prompt for the AI agent.\",\n\t\t\texample: \"You are a helpful support assistant for Acme Corp...\",\n\t\t}),\n\t\tisGenerated: z.boolean().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Whether the prompt was AI-generated (true) or fell back to default (false).\",\n\t\t\texample: true,\n\t\t}),\n\t\tcompanyName: z.string().nullable().openapi({\n\t\t\tdescription: \"The company name extracted from the website.\",\n\t\t\texample: \"Acme Corp\",\n\t\t}),\n\t\twebsiteDescription: z.string().nullable().openapi({\n\t\t\tdescription: \"The description extracted from the website.\",\n\t\t\texample: \"Acme Corp helps businesses grow with innovative solutions.\",\n\t\t}),\n\t\tlogo: z.string().nullable().openapi({\n\t\t\tdescription: \"The logo URL extracted from the website (og:image).\",\n\t\t\texample: \"https://example.com/logo.png\",\n\t\t}),\n\t\tfavicon: z.string().nullable().openapi({\n\t\t\tdescription: \"The favicon URL extracted from the website.\",\n\t\t\texample: \"https://example.com/favicon.ico\",\n\t\t}),\n\t\tdiscoveredLinksCount: z.number().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Number of pages discovered on the website for future knowledge base training.\",\n\t\t\texample: 47,\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription:\n\t\t\t\"Response containing the generated base prompt and brand info.\",\n\t});\n\nexport type AiAgentResponse = z.infer<typeof aiAgentResponseSchema>;\nexport type CreateAiAgentRequest = z.infer<typeof createAiAgentRequestSchema>;\nexport type UpdateAiAgentRequest = z.infer<typeof updateAiAgentRequestSchema>;\nexport type ToggleAiAgentActiveRequest = z.infer<\n\ttypeof toggleAiAgentActiveRequestSchema\n>;\nexport type DeleteAiAgentRequest = z.infer<typeof deleteAiAgentRequestSchema>;\nexport type GetAiAgentRequest = z.infer<typeof getAiAgentRequestSchema>;\nexport type GenerateBasePromptRequest = z.infer<\n\ttypeof generateBasePromptRequestSchema\n>;\nexport type GenerateBasePromptResponse = z.infer<\n\ttypeof generateBasePromptResponseSchema\n>;\n\n/**\n * AI Agent Behavior Settings Schema\n *\n * Controls how the AI agent behaves in conversations.\n * Simplified for MVP - AI responds immediately and decides when to respond\n * based on context, not configuration.\n */\nexport const aiAgentBehaviorSettingsSchema = z\n\t.object({\n\t\t// Capability toggles\n\t\tcanResolve: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can mark conversations as resolved.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcanMarkSpam: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can mark conversations as spam.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcanAssign: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can assign conversations to team members.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcanSetPriority: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can change conversation priority.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcanCategorize: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can add conversations to views.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcanEscalate: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can escalate conversations to human agents.\",\n\t\t\texample: true,\n\t\t}),\n\n\t\t// Escalation config\n\t\tdefaultEscalationUserId: z.string().nullable().openapi({\n\t\t\tdescription: \"Default user ID to assign escalated conversations to.\",\n\t\t\texample: null,\n\t\t}),\n\n\t\t// Background analysis\n\t\tautoAnalyzeSentiment: z.boolean().openapi({\n\t\t\tdescription: \"Whether to automatically analyze conversation sentiment.\",\n\t\t\texample: true,\n\t\t}),\n\t\tautoGenerateTitle: z.boolean().openapi({\n\t\t\tdescription: \"Whether to automatically generate conversation titles.\",\n\t\t\texample: true,\n\t\t}),\n\t\tautoCategorize: z.boolean().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Whether to automatically add conversations to matching views.\",\n\t\t\texample: false,\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"AI agent behavior settings.\",\n\t});\n\nexport type AiAgentBehaviorSettings = z.infer<\n\ttypeof aiAgentBehaviorSettingsSchema\n>;\n\n/**\n * Get Behavior Settings request schema\n */\nexport const getBehaviorSettingsRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Request to get behavior settings for an AI agent.\",\n\t});\n\n/**\n * Get Behavior Settings response schema\n */\nexport const getBehaviorSettingsResponseSchema = aiAgentBehaviorSettingsSchema\n\t.extend({\n\t\taiAgentId: z.ulid().openapi({\n\t\t\tdescription: \"The AI agent's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Response containing the AI agent's behavior settings.\",\n\t});\n\n/**\n * Update Behavior Settings request schema\n */\nexport const updateBehaviorSettingsRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\taiAgentId: z.ulid().openapi({\n\t\t\tdescription: \"The AI agent's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tsettings: aiAgentBehaviorSettingsSchema.partial().openapi({\n\t\t\tdescription: \"Partial behavior settings to update.\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload used to update an AI agent's behavior settings.\",\n\t}); /**\n * Update Behavior Settings response schema\n */\nexport const updateBehaviorSettingsResponseSchema =\n\taiAgentBehaviorSettingsSchema.openapi({\n\t\tdescription: \"The updated behavior settings.\",\n\t});\n\nexport type GetBehaviorSettingsRequest = z.infer<\n\ttypeof getBehaviorSettingsRequestSchema\n>;\nexport type GetBehaviorSettingsResponse = z.infer<\n\ttypeof getBehaviorSettingsResponseSchema\n>;\nexport type UpdateBehaviorSettingsRequest = z.infer<\n\ttypeof updateBehaviorSettingsRequestSchema\n>;\nexport type UpdateBehaviorSettingsResponse = z.infer<\n\ttypeof updateBehaviorSettingsResponseSchema\n>;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ai-agent.js","names":[],"sources":["../../src/api/ai-agent.ts"],"sourcesContent":["import { z } from \"@hono/zod-openapi\";\n\n/**\n * Available AI models from OpenRouter\n */\nexport const AI_MODELS = [\n\t{\n\t\tvalue: \"moonshotai/kimi-k2-0905\",\n\t\tlabel: \"Kimi K2\",\n\t\tprovider: \"Moonshot AI\",\n\t\ticon: \"agent\",\n\t\tfreeOnly: true,\n\t},\n\t{\n\t\tvalue: \"moonshotai/kimi-k2.5\",\n\t\tlabel: \"Kimi K2.5\",\n\t\tprovider: \"Moonshot AI\",\n\t\ticon: \"agent\",\n\t\tfreeOnly: true,\n\t},\n\t{\n\t\tvalue: \"openai/gpt-5.2-chat\",\n\t\tlabel: \"GPT-5.2\",\n\t\tprovider: \"OpenAI\",\n\t\ticon: \"star\",\n\t\trequiresPaid: true,\n\t},\n\t{\n\t\tvalue: \"openai/gpt-5.1-chat\",\n\t\tlabel: \"GPT-5.1\",\n\t\tprovider: \"OpenAI\",\n\t\ticon: \"star\",\n\t\trequiresPaid: true,\n\t},\n\t{\n\t\tvalue: \"openai/gpt-5-mini\",\n\t\tlabel: \"GPT-5 Mini\",\n\t\tprovider: \"OpenAI\",\n\t\ticon: \"star\",\n\t\trequiresPaid: true,\n\t},\n\t{\n\t\tvalue: \"google/gemini-3-flash-preview\",\n\t\tlabel: \"Gemini 3 Flash\",\n\t\tprovider: \"Google\",\n\t\ticon: \"dashboard\",\n\t\trequiresPaid: true,\n\t},\n] as const;\n\nexport type AIModel = (typeof AI_MODELS)[number][\"value\"];\nexport type AIModelConfig = (typeof AI_MODELS)[number];\n\n/**\n * Available AI agent goals/intents\n */\nexport const AI_AGENT_GOALS = [\n\t{ value: \"sales\", label: \"Increase sales conversions\" },\n\t{ value: \"support\", label: \"Provide customer support\" },\n\t{ value: \"product_qa\", label: \"Answer product questions\" },\n\t{ value: \"lead_qualification\", label: \"Qualify leads\" },\n\t{ value: \"scheduling\", label: \"Schedule appointments\" },\n\t{ value: \"feedback\", label: \"Collect customer feedback\" },\n] as const;\n\nexport type AIAgentGoal = (typeof AI_AGENT_GOALS)[number][\"value\"];\n\n/**\n * AI Agent response schema\n */\nexport const aiAgentResponseSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The AI agent's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The AI agent's display name.\",\n\t\texample: \"Support Assistant\",\n\t}),\n\tdescription: z.string().nullable().openapi({\n\t\tdescription: \"A brief description of the AI agent's purpose.\",\n\t\texample: \"Helps users with common support questions.\",\n\t}),\n\tbasePrompt: z.string().openapi({\n\t\tdescription: \"The system prompt that defines the AI agent's behavior.\",\n\t\texample: \"You are a helpful support assistant...\",\n\t}),\n\tmodel: z.string().openapi({\n\t\tdescription: \"The OpenRouter model identifier.\",\n\t\texample: \"anthropic/claude-sonnet-4-20250514\",\n\t}),\n\ttemperature: z.number().nullable().openapi({\n\t\tdescription: \"The temperature setting for response generation (0-2).\",\n\t\texample: 0.7,\n\t}),\n\tmaxOutputTokens: z.number().nullable().openapi({\n\t\tdescription: \"Maximum tokens for response generation.\",\n\t\texample: 1024,\n\t}),\n\tisActive: z.boolean().openapi({\n\t\tdescription: \"Whether the AI agent is currently active.\",\n\t\texample: true,\n\t}),\n\tlastUsedAt: z.string().nullable().openapi({\n\t\tdescription: \"When the AI agent was last used.\",\n\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t}),\n\tusageCount: z.number().openapi({\n\t\tdescription: \"Total number of times the AI agent has been used.\",\n\t\texample: 42,\n\t}),\n\tgoals: z\n\t\t.array(z.string())\n\t\t.nullable()\n\t\t.openapi({\n\t\t\tdescription: \"The goals/intents for this AI agent.\",\n\t\t\texample: [\"support\", \"product_qa\"],\n\t\t}),\n\tcreatedAt: z.string().openapi({\n\t\tdescription: \"When the AI agent was created.\",\n\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t}),\n\tupdatedAt: z.string().openapi({\n\t\tdescription: \"When the AI agent was last updated.\",\n\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t}),\n\tonboardingCompletedAt: z.string().nullable().openapi({\n\t\tdescription:\n\t\t\t\"When onboarding was completed. Null if still in onboarding flow.\",\n\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t}),\n});\n\n/**\n * Create AI Agent request schema\n */\nexport const createAiAgentRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug to create the AI agent for.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\tname: z\n\t\t\t.string()\n\t\t\t.min(1, { message: \"Name is required.\" })\n\t\t\t.max(100, { message: \"Name must be 100 characters or fewer.\" })\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The AI agent's display name.\",\n\t\t\t\texample: \"Support Assistant\",\n\t\t\t}),\n\t\tdescription: z\n\t\t\t.string()\n\t\t\t.max(500, { message: \"Description must be 500 characters or fewer.\" })\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"A brief description of the AI agent's purpose.\",\n\t\t\t\texample: \"Helps users with common support questions.\",\n\t\t\t}),\n\t\tbasePrompt: z\n\t\t\t.string()\n\t\t\t.min(1, { message: \"Base prompt is required.\" })\n\t\t\t.max(10_000, {\n\t\t\t\tmessage: \"Base prompt must be 10,000 characters or fewer.\",\n\t\t\t})\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The system prompt that defines the AI agent's behavior.\",\n\t\t\t\texample: \"You are a helpful support assistant...\",\n\t\t\t}),\n\t\tmodel: z.string().min(1, { message: \"Model is required.\" }).openapi({\n\t\t\tdescription: \"The OpenRouter model identifier.\",\n\t\t\texample: \"anthropic/claude-sonnet-4-20250514\",\n\t\t}),\n\t\ttemperature: z\n\t\t\t.number()\n\t\t\t.min(0, { message: \"Temperature must be at least 0.\" })\n\t\t\t.max(2, { message: \"Temperature must be at most 2.\" })\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The temperature setting for response generation (0-2).\",\n\t\t\t\texample: 0.7,\n\t\t\t}),\n\t\tmaxOutputTokens: z\n\t\t\t.number()\n\t\t\t.min(100, { message: \"Max tokens must be at least 100.\" })\n\t\t\t.max(16_000, { message: \"Max tokens must be at most 16,000.\" })\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"Maximum tokens for response generation.\",\n\t\t\t\texample: 1024,\n\t\t\t}),\n\t\tgoals: z\n\t\t\t.array(z.string())\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The goals/intents for this AI agent.\",\n\t\t\t\texample: [\"support\", \"product_qa\"],\n\t\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload used to create a new AI agent.\",\n\t});\n\n/**\n * Update AI Agent request schema\n */\nexport const updateAiAgentRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\taiAgentId: z.ulid().openapi({\n\t\t\tdescription: \"The AI agent's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tname: z\n\t\t\t.string()\n\t\t\t.min(1, { message: \"Name is required.\" })\n\t\t\t.max(100, { message: \"Name must be 100 characters or fewer.\" })\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The AI agent's display name.\",\n\t\t\t\texample: \"Support Assistant\",\n\t\t\t}),\n\t\tdescription: z\n\t\t\t.string()\n\t\t\t.max(500, { message: \"Description must be 500 characters or fewer.\" })\n\t\t\t.nullable()\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"A brief description of the AI agent's purpose.\",\n\t\t\t\texample: \"Helps users with common support questions.\",\n\t\t\t}),\n\t\tbasePrompt: z\n\t\t\t.string()\n\t\t\t.min(1, { message: \"Base prompt is required.\" })\n\t\t\t.max(10_000, {\n\t\t\t\tmessage: \"Base prompt must be 10,000 characters or fewer.\",\n\t\t\t})\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The system prompt that defines the AI agent's behavior.\",\n\t\t\t\texample: \"You are a helpful support assistant...\",\n\t\t\t}),\n\t\tmodel: z.string().min(1, { message: \"Model is required.\" }).openapi({\n\t\t\tdescription: \"The OpenRouter model identifier.\",\n\t\t\texample: \"anthropic/claude-sonnet-4-20250514\",\n\t\t}),\n\t\ttemperature: z\n\t\t\t.number()\n\t\t\t.min(0, { message: \"Temperature must be at least 0.\" })\n\t\t\t.max(2, { message: \"Temperature must be at most 2.\" })\n\t\t\t.nullable()\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The temperature setting for response generation (0-2).\",\n\t\t\t\texample: 0.7,\n\t\t\t}),\n\t\tmaxOutputTokens: z\n\t\t\t.number()\n\t\t\t.min(100, { message: \"Max tokens must be at least 100.\" })\n\t\t\t.max(16_000, { message: \"Max tokens must be at most 16,000.\" })\n\t\t\t.nullable()\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"Maximum tokens for response generation.\",\n\t\t\t\texample: 1024,\n\t\t\t}),\n\t\tgoals: z\n\t\t\t.array(z.string())\n\t\t\t.nullable()\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The goals/intents for this AI agent.\",\n\t\t\t\texample: [\"support\", \"product_qa\"],\n\t\t\t}),\n\t\tonboardingCompletedAt: z.string().nullable().optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Mark onboarding as complete by setting this timestamp. Set to current ISO timestamp to complete onboarding.\",\n\t\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload used to update an existing AI agent.\",\n\t});\n\n/**\n * Toggle AI Agent active status request schema\n */\nexport const toggleAiAgentActiveRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\taiAgentId: z.ulid().openapi({\n\t\t\tdescription: \"The AI agent's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tisActive: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI agent should be active.\",\n\t\t\texample: true,\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload used to toggle an AI agent's active status.\",\n\t});\n\n/**\n * Delete AI Agent request schema\n */\nexport const deleteAiAgentRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\taiAgentId: z.ulid().openapi({\n\t\t\tdescription: \"The AI agent's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload used to permanently delete an AI agent.\",\n\t});\n\n/**\n * Get AI Agent request schema\n */\nexport const getAiAgentRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Request to get the AI agent for a website.\",\n\t});\n\n/**\n * Generate Base Prompt request schema\n * Used to scrape a website and generate a tailored base prompt for the AI agent\n */\nexport const generateBasePromptRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\tsourceUrl: z\n\t\t\t.string()\n\t\t\t.url({ message: \"Please enter a valid URL.\" })\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription:\n\t\t\t\t\t\"The URL to scrape for content and brand information. Optional - if not provided, manualDescription should be used.\",\n\t\t\t\texample: \"https://example.com\",\n\t\t\t}),\n\t\tagentName: z\n\t\t\t.string()\n\t\t\t.min(1, { message: \"Agent name is required.\" })\n\t\t\t.max(100, { message: \"Agent name must be 100 characters or fewer.\" })\n\t\t\t.openapi({\n\t\t\t\tdescription: \"The name for the AI agent.\",\n\t\t\t\texample: \"Support Assistant\",\n\t\t\t}),\n\t\tgoals: z.array(z.string()).openapi({\n\t\t\tdescription: \"The goals/intents for this AI agent.\",\n\t\t\texample: [\"support\", \"product_qa\"],\n\t\t}),\n\t\tmanualDescription: z\n\t\t\t.string()\n\t\t\t.max(1000, {\n\t\t\t\tmessage: \"Description must be 1000 characters or fewer.\",\n\t\t\t})\n\t\t\t.optional()\n\t\t\t.openapi({\n\t\t\t\tdescription:\n\t\t\t\t\t\"Manual description of the business, used when scraping returns no description or no URL is provided.\",\n\t\t\t\texample: \"We help small businesses manage their inventory efficiently.\",\n\t\t\t}),\n\t})\n\t.openapi({\n\t\tdescription:\n\t\t\t\"Request to generate a base prompt by scraping a website and using AI.\",\n\t});\n\n/**\n * Generate Base Prompt response schema\n */\nexport const generateBasePromptResponseSchema = z\n\t.object({\n\t\tbasePrompt: z.string().openapi({\n\t\t\tdescription: \"The generated base prompt for the AI agent.\",\n\t\t\texample: \"You are a helpful support assistant for Acme Corp...\",\n\t\t}),\n\t\tisGenerated: z.boolean().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Whether the prompt was AI-generated (true) or fell back to default (false).\",\n\t\t\texample: true,\n\t\t}),\n\t\tcompanyName: z.string().nullable().openapi({\n\t\t\tdescription: \"The company name extracted from the website.\",\n\t\t\texample: \"Acme Corp\",\n\t\t}),\n\t\twebsiteDescription: z.string().nullable().openapi({\n\t\t\tdescription: \"The description extracted from the website.\",\n\t\t\texample: \"Acme Corp helps businesses grow with innovative solutions.\",\n\t\t}),\n\t\tlogo: z.string().nullable().openapi({\n\t\t\tdescription: \"The logo URL extracted from the website (og:image).\",\n\t\t\texample: \"https://example.com/logo.png\",\n\t\t}),\n\t\tfavicon: z.string().nullable().openapi({\n\t\t\tdescription: \"The favicon URL extracted from the website.\",\n\t\t\texample: \"https://example.com/favicon.ico\",\n\t\t}),\n\t\tdiscoveredLinksCount: z.number().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Number of pages discovered on the website for future knowledge base training.\",\n\t\t\texample: 47,\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription:\n\t\t\t\"Response containing the generated base prompt and brand info.\",\n\t});\n\nexport type AiAgentResponse = z.infer<typeof aiAgentResponseSchema>;\nexport type CreateAiAgentRequest = z.infer<typeof createAiAgentRequestSchema>;\nexport type UpdateAiAgentRequest = z.infer<typeof updateAiAgentRequestSchema>;\nexport type ToggleAiAgentActiveRequest = z.infer<\n\ttypeof toggleAiAgentActiveRequestSchema\n>;\nexport type DeleteAiAgentRequest = z.infer<typeof deleteAiAgentRequestSchema>;\nexport type GetAiAgentRequest = z.infer<typeof getAiAgentRequestSchema>;\nexport type GenerateBasePromptRequest = z.infer<\n\ttypeof generateBasePromptRequestSchema\n>;\nexport type GenerateBasePromptResponse = z.infer<\n\ttypeof generateBasePromptResponseSchema\n>;\n\n/**\n * AI Agent Behavior Settings Schema\n *\n * Controls how the AI agent behaves in conversations.\n * Simplified for MVP - AI responds immediately and decides when to respond\n * based on context, not configuration.\n */\nexport const aiAgentBehaviorSettingsSchema = z\n\t.object({\n\t\t// Capability toggles\n\t\tcanResolve: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can mark conversations as resolved.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcanMarkSpam: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can mark conversations as spam.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcanAssign: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can assign conversations to team members.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcanSetPriority: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can change conversation priority.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcanCategorize: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can add conversations to views.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcanEscalate: z.boolean().openapi({\n\t\t\tdescription: \"Whether the AI can escalate conversations to human agents.\",\n\t\t\texample: true,\n\t\t}),\n\n\t\t// Escalation config\n\t\tdefaultEscalationUserId: z.string().nullable().openapi({\n\t\t\tdescription: \"Default user ID to assign escalated conversations to.\",\n\t\t\texample: null,\n\t\t}),\n\n\t\t// Visitor identification\n\t\tvisitorContactPolicy: z\n\t\t\t.enum([\"only_if_needed\", \"ask_early\", \"ask_after_time\"])\n\t\t\t.openapi({\n\t\t\t\tdescription:\n\t\t\t\t\t\"How aggressively the AI should ask for visitor contact information.\",\n\t\t\t\texample: \"only_if_needed\",\n\t\t\t}),\n\n\t\t// Background analysis\n\t\tautoAnalyzeSentiment: z.boolean().openapi({\n\t\t\tdescription: \"Whether to automatically analyze conversation sentiment.\",\n\t\t\texample: true,\n\t\t}),\n\t\tautoGenerateTitle: z.boolean().openapi({\n\t\t\tdescription: \"Whether to automatically generate conversation titles.\",\n\t\t\texample: true,\n\t\t}),\n\t\tautoCategorize: z.boolean().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Whether to automatically add conversations to matching views.\",\n\t\t\texample: false,\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"AI agent behavior settings.\",\n\t});\n\nexport type AiAgentBehaviorSettings = z.infer<\n\ttypeof aiAgentBehaviorSettingsSchema\n>;\n\n/**\n * Get Behavior Settings request schema\n */\nexport const getBehaviorSettingsRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Request to get behavior settings for an AI agent.\",\n\t});\n\n/**\n * Get Behavior Settings response schema\n */\nexport const getBehaviorSettingsResponseSchema = aiAgentBehaviorSettingsSchema\n\t.extend({\n\t\taiAgentId: z.ulid().openapi({\n\t\t\tdescription: \"The AI agent's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Response containing the AI agent's behavior settings.\",\n\t});\n\n/**\n * Update Behavior Settings request schema\n */\nexport const updateBehaviorSettingsRequestSchema = z\n\t.object({\n\t\twebsiteSlug: z.string().openapi({\n\t\t\tdescription: \"The website slug.\",\n\t\t\texample: \"my-website\",\n\t\t}),\n\t\taiAgentId: z.ulid().openapi({\n\t\t\tdescription: \"The AI agent's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tsettings: aiAgentBehaviorSettingsSchema.partial().openapi({\n\t\t\tdescription: \"Partial behavior settings to update.\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload used to update an AI agent's behavior settings.\",\n\t}); /**\n * Update Behavior Settings response schema\n */\nexport const updateBehaviorSettingsResponseSchema =\n\taiAgentBehaviorSettingsSchema.openapi({\n\t\tdescription: \"The updated behavior settings.\",\n\t});\n\nexport type GetBehaviorSettingsRequest = z.infer<\n\ttypeof getBehaviorSettingsRequestSchema\n>;\nexport type GetBehaviorSettingsResponse = z.infer<\n\ttypeof getBehaviorSettingsResponseSchema\n>;\nexport type UpdateBehaviorSettingsRequest = z.infer<\n\ttypeof updateBehaviorSettingsRequestSchema\n>;\nexport type UpdateBehaviorSettingsResponse = z.infer<\n\ttypeof updateBehaviorSettingsResponseSchema\n>;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"contact.d.ts","names":[],"sources":["../../src/api/contact.ts"],"sourcesContent":[],"mappings":";;;;;;AAMA;;AAAkC,cAArB,qBAAqB,EAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,SAAA,CAAA,CAAA,EAAA,CAAA,CAAA,UAAA,CAAA,CAAA,EAAA,CAAA,CAAA,OAAA,CAAA,CAAA,CAAA;AAAA,KAKtB,eAAA,GAAkB,CAAA,CAAE,KALE,CAAA,OAKW,qBALX,CAAA;;;;AAAA,cAUrB,0BAVqB,EAUK,CAAA,CAAA,SAVL,CAAA;EAAA,UAAA,eAAA,YAAA,CAAA;EAAA,IAAA,eAAA,YAAA,CAAA;EAAA,KAAA,eAAA,YAAA,CAAA;EAKtB,KAAA,eAAe,YAAkB,CAAA;EAKhC,QAAA,eAAA,YA6CX,YAAA,YAAA,CAAA,WAAA,CAAA,WAAA,CAAA,YAAA,aAAA,CAAA,CAAA,cAAA,CAAA,CAAA,WAAA,CAAA,CAAA,CAAA,CAAA;;;KAEU,oBAAA,GAAuB,CAAA,CAAE,aAAa;;;;cAKrC,4BAA0B,CAAA,CAAA;;;;;;;;KAgD3B,oBAAA,GAAuB,CAAA,CAAE,aAAa;;;;cAKrC,oCAAkC,CAAA,CAAA;;;AAzGR,KAgH3B,4BAAA,GAA+B,CAAA,CAAE,KAhHN,CAAA,OAiH/B,kCAjH+B,CAAA;;AA+CvC;AAKA;;cAoEa,8BAA4B,CAAA,CAAA;;;;;;;;;;KA0D7B,sBAAA,GAAyB,CAAA,CAAE,aAC/B;;;;cAMK,uBAAqB,CAAA,CAAA;;;;;;;EArIK,qBAAA,eAAA,UAAA,CAAA;EAAA,SAAA,WAAA;EAgD3B,cAAA,WAAoB;EAKnB,MAAA,eAAA,UAAA,CAAA;;;;KAoID,OAAA,GAAU,CAAA,CAAE,aAAa;KACzB,eAAA,GAAkB;;;;cAKjB,+BAA6B,CAAA,CAAA;;IA1IK,EAAA,WAAA;IAAA,UAAA,eAAA,YAAA,CAAA;IAOnC,IAAA,eAAA,YAA4B,CAAA;IAQ3B,KAAA,eAAA,WAwDX,CAAA;;;;;;;;;;;;KA2EU,uBAAA,GAA0B,CAAA,CAAE,aAChC;;;;cAQK,wCAAsC,CAAA,CAAA;;;;;;;KAmCvC,gCAAA,GAAmC,CAAA,CAAE,aACzC;;;;AAtHI,cA4HC,sCA3HL,EA2H2C,CAAA,CAAA,SA5Hd,CAAE;EAO1B,IAAA,eAAA,YAkDX,CAAA;;;;;;KAwGU,gCAAA,GAAmC,CAAA,CAAE,aACzC;;;;cAMK,mCAAiC,CAAA,CAAA;;;;;;;;;;;;KA6ClC,mBAAA,GAAsB,CAAA,CAAE,aAC5B;KAEI,2BAAA,GAA8B"}
1
+ {"version":3,"file":"contact.d.ts","names":[],"sources":["../../src/api/contact.ts"],"sourcesContent":[],"mappings":";;;;;;AAMA;;AAAkC,cAArB,qBAAqB,EAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,SAAA,CAAA,CAAA,EAAA,CAAA,CAAA,UAAA,CAAA,CAAA,EAAA,CAAA,CAAA,OAAA,CAAA,CAAA,CAAA;AAAA,KAKtB,eAAA,GAAkB,CAAA,CAAE,KALE,CAAA,OAKW,qBALX,CAAA;;;;AAAA,cAUrB,0BAVqB,EAUK,CAAA,CAAA,SAVL,CAAA;EAAA,UAAA,eAAA,YAAA,CAAA;EAAA,IAAA,eAAA,YAAA,CAAA;EAAA,KAAA,eAAA,YAAA,CAAA;EAKtB,KAAA,eAAe,YAAkB,CAAA;EAKhC,QAAA,eAAA,YA6CX,YAAA,YAAA,CAAA,WAAA,CAAA,WAAA,CAAA,YAAA,aAAA,CAAA,CAAA,cAAA,CAAA,CAAA,WAAA,CAAA,CAAA,CAAA,CAAA;;;KAEU,oBAAA,GAAuB,CAAA,CAAE,aAAa;;;;cAKrC,4BAA0B,CAAA,CAAA;;;;;;;;KAgD3B,oBAAA,GAAuB,CAAA,CAAE,aAAa;;;;cAKrC,oCAAkC,CAAA,CAAA;;;AAzGR,KAgH3B,4BAAA,GAA+B,CAAA,CAAE,KAhHN,CAAA,OAiH/B,kCAjH+B,CAAA;;AA+CvC;AAKA;;cAoEa,8BAA4B,CAAA,CAAA;;;;;;;;;;KA0D7B,sBAAA,GAAyB,CAAA,CAAE,aAC/B;;;;cAMK,uBAAqB,CAAA,CAAA;;;;;;;EArIK,qBAAA,eAAA,UAAA,CAAA;EAAA,SAAA,WAAA;EAgD3B,cAAA,WAAoB;EAKnB,MAAA,eAAA,UAAA,CAAA;;;;KAoID,OAAA,GAAU,CAAA,CAAE,aAAa;KACzB,eAAA,GAAkB;;;;cAKjB,+BAA6B,CAAA,CAAA;;IA1IK,EAAA,WAAA;IAAA,UAAA,eAAA,YAAA,CAAA;IAOnC,IAAA,eAAA,YAA4B,CAAA;IAQ3B,KAAA,eAAA,WAwDX,CAAA;;;;;;;;;;;;KA2EU,uBAAA,GAA0B,CAAA,CAAE,aAChC;;;;cAQK,wCAAsC,CAAA,CAAA;;;;;;;KAmCvC,gCAAA,GAAmC,CAAA,CAAE,aACzC;;;;AAtHI,cA4HC,sCA3HL,EA2H2C,CAAA,CAAA,SA5Hd,CAAA;EAOxB,IAAA,eAAA,YAkDX,CAAA;;;;;;KAwGU,gCAAA,GAAmC,CAAA,CAAE,aACzC;;;;cAMK,mCAAiC,CAAA,CAAA;;;;;;;;;;;;KA6ClC,mBAAA,GAAsB,CAAA,CAAE,aAC5B;KAEI,2BAAA,GAA8B"}
@@ -115,6 +115,7 @@ declare const createConversationRequestSchema: z.ZodObject<{
115
115
  }, z.core.$strip>, z.ZodObject<{
116
116
  type: z.ZodLiteral<"event">;
117
117
  eventType: z.ZodEnum<{
118
+ resolved: "resolved";
118
119
  assigned: "assigned";
119
120
  unassigned: "unassigned";
120
121
  participant_requested: "participant_requested";
@@ -124,7 +125,6 @@ declare const createConversationRequestSchema: z.ZodObject<{
124
125
  priority_changed: "priority_changed";
125
126
  tag_added: "tag_added";
126
127
  tag_removed: "tag_removed";
127
- resolved: "resolved";
128
128
  reopened: "reopened";
129
129
  visitor_blocked: "visitor_blocked";
130
130
  visitor_unblocked: "visitor_unblocked";
@@ -264,6 +264,7 @@ declare const createConversationResponseSchema: z.ZodObject<{
264
264
  }, z.core.$strip>, z.ZodObject<{
265
265
  type: z.ZodLiteral<"event">;
266
266
  eventType: z.ZodEnum<{
267
+ resolved: "resolved";
267
268
  assigned: "assigned";
268
269
  unassigned: "unassigned";
269
270
  participant_requested: "participant_requested";
@@ -273,7 +274,6 @@ declare const createConversationResponseSchema: z.ZodObject<{
273
274
  priority_changed: "priority_changed";
274
275
  tag_added: "tag_added";
275
276
  tag_removed: "tag_removed";
276
- resolved: "resolved";
277
277
  reopened: "reopened";
278
278
  visitor_blocked: "visitor_blocked";
279
279
  visitor_unblocked: "visitor_unblocked";
@@ -306,10 +306,12 @@ declare const createConversationResponseSchema: z.ZodObject<{
306
306
  visitorId: z.ZodString;
307
307
  websiteId: z.ZodString;
308
308
  status: z.ZodDefault<z.ZodEnum<{
309
- resolved: "resolved";
310
309
  open: "open";
310
+ resolved: "resolved";
311
311
  spam: "spam";
312
312
  }>>;
313
+ visitorRating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
314
+ visitorRatingAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
313
315
  deletedAt: z.ZodDefault<z.ZodNullable<z.ZodString>>;
314
316
  visitorLastSeenAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
315
317
  lastTimelineItem: z.ZodOptional<z.ZodObject<{
@@ -423,6 +425,7 @@ declare const createConversationResponseSchema: z.ZodObject<{
423
425
  }, z.core.$strip>, z.ZodObject<{
424
426
  type: z.ZodLiteral<"event">;
425
427
  eventType: z.ZodEnum<{
428
+ resolved: "resolved";
426
429
  assigned: "assigned";
427
430
  unassigned: "unassigned";
428
431
  participant_requested: "participant_requested";
@@ -432,7 +435,6 @@ declare const createConversationResponseSchema: z.ZodObject<{
432
435
  priority_changed: "priority_changed";
433
436
  tag_added: "tag_added";
434
437
  tag_removed: "tag_removed";
435
- resolved: "resolved";
436
438
  reopened: "reopened";
437
439
  visitor_blocked: "visitor_blocked";
438
440
  visitor_unblocked: "visitor_unblocked";
@@ -487,10 +489,12 @@ declare const listConversationsResponseSchema: z.ZodObject<{
487
489
  visitorId: z.ZodString;
488
490
  websiteId: z.ZodString;
489
491
  status: z.ZodDefault<z.ZodEnum<{
490
- resolved: "resolved";
491
492
  open: "open";
493
+ resolved: "resolved";
492
494
  spam: "spam";
493
495
  }>>;
496
+ visitorRating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
497
+ visitorRatingAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
494
498
  deletedAt: z.ZodDefault<z.ZodNullable<z.ZodString>>;
495
499
  visitorLastSeenAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
496
500
  lastTimelineItem: z.ZodOptional<z.ZodObject<{
@@ -604,6 +608,7 @@ declare const listConversationsResponseSchema: z.ZodObject<{
604
608
  }, z.core.$strip>, z.ZodObject<{
605
609
  type: z.ZodLiteral<"event">;
606
610
  eventType: z.ZodEnum<{
611
+ resolved: "resolved";
607
612
  assigned: "assigned";
608
613
  unassigned: "unassigned";
609
614
  participant_requested: "participant_requested";
@@ -613,7 +618,6 @@ declare const listConversationsResponseSchema: z.ZodObject<{
613
618
  priority_changed: "priority_changed";
614
619
  tag_added: "tag_added";
615
620
  tag_removed: "tag_removed";
616
- resolved: "resolved";
617
621
  reopened: "reopened";
618
622
  visitor_blocked: "visitor_blocked";
619
623
  visitor_unblocked: "visitor_unblocked";
@@ -661,10 +665,12 @@ declare const getConversationResponseSchema: z.ZodObject<{
661
665
  visitorId: z.ZodString;
662
666
  websiteId: z.ZodString;
663
667
  status: z.ZodDefault<z.ZodEnum<{
664
- resolved: "resolved";
665
668
  open: "open";
669
+ resolved: "resolved";
666
670
  spam: "spam";
667
671
  }>>;
672
+ visitorRating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
673
+ visitorRatingAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
668
674
  deletedAt: z.ZodDefault<z.ZodNullable<z.ZodString>>;
669
675
  visitorLastSeenAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
670
676
  lastTimelineItem: z.ZodOptional<z.ZodObject<{
@@ -778,6 +784,7 @@ declare const getConversationResponseSchema: z.ZodObject<{
778
784
  }, z.core.$strip>, z.ZodObject<{
779
785
  type: z.ZodLiteral<"event">;
780
786
  eventType: z.ZodEnum<{
787
+ resolved: "resolved";
781
788
  assigned: "assigned";
782
789
  unassigned: "unassigned";
783
790
  participant_requested: "participant_requested";
@@ -787,7 +794,6 @@ declare const getConversationResponseSchema: z.ZodObject<{
787
794
  priority_changed: "priority_changed";
788
795
  tag_added: "tag_added";
789
796
  tag_removed: "tag_removed";
790
- resolved: "resolved";
791
797
  reopened: "reopened";
792
798
  visitor_blocked: "visitor_blocked";
793
799
  visitor_unblocked: "visitor_unblocked";
@@ -837,6 +843,17 @@ declare const setConversationTypingResponseSchema: z.ZodObject<{
837
843
  sentAt: z.ZodString;
838
844
  }, z.core.$strip>;
839
845
  type SetConversationTypingResponseBody = z.infer<typeof setConversationTypingResponseSchema>;
846
+ declare const submitConversationRatingRequestSchema: z.ZodObject<{
847
+ rating: z.ZodNumber;
848
+ visitorId: z.ZodOptional<z.ZodString>;
849
+ }, z.core.$strip>;
850
+ type SubmitConversationRatingRequestBody = z.infer<typeof submitConversationRatingRequestSchema>;
851
+ declare const submitConversationRatingResponseSchema: z.ZodObject<{
852
+ conversationId: z.ZodString;
853
+ rating: z.ZodNumber;
854
+ ratedAt: z.ZodString;
855
+ }, z.core.$strip>;
856
+ type SubmitConversationRatingResponseBody = z.infer<typeof submitConversationRatingResponseSchema>;
840
857
  declare const getConversationSeenDataResponseSchema: z.ZodObject<{
841
858
  seenData: z.ZodArray<z.ZodObject<{
842
859
  id: z.ZodString;
@@ -852,5 +869,5 @@ declare const getConversationSeenDataResponseSchema: z.ZodObject<{
852
869
  }, z.core.$strip>;
853
870
  type GetConversationSeenDataResponse = z.infer<typeof getConversationSeenDataResponseSchema>;
854
871
  //#endregion
855
- export { CreateConversationRequestBody, CreateConversationResponseBody, GetConversationRequest, GetConversationResponse, GetConversationSeenDataResponse, ListConversationsRequest, ListConversationsResponse, MarkConversationSeenRequestBody, MarkConversationSeenResponseBody, SetConversationTypingRequestBody, SetConversationTypingResponseBody, createConversationRequestSchema, createConversationResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema };
872
+ export { CreateConversationRequestBody, CreateConversationResponseBody, GetConversationRequest, GetConversationResponse, GetConversationSeenDataResponse, ListConversationsRequest, ListConversationsResponse, MarkConversationSeenRequestBody, MarkConversationSeenResponseBody, SetConversationTypingRequestBody, SetConversationTypingResponseBody, SubmitConversationRatingRequestBody, SubmitConversationRatingResponseBody, createConversationRequestSchema, createConversationResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, submitConversationRatingRequestSchema, submitConversationRatingResponseSchema };
856
873
  //# sourceMappingURL=conversation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"conversation.d.ts","names":[],"sources":["../../src/api/conversation.ts"],"sourcesContent":[],"mappings":";;;cAIa,iCAA+B,CAAA,CAAA;;EAA/B,cAAA,eAAA,YAoBV,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAES,6BAAA,GAAgC,CAAA,CAAE,aACtC;cAGK,kCAAgC,CAAA,CAAA;;;;;;;;;;;;;;;;;MA1BD,IAAA,cAAA,CAAA,MAAA,CAAA;MAAA,IAAA,aAAA;MAsBhC,KAAA,eAAA,UAA6B,CAAA;QAI5B,SAAA,EAAA,WAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KASD,8BAAA,GAAiC,CAAA,CAAE,aACvC;cAGK,gCAA8B,CAAA,CAAA;;;;;;;;;;;;;;;;;KA6B/B,wBAAA,GAA2B,CAAA,CAAE,aACjC;cAGK,iCAA+B,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA9CC,IAAA,eAAA,cAAA,YAAA,CAAA,CAAA;MAAA,KAAA,YAAA,WAAA,CAAA,SAAA,YAAA,CAAA;QASjC,IAAA,cAAA,CAAA,MAA8B,CAAA;QAI7B,IAAA,aAAA;;;;;;;;;;;;;;YAA8B,UAAA,eAAA,UAAA,CAAA;cAAA,MAAA,EAAA,QAAA;cA6B/B,OAAwB,EAAA,SAC5B;YAGK,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAeD,yBAAA,GAA4B,CAAA,CAAE,aAClC;cAGK,8BAA4B,CAAA,CAAA;;;KAU7B,sBAAA,GAAyB,CAAA,CAAE,aAC/B;cAGK,+BAA6B,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAjCE,KAAA,WAAA,CAAA;UAAA,KAAA,EAAA,OAAA;UAehC,OAAA,EAAA,SAAyB;UAIxB,MAAA,EAAA,QAQV;;;QARsC,gBAAA,eAAA,YAAA,CAAA;UAAA,UAAA,eAAA,YAAA,CAAA;YAU7B,UAAsB,eAC1B,UAAA,CAAA;cAGK,MAAA,EAMV,QAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAES,uBAAA,GAA0B,CAAA,CAAE,aAChC;cAGK,mCAAiC,CAAA,CAAA;;;KAYlC,+BAAA,GAAkC,CAAA,CAAE,aACxC;cAGK,oCAAkC,CAAA,CAAA;;;;KAcnC,gCAAA,GAAmC,CAAA,CAAE,aACzC;cAGK,oCAAkC,CAAA,CAAA;;;;;KAmBnC,gCAAA,GAAmC,CAAA,CAAE,aACzC;cAGK,qCAAmC,CAAA,CAAA;;;;;;KAoBpC,iCAAA,GAAoC,CAAA,CAAE,aAC1C;cAGK,uCAAqC,CAAA,CAAA;;;;;;;;;;;;;KAuCtC,+BAAA,GAAkC,CAAA,CAAE,aACxC"}
1
+ {"version":3,"file":"conversation.d.ts","names":[],"sources":["../../src/api/conversation.ts"],"sourcesContent":[],"mappings":"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"}
@@ -64,6 +64,18 @@ const setConversationTypingResponseSchema = z.object({
64
64
  visitorPreview: z.string().nullable().openapi({ description: "Preview text that was forwarded with the typing event, or null when none was sent." }),
65
65
  sentAt: z.string().openapi({ description: "Timestamp when the typing event was recorded" })
66
66
  }).openapi({ description: "Response confirming the visitor typing state was recorded" });
67
+ const submitConversationRatingRequestSchema = z.object({
68
+ rating: z.number().int().min(1).max(5).openapi({
69
+ description: "Visitor rating for the conversation (1-5)",
70
+ example: 5
71
+ }),
72
+ visitorId: z.string().optional().openapi({ description: "Visitor ID associated with the conversation. Optional if provided via the X-Visitor-Id header." })
73
+ }).openapi({ description: "Body for submitting a visitor rating on a conversation." });
74
+ const submitConversationRatingResponseSchema = z.object({
75
+ conversationId: z.string().openapi({ description: "The ID of the conversation that was rated" }),
76
+ rating: z.number().int().min(1).max(5).openapi({ description: "The rating that was saved" }),
77
+ ratedAt: z.string().openapi({ description: "Timestamp when the rating was recorded" })
78
+ }).openapi({ description: "Response confirming the conversation rating was recorded" });
67
79
  const getConversationSeenDataResponseSchema = z.object({ seenData: z.array(z.object({
68
80
  id: z.string().openapi({ description: "The seen record's unique identifier" }),
69
81
  conversationId: z.string().openapi({ description: "The conversation ID" }),
@@ -77,5 +89,5 @@ const getConversationSeenDataResponseSchema = z.object({ seenData: z.array(z.obj
77
89
  })) }).openapi({ description: "Response containing seen data for a conversation" });
78
90
 
79
91
  //#endregion
80
- export { createConversationRequestSchema, createConversationResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema };
92
+ export { createConversationRequestSchema, createConversationResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, submitConversationRatingRequestSchema, submitConversationRatingResponseSchema };
81
93
  //# sourceMappingURL=conversation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"conversation.js","names":[],"sources":["../../src/api/conversation.ts"],"sourcesContent":["import { z } from \"@hono/zod-openapi\";\nimport { conversationSchema } from \"../schemas\";\nimport { timelineItemSchema } from \"./timeline-item\";\n\nexport const createConversationRequestSchema = z\n\t.object({\n\t\tvisitorId: z.string().optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Visitor ID, if not provided you must provide a visitorId in the headers.\",\n\t\t}),\n\t\tconversationId: z.string().optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Default conversation ID, if not provided the ID will be automatically generated.\",\n\t\t}),\n\t\tdefaultTimelineItems: z.array(timelineItemSchema).openapi({\n\t\t\tdescription: \"Default timeline items to initiate the conversation with\",\n\t\t}),\n\t\tchannel: z.string().default(\"widget\").openapi({\n\t\t\tdescription: \"Which channel the conversation is from\",\n\t\t\tdefault: \"widget\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Body for creating a conversation.\",\n\t});\n\nexport type CreateConversationRequestBody = z.infer<\n\ttypeof createConversationRequestSchema\n>;\n\nexport const createConversationResponseSchema = z\n\t.object({\n\t\tinitialTimelineItems: z.array(timelineItemSchema),\n\t\tconversation: conversationSchema,\n\t})\n\t.openapi({\n\t\tdescription: \"Body including created conversation and default messages\",\n\t});\n\nexport type CreateConversationResponseBody = z.infer<\n\ttypeof createConversationResponseSchema\n>;\n\nexport const listConversationsRequestSchema = z\n\t.object({\n\t\tvisitorId: z.string().optional().openapi({\n\t\t\tdescription: \"Visitor ID to fetch conversations for.\",\n\t\t}),\n\t\tpage: z.coerce.number().min(1).default(1).openapi({\n\t\t\tdescription: \"Page number for pagination\",\n\t\t\tdefault: 1,\n\t\t}),\n\t\tlimit: z.coerce.number().min(1).max(100).default(6).openapi({\n\t\t\tdescription: \"Number of conversations per page\",\n\t\t\tdefault: 6,\n\t\t}),\n\t\tstatus: z.enum([\"open\", \"closed\"]).optional().openapi({\n\t\t\tdescription: \"Filter by conversation status\",\n\t\t}),\n\t\torderBy: z.enum([\"createdAt\", \"updatedAt\"]).default(\"updatedAt\").openapi({\n\t\t\tdescription: \"Field to order conversations by\",\n\t\t\tdefault: \"updatedAt\",\n\t\t}),\n\t\torder: z.enum([\"asc\", \"desc\"]).default(\"desc\").openapi({\n\t\t\tdescription: \"Order direction\",\n\t\t\tdefault: \"desc\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Query parameters for listing conversations\",\n\t});\n\nexport type ListConversationsRequest = z.infer<\n\ttypeof listConversationsRequestSchema\n>;\n\nexport const listConversationsResponseSchema = z\n\t.object({\n\t\tconversations: z.array(conversationSchema),\n\t\tpagination: z.object({\n\t\t\tpage: z.number(),\n\t\t\tlimit: z.number(),\n\t\t\ttotal: z.number(),\n\t\t\ttotalPages: z.number(),\n\t\t\thasMore: z.boolean(),\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Paginated list of conversations\",\n\t});\n\nexport type ListConversationsResponse = z.infer<\n\ttypeof listConversationsResponseSchema\n>;\n\nexport const getConversationRequestSchema = z\n\t.object({\n\t\tconversationId: z.string().openapi({\n\t\t\tdescription: \"The ID of the conversation to retrieve\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Parameters for retrieving a single conversation\",\n\t});\n\nexport type GetConversationRequest = z.infer<\n\ttypeof getConversationRequestSchema\n>;\n\nexport const getConversationResponseSchema = z\n\t.object({\n\t\tconversation: conversationSchema,\n\t})\n\t.openapi({\n\t\tdescription: \"Response containing a single conversation\",\n\t});\n\nexport type GetConversationResponse = z.infer<\n\ttypeof getConversationResponseSchema\n>;\n\nexport const markConversationSeenRequestSchema = z\n\t.object({\n\t\tvisitorId: z.string().optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Visitor ID associated with the conversation. Optional if provided via the X-Visitor-Id header.\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription:\n\t\t\t\"Body for marking a conversation as seen. Either visitorId must be provided via body or headers.\",\n\t});\n\nexport type MarkConversationSeenRequestBody = z.infer<\n\ttypeof markConversationSeenRequestSchema\n>;\n\nexport const markConversationSeenResponseSchema = z\n\t.object({\n\t\tconversationId: z.string().openapi({\n\t\t\tdescription: \"The ID of the conversation that was marked as seen\",\n\t\t}),\n\t\tlastSeenAt: z.string().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Timestamp indicating when the visitor last saw the conversation\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Response confirming the conversation has been marked as seen\",\n\t});\n\nexport type MarkConversationSeenResponseBody = z.infer<\n\ttypeof markConversationSeenResponseSchema\n>;\n\nexport const setConversationTypingRequestSchema = z\n\t.object({\n\t\tisTyping: z.boolean().openapi({\n\t\t\tdescription: \"Whether the visitor is currently typing\",\n\t\t}),\n\t\tvisitorPreview: z.string().max(2000).optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Optional preview of the visitor's message while typing. Only processed when the visitor is typing.\",\n\t\t}),\n\t\tvisitorId: z.string().optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Visitor ID associated with the conversation. Optional if provided via the X-Visitor-Id header.\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription:\n\t\t\t\"Body for reporting a visitor typing state. Either visitorId must be provided via body or headers.\",\n\t});\n\nexport type SetConversationTypingRequestBody = z.infer<\n\ttypeof setConversationTypingRequestSchema\n>;\n\nexport const setConversationTypingResponseSchema = z\n\t.object({\n\t\tconversationId: z.string().openapi({\n\t\t\tdescription: \"The ID of the conversation receiving the typing update\",\n\t\t}),\n\t\tisTyping: z.boolean().openapi({\n\t\t\tdescription: \"Echo of the reported typing state\",\n\t\t}),\n\t\tvisitorPreview: z.string().nullable().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Preview text that was forwarded with the typing event, or null when none was sent.\",\n\t\t}),\n\t\tsentAt: z.string().openapi({\n\t\t\tdescription: \"Timestamp when the typing event was recorded\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Response confirming the visitor typing state was recorded\",\n\t});\n\nexport type SetConversationTypingResponseBody = z.infer<\n\ttypeof setConversationTypingResponseSchema\n>;\n\nexport const getConversationSeenDataResponseSchema = z\n\t.object({\n\t\tseenData: z.array(\n\t\t\tz.object({\n\t\t\t\tid: z.string().openapi({\n\t\t\t\t\tdescription: \"The seen record's unique identifier\",\n\t\t\t\t}),\n\t\t\t\tconversationId: z.string().openapi({\n\t\t\t\t\tdescription: \"The conversation ID\",\n\t\t\t\t}),\n\t\t\t\tuserId: z.string().nullable().openapi({\n\t\t\t\t\tdescription: \"The user ID who saw the conversation, if applicable\",\n\t\t\t\t}),\n\t\t\t\tvisitorId: z.string().nullable().openapi({\n\t\t\t\t\tdescription: \"The visitor ID who saw the conversation, if applicable\",\n\t\t\t\t}),\n\t\t\t\taiAgentId: z.string().nullable().openapi({\n\t\t\t\t\tdescription:\n\t\t\t\t\t\t\"The AI agent ID who saw the conversation, if applicable\",\n\t\t\t\t}),\n\t\t\t\tlastSeenAt: z.string().openapi({\n\t\t\t\t\tdescription: \"Timestamp when the conversation was last seen\",\n\t\t\t\t}),\n\t\t\t\tcreatedAt: z.string().openapi({\n\t\t\t\t\tdescription: \"When the seen record was created\",\n\t\t\t\t}),\n\t\t\t\tupdatedAt: z.string().openapi({\n\t\t\t\t\tdescription: \"When the seen record was last updated\",\n\t\t\t\t}),\n\t\t\t\tdeletedAt: z.string().nullable().openapi({\n\t\t\t\t\tdescription: \"When the seen record was deleted, if applicable\",\n\t\t\t\t}),\n\t\t\t})\n\t\t),\n\t})\n\t.openapi({\n\t\tdescription: \"Response containing seen data for a conversation\",\n\t});\n\nexport type GetConversationSeenDataResponse = z.infer<\n\ttypeof getConversationSeenDataResponseSchema\n>;\n"],"mappings":"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"}
1
+ {"version":3,"file":"conversation.js","names":[],"sources":["../../src/api/conversation.ts"],"sourcesContent":["import { z } from \"@hono/zod-openapi\";\nimport { conversationSchema } from \"../schemas\";\nimport { timelineItemSchema } from \"./timeline-item\";\n\nexport const createConversationRequestSchema = z\n\t.object({\n\t\tvisitorId: z.string().optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Visitor ID, if not provided you must provide a visitorId in the headers.\",\n\t\t}),\n\t\tconversationId: z.string().optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Default conversation ID, if not provided the ID will be automatically generated.\",\n\t\t}),\n\t\tdefaultTimelineItems: z.array(timelineItemSchema).openapi({\n\t\t\tdescription: \"Default timeline items to initiate the conversation with\",\n\t\t}),\n\t\tchannel: z.string().default(\"widget\").openapi({\n\t\t\tdescription: \"Which channel the conversation is from\",\n\t\t\tdefault: \"widget\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Body for creating a conversation.\",\n\t});\n\nexport type CreateConversationRequestBody = z.infer<\n\ttypeof createConversationRequestSchema\n>;\n\nexport const createConversationResponseSchema = z\n\t.object({\n\t\tinitialTimelineItems: z.array(timelineItemSchema),\n\t\tconversation: conversationSchema,\n\t})\n\t.openapi({\n\t\tdescription: \"Body including created conversation and default messages\",\n\t});\n\nexport type CreateConversationResponseBody = z.infer<\n\ttypeof createConversationResponseSchema\n>;\n\nexport const listConversationsRequestSchema = z\n\t.object({\n\t\tvisitorId: z.string().optional().openapi({\n\t\t\tdescription: \"Visitor ID to fetch conversations for.\",\n\t\t}),\n\t\tpage: z.coerce.number().min(1).default(1).openapi({\n\t\t\tdescription: \"Page number for pagination\",\n\t\t\tdefault: 1,\n\t\t}),\n\t\tlimit: z.coerce.number().min(1).max(100).default(6).openapi({\n\t\t\tdescription: \"Number of conversations per page\",\n\t\t\tdefault: 6,\n\t\t}),\n\t\tstatus: z.enum([\"open\", \"closed\"]).optional().openapi({\n\t\t\tdescription: \"Filter by conversation status\",\n\t\t}),\n\t\torderBy: z.enum([\"createdAt\", \"updatedAt\"]).default(\"updatedAt\").openapi({\n\t\t\tdescription: \"Field to order conversations by\",\n\t\t\tdefault: \"updatedAt\",\n\t\t}),\n\t\torder: z.enum([\"asc\", \"desc\"]).default(\"desc\").openapi({\n\t\t\tdescription: \"Order direction\",\n\t\t\tdefault: \"desc\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Query parameters for listing conversations\",\n\t});\n\nexport type ListConversationsRequest = z.infer<\n\ttypeof listConversationsRequestSchema\n>;\n\nexport const listConversationsResponseSchema = z\n\t.object({\n\t\tconversations: z.array(conversationSchema),\n\t\tpagination: z.object({\n\t\t\tpage: z.number(),\n\t\t\tlimit: z.number(),\n\t\t\ttotal: z.number(),\n\t\t\ttotalPages: z.number(),\n\t\t\thasMore: z.boolean(),\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Paginated list of conversations\",\n\t});\n\nexport type ListConversationsResponse = z.infer<\n\ttypeof listConversationsResponseSchema\n>;\n\nexport const getConversationRequestSchema = z\n\t.object({\n\t\tconversationId: z.string().openapi({\n\t\t\tdescription: \"The ID of the conversation to retrieve\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Parameters for retrieving a single conversation\",\n\t});\n\nexport type GetConversationRequest = z.infer<\n\ttypeof getConversationRequestSchema\n>;\n\nexport const getConversationResponseSchema = z\n\t.object({\n\t\tconversation: conversationSchema,\n\t})\n\t.openapi({\n\t\tdescription: \"Response containing a single conversation\",\n\t});\n\nexport type GetConversationResponse = z.infer<\n\ttypeof getConversationResponseSchema\n>;\n\nexport const markConversationSeenRequestSchema = z\n\t.object({\n\t\tvisitorId: z.string().optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Visitor ID associated with the conversation. Optional if provided via the X-Visitor-Id header.\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription:\n\t\t\t\"Body for marking a conversation as seen. Either visitorId must be provided via body or headers.\",\n\t});\n\nexport type MarkConversationSeenRequestBody = z.infer<\n\ttypeof markConversationSeenRequestSchema\n>;\n\nexport const markConversationSeenResponseSchema = z\n\t.object({\n\t\tconversationId: z.string().openapi({\n\t\t\tdescription: \"The ID of the conversation that was marked as seen\",\n\t\t}),\n\t\tlastSeenAt: z.string().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Timestamp indicating when the visitor last saw the conversation\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Response confirming the conversation has been marked as seen\",\n\t});\n\nexport type MarkConversationSeenResponseBody = z.infer<\n\ttypeof markConversationSeenResponseSchema\n>;\n\nexport const setConversationTypingRequestSchema = z\n\t.object({\n\t\tisTyping: z.boolean().openapi({\n\t\t\tdescription: \"Whether the visitor is currently typing\",\n\t\t}),\n\t\tvisitorPreview: z.string().max(2000).optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Optional preview of the visitor's message while typing. Only processed when the visitor is typing.\",\n\t\t}),\n\t\tvisitorId: z.string().optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Visitor ID associated with the conversation. Optional if provided via the X-Visitor-Id header.\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription:\n\t\t\t\"Body for reporting a visitor typing state. Either visitorId must be provided via body or headers.\",\n\t});\n\nexport type SetConversationTypingRequestBody = z.infer<\n\ttypeof setConversationTypingRequestSchema\n>;\n\nexport const setConversationTypingResponseSchema = z\n\t.object({\n\t\tconversationId: z.string().openapi({\n\t\t\tdescription: \"The ID of the conversation receiving the typing update\",\n\t\t}),\n\t\tisTyping: z.boolean().openapi({\n\t\t\tdescription: \"Echo of the reported typing state\",\n\t\t}),\n\t\tvisitorPreview: z.string().nullable().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Preview text that was forwarded with the typing event, or null when none was sent.\",\n\t\t}),\n\t\tsentAt: z.string().openapi({\n\t\t\tdescription: \"Timestamp when the typing event was recorded\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Response confirming the visitor typing state was recorded\",\n\t});\n\nexport type SetConversationTypingResponseBody = z.infer<\n\ttypeof setConversationTypingResponseSchema\n>;\n\nexport const submitConversationRatingRequestSchema = z\n\t.object({\n\t\trating: z.number().int().min(1).max(5).openapi({\n\t\t\tdescription: \"Visitor rating for the conversation (1-5)\",\n\t\t\texample: 5,\n\t\t}),\n\t\tvisitorId: z.string().optional().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Visitor ID associated with the conversation. Optional if provided via the X-Visitor-Id header.\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Body for submitting a visitor rating on a conversation.\",\n\t});\n\nexport type SubmitConversationRatingRequestBody = z.infer<\n\ttypeof submitConversationRatingRequestSchema\n>;\n\nexport const submitConversationRatingResponseSchema = z\n\t.object({\n\t\tconversationId: z.string().openapi({\n\t\t\tdescription: \"The ID of the conversation that was rated\",\n\t\t}),\n\t\trating: z.number().int().min(1).max(5).openapi({\n\t\t\tdescription: \"The rating that was saved\",\n\t\t}),\n\t\tratedAt: z.string().openapi({\n\t\t\tdescription: \"Timestamp when the rating was recorded\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Response confirming the conversation rating was recorded\",\n\t});\n\nexport type SubmitConversationRatingResponseBody = z.infer<\n\ttypeof submitConversationRatingResponseSchema\n>;\n\nexport const getConversationSeenDataResponseSchema = z\n\t.object({\n\t\tseenData: z.array(\n\t\t\tz.object({\n\t\t\t\tid: z.string().openapi({\n\t\t\t\t\tdescription: \"The seen record's unique identifier\",\n\t\t\t\t}),\n\t\t\t\tconversationId: z.string().openapi({\n\t\t\t\t\tdescription: \"The conversation ID\",\n\t\t\t\t}),\n\t\t\t\tuserId: z.string().nullable().openapi({\n\t\t\t\t\tdescription: \"The user ID who saw the conversation, if applicable\",\n\t\t\t\t}),\n\t\t\t\tvisitorId: z.string().nullable().openapi({\n\t\t\t\t\tdescription: \"The visitor ID who saw the conversation, if applicable\",\n\t\t\t\t}),\n\t\t\t\taiAgentId: z.string().nullable().openapi({\n\t\t\t\t\tdescription:\n\t\t\t\t\t\t\"The AI agent ID who saw the conversation, if applicable\",\n\t\t\t\t}),\n\t\t\t\tlastSeenAt: z.string().openapi({\n\t\t\t\t\tdescription: \"Timestamp when the conversation was last seen\",\n\t\t\t\t}),\n\t\t\t\tcreatedAt: z.string().openapi({\n\t\t\t\t\tdescription: \"When the seen record was created\",\n\t\t\t\t}),\n\t\t\t\tupdatedAt: z.string().openapi({\n\t\t\t\t\tdescription: \"When the seen record was last updated\",\n\t\t\t\t}),\n\t\t\t\tdeletedAt: z.string().nullable().openapi({\n\t\t\t\t\tdescription: \"When the seen record was deleted, if applicable\",\n\t\t\t\t}),\n\t\t\t})\n\t\t),\n\t})\n\t.openapi({\n\t\tdescription: \"Response containing seen data for a conversation\",\n\t});\n\nexport type GetConversationSeenDataResponse = z.infer<\n\ttypeof getConversationSeenDataResponseSchema\n>;\n"],"mappings":"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"}
package/api/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { AIAgentGoal, AIModel, AIModelConfig, AI_AGENT_GOALS, AI_MODELS, AiAgentBehaviorSettings, AiAgentResponse, CreateAiAgentRequest, DeleteAiAgentRequest, GenerateBasePromptRequest, GenerateBasePromptResponse, GetAiAgentRequest, GetBehaviorSettingsRequest, GetBehaviorSettingsResponse, ToggleAiAgentActiveRequest, UpdateAiAgentRequest, UpdateBehaviorSettingsRequest, UpdateBehaviorSettingsResponse, aiAgentBehaviorSettingsSchema, aiAgentResponseSchema, createAiAgentRequestSchema, deleteAiAgentRequestSchema, generateBasePromptRequestSchema, generateBasePromptResponseSchema, getAiAgentRequestSchema, getBehaviorSettingsRequestSchema, getBehaviorSettingsResponseSchema, toggleAiAgentActiveRequestSchema, updateAiAgentRequestSchema, updateBehaviorSettingsRequestSchema, updateBehaviorSettingsResponseSchema } from "./ai-agent.js";
2
2
  import { PaginationInput, PaginationResponse, emailSchema, optionalUserIdSchema, paginationResponseSchema, paginationSchema, userIdSchema } from "./common.js";
3
3
  import { Contact, ContactMetadata, ContactOrganizationResponse, ContactResponse, CreateContactOrganizationRequest, CreateContactRequest, IdentifyContactRequest, IdentifyContactResponse, UpdateContactMetadataRequest, UpdateContactOrganizationRequest, UpdateContactRequest, contactMetadataSchema, contactOrganization, contactOrganizationResponseSchema, contactResponseSchema, createContactOrganizationRequestSchema, createContactRequestSchema, identifyContactRequestSchema, identifyContactResponseSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema } from "./contact.js";
4
- import { CreateConversationRequestBody, CreateConversationResponseBody, GetConversationRequest, GetConversationResponse, GetConversationSeenDataResponse, ListConversationsRequest, ListConversationsResponse, MarkConversationSeenRequestBody, MarkConversationSeenResponseBody, SetConversationTypingRequestBody, SetConversationTypingResponseBody, createConversationRequestSchema, createConversationResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema } from "./conversation.js";
4
+ import { CreateConversationRequestBody, CreateConversationResponseBody, GetConversationRequest, GetConversationResponse, GetConversationSeenDataResponse, ListConversationsRequest, ListConversationsResponse, MarkConversationSeenRequestBody, MarkConversationSeenResponseBody, SetConversationTypingRequestBody, SetConversationTypingResponseBody, SubmitConversationRatingRequestBody, SubmitConversationRatingResponseBody, createConversationRequestSchema, createConversationResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, submitConversationRatingRequestSchema, submitConversationRatingResponseSchema } from "./conversation.js";
5
5
  import { ArticleKnowledgePayload, CreateKnowledgeRequest, CreateKnowledgeRestRequest, DeleteKnowledgeRequest, FaqKnowledgePayload, GetKnowledgeRequest, Knowledge, KnowledgeCreateInput, KnowledgeResponse, KnowledgeType, ListKnowledgeRequest, ListKnowledgeResponse, ListKnowledgeRestRequest, ToggleKnowledgeEntryIncludedRequest, UpdateKnowledgeRequest, UpdateKnowledgeRestRequest, UploadKnowledgeFileRequest, UrlKnowledgePayload, articleKnowledgePayloadSchema, createKnowledgeRequestSchema, createKnowledgeRestRequestSchema, deleteKnowledgeRequestSchema, faqKnowledgePayloadSchema, getKnowledgeRequestSchema, knowledgeCreateSchema, knowledgeResponseSchema, knowledgeSchema, knowledgeTypeSchema, listKnowledgeRequestSchema, listKnowledgeResponseSchema, listKnowledgeRestRequestSchema, toggleKnowledgeEntryIncludedRequestSchema, updateKnowledgeRequestSchema, updateKnowledgeRestRequestSchema, uploadKnowledgeFileRequestSchema, urlKnowledgePayloadSchema } from "./knowledge.js";
6
6
  import { CancelLinkSourceRequest, CrawlProgressPage, CreateLinkSourceRequest, DeleteLinkSourceRequest, DeletePageRequest, DiscoveredPage, GetCrawlStatusRequest, GetLinkSourceRequest, GetTrainingStatsRequest, IgnorePageRequest, LinkSourceResponse, LinkSourceStatus, ListKnowledgeByLinkSourceRequest, ListLinkSourcesRequest, ListLinkSourcesResponse, RecrawlLinkSourceRequest, ReindexPageRequest, ScanSubpagesRequest, ToggleKnowledgeIncludedRequest, TrainingStatsResponse, cancelLinkSourceRequestSchema, crawlProgressPageSchema, createLinkSourceRequestSchema, deleteLinkSourceRequestSchema, deletePageRequestSchema, discoveredPageSchema, getCrawlStatusRequestSchema, getLinkSourceRequestSchema, getTrainingStatsRequestSchema, ignorePageRequestSchema, linkSourceResponseSchema, linkSourceStatusSchema, listKnowledgeByLinkSourceRequestSchema, listLinkSourcesRequestSchema, listLinkSourcesResponseSchema, recrawlLinkSourceRequestSchema, reindexPageRequestSchema, scanSubpagesRequestSchema, toggleKnowledgeIncludedRequestSchema, trainingStatsResponseSchema } from "./link-source.js";
7
7
  import { ContactNotificationSettings, MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MemberNotificationChannel, MemberNotificationChannelDefinition, MemberNotificationPreference, MemberNotificationSettingsResponse, UpdateMemberNotificationSettingsRequest, UpdateMemberNotificationSettingsResponse, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, getDefaultMemberNotificationPreference, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema } from "./notification.js";
@@ -11,4 +11,4 @@ import { GenerateUploadUrlRequest, GenerateUploadUrlResponse, generateUploadUrlR
11
11
  import { UpdateUserProfileRequest, UserResponse, updateUserProfileRequestSchema, userResponseSchema } from "./user.js";
12
12
  import { PublicContact, PublicVisitor, PublicVisitorResponse, UpdateVisitorMetadataRequest, UpdateVisitorRequest, Visitor, VisitorMetadata, VisitorResponse, publicContactResponseSchema, publicVisitorResponseSchema, updateVisitorMetadataRequestSchema, updateVisitorRequestSchema, visitorMetadataSchema, visitorProfileSchema, visitorResponseSchema } from "./visitor.js";
13
13
  import { AvailableAIAgent, AvailableAIAgentSchema, AvailableHumanAgent, CheckWebsiteDomainRequest, CreateWebsiteApiKeyRequest, CreateWebsiteRequest, CreateWebsiteResponse, ListByOrganizationRequest, PublicWebsiteResponse, RevokeWebsiteApiKeyRequest, UpdateWebsiteRequest, WebsiteApiKey, WebsiteDeveloperSettingsResponse, WebsiteListItem, WebsiteSummary, availableHumanAgentSchema, checkWebsiteDomainRequestSchema, createWebsiteApiKeyRequestSchema, createWebsiteRequestSchema, createWebsiteResponseSchema, listByOrganizationRequestSchema, publicWebsiteResponseSchema, revokeWebsiteApiKeyRequestSchema, updateWebsiteRequestSchema, websiteApiKeySchema, websiteDeveloperSettingsResponseSchema, websiteListItemSchema, websiteSummarySchema } from "./website.js";
14
- export { AIAgentGoal, AIModel, AIModelConfig, AI_AGENT_GOALS, AI_MODELS, AiAgentBehaviorSettings, AiAgentResponse, ArticleKnowledgePayload, AvailableAIAgent, AvailableAIAgentSchema, AvailableHumanAgent, CancelLinkSourceRequest, CheckWebsiteDomainRequest, Contact, ContactMetadata, ContactNotificationSettings, ContactOrganizationResponse, ContactResponse, CossistantProviderMetadata, CrawlProgressPage, CreateAiAgentRequest, CreateContactOrganizationRequest, CreateContactRequest, CreateConversationRequestBody, CreateConversationResponseBody, CreateKnowledgeRequest, CreateKnowledgeRestRequest, CreateLinkSourceRequest, CreateWebsiteApiKeyRequest, CreateWebsiteRequest, CreateWebsiteResponse, DeleteAiAgentRequest, DeleteKnowledgeRequest, DeleteLinkSourceRequest, DeletePageRequest, DiscoveredPage, FaqKnowledgePayload, FilePart, GenerateBasePromptRequest, GenerateBasePromptResponse, GenerateUploadUrlRequest, GenerateUploadUrlResponse, GetAiAgentRequest, GetBehaviorSettingsRequest, GetBehaviorSettingsResponse, GetConversationRequest, GetConversationResponse, GetConversationSeenDataResponse, GetConversationTimelineItemsRequest, GetConversationTimelineItemsResponse, GetCrawlStatusRequest, GetKnowledgeRequest, GetLinkSourceRequest, GetTrainingStatsRequest, IdentifyContactRequest, IdentifyContactResponse, IgnorePageRequest, ImagePart, Knowledge, KnowledgeCreateInput, KnowledgeResponse, KnowledgeType, LinkSourceResponse, LinkSourceStatus, ListByOrganizationRequest, ListConversationsRequest, ListConversationsResponse, ListKnowledgeByLinkSourceRequest, ListKnowledgeRequest, ListKnowledgeResponse, ListKnowledgeRestRequest, ListLinkSourcesRequest, ListLinkSourcesResponse, MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MarkConversationSeenRequestBody, MarkConversationSeenResponseBody, MemberNotificationChannel, MemberNotificationChannelDefinition, MemberNotificationPreference, MemberNotificationSettingsResponse, OrganizationResponse, PaginationInput, PaginationResponse, PublicContact, PublicVisitor, PublicVisitorResponse, PublicWebsiteResponse, ReasoningPart, RecrawlLinkSourceRequest, ReindexPageRequest, RevokeWebsiteApiKeyRequest, ScanSubpagesRequest, SendTimelineItemRequest, SendTimelineItemResponse, SetConversationTypingRequestBody, SetConversationTypingResponseBody, SourceDocumentPart, SourceUrlPart, StepStartPart, TextPart, TimelineItem, TimelineItemParts, TimelinePartEvent, TimelinePartFile, TimelinePartImage, TimelinePartMetadata, TimelinePartText, ToggleAiAgentActiveRequest, ToggleKnowledgeEntryIncludedRequest, ToggleKnowledgeIncludedRequest, ToolPart, ToolState, TrainingStatsResponse, UpdateAiAgentRequest, UpdateBehaviorSettingsRequest, UpdateBehaviorSettingsResponse, UpdateContactMetadataRequest, UpdateContactOrganizationRequest, UpdateContactRequest, UpdateKnowledgeRequest, UpdateKnowledgeRestRequest, UpdateMemberNotificationSettingsRequest, UpdateMemberNotificationSettingsResponse, UpdateUserProfileRequest, UpdateVisitorMetadataRequest, UpdateVisitorRequest, UpdateWebsiteRequest, UploadKnowledgeFileRequest, UrlKnowledgePayload, UserResponse, Visitor, VisitorMetadata, VisitorResponse, WebsiteApiKey, WebsiteDeveloperSettingsResponse, WebsiteListItem, WebsiteSummary, aiAgentBehaviorSettingsSchema, aiAgentResponseSchema, articleKnowledgePayloadSchema, availableHumanAgentSchema, cancelLinkSourceRequestSchema, checkWebsiteDomainRequestSchema, contactMetadataSchema, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, contactOrganization, contactOrganizationResponseSchema, contactResponseSchema, cossistantProviderMetadataSchema, crawlProgressPageSchema, createAiAgentRequestSchema, createContactOrganizationRequestSchema, createContactRequestSchema, createConversationRequestSchema, createConversationResponseSchema, createKnowledgeRequestSchema, createKnowledgeRestRequestSchema, createLinkSourceRequestSchema, createWebsiteApiKeyRequestSchema, createWebsiteRequestSchema, createWebsiteResponseSchema, deleteAiAgentRequestSchema, deleteKnowledgeRequestSchema, deleteLinkSourceRequestSchema, deletePageRequestSchema, discoveredPageSchema, emailSchema, faqKnowledgePayloadSchema, filePartSchema, generateBasePromptRequestSchema, generateBasePromptResponseSchema, generateUploadUrlRequestSchema, generateUploadUrlResponseSchema, getAiAgentRequestSchema, getBehaviorSettingsRequestSchema, getBehaviorSettingsResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, getConversationTimelineItemsRequestSchema, getConversationTimelineItemsResponseSchema, getCrawlStatusRequestSchema, getDefaultMemberNotificationPreference, getKnowledgeRequestSchema, getLinkSourceRequestSchema, getTrainingStatsRequestSchema, identifyContactRequestSchema, identifyContactResponseSchema, ignorePageRequestSchema, imagePartSchema, knowledgeCreateSchema, knowledgeResponseSchema, knowledgeSchema, knowledgeTypeSchema, linkSourceResponseSchema, linkSourceStatusSchema, listByOrganizationRequestSchema, listConversationsRequestSchema, listConversationsResponseSchema, listKnowledgeByLinkSourceRequestSchema, listKnowledgeRequestSchema, listKnowledgeResponseSchema, listKnowledgeRestRequestSchema, listLinkSourcesRequestSchema, listLinkSourcesResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, optionalUserIdSchema, organizationResponseSchema, paginationResponseSchema, paginationSchema, publicContactResponseSchema, publicVisitorResponseSchema, publicWebsiteResponseSchema, reasoningPartSchema, recrawlLinkSourceRequestSchema, reindexPageRequestSchema, revokeWebsiteApiKeyRequestSchema, scanSubpagesRequestSchema, sendTimelineItemRequestSchema, sendTimelineItemResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, sourceDocumentPartSchema, sourceUrlPartSchema, stepStartPartSchema, textPartSchema, timelineItemPartsSchema, timelineItemSchema, timelinePartEventSchema, timelinePartMetadataSchema, toggleAiAgentActiveRequestSchema, toggleKnowledgeEntryIncludedRequestSchema, toggleKnowledgeIncludedRequestSchema, toolPartSchema, toolStateSchema, trainingStatsResponseSchema, updateAiAgentRequestSchema, updateBehaviorSettingsRequestSchema, updateBehaviorSettingsResponseSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema, updateKnowledgeRequestSchema, updateKnowledgeRestRequestSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema, updateUserProfileRequestSchema, updateVisitorMetadataRequestSchema, updateVisitorRequestSchema, updateWebsiteRequestSchema, uploadContactIdSchema, uploadConversationIdSchema, uploadFileExtensionSchema, uploadFileNameSchema, uploadKnowledgeFileRequestSchema, uploadOrganizationIdSchema, uploadPathSchema, uploadScopeContactSchema, uploadScopeConversationSchema, uploadScopeSchema, uploadScopeUserSchema, uploadScopeVisitorSchema, uploadUserIdSchema, uploadVisitorIdSchema, uploadWebsiteIdSchema, urlKnowledgePayloadSchema, userIdSchema, userResponseSchema, visitorMetadataSchema, visitorProfileSchema, visitorResponseSchema, websiteApiKeySchema, websiteDeveloperSettingsResponseSchema, websiteListItemSchema, websiteSummarySchema };
14
+ export { AIAgentGoal, AIModel, AIModelConfig, AI_AGENT_GOALS, AI_MODELS, AiAgentBehaviorSettings, AiAgentResponse, ArticleKnowledgePayload, AvailableAIAgent, AvailableAIAgentSchema, AvailableHumanAgent, CancelLinkSourceRequest, CheckWebsiteDomainRequest, Contact, ContactMetadata, ContactNotificationSettings, ContactOrganizationResponse, ContactResponse, CossistantProviderMetadata, CrawlProgressPage, CreateAiAgentRequest, CreateContactOrganizationRequest, CreateContactRequest, CreateConversationRequestBody, CreateConversationResponseBody, CreateKnowledgeRequest, CreateKnowledgeRestRequest, CreateLinkSourceRequest, CreateWebsiteApiKeyRequest, CreateWebsiteRequest, CreateWebsiteResponse, DeleteAiAgentRequest, DeleteKnowledgeRequest, DeleteLinkSourceRequest, DeletePageRequest, DiscoveredPage, FaqKnowledgePayload, FilePart, GenerateBasePromptRequest, GenerateBasePromptResponse, GenerateUploadUrlRequest, GenerateUploadUrlResponse, GetAiAgentRequest, GetBehaviorSettingsRequest, GetBehaviorSettingsResponse, GetConversationRequest, GetConversationResponse, GetConversationSeenDataResponse, GetConversationTimelineItemsRequest, GetConversationTimelineItemsResponse, GetCrawlStatusRequest, GetKnowledgeRequest, GetLinkSourceRequest, GetTrainingStatsRequest, IdentifyContactRequest, IdentifyContactResponse, IgnorePageRequest, ImagePart, Knowledge, KnowledgeCreateInput, KnowledgeResponse, KnowledgeType, LinkSourceResponse, LinkSourceStatus, ListByOrganizationRequest, ListConversationsRequest, ListConversationsResponse, ListKnowledgeByLinkSourceRequest, ListKnowledgeRequest, ListKnowledgeResponse, ListKnowledgeRestRequest, ListLinkSourcesRequest, ListLinkSourcesResponse, MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MarkConversationSeenRequestBody, MarkConversationSeenResponseBody, MemberNotificationChannel, MemberNotificationChannelDefinition, MemberNotificationPreference, MemberNotificationSettingsResponse, OrganizationResponse, PaginationInput, PaginationResponse, PublicContact, PublicVisitor, PublicVisitorResponse, PublicWebsiteResponse, ReasoningPart, RecrawlLinkSourceRequest, ReindexPageRequest, RevokeWebsiteApiKeyRequest, ScanSubpagesRequest, SendTimelineItemRequest, SendTimelineItemResponse, SetConversationTypingRequestBody, SetConversationTypingResponseBody, SourceDocumentPart, SourceUrlPart, StepStartPart, SubmitConversationRatingRequestBody, SubmitConversationRatingResponseBody, TextPart, TimelineItem, TimelineItemParts, TimelinePartEvent, TimelinePartFile, TimelinePartImage, TimelinePartMetadata, TimelinePartText, ToggleAiAgentActiveRequest, ToggleKnowledgeEntryIncludedRequest, ToggleKnowledgeIncludedRequest, ToolPart, ToolState, TrainingStatsResponse, UpdateAiAgentRequest, UpdateBehaviorSettingsRequest, UpdateBehaviorSettingsResponse, UpdateContactMetadataRequest, UpdateContactOrganizationRequest, UpdateContactRequest, UpdateKnowledgeRequest, UpdateKnowledgeRestRequest, UpdateMemberNotificationSettingsRequest, UpdateMemberNotificationSettingsResponse, UpdateUserProfileRequest, UpdateVisitorMetadataRequest, UpdateVisitorRequest, UpdateWebsiteRequest, UploadKnowledgeFileRequest, UrlKnowledgePayload, UserResponse, Visitor, VisitorMetadata, VisitorResponse, WebsiteApiKey, WebsiteDeveloperSettingsResponse, WebsiteListItem, WebsiteSummary, aiAgentBehaviorSettingsSchema, aiAgentResponseSchema, articleKnowledgePayloadSchema, availableHumanAgentSchema, cancelLinkSourceRequestSchema, checkWebsiteDomainRequestSchema, contactMetadataSchema, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, contactOrganization, contactOrganizationResponseSchema, contactResponseSchema, cossistantProviderMetadataSchema, crawlProgressPageSchema, createAiAgentRequestSchema, createContactOrganizationRequestSchema, createContactRequestSchema, createConversationRequestSchema, createConversationResponseSchema, createKnowledgeRequestSchema, createKnowledgeRestRequestSchema, createLinkSourceRequestSchema, createWebsiteApiKeyRequestSchema, createWebsiteRequestSchema, createWebsiteResponseSchema, deleteAiAgentRequestSchema, deleteKnowledgeRequestSchema, deleteLinkSourceRequestSchema, deletePageRequestSchema, discoveredPageSchema, emailSchema, faqKnowledgePayloadSchema, filePartSchema, generateBasePromptRequestSchema, generateBasePromptResponseSchema, generateUploadUrlRequestSchema, generateUploadUrlResponseSchema, getAiAgentRequestSchema, getBehaviorSettingsRequestSchema, getBehaviorSettingsResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, getConversationTimelineItemsRequestSchema, getConversationTimelineItemsResponseSchema, getCrawlStatusRequestSchema, getDefaultMemberNotificationPreference, getKnowledgeRequestSchema, getLinkSourceRequestSchema, getTrainingStatsRequestSchema, identifyContactRequestSchema, identifyContactResponseSchema, ignorePageRequestSchema, imagePartSchema, knowledgeCreateSchema, knowledgeResponseSchema, knowledgeSchema, knowledgeTypeSchema, linkSourceResponseSchema, linkSourceStatusSchema, listByOrganizationRequestSchema, listConversationsRequestSchema, listConversationsResponseSchema, listKnowledgeByLinkSourceRequestSchema, listKnowledgeRequestSchema, listKnowledgeResponseSchema, listKnowledgeRestRequestSchema, listLinkSourcesRequestSchema, listLinkSourcesResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, optionalUserIdSchema, organizationResponseSchema, paginationResponseSchema, paginationSchema, publicContactResponseSchema, publicVisitorResponseSchema, publicWebsiteResponseSchema, reasoningPartSchema, recrawlLinkSourceRequestSchema, reindexPageRequestSchema, revokeWebsiteApiKeyRequestSchema, scanSubpagesRequestSchema, sendTimelineItemRequestSchema, sendTimelineItemResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, sourceDocumentPartSchema, sourceUrlPartSchema, stepStartPartSchema, submitConversationRatingRequestSchema, submitConversationRatingResponseSchema, textPartSchema, timelineItemPartsSchema, timelineItemSchema, timelinePartEventSchema, timelinePartMetadataSchema, toggleAiAgentActiveRequestSchema, toggleKnowledgeEntryIncludedRequestSchema, toggleKnowledgeIncludedRequestSchema, toolPartSchema, toolStateSchema, trainingStatsResponseSchema, updateAiAgentRequestSchema, updateBehaviorSettingsRequestSchema, updateBehaviorSettingsResponseSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema, updateKnowledgeRequestSchema, updateKnowledgeRestRequestSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema, updateUserProfileRequestSchema, updateVisitorMetadataRequestSchema, updateVisitorRequestSchema, updateWebsiteRequestSchema, uploadContactIdSchema, uploadConversationIdSchema, uploadFileExtensionSchema, uploadFileNameSchema, uploadKnowledgeFileRequestSchema, uploadOrganizationIdSchema, uploadPathSchema, uploadScopeContactSchema, uploadScopeConversationSchema, uploadScopeSchema, uploadScopeUserSchema, uploadScopeVisitorSchema, uploadUserIdSchema, uploadVisitorIdSchema, uploadWebsiteIdSchema, urlKnowledgePayloadSchema, userIdSchema, userResponseSchema, visitorMetadataSchema, visitorProfileSchema, visitorResponseSchema, websiteApiKeySchema, websiteDeveloperSettingsResponseSchema, websiteListItemSchema, websiteSummarySchema };
package/api/index.js CHANGED
@@ -2,7 +2,7 @@ import { AI_AGENT_GOALS, AI_MODELS, aiAgentBehaviorSettingsSchema, aiAgentRespon
2
2
  import { emailSchema, optionalUserIdSchema, paginationResponseSchema, paginationSchema, userIdSchema } from "./common.js";
3
3
  import { contactMetadataSchema, contactOrganizationResponseSchema, contactResponseSchema, createContactOrganizationRequestSchema, createContactRequestSchema, identifyContactRequestSchema, identifyContactResponseSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema } from "./contact.js";
4
4
  import { cossistantProviderMetadataSchema, filePartSchema, getConversationTimelineItemsRequestSchema, getConversationTimelineItemsResponseSchema, imagePartSchema, reasoningPartSchema, sendTimelineItemRequestSchema, sendTimelineItemResponseSchema, sourceDocumentPartSchema, sourceUrlPartSchema, stepStartPartSchema, textPartSchema, timelineItemPartsSchema, timelineItemSchema, timelinePartEventSchema, timelinePartMetadataSchema, toolPartSchema, toolStateSchema } from "./timeline-item.js";
5
- import { createConversationRequestSchema, createConversationResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema } from "./conversation.js";
5
+ import { createConversationRequestSchema, createConversationResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, submitConversationRatingRequestSchema, submitConversationRatingResponseSchema } from "./conversation.js";
6
6
  import { articleKnowledgePayloadSchema, createKnowledgeRequestSchema, createKnowledgeRestRequestSchema, deleteKnowledgeRequestSchema, faqKnowledgePayloadSchema, getKnowledgeRequestSchema, knowledgeCreateSchema, knowledgeResponseSchema, knowledgeSchema, knowledgeTypeSchema, listKnowledgeRequestSchema, listKnowledgeResponseSchema, listKnowledgeRestRequestSchema, toggleKnowledgeEntryIncludedRequestSchema, updateKnowledgeRequestSchema, updateKnowledgeRestRequestSchema, uploadKnowledgeFileRequestSchema, urlKnowledgePayloadSchema } from "./knowledge.js";
7
7
  import { cancelLinkSourceRequestSchema, crawlProgressPageSchema, createLinkSourceRequestSchema, deleteLinkSourceRequestSchema, deletePageRequestSchema, discoveredPageSchema, getCrawlStatusRequestSchema, getLinkSourceRequestSchema, getTrainingStatsRequestSchema, ignorePageRequestSchema, linkSourceResponseSchema, linkSourceStatusSchema, listKnowledgeByLinkSourceRequestSchema, listLinkSourcesRequestSchema, listLinkSourcesResponseSchema, recrawlLinkSourceRequestSchema, reindexPageRequestSchema, scanSubpagesRequestSchema, toggleKnowledgeIncludedRequestSchema, trainingStatsResponseSchema } from "./link-source.js";
8
8
  import { MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MemberNotificationChannel, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, getDefaultMemberNotificationPreference, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema } from "./notification.js";
@@ -12,4 +12,4 @@ import { updateUserProfileRequestSchema, userResponseSchema } from "./user.js";
12
12
  import { publicContactResponseSchema, publicVisitorResponseSchema, updateVisitorMetadataRequestSchema, updateVisitorRequestSchema, visitorMetadataSchema, visitorProfileSchema, visitorResponseSchema } from "./visitor.js";
13
13
  import { AvailableAIAgentSchema, availableHumanAgentSchema, checkWebsiteDomainRequestSchema, createWebsiteApiKeyRequestSchema, createWebsiteRequestSchema, createWebsiteResponseSchema, listByOrganizationRequestSchema, publicWebsiteResponseSchema, revokeWebsiteApiKeyRequestSchema, updateWebsiteRequestSchema, websiteApiKeySchema, websiteDeveloperSettingsResponseSchema, websiteListItemSchema, websiteSummarySchema } from "./website.js";
14
14
 
15
- export { AI_AGENT_GOALS, AI_MODELS, AvailableAIAgentSchema, MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MemberNotificationChannel, aiAgentBehaviorSettingsSchema, aiAgentResponseSchema, articleKnowledgePayloadSchema, availableHumanAgentSchema, cancelLinkSourceRequestSchema, checkWebsiteDomainRequestSchema, contactMetadataSchema, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, contactOrganizationResponseSchema, contactResponseSchema, cossistantProviderMetadataSchema, crawlProgressPageSchema, createAiAgentRequestSchema, createContactOrganizationRequestSchema, createContactRequestSchema, createConversationRequestSchema, createConversationResponseSchema, createKnowledgeRequestSchema, createKnowledgeRestRequestSchema, createLinkSourceRequestSchema, createWebsiteApiKeyRequestSchema, createWebsiteRequestSchema, createWebsiteResponseSchema, deleteAiAgentRequestSchema, deleteKnowledgeRequestSchema, deleteLinkSourceRequestSchema, deletePageRequestSchema, discoveredPageSchema, emailSchema, faqKnowledgePayloadSchema, filePartSchema, generateBasePromptRequestSchema, generateBasePromptResponseSchema, generateUploadUrlRequestSchema, generateUploadUrlResponseSchema, getAiAgentRequestSchema, getBehaviorSettingsRequestSchema, getBehaviorSettingsResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, getConversationTimelineItemsRequestSchema, getConversationTimelineItemsResponseSchema, getCrawlStatusRequestSchema, getDefaultMemberNotificationPreference, getKnowledgeRequestSchema, getLinkSourceRequestSchema, getTrainingStatsRequestSchema, identifyContactRequestSchema, identifyContactResponseSchema, ignorePageRequestSchema, imagePartSchema, knowledgeCreateSchema, knowledgeResponseSchema, knowledgeSchema, knowledgeTypeSchema, linkSourceResponseSchema, linkSourceStatusSchema, listByOrganizationRequestSchema, listConversationsRequestSchema, listConversationsResponseSchema, listKnowledgeByLinkSourceRequestSchema, listKnowledgeRequestSchema, listKnowledgeResponseSchema, listKnowledgeRestRequestSchema, listLinkSourcesRequestSchema, listLinkSourcesResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, optionalUserIdSchema, organizationResponseSchema, paginationResponseSchema, paginationSchema, publicContactResponseSchema, publicVisitorResponseSchema, publicWebsiteResponseSchema, reasoningPartSchema, recrawlLinkSourceRequestSchema, reindexPageRequestSchema, revokeWebsiteApiKeyRequestSchema, scanSubpagesRequestSchema, sendTimelineItemRequestSchema, sendTimelineItemResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, sourceDocumentPartSchema, sourceUrlPartSchema, stepStartPartSchema, textPartSchema, timelineItemPartsSchema, timelineItemSchema, timelinePartEventSchema, timelinePartMetadataSchema, toggleAiAgentActiveRequestSchema, toggleKnowledgeEntryIncludedRequestSchema, toggleKnowledgeIncludedRequestSchema, toolPartSchema, toolStateSchema, trainingStatsResponseSchema, updateAiAgentRequestSchema, updateBehaviorSettingsRequestSchema, updateBehaviorSettingsResponseSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema, updateKnowledgeRequestSchema, updateKnowledgeRestRequestSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema, updateUserProfileRequestSchema, updateVisitorMetadataRequestSchema, updateVisitorRequestSchema, updateWebsiteRequestSchema, uploadContactIdSchema, uploadConversationIdSchema, uploadFileExtensionSchema, uploadFileNameSchema, uploadKnowledgeFileRequestSchema, uploadOrganizationIdSchema, uploadPathSchema, uploadScopeContactSchema, uploadScopeConversationSchema, uploadScopeSchema, uploadScopeUserSchema, uploadScopeVisitorSchema, uploadUserIdSchema, uploadVisitorIdSchema, uploadWebsiteIdSchema, urlKnowledgePayloadSchema, userIdSchema, userResponseSchema, visitorMetadataSchema, visitorProfileSchema, visitorResponseSchema, websiteApiKeySchema, websiteDeveloperSettingsResponseSchema, websiteListItemSchema, websiteSummarySchema };
15
+ export { AI_AGENT_GOALS, AI_MODELS, AvailableAIAgentSchema, MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MemberNotificationChannel, aiAgentBehaviorSettingsSchema, aiAgentResponseSchema, articleKnowledgePayloadSchema, availableHumanAgentSchema, cancelLinkSourceRequestSchema, checkWebsiteDomainRequestSchema, contactMetadataSchema, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, contactOrganizationResponseSchema, contactResponseSchema, cossistantProviderMetadataSchema, crawlProgressPageSchema, createAiAgentRequestSchema, createContactOrganizationRequestSchema, createContactRequestSchema, createConversationRequestSchema, createConversationResponseSchema, createKnowledgeRequestSchema, createKnowledgeRestRequestSchema, createLinkSourceRequestSchema, createWebsiteApiKeyRequestSchema, createWebsiteRequestSchema, createWebsiteResponseSchema, deleteAiAgentRequestSchema, deleteKnowledgeRequestSchema, deleteLinkSourceRequestSchema, deletePageRequestSchema, discoveredPageSchema, emailSchema, faqKnowledgePayloadSchema, filePartSchema, generateBasePromptRequestSchema, generateBasePromptResponseSchema, generateUploadUrlRequestSchema, generateUploadUrlResponseSchema, getAiAgentRequestSchema, getBehaviorSettingsRequestSchema, getBehaviorSettingsResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, getConversationTimelineItemsRequestSchema, getConversationTimelineItemsResponseSchema, getCrawlStatusRequestSchema, getDefaultMemberNotificationPreference, getKnowledgeRequestSchema, getLinkSourceRequestSchema, getTrainingStatsRequestSchema, identifyContactRequestSchema, identifyContactResponseSchema, ignorePageRequestSchema, imagePartSchema, knowledgeCreateSchema, knowledgeResponseSchema, knowledgeSchema, knowledgeTypeSchema, linkSourceResponseSchema, linkSourceStatusSchema, listByOrganizationRequestSchema, listConversationsRequestSchema, listConversationsResponseSchema, listKnowledgeByLinkSourceRequestSchema, listKnowledgeRequestSchema, listKnowledgeResponseSchema, listKnowledgeRestRequestSchema, listLinkSourcesRequestSchema, listLinkSourcesResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, optionalUserIdSchema, organizationResponseSchema, paginationResponseSchema, paginationSchema, publicContactResponseSchema, publicVisitorResponseSchema, publicWebsiteResponseSchema, reasoningPartSchema, recrawlLinkSourceRequestSchema, reindexPageRequestSchema, revokeWebsiteApiKeyRequestSchema, scanSubpagesRequestSchema, sendTimelineItemRequestSchema, sendTimelineItemResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, sourceDocumentPartSchema, sourceUrlPartSchema, stepStartPartSchema, submitConversationRatingRequestSchema, submitConversationRatingResponseSchema, textPartSchema, timelineItemPartsSchema, timelineItemSchema, timelinePartEventSchema, timelinePartMetadataSchema, toggleAiAgentActiveRequestSchema, toggleKnowledgeEntryIncludedRequestSchema, toggleKnowledgeIncludedRequestSchema, toolPartSchema, toolStateSchema, trainingStatsResponseSchema, updateAiAgentRequestSchema, updateBehaviorSettingsRequestSchema, updateBehaviorSettingsResponseSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema, updateKnowledgeRequestSchema, updateKnowledgeRestRequestSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema, updateUserProfileRequestSchema, updateVisitorMetadataRequestSchema, updateVisitorRequestSchema, updateWebsiteRequestSchema, uploadContactIdSchema, uploadConversationIdSchema, uploadFileExtensionSchema, uploadFileNameSchema, uploadKnowledgeFileRequestSchema, uploadOrganizationIdSchema, uploadPathSchema, uploadScopeContactSchema, uploadScopeConversationSchema, uploadScopeSchema, uploadScopeUserSchema, uploadScopeVisitorSchema, uploadUserIdSchema, uploadVisitorIdSchema, uploadWebsiteIdSchema, urlKnowledgePayloadSchema, userIdSchema, userResponseSchema, visitorMetadataSchema, visitorProfileSchema, visitorResponseSchema, websiteApiKeySchema, websiteDeveloperSettingsResponseSchema, websiteListItemSchema, websiteSummarySchema };