@opencx/mcp 1.11.87 → 1.11.88

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/dist/schema.d.ts CHANGED
@@ -1432,6 +1432,46 @@ export interface paths {
1432
1432
  patch?: never;
1433
1433
  trace?: never;
1434
1434
  };
1435
+ "/impact-report/sankey/tickets": {
1436
+ parameters: {
1437
+ query?: never;
1438
+ header?: never;
1439
+ path?: never;
1440
+ cookie?: never;
1441
+ };
1442
+ /**
1443
+ * List the tickets behind a Sankey node/link
1444
+ * @description Drill down into a conversation-flow Sankey: list the actual chat sessions (tickets) that flow through a clicked node or link. Pass the SAME dimensions/date/custom_data_key as getConversationSankey, plus a JSON-encoded `path` — one {layerIndex, bucket} constraint for a clicked node, two for a clicked link. Paginated via limit/offset. Chain into investigate_session on a returned ticket id to diagnose the "why".
1445
+ */
1446
+ get: operations["getConversationSankeyTickets"];
1447
+ put?: never;
1448
+ post?: never;
1449
+ delete?: never;
1450
+ options?: never;
1451
+ head?: never;
1452
+ patch?: never;
1453
+ trace?: never;
1454
+ };
1455
+ "/impact-report/sankey/dimensions": {
1456
+ parameters: {
1457
+ query?: never;
1458
+ header?: never;
1459
+ path?: never;
1460
+ cookie?: never;
1461
+ };
1462
+ /**
1463
+ * List conversation-flow Sankey dimensions
1464
+ * @description List the dimension keys a conversation-flow Sankey can be sliced by, plus the org's observed custom-data keys (with labels) for contact_custom_data and session_custom_data. Call this before getConversationSankey to choose valid dimensions and the custom_data_key.
1465
+ */
1466
+ get: operations["getConversationSankeyDimensions"];
1467
+ put?: never;
1468
+ post?: never;
1469
+ delete?: never;
1470
+ options?: never;
1471
+ head?: never;
1472
+ patch?: never;
1473
+ trace?: never;
1474
+ };
1435
1475
  "/office-hours": {
1436
1476
  parameters: {
1437
1477
  query?: never;
@@ -5874,7 +5914,7 @@ export interface components {
5874
5914
  nodes: {
5875
5915
  id: string;
5876
5916
  /** @enum {string} */
5877
- dimensionKey: "all_tickets" | "replied_by" | "outcome" | "handoff" | "channel" | "integration_source" | "assist_mode" | "contact_custom_data" | "session_custom_data" | "sentiment" | "status" | "assigned_team" | "contact_source";
5917
+ dimensionKey: "all_tickets" | "replied_by" | "outcome" | "handoff" | "channel" | "integration_source" | "assist_mode" | "contact_custom_data" | "session_custom_data" | "sentiment" | "status" | "assigned_team" | "contact_source" | "csat" | "handoff_reason" | "contact_reason";
5878
5918
  dimensionLabel: string;
5879
5919
  bucket: string;
5880
5920
  count: number;
@@ -5885,6 +5925,32 @@ export interface components {
5885
5925
  value: number;
5886
5926
  }[];
5887
5927
  };
5928
+ SankeyTicketsResDto: {
5929
+ tickets: {
5930
+ /** Format: uuid */
5931
+ id: string;
5932
+ ticketNumber: number;
5933
+ channel: string;
5934
+ aiClosureType: string | null;
5935
+ mainStatus: string;
5936
+ sentiment: string | null;
5937
+ createdAt: string;
5938
+ lastMessage: string | null;
5939
+ contactName: string | null;
5940
+ contactEmail: string | null;
5941
+ }[];
5942
+ total: number;
5943
+ hasMore: boolean;
5944
+ };
5945
+ SankeyDimensionCatalogResDto: {
5946
+ dimensions: {
5947
+ /** @enum {string} */
5948
+ key: "all_tickets" | "replied_by" | "outcome" | "handoff" | "channel" | "integration_source" | "assist_mode" | "contact_custom_data" | "session_custom_data" | "sentiment" | "status" | "assigned_team" | "contact_source" | "csat" | "handoff_reason" | "contact_reason";
5949
+ label: string;
5950
+ requiresCustomDataKey: boolean;
5951
+ customDataKeys?: string[];
5952
+ }[];
5953
+ };
5888
5954
  EmailTemplateActivityItemDto: {
5889
5955
  id: string;
5890
5956
  from_email: string;
@@ -11044,9 +11110,9 @@ export interface operations {
11044
11110
  getConversationSankey: {
11045
11111
  parameters: {
11046
11112
  query: {
11047
- /** @description Comma-separated dimension keys, e.g. "replied_by,outcome". 1–6 allowed. */
11113
+ /** @description Ordered dimensions, 1–6, built left→right. Either a comma-separated key list ("replied_by,outcome") or a JSON array of {dimension, customDataKey} to give each custom-data column its own jsonb key, e.g. [{"dimension":"contact_custom_data","customDataKey":"tier"},{"dimension":"session_custom_data","customDataKey":"plan"}]. */
11048
11114
  dimensions: string;
11049
- /** @description The jsonb key to read for a custom-data dimension (contact_custom_data or session_custom_data). */
11115
+ /** @description Fallback jsonb key for custom-data dimensions given via the CSV form (or when a JSON dimension omits its own customDataKey). Ignored where a dimension carries its own key. */
11050
11116
  custom_data_key?: string;
11051
11117
  /** @description Start date in ISO 8601 format (defaults to 30 days ago) */
11052
11118
  start_date?: string;
@@ -11079,6 +11145,77 @@ export interface operations {
11079
11145
  };
11080
11146
  };
11081
11147
  };
11148
+ getConversationSankeyTickets: {
11149
+ parameters: {
11150
+ query: {
11151
+ /** @description Ordered dimensions, 1–6, built left→right. Either a comma-separated key list ("replied_by,outcome") or a JSON array of {dimension, customDataKey} to give each custom-data column its own jsonb key, e.g. [{"dimension":"contact_custom_data","customDataKey":"tier"},{"dimension":"session_custom_data","customDataKey":"plan"}]. */
11152
+ dimensions: string;
11153
+ /** @description JSON-encoded array of {layerIndex, bucket} constraints identifying the clicked target: 1 constraint = a clicked node, 2 = a clicked link. bucket may be an "Other (N)" label. */
11154
+ path: string;
11155
+ /** @description Fallback jsonb key for custom-data dimensions given via the CSV form (or when a JSON dimension omits its own customDataKey). Ignored where a dimension carries its own key. */
11156
+ custom_data_key?: string;
11157
+ /** @description Start date in ISO 8601 format (defaults to 30 days ago) */
11158
+ start_date?: string;
11159
+ /** @description End date in ISO 8601 format (defaults to now) */
11160
+ end_date?: string;
11161
+ limit?: number;
11162
+ offset?: number;
11163
+ };
11164
+ header?: never;
11165
+ path?: never;
11166
+ cookie?: never;
11167
+ };
11168
+ requestBody?: never;
11169
+ responses: {
11170
+ /** @description Default Response */
11171
+ 200: {
11172
+ headers: {
11173
+ [name: string]: unknown;
11174
+ };
11175
+ content: {
11176
+ "application/json": components["schemas"]["SankeyTicketsResDto"];
11177
+ };
11178
+ };
11179
+ /** @description Internal Server Error */
11180
+ 500: {
11181
+ headers: {
11182
+ [name: string]: unknown;
11183
+ };
11184
+ content: {
11185
+ "application/json": components["schemas"]["ErrorDto"];
11186
+ };
11187
+ };
11188
+ };
11189
+ };
11190
+ getConversationSankeyDimensions: {
11191
+ parameters: {
11192
+ query?: never;
11193
+ header?: never;
11194
+ path?: never;
11195
+ cookie?: never;
11196
+ };
11197
+ requestBody?: never;
11198
+ responses: {
11199
+ /** @description Default Response */
11200
+ 200: {
11201
+ headers: {
11202
+ [name: string]: unknown;
11203
+ };
11204
+ content: {
11205
+ "application/json": components["schemas"]["SankeyDimensionCatalogResDto"];
11206
+ };
11207
+ };
11208
+ /** @description Internal Server Error */
11209
+ 500: {
11210
+ headers: {
11211
+ [name: string]: unknown;
11212
+ };
11213
+ content: {
11214
+ "application/json": components["schemas"]["ErrorDto"];
11215
+ };
11216
+ };
11217
+ };
11218
+ };
11082
11219
  listOfficeHours: {
11083
11220
  parameters: {
11084
11221
  query?: never;