> ## Documentation Index
> Fetch the complete documentation index at: https://docs.open.cx/llms.txt
> Use this file to discover all available pages before exploring further.

# Changelog

> Learn about the latest updates to the Open platform

<Update label="August 4, 2026">
  ## Block abusive IPs on your own rules, not by hand

  Blocking an IP used to mean noticing the abuse, digging the address out of somewhere, and banning it forever. Now a workflow can count how many sessions an address has opened in the last few minutes and block it on whatever threshold you consider abusive — and blocks can expire on their own, so a shared office or mobile-carrier address is never banned permanently by mistake. Every session in the inbox shows the address it came from, and session exports can carry it too.

  <Expandable title="Features">
    * Three new workflow actions — Block IP, Unblock IP, and Count Recent Sessions From IP — so a rule can decide for itself when to block
    * Workflows can read the visitor address as `{{ticket.clientIp}}`
    * Blocks can expire — set a number of hours and the block lifts itself
    * Every session in the inbox now shows the IP it came from, with a block button beside it
    * Session exports can include the visitor IP, plus how many sessions and distinct contacts came from that address within the export — one address with many contacts is someone minting a throwaway identity per message
    * Public API and MCP gained expires\_in\_hours on blocking, plus a session-activity endpoint and a list\_session\_ips tool for building your own rules
  </Expandable>

  <Expandable title="Improvements">
    * The visitor address is now recorded when a session is created, not only when the first message arrives — so a burst of sessions that never get a message is still counted
    * Blocked IPs now shows when each block expires, and marks lapsed ones
    * Re-blocking an address whose block has already lapsed re-arms it instead of quietly doing nothing
    * Blocklist screens and API docs now say plainly that IP blocking applies to the web widget — email and WhatsApp arrive through the provider’s servers and carry no visitor IP, so block those by domain or contact
  </Expandable>
</Update>

<Update label="August 2, 2026">
  ## Design your own CSAT surveys

  <Frame>
    <img src="https://platform.open.cx/changelog/csat-template-editors.png" alt="The CSAT template editors — custom HTML for the web feedback page and the request email, with variables, previews, and test sends" />
  </Frame>

  Your CSAT surfaces are now fully yours: bring your own HTML for the feedback page customers land on and for the CSAT request email, edit and preview both from Settings → CSAT, and manage them via the public API or by just asking Companion.

  <Expandable title="Features">
    * Custom CSAT feedback page — provide full HTML; simple data-csat-\* attributes wire up score buttons, comments, and thank-you views, with a JS API for custom flows
    * Custom CSAT request email and subject line, sent exactly as you wrote them, with per-score rating link variables
    * Template editors with live previews (click a score in the email preview to walk the whole email → page flow), starter templates, and test sends
    * Companion can read and edit your CSAT templates — ask it to design a survey matching your brand
    * Public API endpoints and MCP tools for CSAT settings (csat:read / csat:write)
    * New X (Twitter) channel — connect your own X developer app and support customers over DMs
    * Hide noisy session and contact attributes from inbox panels with wildcard patterns
    * Copy a full session transcript from the inbox in one click
    * Pick a default sending inbox so the composer "From" stays put
    * New email template slots: {{agent_name}} and opt-in {{quoted_content}}, now copyable chips
    * Jump straight to the linked Zendesk ticket from the session side panel
    * Twilio Flex: save settings without re-provisioning and sync chosen task attributes onto the contact
    * New option to disable the inbox notification sound
  </Expandable>

  <Expandable title="Improvements">
    * Faster, smoother dashboard first load — themed splash, lighter startup, automatic recovery after deploys
    * Email intake hardening: Gmail-misfiled spam is pulled in and expired mailbox connections recover automatically
    * "Assumed resolved" sessions now display as Resolved everywhere
  </Expandable>

  <Expandable title="Fixes">
    * Re-rating a CSAT survey keeps score history visible, attaches follow-up feedback to the latest score, and never wipes a saved comment
    * Zendesk no longer creates duplicate tickets when the AI resolves a session, and closes survive conditional required-field cascades
    * Workflow internal notes post to Salesforce as unpublished comments, invisible to customers
    * Email threading: the invisible reference token is hidden, replies no longer fork new sessions, and Outlook Web quotes strip cleanly
    * AI suggestions are never quoted back at the customer in email replies
    * Fixed an inbox freeze caused by empty attribute filter values
    * Reply attachments from workflows are persisted on the session timeline
    * Voice agents stop interrupting callers who dictate numbers slowly
  </Expandable>
</Update>

<Update label="August 2, 2026">
  ## Block abusive visitors by IP

  Settings → Autopilot now has a Blocked IPs list alongside blocked contacts and domains. Block a single address or a whole CIDR range and that visitor can no longer reach your AI assistant — useful when someone keeps creating throwaway contacts, so contact- and domain-blocking never bite.

  <Expandable title="Features">
    * Block a single IP (203.0.113.7) or a CIDR range (203.0.113.0/24), IPv4 and IPv6
    * Once a session is seen from a blocked address the block applies on every channel
    * Write your own message for blocked visitors, or keep the default
    * Manage the list from the API and MCP tools alongside blocked contacts and domains
  </Expandable>

  <Expandable title="Improvements">
    * The real visitor IP is now read from Cloudflare’s CF-Connecting-IP header, which cannot be forged by the client
  </Expandable>

  <Expandable title="Fixes">
    * Blocked visitors no longer get an "Internal Server Error" in the widget — they now see a short message explaining they cannot contact the company right now
  </Expandable>
</Update>

<Update label="July 27, 2026">
  ## Enterprise SSO with SAML and OIDC

  Sign in through your own identity provider — Okta, Entra, OneLogin, and friends — with DNS-verified domains and just-in-time provisioning that grants new users a least-privilege role.

  <Expandable title="Features">
    * Enterprise SSO via SAML or OIDC with just-in-time provisioning, managed from Settings → Security
    * Every phone call is now its own record with a dedicated bubble in the session timeline
    * CSAT for Zendesk conversations — surveys delivered as a Sunshine link
    * Infobip: AI-queue conversations are claimed automatically when the chatbot releases them
    * Tag and category search on the public API and MCP list tools
  </Expandable>

  <Expandable title="Improvements">
    * Workflow editor: one-click auto-layout, hovered-node path highlighting, and cleaner else-branch layout
    * OpenCX skips its own CSAT when Zendesk already offered a survey on the ticket
    * Companion writes better agent profiles and grounds onboarding test sessions in your knowledge base
    * The voice picker now lists only proven voices
  </Expandable>

  <Expandable title="Fixes">
    * Fixed an inbox crash for users browsing with Google Translate enabled
    * Pasting an item title into AI-instructions search now finds it, and pasted text stays readable in dark mode
    * Ticket-resolved workflows fire even when closing the external ticket fails
    * Public blocklist endpoints attribute blocks to the API token actor instead of failing
  </Expandable>
</Update>

<Update label="July 22, 2026">
  ## Crawl password-protected websites

  The website crawler can now sign in to your protected sites. Add HTTP Basic, bearer token, cookie, or custom-header credentials to a website datasource and every crawl authenticates automatically — credentials are encrypted at rest and never shown again after saving.

  <Expandable title="Features">
    * Crawl sites behind HTTP Basic, bearer tokens, cookies, or custom headers
    * Credentials are encrypted at rest and never returned by the API or dashboard
    * Set, replace, or clear site authentication via the Crawl API and MCP tools
  </Expandable>
</Update>

<Update label="July 22, 2026">
  ## See how your team adopts Companion

  <Frame>
    <img src="https://platform.open.cx/changelog/companion-adoption.jpg" alt="The Companion Adoption report — active teammates, sessions, and what teammates use Companion for" />
  </Frame>

  A new Companion Adoption report shows how your team uses the AI copilot — active teammates against seats, sessions and turns, what they use it for, and escalations to the OpenCX team.

  <Expandable title="Features">
    * New Companion Adoption report under Reports
    * Active teammates vs. seats, sessions, and average turns per session
    * A breakdown of what teammates actually use Companion for
    * Escalations to the OpenCX team, tracked over time
  </Expandable>
</Update>

<Update label="July 14, 2026">
  ## Analytics, rebuilt for speed

  <Frame>
    <img src="https://platform.open.cx/changelog/impact-dashboard-fast.jpg" alt="The Impact Dashboard loading instantly on a high-volume workspace" />
  </Frame>

  The Impact Dashboard is now much faster. It loads in moments, even with millions of conversations, and Companion’s analytics and the dashboards you build with it got the same speed boost.

  <Expandable title="Improvements">
    * The Impact Dashboard loads in moments, even on the busiest workspaces
    * Companion answers your analytics questions faster
    * Dashboards you build with Companion stay fast as your data grows
  </Expandable>
</Update>

<Update label="July 6, 2026">
  ## Introducing Companion Apps

  <Frame>
    <video src="https://platform.open.cx/changelog/mini-apps.mp4" autoPlay muted loop playsInline />
  </Frame>

  Now you can build your own tools right inside the platform. Describe the dashboard or inbox widget you want, and Companion turns it into a working app in minutes, shaped around how your team works.

  ### Custom reports for the metrics that matter

  <Frame>
    <img src="https://platform.open.cx/changelog/companion-apps-dashboard.jpg" alt="A custom reports dashboard built with Companion" />
  </Frame>

  Track resolution, CSAT, SLAs, and cost the way your team measures them. Describe the custom report or dashboard you want, and Companion builds it on your live data — the answers you need, ready in minutes.

  * See where conversations resolve, stall, or escalate
  * Go from a question to an answer in minutes

  ### Faster resolutions, without the tab-switching

  <Frame>
    <img src="https://platform.open.cx/changelog/companion-apps-widget.jpg" alt="A delivery map widget pinned beside a conversation in the inbox" />
  </Frame>

  Bring the exact context a conversation needs into the inbox — order status, a live delivery map, account history — so agents answer on the spot instead of digging through other tools.

  * Cut handle time with the context already in reach
  * Surface live order, delivery, and account details
</Update>

<Update label="July 1, 2026">
  ## Ask Companion any analytics question

  <Frame>
    <img src="https://platform.open.cx/changelog/companion-report-query.jpg" alt="Companion answering a custom analytics question" />
  </Frame>

  When the built-in reports don’t cover it, Companion now runs the analysis for you — custom breakdowns, percentiles, trends, and cross-cuts over your conversations, CSAT, SLA, agents, and tags. Just ask in plain language.

  <Expandable title="Features">
    * Ask Companion the questions the standard reports don’t answer — “median handle time by channel last month”, “CSAT vs queue-wait by channel”, “SLA breach rate by team” — and it computes the answer over your live data
    * Covers custom breakdowns, percentiles, correlations, and time-bucketed trends across sessions, messages, CSAT, SLA, agents, contacts, and tags
  </Expandable>
</Update>

<Update label="June 29, 2026">
  ## Companion can now run your actions

  Ask Companion to run one of your actions and it makes the real request for you — with your confirmation — then shows you the response. It can run your workflows too.

  <Expandable title="Features">
    * Companion can run a configured action on your behalf — it makes the action’s real HTTP request and returns the response, always asking you to confirm first
    * Companion can run your workflows the same way
    * Run an action or workflow with a conversation’s in-session context — its org variables, contact identity, and headers — so it behaves exactly as it would for the AI agent
  </Expandable>
</Update>

<Update label="June 28, 2026">
  ## See which Instructions, Knowledge, and Actions your AI uses

  Every AI reply now records the Instructions, Knowledge Base articles, and Actions it drew on. Each one gets a usage view — how often it was available to the AI versus actually used, the handoffs tied to it, and the conversations that used it — and you can filter your inbox by them.

  <Expandable title="Features">
    * Every AI Instruction, Knowledge Base article, and Action now has a usage view — Available (the AI had it in context), Used (it actually applied or cited it), and the related Handoffs
    * Open the list of conversations that used a given Instruction, Action, or KB article and jump straight into any of them in the inbox
    * Filter a resource's usage by date range
    * Filter conversations by the Instructions, Actions, or Knowledge Base articles the AI used in them
  </Expandable>
</Update>

<Update label="June 5, 2026">
  ## Freshdesk ticketing, HubSpot AI fields, and richer session exports

  Connect Freshdesk as a ticketing system, let AI fill your configured HubSpot fields, and export sessions with your own custom data columns — with live progress while the export runs.

  <Expandable title="Features">
    * Freshdesk ticketing integration — connect Freshdesk and hand conversations off as tickets
    * HubSpot AI fields — the AI fills in your chosen HubSpot ticket and contact fields when it hands off or resolves a conversation, and the values show in your inbox
    * In HubSpot assist mode, conversations about topics you choose can go straight to the AI for a public reply
    * Add your own custom data columns to session exports — for both conversations and contacts
    * Your existing custom data keys are suggested as you type when setting up export columns
    * Session exports include handoff reason and explanation columns
    * Get notified when a session export finishes — the notification takes you straight to it
    * Session export filters now match the inbox, with a preview of the file before you export
    * Archive policies — archived insights keep tracking new conversations and alert you when an issue comes back
    * Approve or reject suggested insight categories in bulk
    * AI summaries for phone calls
    * Infobip conversations are labeled when the AI hands off or resolves, so your team can spot AI activity at a glance
    * Actions can now be enabled for the API channel
    * Create a session and its contact in one API call, including custom data on both
    * Session custom data is now available on the public session API
  </Expandable>

  <Expandable title="Improvements">
    * Session exports show live progress with a count and estimated time remaining
    * Large session exports are faster and more reliable
    * Email replies thread into the right conversation more reliably
    * Conversation tags are applied more carefully, following each tag's description
    * Voice agents handle interruptions more naturally
    * Better dark mode for phone agents
  </Expandable>

  <Expandable title="Fixes">
    * Fixed cases where the AI replied twice to the same customer message or reopened a resolved conversation
    * Pre-handoff workflows run once per handoff, even when messages arrive in quick succession
    * Conversations are only assigned to you when you actually start writing a reply
    * Conversations with no messages yet now show up in inbox filters, counts, and exports
    * Macros keep their line breaks when you reopen them for editing
    * Incoming email replies no longer include quoted history from earlier messages
    * Closing a conversation in the dashboard now closes the linked Zendesk ticket
    * Conversations whose Zendesk ticket was already closed no longer run into errors
    * The AI now reads the email subject on Zendesk email tickets
    * Conversations closed by a workflow are no longer counted as resolved by the AI
    * Fixed duplicate AI replies in Twilio Flex conversations — messages are now processed directly, so customers get a single timely response
    * Rapid messages on WhatsApp, Instagram, and Messenger no longer create duplicate contacts or conversations
    * Images and files sent over Infobip now arrive in the inbox, and the handoff message reaches the customer before the conversation moves to a human agent
    * Tag names with unsupported characters are rejected when created, so a bad tag can no longer stop the AI from replying
    * Publishing AI instructions works reliably again
    * Reports load reliably and match the dashboard theme
    * Editing AI instructions and the AI profile now requires the right permission — others get a read-only view
    * Voice agents pronounce spelled-out letters correctly in Spanish, support Arabic dialect voices, and no longer prompt for input mid-transfer
  </Expandable>
</Update>

<Update label="June 4, 2026">
  ## Excluding a page now removes it from your AI

  When you exclude a crawled page — or add an exclude rule to a website source — its content is removed from your knowledge base, so your AI stops answering from pages you meant to hide.

  <Expandable title="Fixes">
    * Excluding a crawled page deletes its content from your AI instead of leaving it citable
    * Adding an exclude path now cleans up already-crawled pages that match it
    * Re-including a page requeues it for the next crawl to rebuild its content
  </Expandable>
</Update>

<Update label="May 29, 2026">
  ## Keep insight categories organized — and catch issues when they come back

  Up to 150 insight categories with a usage meter. Companion helps merge duplicates. Resolved issues reopen when they happen again, and you can see similar insights at a glance.

  <Expandable title="Features">
    * Up to 150 categories with a usage bar and a warning when you are at the limit
    * Create, edit, approve, or merge categories from Companion
    * Companion can guide you through cleaning up duplicate categories at scale
    * Similar insights at the bottom of each insight shows related themes
    * Resolved insights reopen automatically when the same issue happens again
  </Expandable>

  <Expandable title="Improvements">
    * Category settings stay fast with long lists
    * Sensible limits on category name and description length
    * Insight analysis stays reliable with many categories
    * Usage meter shows a loading state while counts update
  </Expandable>
</Update>

<Update label="May 29, 2026">
  ## Talk about insights with your team

  Comment on insights like the inbox — threads, @mentions, notifications, and jump to the right comment from a notification.

  <Expandable title="Features">
    * Comment threads on insights with @mentions and reply notifications
    * Notifications take you to the exact comment with a brief highlight
  </Expandable>

  <Expandable title="Fixes">
    * Comments show up right away when you open a discussion
    * @mention menu works on all training content
    * Reply notifications show the right title on desktop
  </Expandable>
</Update>

<Update label="May 29, 2026">
  ## Schedule when AI instructions apply

  Set start and end dates for AI instructions. Before you publish, see what is scheduled, live, or already past.

  <Expandable title="Features">
    * Pick date and time windows when each instruction is active
    * Scheduled instructions apply to voice and when copying settings to another workspace
    * Draft view groups instructions as scheduled, active, or expired
  </Expandable>

  <Expandable title="Fixes">
    * Date picker does not fill in an end date until you are ready
    * Publishing schedule-only changes does not create stray drafts
  </Expandable>
</Update>

<Update label="May 25, 2026">
  ## Smarter email and Twilio Flex in the inbox

  Control how each email channel handles mail, use reusable templates, and see Twilio Flex agent messages in the inbox.

  <Expandable title="Features">
    * Choose how each email channel handles incoming mail
    * Email replies land on the right conversation more reliably
    * Reusable email templates you can manage and use with Companion
    * Twilio Flex agent messages show in the inbox like other agent replies
  </Expandable>

  <Expandable title="Improvements">
    * Voice agents recognize your product names and jargon more accurately
    * See why a conversation was assigned to a particular agent or team
  </Expandable>
</Update>

<Update label="May 25, 2026">
  ## Start WhatsApp chats from the dashboard, plus new workflow steps

  Open a new WhatsApp conversation from the dashboard. Workflows can run in order, assign smarter, and pull data from pages, documents, and spreadsheets.

  <Expandable title="Features">
    * Start a new WhatsApp conversation from the dashboard
    * Run workflow steps in order when a ticket is created
    * Auto-assign can pick the right team, then assign an agent
    * New steps: fetch a webpage, parse a document, read spreadsheets
    * HubSpot workflows can create more than one ticket per conversation when enabled
  </Expandable>

  <Expandable title="Improvements">
    * Workflow run history loads faster for workflows with many branches
  </Expandable>

  <Expandable title="Fixes">
    * Intercom: fewer duplicate or out-of-order replies after handoff
    * Front: conversations stay unassigned after AI replies when they should
    * WhatsApp: contacts with the same phone number no longer duplicate
    * Inbox filters work with numeric custom fields
  </Expandable>
</Update>

<Update label="May 18, 2026">
  ## Clearer roles and billing in settings

  Roles and permissions are easier to manage. Billing connects to Stripe for simpler subscription handling (for admins).

  <Expandable title="Features">
    * Redesigned roles and permissions — easier to see who can do what
    * Billing tied to Stripe with straightforward subscription management for admins
  </Expandable>

  <Expandable title="Improvements">
    * Team page shows role names instead of long permission lists
    * Billing overview focuses on paying customers by default
  </Expandable>

  <Expandable title="Fixes">
    * Admins see canceled, paused, and overdue subscriptions when linking billing
    * Billing page no longer shows Free plan when a paid subscription exists
  </Expandable>
</Update>

<Update label="May 18, 2026">
  ## Infobip, WhatsApp surveys, and a better inbox

  Infobip as a channel, WhatsApp satisfaction surveys with tap-to-rate lists, filter by external ticket ID, resize the reply box, and send files without a message.

  <Expandable title="Features">
    * Infobip Conversations as a support channel
    * Customer satisfaction surveys on WhatsApp with tap-to-rate lists
    * Filter conversations by external ticket ID
    * Resize the reply box; add internal notes anywhere; send attachments without text
    * HubSpot can create tickets without contact email or phone when you allow it
    * Images in Freshchat show inline for agents and customers
  </Expandable>

  <Expandable title="Improvements">
    * Zendesk auto-fill works with more field types
    * Zendesk custom fields update more reliably
    * Auto-tagging considers attachments
    * Choose what happens when the AI detects a prohibited topic — per channel
    * Azerbaijani and Bengali added as supported languages
    * Workflow editor autocomplete works reliably again
  </Expandable>

  <Expandable title="Fixes">
    * Zendesk conversations no longer look AI-assigned when the AI will not reply
    * Long URLs and emails truncate cleanly in the conversation list
  </Expandable>
</Update>

<Update label="May 11, 2026">
  ## Companion answers faster and shows more as it works

  Companion starts quicker, shows rich updates while it works, and lets you keep typing. Look up help on docs.open.cx when you are stuck.

  <Expandable title="Features">
    * First message in Companion lands faster
    * See structured updates in the chat as Companion works
    * Keep typing while Companion is running; progress shows between steps
    * Ask Companion to look up answers on docs.open.cx
  </Expandable>

  <Expandable title="Fixes">
    * Switching chats no longer shows duplicate Companion messages
    * Very long opening messages no longer fail to send
    * Companion shows its reasoning again, including AI Identity help
  </Expandable>
</Update>

<Update label="May 11, 2026">
  ## Freshchat routing, shared settings, and macros that run workflows

  Shared workspace settings, smarter Freshchat handoffs and tags, macros that start workflows, and more control over assignments.

  <Expandable title="Features">
    * One set of workspace settings for the whole team
    * Freshchat handoffs can route to a specific group
    * Freshchat tags stay in sync with channel and group names
    * Workflows can start when an agent sends a macro
    * Unassign open conversations; react when agents go available or away
    * Pick which Front signature AI replies use
    * Set how many AI chats Twilio Flex can handle at once
    * Agent-reply webhooks include assignee and custom contact fields
  </Expandable>

  <Expandable title="Improvements">
    * Message bubbles are easier to read
    * The AI sees attachment names and types
    * Clearer phone keypad tones during voice calls
  </Expandable>

  <Expandable title="Fixes">
    * Freshchat handoffs and agent lookup are more reliable
    * Front AI replies no longer accidentally archive conversations
    * Saving Sunshine settings no longer clears your Zendesk connection
  </Expandable>
</Update>

<Update label="May 6, 2026">
  ## From blank workspace to live AI — guided by Companion

  <Frame>
    <img src="https://platform.open.cx/changelog/companion-onboarding.jpg" alt="Onboarding panel with three numbered steps: Discover & Train, Go Live, Grow" />
  </Frame>

  Three new flows in Companion: a guided onboarding path, plan-first execution, and live test sessions. Setup to shipped, all in one chat.

  ### Plan first, then act

  <Frame>
    <img src="https://platform.open.cx/changelog/companion-planning-mode.jpg" alt="Expanded Starting plan with 17 steps: Set up AI Identity, Crawl open.cx, Create folders, Instructions for channels, pricing, security, handoff, and a final Publish step" />
  </Frame>

  Every multi-step ask gets a fully itemized plan up-front. Approve, edit, or stop — Companion never moves on its own.

  * Itemized plan up-front for every substantial ask
  * Live progress counter ticks as steps execute
  * Stop or redirect at any step

  ### Test before you ship

  <Frame>
    <img src="https://platform.open.cx/changelog/companion-test-sessions.jpg" alt="Companion chat on the left with a Test conversation card; live widget on the right showing the AI replying to a Test Customer" />
  </Frame>

  Spin up a real customer-side widget next to the chat. See exactly how the AI responds, then train where it falls short.

  * Real widget, real AI — same tools, same responses
  * Side-by-side: Companion on the left, Test Customer on the right
  * Companion reads the transcript and recommends concrete fixes

  <Expandable title="Features">
    - Three-step path — Discover & Train, Go Live, Grow — driven by Companion
    - Progress derives from your real workspace state, not checkboxes
    - One panel everywhere — chat, empty inbox, landing page
  </Expandable>
</Update>

<Update label="May 6, 2026">
  ## Group your inbox by channel, assignee, status, language, or team

  Add a Group By to any inbox view and the session list collapses into labelled sections — grouping by channel, assignee, status, AI status, language, or support team. Saved on the view, so the grouping comes back the next time you open it.

  <Expandable title="Features">
    * New Group By control in the filter menu — pick from channel, assignee, status, AI status, language, or support team
    * Group selection is part of the view, so it persists across reloads and across teammates with access to the view
    * Group headers are compact and tighten the spacing between groups so you see more sessions at a glance
  </Expandable>

  <Expandable title="Improvements">
    * Inbox loads more sessions per group when a Group By is active, so you don't see truncated buckets
  </Expandable>
</Update>

<Update label="May 6, 2026">
  ## Saved replies now support variables

  Drop variables (macros) into a saved reply and they fill in from the session at send time — contact name, ticket number, agent name, and more. Edit existing replies and add variables from the same place you create them.

  <Expandable title="Features">
    * Insert variables when authoring a saved reply; they resolve against the active session at send time
    * Saved replies editor refreshed — fixes overflow on long replies and drops slow-loading empty states
  </Expandable>
</Update>

<Update label="May 6, 2026">
  ## Personalize how the inbox sends messages — per channel

  A new Personalization settings page lets each agent pick how they send messages on each channel. Choose Enter or Cmd+Enter as the send shortcut per channel, and the active shortcut shows up right on the send button.

  <Expandable title="Features">
    * New Personalization settings group — per-channel send shortcut preference (Enter or Cmd+Enter)
    * The send button shows the active shortcut inline, so you always see how the next message will be sent
  </Expandable>

  <Expandable title="Improvements">
    * Settings sidebar regrouped — Notifications now lives under a new Personalization section
    * Cleaner shortcut dropdowns: monospace kbd labels, tighter spacing, no redundant separators
  </Expandable>
</Update>

<Update label="May 6, 2026">
  ## Inbox shows messages in the agent's language by default

  Translated messages are now what the agent sees by default — and what the customer sees by default for outbound replies — so you don't need to click into each message to reveal the translation. A "Show original message" action is one click away on every message.

  <Expandable title="Improvements">
    * Bubble renders the translated message by default; one click reveals the original
    * URL previews now match the displayed (translated) text, so the link chips line up with the bubble
  </Expandable>

  <Expandable title="Fixes">
    * Outbound agent replies in the inbox now show the original (workspace-language) version, not the translated one shipped to the customer
  </Expandable>
</Update>

<Update label="May 5, 2026">
  ## Inbox messages send instantly

  Agent replies now render the moment you hit send — no more waiting for the round trip. The optimistic message is reconciled with the server in the background and dedupes cleanly when the real message arrives.

  <Expandable title="Improvements">
    * Agent messages render optimistically and reconcile against the server response — no flicker, no duplicates, no avatar swap
    * Outbound socket payload carries a client-generated UUID for clean dedup
  </Expandable>
</Update>

<Update label="May 5, 2026">
  ## Custom views: drag to reorder, filter by current user

  Drag custom views in the view selector to reorder them — order persists per-org. And every view that filters by assignee can now use a dynamic Current User token, so one shared "My open tickets" view works for the whole team.

  <Expandable title="Features">
    * Drag and drop custom views in the view picker (via a dedicated Reorder dialog) — order is saved per-org
    * New Current User option in the assignee filter — saves a single view that means "assigned to me" for whoever opens it
  </Expandable>

  <Expandable title="Improvements">
    * Team management modal and tab state now sync to the URL — bookmark `/settings/groups?team=<id>&tab=members` and land back on the same screen
  </Expandable>
</Update>

<Update label="May 5, 2026">
  ## Per-channel control over agent assignment on handoff

  Each channel now has its own assign-on-handoff toggle. Hand off in WhatsApp without auto-assigning to an agent while keeping auto-assignment on for email — or vice versa.

  <Expandable title="Features">
    * New per-channel `assign_on_handoff` setting in the rollout strategy modal
    * Handoff service respects the per-channel toggle before auto-assigning
  </Expandable>

  <Expandable title="Fixes">
    * Handoff settings now respect the Web channel config for API and Web Voice channels (instead of silently coupling to a different bucket)
  </Expandable>
</Update>

<Update label="May 5, 2026">
  ## Faster, more accurate voice transcription

  The voice agent pipeline switches to Deepgram Flux for Western languages and Nova 3 for Arabic — a notable accuracy bump on alphanumerics and account-number reads, with lower latency than the previous OpenAI realtime path.

  <Expandable title="Improvements">
    * Deepgram Flux for Western languages, Nova 3 for Arabic — better alphanumeric accuracy and lower latency
    * Flux now runs through LiveKit Inference for unified routing and direct Deepgram fallback
  </Expandable>
</Update>

<Update label="May 5, 2026">
  ## New workflow building blocks

  Five new pieces of workflow plumbing land together: a Contact Message Received trigger, a Reopen Ticket action that walks the official status path, an Apply Custom Status action, a Release Session From Capacity action that frees up an agent slot until the customer replies, and an Inactive Trigger improvement that ignores the workflow's own outbound messages.

  <Expandable title="Features">
    * New Contact Message Received trigger — fires on every inbound contact message with the ticket and message text
    * New Reopen Ticket action — reopens a closed session through the official status path so SLA, system rows, and inactivity timers are correctly inserted
    * New Apply Custom Status action — set a sub-status without changing the main status
    * New Release Session From Capacity action — temporarily frees an agent's capacity slot until the customer replies again
    * Get Ticket Agent action returns nullable fields when there is no assignee, so it no longer throws inside no-assignee branches
    * New `callFinishedBy` field on the Call Finished trigger payload, so workflows can branch on who ended the call
  </Expandable>

  <Expandable title="Improvements">
    * Workflow editor auto-fills canonical action inputs (e.g. ticket number) from the trigger payload at drop time
    * Save validation now reports every missing required action input — Fix-to-jump on each error
    * Action node cards humanize their inputs with one row per field — long values truncate instead of blowing up the card
    * Custom Status / Apply / Release / Reopen actions now clear `sub_status_id` on every status change for consistency
  </Expandable>

  <Expandable title="Fixes">
    * Customer-inactive trigger no longer schedules itself off its own workflow message inserts (no more infinite loops)
    * Customer-inactive trigger no longer arms on AI replies — only on real agent messages and inbound contact messages
  </Expandable>
</Update>

<Update label="May 4, 2026">
  ## Export your AI knowledge base as CSV

  Export your AI Instructions tree as CSV — full export from the section header, or scoped per-folder from any folder's hover menu. Filename includes the folder slug, and a confirm dialog previews the file before download.

  <Expandable title="Features">
    * New Export as CSV action on AI Instructions — full or per-folder, with a preview dialog showing filename, count, and column badges
    * Per-folder export filenames slug the folder name (`ai-instructions-{slug}-YYYY-MM-DD.csv`) so multi-folder dumps don't collide
  </Expandable>
</Update>

<Update label="May 4, 2026">
  ## Smarter, fairer agent distribution

  Agent routing now factors in released-from-capacity sessions as a tiebreaker — agents with fewer paused conversations get the next ticket when capacity is otherwise tied. When agents are completely tied, distribution randomizes instead of always picking the first one.

  <Expandable title="Improvements">
    * Released-from-capacity sessions are excluded from team and global capacity counts until the customer replies again
    * Tiebreaker order: most remaining capacity → fewest released sessions → random pick when fully tied
    * Agent availability picker now searches by `name` (matches the backend DTO) and returns up to 250 agents
  </Expandable>
</Update>

<Update label="May 3, 2026">
  ## FreshChat: AI replies on assignment, lifecycle events, and webhook fixes

  The FreshChat integration now mirrors Intercom — the AI starts replying as soon as a conversation is assigned to it, and lifecycle events (resolution, reopen, assignment) flow through correctly with the right system messages and SLA bookkeeping.

  <Expandable title="Features">
    * AI starts replying on `conversation_assignment` to our agent, replaying any pre-assignment messages
    * Conversation resolution renders as a system event in the timeline (matches the Front integration convention)
    * Conversation reopen flips the OpenCX session back to OPEN, inserts the AGENT\_REOPENED\_SESSION row, and resumes SLA + inactivity timers — across every matching session, not just the first
    * Webhook URL is now copyable from the FreshChat settings page
  </Expandable>

  <Expandable title="Fixes">
    * Workflow Close Ticket action now routes through FreshChatService.closeConversation when a `freshchat_conversation_id` is present, instead of failing with `UNEXPECTED_ERROR`
    * Self-close webhook echo no longer writes a duplicate "Conversation was closed in FreshChat" lifecycle event
    * Webhook action names match the FreshChat docs (`conversation_assignment`, `conversation_resolution`, `conversation_reopen`)
    * Transport errors from `getAgentByEmail` now propagate so FreshChat retries — they no longer silently drop assignment events
  </Expandable>
</Update>

<Update label="May 3, 2026">
  ## Describe your tags so the AI auto-tagger picks the right one

  Add a short description to each tag and the AI auto-tagger uses it as taxonomy guidance — picking the right tag when the name alone is ambiguous.

  <Expandable title="Features">
    * Add an optional one-sentence description when creating or editing a tag
    * Available everywhere you manage tags: the dashboard, the public API, and the @opencx/mcp tools
  </Expandable>

  <Expandable title="Improvements">
    * Tag management page redesigned: rounded pills, hover the tag to see its description, and a confirmation step before deleting
  </Expandable>
</Update>

<Update label="May 3, 2026">
  ## Contact segments in the public API, MCP, and workflows

  Read your contact segments and check membership from anywhere — the public API, the @opencx/mcp tools, or a new workflow action that branches on whether a contact is in a given segment.

  <Expandable title="Features">
    * New public-API endpoints: list segments, get a segment, list every segment a contact is in, and check membership for a (segment, contact) pair — all gated by the contacts:read scope
    * New @opencx/mcp tools wrapping those endpoints: list\_contact\_segments, get\_contact\_segment, list\_segments\_for\_contact, and check\_contact\_in\_segment — available in v1.11.0
    * New "Check Contact In Segment" workflow action with a lazy segment picker; returns isMember so you can branch downstream with an if step
  </Expandable>
</Update>

<Update label="April 30, 2026">
  ## Trigger workflows when human agents go quiet

  <Frame>
    <img src="https://platform.open.cx/changelog/agent-inactive-trigger.jpg" alt="Workflow canvas with a Human Agent Inactive trigger connected to an outbound reply action" />
  </Frame>

  A new workflow trigger fires when a human agent hasn't acted on a ticket for a chosen window — minutes, hours, or days. Wire it to any action to auto-reply with a check-in, hand the conversation back to AI, change ticket status, or escalate to a teammate.

  <Expandable title="Features">
    * New "Human Agent Inactive" trigger fires when an assigned human agent hasn't replied for a configurable window
    * Pick the inactivity window in minutes, hours, or days — defaults to 20 minutes
    * Wire it to any action — automated outbound reply, change ticket status, hand back to AI, notify a teammate
  </Expandable>
</Update>

<Update label="April 30, 2026">
  ## Custom email template per address

  <Frame>
    <img src="https://platform.open.cx/changelog/email-template-per-address.jpg" alt="Email channel configuration page with Sender Name field and HTML template editor" />
  </Frame>

  Each connected email address now has its own HTML template. Wrap outbound replies in your own branded chrome — header, footer, ticket number, and quoted thread — using a small set of placeholders, configured independently per address.

  <Expandable title="Features">
    * Set a custom HTML template per email address from a new dedicated configuration page
    * Slot in the message body, prior thread, ticket number, and locale with `{{content}}`, `{{quoted_content}}`, `{{ticket_number}}`, and `{{lang}}` placeholders
    * Validation catches a missing `{{content}}` placeholder before the template saves
    * Falls back to a clean default template when none is set — existing addresses keep working untouched
  </Expandable>
</Update>

<Update label="April 19, 2026">
  ## Share custom views with your team

  <Frame>
    <img src="https://platform.open.cx/changelog/custom-views-permissions.jpg" alt="Custom view dialog with users and teams permission pickers" />
  </Frame>

  Custom views now have permissions. Pick who can see a view — specific users, specific teams, or everyone in the org — and pick who can edit or delete it. Tweaking filters on a saved view keeps the view selected with an "(Unsaved changes)" indicator, so you never lose your place.

  <Expandable title="Features">
    * Share a view with specific users, specific teams, or the whole org
    * Restrict editing and deleting to specific users or teams — the creator can always edit
    * New Save, Save as, and Create actions in the view picker, with a confirmation dialog before overwriting a shared view
    * Edit a view's filters, sorting, and permissions from one dialog
  </Expandable>

  <Expandable title="Improvements">
    * Changing filters on a saved view now keeps the view selected and shows "(Unsaved changes)" instead of dropping you onto a temporary view
    * Unsaved filter edits survive a page reload
    * Edit and delete buttons on views you don't own are disabled with a tooltip explaining why
    * Adding someone as an editor automatically adds them as a viewer
  </Expandable>
</Update>

<Update label="April 18, 2026">
  ## Build advanced session filters

  <Frame>
    <img src="https://platform.open.cx/changelog/sessions-filter-builder.jpg" alt="Advanced session filter builder with AND/OR conditions" />
  </Frame>

  A new filter builder for the inbox — combine any number of conditions with AND/OR groups to slice your sessions exactly how you want. Save the result as a custom view and come back to it with one click.

  <Expandable title="Features">
    * Build filters by stacking clauses — pick a field, an operator, and a value
    * Group clauses with AND/OR to express complex queries that used to require a custom view
    * Filter on channel, assignee, contact, custom data, created date, AI status, tags, and more from one unified menu
    * Save any filter as a custom view and reuse it across the team
  </Expandable>
</Update>

<Update label="April 17, 2026">
  ## Try the widget before you install it

  <Frame>
    <img src="https://platform.open.cx/changelog/widget-playground.jpg" alt="Widget Playground with live preview and copy-ready snippet" />
  </Frame>

  A new interactive Playground in the docs lets you tune every widget option in a live form and copy a ready-to-paste React or HTML snippet. No install, no dashboard — tweak, preview, copy.

  <Expandable title="Features">
    * Tweak theme, launcher size/offset, first-visit messages, and more in a live form — the widget updates instantly
    * Swap between a React component snippet and an HTML `<script>` snippet, each prefilled with your current settings
    * One-click copy — paste straight into your codebase
    * Launch a full preview in a site-style frame to feel the widget exactly as your customers will
  </Expandable>
</Update>

<Update label="April 16, 2026">
  ## Connect multiple FareHarbor accounts to one org

  Tour operators with multiple locations, brands, or currency accounts can now connect each one as a separate FareHarbor integration. The AI picks the right connection automatically based on what the customer is asking about.

  <Expandable title="Features">
    * Add multiple FareHarbor connections per organization — one per location, brand, or currency account
    * Each connection has its own API keys, default company, and AI action toggles
    * The AI routes bookings to the right connection automatically, asking only when the request is ambiguous
    * Single-connection setups are unchanged — no extra prompts, same behavior as before
  </Expandable>
</Update>

<Update label="April 15, 2026">
  ## See every change Companion makes, right in the chat

  <Frame>
    <img src="https://platform.open.cx/changelog/coworker-artifact-cards.jpg" alt="Companion showing artifact cards after editing instructions" />
  </Frame>

  Ask Companion to update your instructions, training scenarios, or documents — and it shows you a card for each change, right in the conversation. Click any card to open and review exactly what was updated. No more guessing what got changed.

  <Expandable title="Features">
    * After Companion edits anything, a card appears in the chat — click it to open and review the change
    * When Companion updates multiple files at once, they appear in a single card with tabs so you can flip between them
    * More tools available to Companion, with clearer descriptions so it picks the right one every time
  </Expandable>

  <Expandable title="Improvements">
    * Smoother loading animations while Companion is working
    * The review toolbar no longer overlaps the Companion chat window
  </Expandable>

  <Expandable title="Fixes">
    * Fixed several actions that were occasionally failing — sending messages, managing team members, fetching workflows, and filtering sessions
    * Companion can now access audit logs
    * Overall reliability improvements — Companion completes tasks more consistently with fewer interruptions
  </Expandable>
</Update>

<Update label="April 12, 2026">
  ## PDF attachments for the AI

  <Frame>
    <img src="https://platform.open.cx/changelog/widget-pdf-upload.jpg" alt="Chat widget with PDF invoice attached and AI answering using the document" />
  </Frame>

  Customers can send PDFs in chat and your AI can use them to answer questions.

  <Expandable title="Features">
    * The AI can read PDFs attached to customer messages, with documents processed for conversation context.
  </Expandable>
</Update>

<Update label="April 9, 2026">
  ## Companion

  A senior support ops expert that lives inside your dashboard. Six specialized skills, 140+ tools, and deep context awareness — all from a single conversation.

  ### A dedicated home for your AI assistant

  <Frame>
    <img src="https://platform.open.cx/changelog/ask-open-dedicated.jpg" alt="Companion dedicated page" />
  </Frame>

  Companion gets its own page with a personalized greeting that adapts to your day. Smart suggestion cards surface exactly what needs attention — automation rate drops, unresolved sessions, knowledge gaps, low CSAT scores — so you always know where to start.

  * Personalized greeting based on your name, time of day, and top priorities
  * Smart suggestion cards that surface automation trends, handoff spikes, and knowledge gaps
  * Recent conversation history in the sidebar for quick context switching

  ### Automation strategist — diagnose performance drops

  <Frame>
    <img src="https://platform.open.cx/changelog/ask-open-automation.jpg" alt="Companion analyzing automation rate trends" />
  </Frame>

  Ask "why did automation drop this week?" and get a concrete answer backed by data. Companion analyzes handoff reasons, tracks trends over time, and identifies root causes — whether it's an instruction change, a new topic the AI doesn't know, or an integration error.

  * Real-time automation and handoff analytics with trend detection
  * Root cause analysis — instruction changes, knowledge gaps, integration errors
  * Handoff reason breakdowns with specific session examples
  * Proactive suggestions to improve resolution rates

  ### Training expert — rewrite instructions in chat

  <Frame>
    <img src="https://platform.open.cx/changelog/ask-open-training.jpg" alt="Companion editing AI instructions with inline diff" />
  </Frame>

  Tell Companion what you want to change and it rewrites your AI instructions with inline diffs you can accept or reject. Create new instructions, edit existing ones, manage folders, and publish — all without leaving the conversation. Full version history means you can always roll back.

  * Inline diff mode — see exactly what changed before accepting
  * Create, edit, publish, and unpublish instructions from chat
  * Manage instruction folders and visibility in bulk
  * Full version history with one-click revert on every change

  ### Session investigator — debug any conversation

  <Frame>
    <img src="https://platform.open.cx/changelog/ask-open-session.jpg" alt="Companion investigating a session with debug traces" />
  </Frame>

  Paste a ticket number and Companion pulls the full debug trace — every reasoning step the AI took, every tool it called, every knowledge base article it cited, and exactly why it handed off. No more guessing why the AI said what it said.

  * Full reasoning traces with tool calls, citations, and handoff details
  * Debug any conversation by ticket number or session ID
  * See which knowledge base articles were loaded and ranked
  * Identify platform bugs and instruction gaps proactively

  <Expandable title="Features">
    - 140+ operational tools across sessions, training, analytics, workflows, contacts, and voice
    - Conversation recall — references past sessions so context is never lost
    - Integration troubleshooting for Zendesk, HubSpot, Intercom, Slack, and more
    - Voice agent management — create, test, and configure phone agents from chat
  </Expandable>
</Update>

<Update label="April 8, 2026">
  ## AI Instructions — redesigned

  The training center has been completely rebuilt. A new editor, a new way to organize, and now you can see exactly how each instruction performs — all in one place.

  ### New editor & sidebar

  <Frame>
    <img src="https://platform.open.cx/changelog/ai-instructions-ui.jpg" alt="New AI Instructions editor" />
  </Frame>

  A sidebar tree for organizing instructions by folder, a rich text editor with live preview, and the Agent Identity (formerly AI Profile) now lives here — one place to shape how your AI thinks, speaks, and behaves.

  * Sidebar tree — organize instructions into folders with drag-and-drop
  * Rich text editor with formatting, lists, and inline code
  * Agent Identity moved here — configure name, tone, and personality alongside instructions
  * Published/Draft status in the header with one-click publish
  * Search across all instructions from the sidebar

  ### Instruction-level insights

  <Frame>
    <img src="https://platform.open.cx/changelog/insights-page.jpg" alt="Insights tab showing handoffs, sentiment, and reasons" />
  </Frame>

  See how each instruction performs in the real world. The new Insights tab shows handoff count, customer sentiment, handoff reasons, and recent conversations — so you know exactly which instructions need attention.

  * Handoff count per instruction — see how often the AI escalates
  * Customer sentiment breakdown — neutral vs angry
  * Handoff reason analysis — missing knowledge, following instructions, unclear instructions
  * Recent handoffs table with ticket links and timestamps

  ### Sort instructions by handoff impact

  <Frame>
    <img src="https://platform.open.cx/changelog/sort-by-handoffs.jpg" alt="Sort instructions by handoffs with direction and date range" />
  </Frame>

  Find the instructions that cause the most escalations. Sort your entire instruction list by handoff count, filter by date range, and focus your time on what matters most.

  * Sort by handoffs — most or least, your choice
  * Date range filter — see handoff trends for any period
  * Instantly spot which instructions need rewriting

  ### Version history & one-click revert

  <Frame>
    <img src="https://platform.open.cx/changelog/versioning-audit.jpg" alt="Version history with v1, v2, v3 timeline and revert" />
  </Frame>

  Every change to your AI instructions is now tracked. Browse the full version timeline, see who changed what and when, and revert to any previous version with one click.

  * Full version timeline — every publish creates a numbered version
  * See who made each change and when
  * One-click revert to any previous version
  * Active version badge shows which version is live

  ### Bulk folder actions

  Manage AI instructions at scale. Change visibility, publish, or unpublish entire folders at once — no more editing instructions one by one.

  * Bulk publish and unpublish all instructions in a folder
  * Change visibility of an entire folder at once
  * Unpublish individual instruction documents
</Update>

<Update label="April 7, 2026">
  ## Action segment filters, workflow code steps & translation glossary

  Restrict AI actions to specific contact segments, write richer automations with await and fetch in code steps, and control session translations with a custom glossary.

  <Expandable title="Features">
    * Restrict actions to specific contact segments
    * Enable await and fetch in workflow code steps for async operations
    * Append-note action — add workflow notes visible in the agent dashboard
    * Optional authentication for webhook triggers via workflows:trigger scope
    * Translation glossary for session messages with CSV import
    * Attachment support in comment editor
    * Test email functionality in channel configuration
  </Expandable>

  <Expandable title="Improvements">
    * Virtualized workflow run logs for faster performance
    * Reopen workflow-closed sessions when the contact replies
  </Expandable>

  <Expandable title="Fixes">
    * Fix send-webhook body already read error
    * Fix contact-segment filter using correct contact ID
  </Expandable>
</Update>

<Update label="April 6, 2026">
  ## Phone agents run workflows

  <Frame>
    <img src="https://platform.open.cx/changelog/phone-agent-workflows.jpg" alt="Phone agent configuration showing workflow actions and knowledge sources" />
  </Frame>

  Your voice agents just got superpowers. Phone agents can now execute workflow actions mid-call — trigger handoffs, create tickets, look up data — while seeing the full chat history in real time.

  <Expandable title="Features">
    * Phone agents can execute workflow actions during active calls
    * Live chat history visible to phone agents during calls
    * Select which workflows are available as tools for each voice agent
    * Knowledge source selection per agent — attach specific instruction folders
    * Telephony-specific voice activity detection for cleaner call handling
  </Expandable>
</Update>

<Update label="March 19, 2026">
  ## Email templates, contact blocking & voice workflows

  Reusable email templates with variables, language detection, and workflow actions; block contacts across Slack and voice; stronger Confluence sync; Zendesk and HubSpot fixes; voice agents can run workflows and see live chat during calls.

  <Expandable title="Features">
    * Email templates — create, edit, and list templates with rich text, live variable detection, defaults per variable, detected language, and sender domain selection from registered channels
    * Send email template to a contact; map template fields from workflow data; ticket sentiment available in workflow triggers
    * Block contacts by contact ID across channels; enforce blocking on Slack inbound and voice calls; pending team invitations shown in the sidebar and user menu
    * Phone agents can execute workflow actions; live chat history during phone calls; clearer session status for calls; custom SIP headers (X-\*) stored on the session for routing and context
    * Pass custom contact or session data using X-\* headers where supported
  </Expandable>

  <Expandable title="Improvements">
    * Confluence — cursor-based V2 API pagination, separate source per connection, manifest refresh on connect, and Airbyte declarative source version handling for fewer sync failures
    * Shared MentionPicker for @mentions in workflows and knowledge base menus
    * Tooltip on “session assumed resolved” system messages shows the actual resolution reason
  </Expandable>

  <Expandable title="Fixes">
    * Zendesk — required-field auto-fill no longer blocks closing tickets or handoff
    * HubSpot — outbound email no longer adds the support inbox address as a recipient
    * Email template UI — delete confirmation during save, variable badge styling, and form layout
  </Expandable>
</Update>

<Update label="March 16, 2026">
  ## Deep research alerts, help center media, SLA API & Salesforce MIAW

  Notifications when deep research finishes or VOC exports are ready; upload images in the help center; SLA analytics and chat-history context in the API; Salesforce Messaging webhooks; desktop notifications and inbox comment polish.

  <Expandable title="Features">
    * Notifications when a deep research report completes; alerts when a VOC export is ready or your team is assigned to an insight
    * Media library — upload, sync, and embed images in articles from the dashboard editor; store and serve OpenAPI specs for your help center API playground
    * Salesforce Embedded Messaging (MIAW) webhook to replace polling and reduce rate limits; webhook URL available from the dashboard
    * Optional desktop notifications for browser alerts; notification settings page refresh with switches and dark mode; search and keyboard-friendly org switcher
    * Post internal comments with @mentions only; get notified when someone @mentions you (including yourself where enabled); cleaner rendering for mentions and line breaks
    * Sync knowledge base content on fork environments from the fork card; CRM integrations page aligned with the design system
    * Workflow editor header actions align correctly with tabs
    * IP-based authentication for LiveKit inbound trunks; streamlined phones table and number deletion
    * US purchased numbers cannot be toll-free (validation update)
  </Expandable>

  <Expandable title="Improvements">
    * HubSpot email replies send formatted HTML so AI-generated styling is preserved in the customer’s inbox
    * Highlight the selected thread comment alongside the selected message
    * Reference values that include dots in property paths resolve correctly
  </Expandable>

  <Expandable title="Fixes">
    * HubSpot and FreshChat session closure sync run correctly (no longer gated only on Zendesk)
    * SLA analytics — next-reply percentiles, filtered session totals, and reply-time accounting in breakdown and trend endpoints
    * Notification popover shortcut, focus styles, and loading states when fetching more items
  </Expandable>
</Update>

<Update label="March 9, 2026">
  ## Inbox Comments, Notifications & Shopify Integration

  Threaded comments with @mentions in the inbox, a real-time notification center with keyboard navigation, Shopify as a knowledge base data source, and nested help center categories.

  <Expandable title="Features">
    * Threaded comments on inbox messages — discuss conversations internally with your team
    * @mention teammates in comments to notify them directly
    * In-app notification center with real-time delivery, unread counts, and keyboard navigation
    * Shopify integration with OAuth popup, stream selection (pages, articles, products), and knowledge base sync
    * Nested categories with collapsible subcategories in the sidebar
    * Source markdown editor with theme support for article editing
    * Content tree sync API with SSE streaming for CLI-based management
    * CLI authentication flow for help center management
    * Merge contact custom data workflow action
    * Custom User-Agent field for HTTP workflow actions
    * Filter contacts by session attribute key-value pairs in segments
  </Expandable>

  <Expandable title="Improvements">
    * Respect AI instruction restrictions by segment and channel — instructions now correctly apply only to matching contacts and channels
    * Segments UI revamp with infinite scroll and pagination
    * Improved workflow runs UI with loading skeletons and better search
    * Fix Confluence connector by using pages as check stream and v2 API params
  </Expandable>

  <Expandable title="Fixes">
    * Fix Intercom re-sending existing conversation attributes on sync
    * Fix HubSpot replies going to support inbox instead of the customer
    * Re-schedule inactivity workflows when a session is reopened
    * Fix Airbyte data residency field causing errors on self-hosted instances
  </Expandable>
</Update>

<Update label="March 2, 2026">
  ## SLA Policies, Scoped API Keys & Content Checks

  Service level agreements with real-time tracking and breach notifications, fine-grained API key permissions, AI-powered content quality checks for help center articles, and expanded webhook and export coverage.

  <Expandable title="Features">
    * SLA policies with first reply, next reply, and resolution targets — track response times against your commitments
    * SLA snooze/unsnooze to pause timers during customer delays
    * Filter and sort inbox by SLA status and urgency
    * Real-time SLA badge updates with breach and late status indicators
    * SLA workflow triggers for `sla_first_reply_breached`, `sla_next_reply_breached`, and `sla_resolution_breached`
    * AI content check rules — define quality rules with severity levels and validate articles before publishing
    * Icon picker for help center categories
    * Content tree export API for CLI-driven workflows
    * New `csat.score_submitted` webhook event
    * New `csat.requested` webhook event
    * AI context compaction for analyzing large conversation sessions
    * CSAT score and comment columns in session data export
    * Past billing periods with detailed usage breakdowns
    * Bidirectional HubSpot custom data sync
    * Sync HubSpot ticket properties on session creation
    * Sync Zendesk user and organization fields into contact custom data
    * Scoped API keys — assign fine-grained read/write permissions per resource when creating API keys
    * Contact search endpoint with composite filters
  </Expandable>

  <Expandable title="Improvements">
    * Faster workflow run log search using optimized queries
    * Handle office hours shifts where start time is greater than end time
    * Redesigned organization creation page
    * Show custom payload in dashboard when session is closed through API
    * Clean HTML/markdown from outbound Messenger and Instagram text messages
  </Expandable>

  <Expandable title="Fixes">
    * Fix HubSpot not pulling all ticket properties
    * Prevent AI from responding to handed-off Flex sessions
    * Fix hydration error causing inbox page crash on login or org switch
    * Fix export button enabled when session count is zero
    * Preserve article slugs on edit and redirect deprecated slugs
    * Fix workflow trigger crash in sessions resolution job
  </Expandable>
</Update>

<Update label="February 25, 2026">
  ## Workflow & Handoff Webhooks

  <Expandable title="Features">
    * New `workflow.run.succeeded` and `workflow.run.failed` events — subscribe to get notified when workflow runs complete or fail
    * New `conversation.handoff_to_third_party_failed` event — get notified when a third-party handoff (e.g. Zendesk, Intercom) fails to complete
  </Expandable>
</Update>

<Update label="February 23, 2026">
  ## Help Center Customization & Voice Recording

  Major help center customization options, new crawl public API, built-in voice session recording, and reliability improvements across workflows and integrations.

  <Expandable title="Features">
    * Custom CSS and head scripts with a dedicated help center settings route
    * Help center public APIs with service authentication, search, and scoped article access
    * Built-in LiveKit voice session recording
    * Default new organizations to AI agent v2 across all channels
    * Invitation role support with role-based assignments
    * Enable handoff outside office hours for email channel
  </Expandable>

  <Expandable title="Improvements">
    * Improve call forwarding and inbound voice routing reliability
    * Include contact custom data in workflow payloads with safer empty-contact handling
    * Improve Zendesk AI field auto-fill transcript quality by including AI action context
    * Improve workflow run log performance and status filtering
    * Sync session custom data to HubSpot tickets
    * Improve help center editor and sidebar UX
  </Expandable>

  <Expandable title="Fixes">
    * Auto-publish translations that complete after article publish
    * Fix spacebar input handling in workflow fields
    * Fix clickable handoff popover title behavior
    * Fix Freshchat contact email conflict on backfill
    * Fix Zendesk language tag assignment on error handoff
    * Fix HubSpot contact search parsing
  </Expandable>
</Update>

<Update label="February 16, 2026">
  ## Image Uploads, Handoff Insights & Web Crawler v2

  Help center now supports image uploads and article cross-referencing. New handoff analytics, web crawler v2 with scheduled jobs, and OpenAPI tool validation before import.

  <Expandable title="Features">
    * Image upload with alt text editing in help center editor
    * Article reference linking with `[[` suggestion
    * Handoff event tracking and analytics
    * Validate OpenAPI tools with OpenAI before import
    * Web crawler v2 with BullMQ scheduled jobs replacing polling
    * Phone agent training with knowledge source selection
  </Expandable>

  <Expandable title="Improvements">
    * Add Team/Group column to insights CSV export
    * Cap VoC batch processing at 20 per run for stability
    * Session export UX improvements — friendly filename and file size display
    * Bulk delete for knowledge base folders
    * Export CSV for knowledge base folders
    * Edit action tags directly in the UI
    * Poll for session export status instead of relying on socket events
  </Expandable>

  <Expandable title="Fixes">
    * Use organization timezone for date prompt in AI system messages
    * Fix VoC category classification accuracy
    * Fix occurrence count with active date filters
    * Fix end-of-day handling for date-only filters
    * Fix updating and deleting custom office hours
    * Fix Freshdesk sync mode and start\_date format for Airbyte
    * Fix Airbyte embedding sync race condition with webhook approach
  </Expandable>
</Update>

<Update label="February 9, 2026">
  ## Voice Agents with SIP, FareHarbor & Server-Side Data Export

  Full TypeScript-based LiveKit voice agents with SIP trunk integration for inbound and outbound calls, FareHarbor booking integration, revamped data export with server-side processing, and Freshdesk integration.

  <Expandable title="Features">
    * LiveKit voice agent rewritten in TypeScript with SIP trunk support for inbound and outbound calls
    * SIP inbound trunk configuration and phone number routing UI
    * Phone agent creation UX with version selection modal
    * FareHarbor integration with payment link generation and SMS actions
    * Server-side data export with column configuration and export history
    * Freshdesk integration for ticket syncing via Airbyte
    * Custom analytics dashboards with Metabase integration
    * Help center public API endpoints and settings dialog
    * Auto-create run when activating one-off sequences
  </Expandable>

  <Expandable title="Improvements">
    * Background audio feedback during agent processing
    * Quicker recording setup and improved inactivity handling
    * Improved SIP setup UI and inbound trunk management
    * Record sequence run events (queued, sent, failed, completed, canceled)
    * Skip email for unsubscribed contacts
    * Help center domain validation with CNAME instructions
  </Expandable>

  <Expandable title="Fixes">
    * Fix inbound phone agent routing
    * Fix contact phone number filtering
  </Expandable>
</Update>

<Update label="January 29, 2026">
  ## Saved Reply Variables

  Major updates to the help center with improved translation workflow, enhanced saved replies editor with variable support, and better AI agent capabilities. Includes performance improvements and UI refinements across the platform.

  <Expandable title="Features">
    * AI agents can now see external attachments from integrations in chat history
    * Saved replies editor with variable support for dynamic content
    * Help center revamp with improved translation workflow and version management
    * Chat history search functionality
    * Session auto distribution triggers for better conversation routing
    * Custom translation prompts for help center content
  </Expandable>

  <Expandable title="Improvements">
    * Translation status indicators show when content is being translated
    * Category translations now complete synchronously for immediate feedback
    * Auto-create draft versions when updating published articles
    * Updated terminology from "Activate/Deactivate" to "Publish/Unpublish" for clarity
    * Session distribution calls now run in parallel for better performance
    * Faster data refresh intervals for real-time updates
    * UI improvements including updated border radius, sidebar styling, and keyboard shortcuts
  </Expandable>

  <Expandable title="Fixes">
    * Fixed translation flickering in help center
    * Breadcrumb navigation now properly blocks when articles have unsaved changes
  </Expandable>
</Update>

<Update label="January 26, 2026">
  ## Zendesk Auto-Fill on Ticket Closure

  When closing Zendesk tickets, the AI now automatically fills required custom fields. Includes Slack notifications and internal notes for closed tickets, ensuring all necessary information is captured before resolution.
</Update>

<Update label="January 25, 2026">
  ## WhatsApp Multi-Line Messages

  Messages sent through WhatsApp now preserve line breaks properly. Multi-line messages display as intended, improving readability for customers. Better handling of leads and visitors in Intercom. Contact details are now fetched more reliably using multiple identifiers, with proper fallback to email addresses when webhook data is incomplete.
</Update>

<Update label="January 24, 2026">
  ## Knowledge Base Filters

  Add filters to your knowledge base semantic search. Narrow down results based on metadata to find the most relevant content faster. New analytics dashboard for handoff events with filtering options. Track handoff reasons, view reason combinations, and analyze patterns to optimize your support workflow. When rejecting suggested insight categories, you can now specify a fallback category. This ensures insights are always properly categorized, improving organization and analysis.
</Update>

<Update label="January 17, 2026">
  ## Role-Based Access Control

  Comprehensive role management system with custom roles and permissions. Define granular access controls for your team members and manage user permissions at scale. Configure how conversations are distributed within teams. Set custom assignment strategies and max session limits per team member to balance workload effectively.
</Update>

<Update label="January 16, 2026">
  ## Auto-Assign Group Action

  Automatically assign conversations to specific support groups based on workflow conditions. Configure fallback groups to ensure tickets are always routed properly.
</Update>

<Update label="January 15, 2026">
  ## Filter Insights by Team Assignment

  Filter customer insights by assigned or unassigned teams. Quickly find insights that need team assignment or review those already being handled. Improved reliability when syncing data with HubSpot, especially for customers on lower plans who may hit rate limits.
</Update>

<Update label="January 14, 2026">
  ## Faster Workflow Run Logs

  Workflow run logs are now significantly faster. View detailed execution history for all your workflows with improved performance.
</Update>

<Update label="January 13, 2026">
  ## Agent Handoff Controls

  Enhanced handoff settings that respect your availability configuration. Prevent handoffs when turned off in settings, ensuring AI continues handling conversations.
</Update>

<Update label="January 12, 2026">
  ## Enhanced Insight Comments

  Insight comments now support reactions and read tracking. See who has viewed your comments and engage with team feedback using emoji reactions. Each customer insight now has a unique sequential number for easier reference and tracking. Quickly identify and reference specific insights across your team. Configurable wait time before fetching Intercom conversation custom attributes. Ensure all custom data is collected before processing conversations. Filter chat sessions by team IDs in the API. Retrieve conversations assigned to specific support teams.
</Update>

<Update label="January 11, 2026">
  ## Front Integration

  Fetch article content from Front knowledge base. Integrate your Front help center content into your AI's knowledge base.
</Update>

<Update label="January 10, 2026">
  ## Multiple Inboxes

  Organize conversations across multiple inboxes. Route and manage different types of conversations in separate inboxes based on channel, team, or your own criteria. Assign different office hours to individual teams. Each support group can now have its own availability schedule and assignment rules. New workflow action to retrieve custom office hours and check if the current time falls within them. Make routing decisions based on team-specific availability.
</Update>

<Update label="January 9, 2026">
  ## Enhanced Zendesk Agent Control

  Improved handling of Zendesk handoffs. When Zendesk agents reassign conversations back to the AI, control is automatically passed back to ensure seamless transitions. Enhanced Twilio Flex integration with better task management, improved logging, and support for custom first messages. Conversations close properly when tasks are resolved.
</Update>

<Update label="January 8, 2026">
  ## Prohibited Topic Detection

  New system messages when prohibited topics are detected, including the reasoning behind the detection. Provides transparency in AI safety controls. Improved AI accuracy with reranking for both organization knowledge base and custom instructions. The AI now prioritizes the most relevant information when responding. Full-text search capabilities for workflow run logs. Quickly find specific workflow executions by searching through log content.
</Update>

<Update label="January 7, 2026">
  ## Zendesk Audit Logs

  Access Zendesk audit logs to track ticket changes and agent actions. Better visibility into ticket history and modifications. Enhanced customer insight generation with better quality controls and filtering. The system now prioritizes generating high-quality, actionable insights. Improved error handling and automatic retries across AI operations. Better resilience when handling timeouts and unexpected errors. The AI now includes whitelisted session and contact custom data in its context. Configure which custom attributes the AI should consider when responding to customers.
</Update>

<Update label="January 6, 2026">
  ## Enhanced Customer Insights Processing

  Significant performance improvements to customer insights analysis. Faster processing of session insights with optimized batch operations. Enhanced attachment handling with presigned URLs for better security and performance when the AI processes file attachments.
</Update>

<Update label="January 5, 2026">
  ## Session Sentiment in API

  Session sentiment and AI closure type are now included when retrieving sessions through the public API. Better visibility into conversation outcomes. Enhanced contact details view with more comprehensive information. Get a complete picture of each contact's history and interactions.
</Update>

<Update label="January 4, 2026">
  ## Filter by Ticket Custom Data

  Filter sessions by custom ticket data fields. Find conversations based on any custom metadata you've stored on tickets. Filter customer insights by session language. Analyze feedback from specific language groups separately. New workflow action to check if the current time is within default working hours. Make scheduling decisions in your automations.
</Update>

<Update label="January 3, 2026">
  ## Prohibited Topic Workflow Trigger

  Trigger workflows automatically when prohibited topics are detected. Take custom actions like notifying supervisors or escalating conversations. Connect Front to Open.cx for AI-powered support. Handle conversations from Front with seamless integration for message sending and conversation management.
</Update>

<Update label="January 2, 2026">
  ## Next-Generation AI Agent (V5)

  New AI agent architecture with improved reasoning capabilities and better performance. Enhanced conversation handling with more accurate responses.
</Update>

<Update label="January 1, 2026">
  ## Office Hours V2

  Redesigned office hours system with improved flexibility and performance. Better management of team availability across multiple timezones.
</Update>

<Update label="December 31, 2025">
  ## AI Closure Type Filter

  Filter chat sessions by AI closure type. Analyze how the AI resolved conversations and identify patterns in automated resolutions.
</Update>

<Update label="December 30, 2025">
  ## Faster Inbox & Search

  Significant performance improvements to inbox sessions loading and search (contacts and messages).
</Update>

<Update label="December 15, 2025">
  ## Saved Replies

  Create and reuse pre-written responses for common questions. Saved replies help agents respond faster while maintaining consistent messaging across your team.
</Update>

<Update label="December 14, 2025">
  ## Agent Availability

  Simplified agent availability with a clear on/off toggle and custom status messages. Agents can now set a custom status to let their team know what they're working on while indicating their availability for new conversations.
</Update>

<Update label="December 11, 2025">
  ## WhatsApp Interactive Lists

  When the AI has more than 3 suggestions to offer, they now appear as an interactive list in WhatsApp. This provides a cleaner experience for customers navigating multiple options.
</Update>

<Update label="December 9, 2025">
  ## Pre-Handoff Workflow Trigger

  Trigger a workflow right before a conversation is handed off to a human agent. Use this to gather additional context, update CRM records, or prepare the agent with relevant information before they take over.
</Update>

<Update label="November 29, 2025">
  ## Workflow Versioning

  Create, update, and manage multiple versions of your workflows. Enable or disable specific versions, making it easy to iterate on your automations without losing previous configurations. Roll back to earlier versions or test new changes before going live.
</Update>

<Update label="November 2, 2025">
  ## Knowledge Gap Detection

  Automatically identify topics where your knowledge base is lacking. Based on real customer conversations, the Customer Insights feature now detects gaps in your documentation, helping you understand what content to add.
</Update>

<Update label="October 27, 2025">
  ## Quick Reply Suggestions

  Actions can now automatically generate quick reply suggestions for certain channels.
</Update>

<Update label="October 23, 2025">
  ## Custom Session Statuses

  Create custom sub-statuses for your sessions beyond the default open/resolved states. Track conversations through your own workflow stages like "Waiting for customer", "Escalated", or "Pending review".
</Update>

<Update label="October 20, 2025">
  ## Session Tag Filter

  Filter your inbox by tags to quickly find related conversations.
</Update>

<Update label="October 15, 2025">
  ## Facebook Messenger Channel

  Connect Facebook Messenger to Open through Zendesk Sunshine. Your AI assistant can now handle conversations from Facebook alongside your other channels.
</Update>

<Update label="October 9, 2025">
  ## Waiting On Filter

  Filter sessions by who they're waiting on — customer, agent, or AI. Quickly identify conversations that need attention and prioritize your queue accordingly.
</Update>

<Update label="October 8, 2025">
  ## WhatsApp Audio Messages

  The AI can now process audio messages from WhatsApp.
</Update>

<Update label="October 5, 2025">
  ## Update Global Variables Action

  Modify your organization's global variables from within workflows.
</Update>

<Update label="October 3, 2025">
  ## Create Zendesk Ticket Action

  Create Zendesk tickets directly from workflows with full control over ticket fields, tags, and assignees.
</Update>

<Update label="September 21, 2025">
  ## Update Pipedrive Lead Action

  Update leads in Pipedrive directly from your workflows.
</Update>

<Update label="September 20, 2025">
  ## Facebook Messenger Channel

  Connect Facebook Messenger pages to Open. Your AI assistant can now handle conversations from Messenger alongside your other channels.
</Update>

<Update label="September 16, 2025">
  ## Instagram Channel

  Connect Instagram business accounts to Open. Handle DMs from Instagram with the same AI-powered support as your other channels.
</Update>

<Update label="September 14, 2025">
  ## Restrict AI Instructions by Segment or Channel

  Limit specific AI instructions to certain contact segments or channels. Provide tailored responses for VIP customers, specific regions, or different support channels.
</Update>

<Update label="September 11, 2025">
  ## Conversation Closed Webhook

  Receive webhooks when conversations are closed. Integrate with external systems to trigger follow-up actions or sync conversation data.
</Update>

<Update label="September 10, 2025">
  ## Require Contact Info on Handoff

  Configure handoff to require name and email before transferring to a human agent. Ensure agents always have the contact information they need.
</Update>

<Update label="September 9, 2025">
  ## Source Email Filter

  Filter your inbox by the email address conversations originated from. Useful for teams managing multiple support addresses.
</Update>

<Update label="September 4, 2025">
  ## Handoff Webhook

  Receive webhooks when conversations are handed off to human agents. Trigger external workflows or notifications when handoffs occur.
</Update>

<Update label="September 2, 2025">
  ## Contact Segments

  Create dynamic contact segments based on attributes, tags, or custom data.
</Update>

<Update label="September 1, 2025">
  ## CSAT Score Trigger

  Trigger CSAT surveys from within workflows.
</Update>

<Update label="August 24, 2025">
  ## Zendesk AI Field Auto-Fill

  AI automatically fills custom Zendesk ticket fields when handing off conversations.
</Update>

<Update label="August 19, 2025">
  ## Custom Session Views

  Create and save custom filtered views of your inbox. Organize your AI training content into folders. Keep instructions organized by topic, product, or team for easier management.
</Update>

<Update label="August 17, 2025">
  ## Widget CSAT

  Collect customer satisfaction scores directly in the chat widget after conversations resolve.
</Update>

<Update label="August 16, 2025">
  ## FreshChat Integration

  Connect FreshChat to Open for AI-powered support. Handle conversations, handoff to agents, and sync resolution status.
</Update>

<Update label="August 12, 2025">
  ## Close Ticket Action

  Close tickets from workflows. Automatically resolve conversations based on conditions or customer confirmation. Trigger message sequences from workflows. Send automated follow-up messages or onboarding flows based on conversation outcomes.
</Update>

<Update label="August 9, 2025">
  ## HubSpot Integration

  Connect HubSpot to Open for AI-powered support on tickets. Handle conversations from HubSpot with the same AI capabilities as your other channels.
</Update>

<Update label="August 5, 2025">
  ## AI Transcription

  Automatically transcribe audio messages. Voice messages from customers are converted to text for AI processing and agent review.
</Update>

<Update label="July 20, 2025">
  ## Twilio Flex Integration

  Connect Twilio Flex to Open.cx. Route conversations to your Flex contact center with AI handling and seamless handoffs.
</Update>

<Update label="July 13, 2025">
  ## Ticket Inactive Trigger

  Trigger workflows when tickets have been inactive for a specified time. Automate follow-ups or escalations for stale conversations.
</Update>

<Update label="July 9, 2025">
  ## Blocked Domains

  Block emails from specific domains. Prevent spam or unwanted messages from reaching your inbox.
</Update>

<Update label="July 8, 2025">
  ## New Contact Trigger

  Trigger workflows when new contacts are created. Automate onboarding sequences or sync contacts to external systems.
</Update>

<Update label="July 5, 2025">
  ## Add Contact Action

  Create new contacts directly from workflows. Capture customer information and add them to your contact list automatically.
</Update>

<Update label="July 3, 2025">
  ## Form Submit Trigger

  Trigger workflows from form submissions. Connect your forms to automations for lead capture, support requests, or data collection.
</Update>

<Update label="July 2, 2025">
  ## Webhook Trigger

  Trigger workflows from external webhooks. Connect any system that can send HTTP requests to your Open.cx automations.
</Update>

<Update label="July 1, 2025">
  ## Workflow Rerun

  Rerun failed workflows with a single click. Debug issues and retry automations without recreating the trigger conditions.
</Update>

<Update label="June 30, 2025">
  ## Customer Insight Categories

  Organize and categorize customer insights. Group related feedback to identify patterns and prioritize improvements.
</Update>

<Update label="June 29, 2025">
  ## Customer Insights Search

  Search through customer insights by keyword. Quickly find specific feedback or themes across all your customer conversations. Show a typing indicator in WhatsApp while the AI is processing a response. Customers see that their message is being handled.
</Update>

<Update label="June 27, 2025">
  ## Run Code Action

  Execute custom JavaScript code in your workflows. Transform data, perform calculations, or implement custom logic.
</Update>

<Update label="June 24, 2025">
  ## Deep Research for Insights

  Generate comprehensive research reports from customer insights. Dive deeper into trends and get actionable recommendations.
</Update>

<Update label="June 16, 2025">
  ## Ask AI About Data Action

  Query AI with structured data in workflows. Pass JSON data and ask questions to extract insights or make decisions. Trigger workflows when phone calls start or finish. Automate follow-ups, logging, or notifications based on call events.
</Update>

<Update label="June 14, 2025">
  ## Manual Trigger with Payload

  Trigger workflows manually with custom data. Test automations or trigger one-off runs with specific payloads.
</Update>

<Update label="June 12, 2025">
  ## Sync Tags to Integrations

  Automatically sync session tags to Intercom and Zendesk. Keep your tags consistent across platforms.
</Update>

<Update label="June 11, 2025">
  ## Team Assignment

  Assign conversations to teams. Route tickets to the right group based on topic, language, or custom rules.
</Update>

<Update label="June 6, 2025">
  ## Translation Settings

  Configure real-time translation settings for your AI. Control which languages are translated and how. Set different office hours for different languages. Provide availability based on your team's language coverage.
</Update>

<Update label="June 1, 2025">
  ## Blocked Contacts

  Block specific contacts from reaching your inbox. Prevent spam or unwanted messages from known bad actors.
</Update>

<Update label="May 25, 2025">
  ## Snooze Customer Insights

  Snooze customer insights to review later. Keep your insights queue focused on what needs attention now.
</Update>

<Update label="May 21, 2025">
  ## Comments on Insights

  Add comments to customer insights and recommendations. Collaborate with your team on how to address feedback.
</Update>

<Update label="May 18, 2025">
  ## AI-Triggered Workflows

  The AI can now trigger workflows during conversations with customers. Automate actions based on what the AI learns from the conversation.
</Update>

<Update label="May 17, 2025">
  ## Salesforce Integration

  Connect Salesforce to Open.cx for case management. Create, update, and sync cases with your Salesforce instance. New workflow steps to ask AI questions about data or the current session. Make intelligent decisions in your automations.
</Update>

<Update label="May 10, 2025">
  ## Outbound Phone Calls

  Make outbound phone calls from the API. Proactively reach out to customers with AI-powered voice calls.
</Update>

<Update label="May 6, 2025">
  ## Workflow Outbound Actions

  New workflow actions to send Slack messages, emails, and webhooks. Plus actions to close sessions and change assignees.
</Update>

<Update label="May 5, 2025">
  ## Intercom Attachments

  Process file attachments from Intercom conversations. Images and files are now handled alongside text messages.
</Update>

<Update label="April 29, 2025">
  ## WhatsApp Public API

  Send WhatsApp templates programmatically through our public API.
</Update>

<Update label="April 24, 2025">
  ## Session Date Filters

  Filter sessions by date range in the API. Query conversations from specific time periods. Filter sessions by contact custom data fields. Find conversations based on any custom attribute you've stored.
</Update>

<Update label="April 13, 2025">
  ## WhatsApp in Sequences

  Include WhatsApp messages in your automated sequences. Reach customers on WhatsApp as part of multi-channel flows. Filter reports by session tags. Analyze performance for specific conversation types or categories.
</Update>

<Update label="April 6, 2025">
  ## Training Public API

  Manage AI training content through the public API. Create, update, and delete training programmatically.
</Update>

<Update label="April 5, 2025">
  ## WhatsApp Location Messages

  Receive and process location messages from WhatsApp. Customers can share their location in conversations.
</Update>

<Update label="March 30, 2025">
  ## Auto-Resolve Sessions

  Automatically resolve WhatsApp and email sessions after 24 hours of inactivity. Keep your inbox clean without manual intervention.
</Update>

<Update label="March 29, 2025">
  ## Agent Availability

  Track agent availability status across your team. See who's online, offline, or busy at a glance.
</Update>

<Update label="March 25, 2025">
  ## Contact Search by Insight

  Search contacts by insight description using natural language. Find customers related to specific feedback themes.
</Update>

<Update label="March 22, 2025">
  ## Handoff Outside Office Hours

  Configure whether to allow handoffs outside office hours. Control how conversations are routed when your team is unavailable. New reporting endpoints for agent performance metrics. Track response times, resolution rates, and CSAT by agent. Send and receive media messages on WhatsApp. Images, documents, and files are now fully supported.
</Update>

<Update label="February 25, 2025">
  ## Team Resolution Stats

  Track resolution statistics by team. See how each team contributes to customer insights.
</Update>

<Update label="February 24, 2025">
  ## Customer Insight Clustering

  Automatic clustering of customer insights using AI and vector similarity. Related feedback is grouped together.
</Update>

<Update label="February 22, 2025">
  ## Team Handoff Reports

  Daily handoff statistics by team. Track how conversations are distributed across your support teams. Filter knowledge base items by custom properties. Find content based on metadata you've added.
</Update>

<Update label="February 20, 2025">
  ## Intercom Integration

  Full Intercom integration with conversation management, handoff support, and team assignment. Trigger workflows on a schedule using cron expressions. Automate recurring tasks and reports.
</Update>

<Update label="January 30, 2025">
  ## Wait Step

  Add wait steps to workflows. Pause execution for a specified duration before continuing to the next step.
</Update>

<Update label="January 29, 2025">
  ## Website Crawling

  Crawl websites to build your knowledge base automatically. Import content from your help center or documentation site.
</Update>

<Update label="January 25, 2025">
  ## Widget User Sessions

  Users can view their conversation history in the widget. Previous sessions are accessible for reference.
</Update>
