@opencx/mcp 1.15.29 → 1.15.30

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
@@ -398,7 +398,7 @@ export interface paths {
398
398
  put?: never;
399
399
  /**
400
400
  * Assign or unassign a chat session
401
- * @description Assign a chat session to a human agent by user ID, or set assignee_id to null to unassign it.
401
+ * @description Assign a chat session to a human agent, named either by `assignee_id` or by `assignee_email` — exactly one. The email is matched case-insensitively against this organization’s members, so a sync can assign straight from the address it already holds. Send either field as null to unassign. A teammate who is not a member of this organization is rejected.
402
402
  */
403
403
  post: operations["assignChatSession"];
404
404
  delete?: never;
@@ -3180,7 +3180,7 @@ export interface paths {
3180
3180
  };
3181
3181
  /**
3182
3182
  * List the mailboxes this org can bind as sequence email senders
3183
- * @description Every email mailbox of the organization with its bindability verdict AND its health NUMBERS. `eligible` mailboxes are accepted by setSequenceSenders on the email channel; ineligible ones carry the reason (`not_active` — still provisioning or paused; `domain_not_live` — its domain lapsed, so sending would fail authentication). `health` carries warm-up status, inbox rate, spam rate, an overall score, warming-since, and the share of recent real sends that hard-bounced with its sample size. There is deliberately no pass/fail: a null is "not known yet" (common for a new mailbox), never "bad", and nothing here blocks a send or a binding.
3183
+ * @description Every email mailbox of the organization with its bindability verdict AND its health NUMBERS. `eligible` mailboxes are accepted by setSequenceSenders on the email channel including a mailbox still provisioning (`pending`/`created`): binding it early is safe, sending itself waits for the mailbox to finish becoming `active` on its own. Ineligible ones carry the reason (`not_active` — a human hold or the mailbox being removed, neither of which resolves on its own; `domain_not_live` — its domain lapsed, so sending would fail authentication). `health` carries warm-up status, inbox rate, spam rate, an overall score, warming-since, and the share of recent real sends that hard-bounced with its sample size. There is deliberately no pass/fail: a null is "not known yet" (common for a new mailbox), never "bad", and nothing here blocks a send or a binding.
3184
3184
  */
3185
3185
  get: operations["listEmailSenders"];
3186
3186
  put?: never;
@@ -7268,7 +7268,9 @@ export interface components {
7268
7268
  };
7269
7269
  SessionAssigneeUpdateInput: {
7270
7270
  /** @description Agent user ID to assign, or null to unassign the session */
7271
- assignee_id: number | null;
7271
+ assignee_id?: number | null;
7272
+ /** @description Email of the agent to assign, matched case-insensitively against this organization’s members, or null to unassign the session */
7273
+ assignee_email?: string | null;
7272
7274
  };
7273
7275
  SessionTeamTransferInput: {
7274
7276
  /**
@@ -11497,9 +11499,31 @@ export interface components {
11497
11499
  /** Format: uuid */
11498
11500
  id: string;
11499
11501
  };
11502
+ SessionTagOutput: {
11503
+ tag_name: string;
11504
+ /** Format: date-time */
11505
+ created_at: string;
11506
+ };
11507
+ /** @description Current session assignment. AI and unassigned sessions have no assignee ID. */
11508
+ ChatSessionAssignee: {
11509
+ /** @constant */
11510
+ type: "human";
11511
+ /** @description Human user ID, matching the numeric ID in GET /users. */
11512
+ id: number;
11513
+ /** @description Current organization display name, matching GET /users, or null if the user is no longer a member of this organization or cannot be found. The recorded human ID is retained. */
11514
+ name: string | null;
11515
+ } | {
11516
+ /** @constant */
11517
+ type: "ai";
11518
+ } | {
11519
+ /** @constant */
11520
+ type: "none";
11521
+ };
11500
11522
  GetChatSessionOutput: {
11501
11523
  /** Format: uuid */
11502
11524
  id: string;
11525
+ /** @description All tags currently assigned to this session, ordered by tag name. Empty when no tags are assigned. */
11526
+ tags: components["schemas"]["SessionTagOutput"][];
11503
11527
  /** @enum {string} */
11504
11528
  status: "open" | "closed_resolved" | "closed_unresolved";
11505
11529
  /** @description Id of the custom status refining `status`, or null when only the built-in status applies. Resolve it with GET /custom-statuses. */
@@ -11531,7 +11555,12 @@ export interface components {
11531
11555
  } | null;
11532
11556
  };
11533
11557
  language?: string;
11558
+ /**
11559
+ * @deprecated
11560
+ * @description Deprecated: use assignee. Contains the recorded human user ID as a string, or null for AI and unassigned sessions. Use assignee.type to distinguish them. This deprecation applies only to response fields; assignment requests still accept assignee_id.
11561
+ */
11534
11562
  assignee_id?: string | null;
11563
+ assignee: components["schemas"]["ChatSessionAssignee"];
11535
11564
  /** @description Session-level custom data stored on the chat session. */
11536
11565
  custom_data?: {
11537
11566
  [key: string]: string | number | boolean;
@@ -11542,6 +11571,15 @@ export interface components {
11542
11571
  name: string;
11543
11572
  description?: string;
11544
11573
  };
11574
+ /** @description Support team assigned to this session. Null when no team can be resolved within the session organization. */
11575
+ support_team: {
11576
+ /**
11577
+ * Format: uuid
11578
+ * @description Stable team ID, preserved when the team is renamed.
11579
+ */
11580
+ id: string;
11581
+ name: string;
11582
+ } | null;
11545
11583
  handoff?: {
11546
11584
  /** @enum {string} */
11547
11585
  sentiment?: "angry" | "happy" | "neutral";
@@ -11560,6 +11598,8 @@ export interface components {
11560
11598
  created_at: string;
11561
11599
  /** Format: date-time */
11562
11600
  updated_at: string;
11601
+ /** @description Timestamp of the first recorded human reply to this session. Null when no human reply has been recorded. */
11602
+ first_human_message_at: string | null;
11563
11603
  };
11564
11604
  SessionAssigneeUpdateOutput: {
11565
11605
  no_change: boolean;
@@ -11572,11 +11612,6 @@ export interface components {
11572
11612
  no_change: boolean;
11573
11613
  session: components["schemas"]["GetChatSessionOutput"];
11574
11614
  };
11575
- SessionTagOutput: {
11576
- tag_name: string;
11577
- /** Format: date-time */
11578
- created_at: string;
11579
- };
11580
11615
  SessionTagMutationOutput: {
11581
11616
  /** Format: uuid */
11582
11617
  session_id: string;
@@ -12790,7 +12825,7 @@ export interface components {
12790
12825
  * @description Which jsonb bag the key was observed in: contact vs session, verified vs not.
12791
12826
  * @enum {string}
12792
12827
  */
12793
- source: "contact_custom_data" | "contact_non_verified_custom_data" | "session_custom_data" | "session_editable_custom_data";
12828
+ source: "company_custom_data" | "contact_custom_data" | "contact_non_verified_custom_data" | "session_custom_data" | "session_editable_custom_data";
12794
12829
  }[];
12795
12830
  total: number;
12796
12831
  };
@@ -21516,7 +21551,7 @@ export interface operations {
21516
21551
  parameters: {
21517
21552
  query?: {
21518
21553
  /** @description Filter to specific bags; default: all four. */
21519
- sources?: ("contact_custom_data" | "contact_non_verified_custom_data" | "session_custom_data" | "session_editable_custom_data")[];
21554
+ sources?: ("company_custom_data" | "contact_custom_data" | "contact_non_verified_custom_data" | "session_custom_data" | "session_editable_custom_data")[];
21520
21555
  /** @description Case-insensitive substring match on the key. */
21521
21556
  search?: string;
21522
21557
  /** @description Default 500. */