Skip to main content

10X Unlimited changelog

Release date:

This document details the technical changes and enhancements introduced in Creatio 10X Unlimited. It is intended for developers, system administrators, and DevOps engineers responsible for maintaining and extending Creatio customizations.

For a comprehensive overview of the new features, refer to the 10X Unlimited release notes.

The update guide for the on-site applications is available in a separate article.

Creatio products and apps

Creatio AI app development toolkit

Category

Feature

Description

Creatio.ai

Creatio AI app development toolkit

Replaced the directory of instructions used by the Creatio AI app development toolkit with the "Creatio-app-orchestrator" AI Skill. Previously, coding agents such as Claude Code, Codex, and GitHub Copilot referenced the instructions distributed as a folder directly. Coding agents now use the guided toolkit instructions through a skill. This change gives developers a simpler and more consistent way to invoke the toolkit instructions across supported coding agents.

Creatio.ai

Creatio AI app development toolkit

Added support for creating and configuring business rules and placing metrics on existing pages using coding agents. Previously, business rules and widget placement required manual configuration in the respective designers. This change enables coding agents to automate UI behavior configuration and widget setup as part of development workflows.

More details

Creatio AI app development toolkit supports the following:

  • Creating editable and read-only and required and optional object-level and page-level business rules via a coding agent.
  • Creating "Set values" object-level business rules using constants, object attributes, and forward reference paths, for example, LookupColumn.SourceColumn.
  • Creating business rules that filter lookup values based on object attributes, including multi-level lookup paths.
  • Creating business rules that filter lookup values with forward and backward references and all comparison and data value types.
  • Lookup fields and values across all supported object-level business rules.
  • "Current Time," "Current Date," "Current Time and Date," "Current user," "Current user contact," "Current user account," and "Current user role" system variable conditions in the "IF" block of business rules.
  • Creating business rules within the app creation flow, so rules are generated together with app content without a separate follow-up request.
  • Placing metrics on an existing dashboard page, desktop page, list page, form page, and home page via a coding agent. The metric supports configurable caption, object, aggregation type, aggregation column, filters, format, style, text position, color, and icon. Existing page elements and layout are preserved.

Common features

Category

Feature

Description

Customer 360

Contact page

Added the Manager field to the Contact info tab of the contact page. The field lets users store a direct contact manager and includes values from the Contact lookup. Out of the box, the lookup is unregistered. To register it, add a lookup based on the "Contact" (Contact code) object. Creatio displays the field for contacts whose Type field on the Contact info tab is set to "Employee."

Productivity

AI and automation

Fixed a runtime issue when the "New meeting" AI Sub-agent added incorrect or missing attendees. Previously, the sub-agent could resolve a participant to an identifier from a non-contact and pass it to meeting creation, so some requested attendees were omitted. This change updates the sub-agent to search each participant separately, treat only contacts as valid attendees, and exclude unresolved participants from meeting creation while reporting them back to the user.

Creatio Marketing

Category

Feature

Description

Marketing campaigns

Campaign Designer

Added a new "Records in a specific segment" value to the Specify which records will be converted to the campaign audience parameter of the Add audience and Exit from campaign elements in the Campaign Designer, allowing users to search for and select a single segment compatible with the selected source object. The value is available only when the Select an object (entity) that holds the campaign audience data parameter of the Add audience element is set to "Contact." Segment membership is evaluated at execution time — contacts that enter or leave the segment afterward are not enrolled or removed automatically unless the element runs again. To use this functionality, create and activate a segment in the Segments section. After that, the segment is available for selection in the Add audience and Exit from campaign elements of the Campaign Designer.

More details
  • If the selected segment is disabled, it cannot be selected in the Campaign Designer.
  • If the selected segment has an empty filter or has been deleted, the campaign cannot be launched. Creatio displays a detailed blocking validation message.
  • If the selected segment is enabled but still calculating, the campaign can be launched with a warning that the final audience may change after calculation is complete.
  • During campaign execution, if the segment record rules are empty, the segment status is no longer valid, or the segment has been deleted, the affected campaign step is skipped, execution continues where possible, and an error is written to the Campaign Progress Check with the exact reason for skipping.

Marketing campaigns,
Digital Ads,
Lead Generation,
Email Marketing,
Event management

User and access management

Changed the subscription model for Creatio instances that have Marketing campaigns, Digital Ads, Lead Generation, Email Marketing, Event management apps installed. Instances that have no unsubscribe feedback and no records in the BulkEmailSubscription table are automatically migrated to the new subscription model when upgrading to version 10X Unlimited. Instances that have at least one of these records stay on the old model and must be migrated manually.

Lead Generation

Landing page

Fixed a runtime issue where hidden non-string fields on landing pages submitted an empty string in the webhook payload instead of the configured default value. Previously, the input type of such fields was overridden to "hidden" regardless of the original field type, so browsers ignored the checked attribute of "Boolean" type fields such as checkboxes and serialized their value as an empty string.

Lead Generation

Submissions section

Added external form capture functionality to the Lead Generation app. The functionality enables automatic collection of submissions from static HTML forms on external websites without rebuilding forms in Creatio, preserving the existing web infrastructure. The tracking script required for form capture can be obtained per environment from the Submissions section using the "Get external form capture script" section action. Administrators can define allowed domains to ensure submissions are collected only from websites.

More details
  • Only forms that meet all of the following criteria are eligible for capture: standard HTML <form> tag, presence of an email field, availability on page load, and a standard submit action.
  • The following form types are excluded from capture: iFrame forms, dynamic forms, single-page application (SPA) forms, custom JavaScript submit flows, payment forms, hidden-field forms, and file upload forms. Forms that contain password fields, payment or credit card fields, or file upload fields are blocked from capture automatically.
  • Captured submission data is stored in the "Submission" (FormSubmit code) object. External form fields are mapped automatically to Creatio columns by column code or title. The following columns are mapped automatically: "First name" (FirstName code), "Last name" (LastName code), "Middle name" (MiddleName code), "Email" (Email code), "Full name" (FullName code), and "Phone number" (PhoneNumber code). Unmapped fields are preserved in the "Notes" (Notes code) column of the "Submission" (FormSubmit code) object. The column list cannot be extended.
  • Captured submissions trigger the contact identification flow using the existing "Define search options and create contact from webhook," "Searching and creating contact," and "Searching contact" business processes. The flow updates an existing contact when a match is found or creates a new contact when no match exists.
  • Captured submissions can trigger business processes and campaign workflows, enabling automated follow-up actions and entry of external form submissions into marketing campaigns.

Lead Generation

Embedded forms section

Added a new Embedded forms section to create reusable forms, map form fields to a target object, and publish each form as a stable embed code snippet that can be placed on any external website. It is delivered as part of the Lead Generation app compatible with Creatio 8.3.4 and later and is displayed in the "Lead Generation" workspace. Previously, forms could be created only as part of a landing page and were bound to it, which prevented reuse across multiple websites. Updates to a published form are applied centrally without repasting the embed code.

More details
  • Forms are created and managed in the Embedded forms section as global reusable assets, independent of landing pages. In the Form Designer, fields can be configured with mapping to the target object, labels, placeholders, required flags, hidden fields, default values, and basic layout controls. Basic styling tokens are available for fields, buttons, spacing, and typography.
  • The object that receives submissions is selected in the Form Designer. The list of available objects relies on the Webhook entities lookup.
  • Submissions create or update records of the selected object according to the configured matching rules. When the selected submission object is the "Submission" (FormSubmit code) object, submission handling uses the out-of-the-box "Define search options and create contact from webhook," "Searching and creating contact," "Searching contact" business processes.
  • Forms are published to a single domain.
  • Existing landing page forms continue to work unchanged and are independent of the Embedded forms section.

Lead Generation

Freedom UI components

Added pre-defined filters available in the Add new filter button list when clicking the Filters button in the Contacts section. The filters target specific lead capture sources and are implemented using the Filters Freedom UI component. They are delivered as part of the Lead Generation app. Previously, building these required manual configuration with no out-of-the-box reference.

More details

Available pre-defined filters: "Facebook submissions," "Submissions from Creatio landing pages," "Web page visitors."

Lead Generation,
Email Marketing,
Event management

Freedom UI components

Added pre-defined filters available in the Add new filter button list when clicking the Filters button in the Contacts section. The filters target distinct campaign lifecycle states and are implemented using the Filters Freedom UI component. They are delivered as part of the Lead Generation, Email Marketing, Event management apps. Previously, building these filters required manual configuration with no out-of-the-box reference.

More details

Available pre-defined filters: "Currently in campaign flow," "Never participated in any campaign," "Participated in campaign flow," "Reached campaign goal."

Event management

Freedom UI components

Added pre-defined filters available in the Add new filter button list when clicking the Filters button in the Contacts section. The filters target distinct event attendance outcomes and are implemented using the Filters Freedom UI component. They are delivered as part of the Event management app. Previously, building these filters required manual configuration with no out-of-the-box reference.

More details

Available pre-defined filters: "Participated in events," "Registered for event but did not attend."

Segmentation

Segment management

Added a segmentation engine that manages pre-computed audience segment membership and exposes it through DataService, EntitySchemaQuery class, and a REST API. It is delivered as part of the Segmentation app. The Segments section is available in the "Marketing" workplace. This change enables marketers to build reusable contact audiences in Freedom UI.

More details
  • Added the Segments section for managing audience segments. When a user creates a segment and sets up entry rules that define which contacts enter the segment, the Matching contacts metric on the segment page shows the number of contacts that meet the entry rules.

  • Active segments cannot be edited and can only be re-populated using the previously set entry and exit rules. When a user deactivates a segment, it moves to the "Paused" status. When the segment is activated again, the user can choose to repopulate it from scratch or top it up with new contacts.

  • A user controls the segment status with the corresponding buttons. Segments are available for the "Contact" (Contact code) object. A segment that has not been activated is not available for use in marketing campaigns but is available for selection in filters.

  • Added the "Segment" (SysDataSegment code) object that stores the target entity schema, serialized entry filter JSON, serialized exit filter JSON, exit mode, refresh mode, status, and the name of the physical membership table provisioned for the segment.

  • Added the following lookups that drive segment behavior:

    • Segment refresh modes based on the "Segment refresh mode" (SysSegmentRefreshMode code) object. Available values: "Scheduled," "Static list."
    • Segment resume modes based on the "Segment resume mode" (SegmentResumeMode code) object. Available values: "Replace — start fresh," "Add new — top up."
    • Segment exit strategies based on the "Segment exit mode" (SysSegmentExitMode code) object. Available values: "No longer matches entry," "On specific conditions," "Never exits."
  • Added automatic provisioning of a dedicated SysDataInSegment table when a segment is created and automatic removal when the segment is deleted. The table includes Id, RecordId, AddedOn, and RemovedOn columns with indexes optimized for active-member lookups and history queries.

  • Added the POST /0/rest/SegmentService/Actualize/{segmentId} REST endpoint that fills a segment by evaluating its entry rules defined on the Entry rules tab and exit rules defined on the Exit rules tab of the segment page and returns recordsAdded, recordsRemoved, totalMembers, startedOn, and completedOn.

  • Added the ISegmentFilterEvaluator interface to the Terrasoft.Core.Segmentation namespace that deserializes filter JSON into an ESQ Select query, enabling developers to embed segment filter logic in custom queries and other segmentation features.

Segmentation

Segment management

Added duplicate-name validation on the "Segment" (SysDataSegment code) object. Previously, saving a segment with a name that already existed either failed silently or returned a confusing technical error. The validation now performs a global, case-insensitive check on the Name field when creating a segment. If a duplicate name is detected, Creatio displays the "A segment with this name already exists. Please choose a different name" error.

Segmentation

Segment management

Added the "Are in segment" and "Are not in segment" pre-defined filters available in the Add new filter button list when clicking the Filters button in the Contacts section. The filters target contacts based on their segment membership and are implemented using the Filters Freedom UI component. They are delivered as part of the Segmentation app. To stop using this functionality, register and enable the DisableRuntimePreDefinedFilters additional feature.

Segmentation

Segment management

Added a configurable timeout for segment actualization. The timeout is managed by the "Segment candidate tables maintenance database command timeout (seconds)" (SegmentCandidateTableManagerDbCommandTimeout code) system setting. Out of the box, the value is set to "7,200," in seconds (2 hours). The value cannot be less than "500" and greater than "43,200." When actualization hits the timeout, Creatio returns its default timeout error. This change enables system administrators to tune actualization runtime for large segments and prevents runaway queries from blocking the platform indefinitely.

Segmentation

Segment management

Added the "Queued" value to the lookup based on the "Segment system status" (SysSegmentSystemStatus code) object to represent segments submitted to the scheduled actualization job that are waiting to be processed. The segment receives "Queued" status after being enqueued, transitions to "Calculating" when the job picks it up, and moves to "Populated" on successful completion. Segments skipped in an actualization cycle, for example, due to a lock, remain in "Queued" until the next cycle picks them up. Manual actualization is unaffected and sets the status directly to "Calculating." The "Queued" status provides visibility into the processing state of segments, helping marketers monitor scheduled actualization at a glance.

More details

The SegmentService.ScheduleActualization() method now sets SysStatusId to "Queued" after enqueuing the segment. The "Queued" status is available through the SelectQuery class of DataService on the "Segment system status" (SysSegmentSystemStatus code) object.

Segmentation

Segment management

Added the "Is usable while updating" (IsUsableWhileUpdating code) column to the "Segments" (SysDataSegment code) object and a corresponding safety check to the EntitySchemaQuery class and DataService InSegment and NotInSegment filters. The column is set automatically based on "Segment status" column in the Segments section: "true" when the segment is safe to use in filters, "false" otherwise. When a filter references a segment where "Is usable while updating" (IsUsableWhileUpdating code) column is "false," Creatio throws an explicit error instead of returning empty or partial results. The column is system-managed and not exposed in the UI. This change lets developers and system administrators rely on InSegment and NotInSegment filters returning consistent and accurate results by ensuring unready segments are identified immediately.

Segmentation

Segment management

Added orphan cleanup to segment actualization. Previously, when a record was deleted from the target object, its ID remained in the SysDataInSegment table even after the next actualization, causing incorrect segment counts and broken data for downstream consumers. The actualization service now identifies membership rows whose underlying record no longer exists and removes them from the table.

Segmentation

Segment management

Added the optional ExcludeCurrentMembersBeforeActualization boolean parameter to the POST /0/rest/SegmentService/Actualize endpoint to control whether segment members in the Currently in segment expanded list on the Contacts tab of the segment page are cleared before actualization. Out of the box, the value is set to "false," so the existing incremental actualization behavior is preserved. When set to "true," Creatio marks all current segment members as removed by setting RemovedOn on every row in the corresponding SysDataInSegment table and then runs the standard actualization flow against the current EntryFilterData to repopulate the segment from scratch. This change lets developers and marketing operators repopulate segments based on the entry rules defined on the Entry rules tab of the segment page in a single API call, without manual cleanup or segment recreation.

More details

The same behavior is available in the UI through the "Replace — start fresh" option in the Segment resume mode field of the Resume and re-populate mini page that opens after clicking the Resume segment button on the segment page. The response reports the number of removed and added members in the recordsRemoved and recordsAdded fields. The existing concurrency guard applies — the call is blocked if another actualization is already running for the same segment.

Segmentation

Segment management

Added configurable exit rules to the data segmentation engine that control how segment members are removed during actualization. Each segment references exit rules defined in the Segment exit strategies lookup, and the actualization service applies the selected rule on every cycle. Available exit rules: "No longer matches entry," "On specific conditions," "Never exits." Removal is performed as a soft delete that sets the RemovedOn column on the row in the SysDataInSegment table, preserving historical membership data for analytics and audit.

Segmentation

Segment management

Added the POST /0/rest/SegmentService/Truncate/{segmentId} endpoint that removes all segment members from the Currently in segment expanded list on the Contacts tab of the segment page. The entry rules on the Entry rules tab and exit rules on the Exit rules tab remain unchanged. After the operation, "Current contacts" (RecordCount code) column on the "Segments" (SysDataSegment code) object is reset to "0" and the "Segment status" column in the Segments section is set back to "Draft." This change lets developers and administrators reset segment membership programmatically without recreating the segment, which simplifies segment maintenance and supports automation scenarios that require clearing members in place.

More details

Unlike segment actualization, which performs a soft delete by setting RemovedOn on every row in the corresponding "Segments" (SysDataSegment code) object, the Truncate endpoint performs a hard delete that fully empties the table. The existing concurrency guard applies — the call is blocked if another actualization is already running for the same segment. Calling the endpoint on a segment that already has no members returns a successful response.

Segmentation

Segment management

Added the IgnoreUserStatus property to the segment filter options in the segment filtration API JSON contract used on the segment page. The property controls whether segment status is applied during filtration by segments. Developers can set this property to "true" to ignore the segment status when filtering, so that contacts in a segment are returned even when the segment is paused.

Segmentation

Segment management

Added column-level access enforcement to segment filters and to the InSegment and NotInSegment filters in DataService and EntitySchemaQuery class. Access is validated at segment save time and enforced again at filter execution time, so callers cannot bypass the save-time check by injecting forbidden columns at query time. Denied access attempts are logged with the caller, segment ID, and the forbidden column name.

More details

The SegmentFilterColumnAccessValidator class validates every column referenced in the entry rules defined on the Entry rules tab and exit rules defined on the Exit rules tab of the segment page, including direct columns, dotted-path references, reverse-reference and reverse-aggregation sub-queries, nested segment filter nodes, and columns on function-typed expressions. Changing the EntitySchemaId re-validates the persisted entry and exit filters against the schema of the newly selected object.

Lead Generation

Landing pages section,
Web analytics section

Added live web tracking to capture visitor web activity on Creatio landing pages and external websites and connect anonymous activity to known Creatio contacts. It is delivered as part of the Lead Generation app compatible with Creatio 8.3.4 and later and is displayed in the "Lead Generation" workspace. Previously, visitor actions on landing pages could be captured via Matomo or Google Analytics but with a 24-hour time lag only. Tracking scripts are injected automatically when a Creatio landing page is published or exported in the Landing pages section, and external websites can be connected for tracking in the Web analytics section using the Settings button, which generates an embeddable tracking script for the external domain. When live web tracking is enabled, the Creatio web analytics script replaces the Google Analytics script previously added via the Connect Analytics tab on the landing page. Once a visitor submits a form on a tracked page or follows a personalized bulk email link, anonymous activity is linked to a contact and subsequent web actions are recorded in near real time. Captured web activity is displayed in the Web sessions and Web actions expanded lists on the Marketing tab of the contact page. This change gives marketers near real-time visibility into contact web behavior, so they can follow up based on actual browsing activity.

More details
  • Historical web activity is backfilled for up to 30 days before form submission or bulk email link click. To change the backfill period, add the WebTrackingSyncLookbackDays system setting, set the Type field to "Integer," and set a new period in the Default value field on the system setting page. Synchronization runs on a regular schedule and can also be triggered manually using a business process.
  • A "Web action captured" value is added to the Select: Campaign element templates modal window that opens when the user clicks the Select from lookup parameter of the Triggered adding element in the Campaign Designer, allowing campaigns to react to captured web actions.

Creatio Sales

Category

Feature

Description

Lead and Opportunity Management

Opportunity page

Added the Forecast category field to the opportunity profile on the opportunity page. The field classifies each opportunity by its forecast position. Previously, the opportunity page provided no built-in forecast classification, and the forecast category was not visible in the change history. Changes to this field are now saved in the change history.

More details
  • Available field values: "Base case," "Closed lost," "Closed won," "Commit," "Pipeline," "Uncategorized." Each value is color-coded, including in the Opportunities section once the "Forecast category" column is added. The value is set automatically based on the current stage. A manually selected value resets to match the stage on the next stage update.
  • Opportunity stages that are not mapped to a standard forecast category use "Uncategorized" value that has the "0" index. This is managed by the Opportunity stages lookup.
  • A new opportunity stage created without a specified forecast category is set to "Uncategorized." Creatio sets the "Uncategorized" category for existing customer-created stages that are outside the out-of-the-box stage set.

Lead and Opportunity Management

Opportunity page

Added the MEDDPICC tab to the opportunity page. The tab lets users qualify an opportunity using the MEDDPICC framework. Previously, sales teams tracked MEDDPICC assessments outside Creatio.

More details
  • The MEDDPICC tab includes the following blocks: "Metrics," "Economic Buyer," "Decision Criteria," "Decision Process," "Paper Process," "Implicate the Pain," "Champion," and "Competitor." Each block has the Score selector from "1" to "5," and the Why this score? and What to do next? fields. Out of the box, the Score selector for every block is set to "1" when the tab is opened for the first time.
  • The overall MEDDPICC status recalculates in real time, and changes are saved without reloading the page.
  • The "MEDDPICC scores" column was added to the Opportunities section. The column value includes the letters in a fixed order, each color-coded by its score.
  • The MEDDPICC parameters are stored in the MEDDPICC score, MEDDPICC criteria, and MEDDPICC criteria score lookups. Out of the box, the lookups are unregistered. To register them, add a lookup based on the "MEDDPICC score" (MeddpiccScore code), "MEDDPICC criteria" (MeddpiccCriteria code), or "MEDDPICC criteria score" (MeddpiccCriteriaScore code) object, depending on your business needs.

Lead and Opportunity Management

Opportunity management

Added the FillForecastCategoryForOpportunityAndHistoryMSSQL and FillForecastCategoryForOpportunityAndHistoryPostgreSQL SQL scripts to the Configuration section. The installation scripts populate the Forecast category field on the opportunity profile of the opportunity page for existing opportunities based on their stage. The scripts run for the "Opportunity" (Opportunity code) and "Opportunity history" (OpportunityHistory code) objects when the Lead and Opportunity Management app is installed or updated. Previously, the Forecast category field was empty for opportunities created before this functionality and for opportunities with custom stages that had no correct mapping to a forecast category, so forecasts and pipeline analytics were empty for historical data.

More details
  • The scripts update only open opportunities with a due date in the current or previous year.
  • Closed opportunities and older records are unchanged.
  • Forecast category changes are stored in the opportunity tracking history.
  • The scripts run only once.

Sales Engagement

Sequence page

Added the btn_refresh.png button to the sequence page. When clicked, Creatio reloads UI elements without requiring the user to reload the entire page.

Sales Engagement

Sequence page

Added drag-and-drop steps to the Steps tab of the sequence page. Users can now drag a step using the drag handle, and the new order is saved when the step is dropped. Clicking fields, buttons, or menus of a step does not start a drag.

Sales Engagement

Sequence page

Added automatic naming for new steps when configuring a sequence on the Steps tab of the sequence page. Previously, step names had to be entered manually. Existing step names are left unchanged.

More details
  • Creatio uses "Step {N} - Day {D} - Call" template for name of "Call" type activities. For example, "Step 1 - Day 1 - Call."
  • Creatio uses "Step {N} - Day {D} - Email - {EmailMode}" template for name of "Email" type activities where {EmailMode} is the Email mode field value. For example, "Step 1 - Day 1 - Email - Manual."
  • Creatio uses "Step {N} - Day {D} - Task - {Action}" template for name of "Task" type activities where {Action} is the Action field value. For example, "Step 1 - Day 1 - Task - General task."
  • The "Step {N}" parameter is the count of existing steps plus one.
  • The "Day {D}" parameter is computed from the cumulative Postpone field value of the existing steps plus the new step's own postpone, with a minimum of day 1.
  • The name is re-generated automatically when the corresponding field values are changed. Creatio preserves the custom name when a user edits it manually.
  • A step with an unresolved type is not named. A step added before its corresponding field has a value shows the base name and is updated once the corresponding field is populated.

Sales Engagement

Sequence page

Added per-step execution statistics to the steps on the Steps tab of the sequence page. Each step card now shows how many participants are in each state, with type-specific metrics.

More details
  • Available metrics for "Call" type activities: Total, Answered, Bad contact, No answer
  • Available metrics for "Email" type activities: Total, Sent, Reply rate
  • Available metrics for "Task" type activities: Total, Not started, Completed

Sales Engagement

Sequence page

Added a new "LinkedIn URL" variable to the Variables list for the Description field of "Call" and "Task" type activities and the Body field of "Email" type activities when configuring a step on the Steps tab of the sequence page. When selected, Creatio inserts the [#SequenceParticipant.Participant.LinkedIn#] macro into the field. When opening the activity in the Activity execution panel, Creatio inserts the URL of the participant's LinkedIn profile instead of the macro.

Sales Engagement

Sequence page

Added the ability to prevent a contact from participating in multiple sequences at the same time. To use this functionality, add the SequenceRestrictDuplicateSequenceEnrollment system setting, set the Type field to "Boolean" and select the Default value checkbox on the system setting page. When enabled, Creatio blocks enrolling or activating a contact that already has an unfinished participation in another sequence and displays a detailed notification. An unfinished participation is any status in the "Status" column in the Sequence audience expanded list on the Audience tab of the sequence page except "Finished" and "Failed." The validation runs on both enrollment and sequence activation and ignores the same sequence.

Sales Engagement

Sequence page

Added a new Reassign sequencer bulk action to the Sequence audience expanded list on the Audience tab of the sequence page. It lets you change a target sequencer for the selected participants, reassigning all upcoming steps and already-generated upcoming activities to the new owner. Completed, canceled, and historical work is left unchanged. After the action is completed, Creatio displays a notification with the number of reassigned, updated, and skipped contacts. If the target sequencer is inactive or ineligible, Creatio blocks the reassignment and displays a detailed error message.

Sales Engagement

Sequence page

Added a new Activate bulk action to the Sequence audience expanded list on the Audience tab of the sequence page. Previously, each participant had to be activated individually. Creatio now validates that the participant and sequence can continue, moves the participant to "Active" status, and resumes or re-generates upcoming work without duplicating the participant or completed steps.

More details
  • Participants in "Paused" and "Pending" statuses are resumed through the standard engine, which resumes the open activity or advances to the next step when the current activity is already completed.
  • Participants in "Failed" and "Finished" statuses are skipped with a per-record message.
  • If required data is missing, the action is blocked with a detailed message.

Sales Engagement

Sequence page

Added a new required Email mode field to "Email" type activities when configuring a step on the Steps tab of the sequence page. Previously, an email step did not provide a per-step option to control whether the email was sent manually or automatically.

More details

Available field values: "Manual" and "Automatic." Out of the box, the value is set to "Manual."

Sales Engagement

Sequence page

Added a new required Email threading mode field to "Email" type activities when configuring a step on the Steps tab of the sequence page. Previously, threading could not be controlled per step.

More details

Available field values: "New thread," "Continue previous." Out of the box, the value is set to "New thread." For the "Continue previous" value, if the recipient replied, that reply becomes the threading source and chained steps continue the latest applicable thread.

Sales Engagement

Sequence page

Added email threading for sequences that include multiple "Email" type activities on the sequence page. Previously, sequence emails were not linked into a single conversation. Creatio now sends the first sequence email as the start of a conversation and follow-up emails as continuations that include the prior history, so recipients see one thread in email clients, for example, Outlook and Gmail. Threading is scoped per participant, recipient, and sequence — emails from different participants, recipients, or sequences are never merged. When a user opens a sequence email activity, Creatio displays previously sent emails of the same thread as a read-only, chronological history that preserves the sender, recipient, date, subject, and body. The Activity execution panel is unchanged and still uses the current template.

Sales Engagement

Sequence page

Added automatic reaction to inbound replies for sequence emails. Previously, sequencers had to monitor replies manually and update participant status and stage by hand. Creatio now correlates an inbound reply to the originating outbound sequence email using the "Id" (Id code) column of the "Sequence" (Sequence code) object. Creatio then resolves the participant and reply sender and applies the configured reaction from the ruleset. Reply processing is idempotent: re-importing the same reply does not re-apply transitions.

More details
  • A reply from the primary participant updates the participant status based on the "When primary recipient replies" (PrimaryRecipientReplies code) column of the "Sequence" (Sequence code) object and creates a reaction task for the sequencer.

    • "Finish sequence" sets the "Status" column in the Sequence audience expanded list on the Audience tab of the sequence page to "Finished"
    • "Pause sequence" sets the "Status" column in the Sequence audience expanded list on the Audience tab of the sequence page to "Paused"
    • "Continue to next step" leaves the "Status" column in the Sequence audience expanded list on the Audience tab of the sequence page unchanged
  • The participant stage is taken from the "Participant replies" (ParticReplies code) column of the "Sequence ruleset" (SequenceRuleset code) object and is left unchanged when the column is empty.

  • A reply from a non-participant raises an alert task without affecting the primary participant.

  • Re-importing an already-processed reply does not re-apply status or stage transitions.

Sales Engagement

Sequence page

Added automatic processing of bounced sequence emails. Previously, bounced emails were not processed automatically, so invalid email addresses were not flagged and outreach continued. When a bounce occurs, Creatio now matches the event to the original sequence-generated "Email" type activity and participant, records the bounced result, sets the participant stage in the "Stage" column from the "Email bounces" (ParticEmailBounces code) column of the "Sequence ruleset" (SequenceRuleset code) object, and sets the participant status in the "Status" column in the Sequence audience expanded list on the Audience tab of the sequence page to "Bounced." Creatio also flags the related contact using a new contact column, so the unreachable state can be reused in downstream logic and reporting.

More details
  • The participant status is set to "Bounced" even when the "Email bounces" (ParticEmailBounces code) column is empty — in that case the stage is not changed.
  • Only the matched contact is flagged. Unmatched bounces are recorded without affecting unrelated participants.

Sales Engagement

Sequence page

Added end-to-end unsubscribe and opt-out handling for "Email" type activities. Creatio adds an unsubscribe link to every sequence email regardless of send mode, including automatic and manual sends and both new emails and replies in an existing thread, and does not add a second link when one already exists. When a recipient unsubscribes, all contacts that share the same primary email receive the "Not Interested" value in the "Stage" column and the "Paused" value in the "Status" column in the Sequence audience expanded list on the Audience tab of the sequence page and their active and pending participation is paused, so future sequence emails respect the unsubscribed state.

More details
  • An opt-out can be triggered by an email unsubscribe, a manual opt-out, or completion of a "Call" type activity with the new "Opt-out" value added to the Result field of a "Call" type activity opened in the Activity execution panel. When opted out, the participant receives the "Not Interested" value in the "Stage" column and the "Opted out" value in the "Status" column in the Sequence audience expanded list on the Audience tab of the sequence page, the participant stage is set from the "Participant opts out" (ParticOptsOut code) column of the "Sequence ruleset" (SequenceRuleset code) object, and no further steps are generated. The participant remains on the current step for visibility and reporting.
  • The unsubscribe confirmation page HTML is read from the Sequence email unsubscribe page template lookup record whose "Html" column is set to "Default," which allows the page to be customized without code changes. If the lookup is empty, Creatio falls back to the built-in page. The functionality is backward-compatible and optional. Out of the box, the lookup is unregistered. To register it, add a lookup based on the "Sequence email unsubscribe page template" (SeqEmailUnsubPageTpl code) object.
  • The "Opt-out" result type belongs to the "Opt out" value in the Activity results lookup.

Sales Engagement

Sequence page

Added a new Action field to "Task" type activities when configuring a step on the Steps tab of the sequence page. The field is required and the list of task actions is managed by the new Sequence step action lookup. The selected value is displayed when opening the "Task" activity type in the Activity execution panel.

More details

Available field values: "General task," "LinkedIn: Interact with post," "LinkedIn: Other," "LinkedIn: Send connection request," "LinkedIn: Send message," "LinkedIn: View profile." Out of the box, the value is set to "General task."

Sales Engagement

Activity execution panel

Added a new Skip action to the menu of an activity opened in the Activity execution panel. When clicked, Creatio dismisses the current activity, sets its status to "Complete," sets the Result field to "Skipped," and advances the participant to the next step. The action is supported by all activity types. Unlike opt-out, the participant remains enrolled in the sequence.

Sales Engagement

Sequences section

Changed the behavior of the Copy row action in the Sequences section. Previously, copying a sequence did not recreate its steps, requiring users to rebuild them manually. The action now recreates all sequence steps together with their parameters.

Sales Engagement

Sequence page

Changed the scheduling logic for activity types on the Steps tab of the sequence page. Previously, the next activity was scheduled from the original planned due date. Creatio now schedules the next activity from the previous activity's actual completion time plus the step postpone time.

Sales Engagement

Sequence page

Changed the sequencer resolution logic for sequence participants in the Sequence audience expanded list on the Audience tab of the sequence page. Previously, the sequencer was determined by a fixed rule that could not be changed without additional coding. Creatio now resolves the sequencer from a contact column managed by a new "Sequence participant sequencer column name" (SequenceParticipantSequencerColumnName code) system setting and falls back to the contact owner when the column is empty, missing, or of the wrong type. Out of the box, the value is set to "Owner." The added-by behavior — where the user who adds a participant becomes that participant's sequencer — is managed by the "Use audience added-by user as sequence participant sequencer" (SequenceAudienceAddedByAsSequencer code) system setting. Out of the box, the value is set to "false."

More details
  • The contact-update listener reacts to changes in the effective "Source" column, not only the "Owner" column.
  • Batch enrollment is rejected with a validation error if any selected contact has an unresolved sequencer.
  • An explicitly passed sequencer is never overwritten by the added-by behavior.

Sales Engagement

Sequence page

Changed sequence email sending to route all sends through a single queue with a configurable daily limit. Previously, sequence email sending was not centralized or throttled, and changing the dispatcher interval required Creatio restart. Both manual and automatic sends now go through one queue that respects a configurable daily limit per UTC day. Over-limit emails stay queued and resume the next day. Changing the dispatcher interval reconfigures the running job at runtime without Creatio restart.

More details
  • The daily limit is managed by the new "Maximum sequence emails per day" (MaxSequenceEmailsPerDay code) system setting. Out of the box, the value is set to "0," which means unlimited.
  • The dispatch frequency is managed by the new "Sequence email dispatcher execution period" (SequenceEmailDispatcherExecutionPeriodInMinutes code) system setting. Out of the box, the value is set to "1" minute.
  • Manual emails do not bypass the daily cap.
  • The daily limit counts successful sequence email sends per UTC day.

Sales Engagement

Activity execution panel

Changed the behavior of the Subject field when handling the "Email" activity type in the Activity execution panel. Previously, the subject had to be entered manually for each "Email" type activity. The Subject field is now inherited from the previous thread and cannot be edited. This change applies to the "Email" activity type whose Email threading mode field is set to "Continue previous" when configuring a step on the Steps tab of the sequence page.

Creatio Service

Category

Feature

Description

Contact Center

Agent Inbox panel

Added the ability to identify an anonymous web chat visitor and link the conversation to an existing contact in the Agent Inbox panel. Out of the box, web chats start without a linked contact because visitors are anonymous. Once the enabled AI Agent or a human agent identifies the visitor during the conversation, the agent can select the matching contact from the chat contact profile and confirm the link. This reassigns all chats of the current anonymous contact to the selected contact and updates the contact profile and chat messages automatically, without a page refresh. This change keeps the full interaction history consolidated under a single contact.

Contact Center

Agent Inbox panel

Fixed a runtime issue where the agent status toggle did not appear after closing the Agent Inbox panel and refreshing the page.

Contact Center

Agent Inbox panel

Fixed a runtime issue where the Agent Inbox panel did not open automatically on an incoming call. Previously, an incoming call appeared in the status toggle but the panel did not react. The panel now opens automatically and restores its previous display mode when a call arrives.

Contact Center

Agent Inbox panel

Fixed a runtime issue where the btn_change_contact.png button menu in active chat sessions in the Agent Inbox panel showed a redundant "Clear selected record" item for every caller. This change shows the item only when a caller is selected.

Contact Center

Agent Inbox panel

Fixed a runtime issue where the Agent Inbox panel opened automatically while the user was working in the "Chats" sidebar of the communication panel. The issue occurred when the user sent a message from an existing chat, opened an active chat from the list, or changed the agent status toggle. The Agent Inbox panel now stays closed in these cases.

Contact Center

Agent Inbox panel

Fixed a runtime issue where attachments exceeding the limit defined by the "Attachment max size" (MaxFileSize code) system setting were silently dropped in chat channels, for example, Telegram, Ada, or Facebook Messenger, with no notification in the Agent Inbox panel of the Contact Center app. A localized message now informs the user that the file is too large and the conversation continues without interruption.

Contact Center

Agent Inbox panel

Fixed a runtime issue in the Agent Inbox panel where pressing Enter did not send a message that contained only an attachment with no text.

Contact Center

Agent Inbox panel

Fixed a runtime issue in the Agent Inbox panel where the chat transfer details in the chat tile showed the technical user name instead of the AI assistant personality name for chats transferred from the AI assistant to a chat agent.

Contact Center

Customer communication hub section

Added the Chat queues and Chat actions expanded lists to the Chat routing tab of the Customer communication hub section. Administrators can view, create, edit, and delete chat queues and chat actions according to their existing permissions. Both lists use the same records as the Chat settings page, so no data is duplicated. It is delivered as part of the Contact Center app available in Creatio Sales, Creatio Service, and Bank Customer Journey. The Contact Center app requires the Customer Communication Hub app.

Contact Center

User and access management

Added the ability to control Agent Inbox panel visibility using the "Access to Agent Inbox sidebar" (CanUseAgentInboxSidebar code) system operation. Out of the box, only users that have the "System administrators" or "CC agents" organizational role can control the visibility. A new installation creates and grants the operation by default. After upgrading to version 10X Unlimited, existing grants for this operation are unchanged.

Contact Center

Apps and packages

Fixed an issue where the Contact Center app failed to install into Lending, Bank Customer Journey, Bank Sales, and the bundle that includes these products. Previously, installation failed with an unresolved package dependency, because the CrOrdersInContactCenter package required the CrOrder package, which blocked setup on the affected builds.

Case Management

Schema design and management

Fixed a compilation error in the Case Management app that occurred on Linux due to a duplicate CrtJunkFilter assembly.

Case Management

Schema design and management

Fixed an issue where the CaseCloserJob scheduled task continued running even after the Default value checkbox of the "Automatically close resolved cases" (CloseResolvedCases code) system setting was cleared. Previously, disabling automatic case closure did not remove the already scheduled job, so resolved cases continued to close automatically after Creatio restart. This change updates the scheduled job handling in the "A class that setup's service features on app start" (CaseServiceAppEventListener code) schema of the "Source code" type to remove CaseCloserJob from the scheduler when auto-close is disabled and to preserve the existing scheduling behavior when auto-close is enabled. The scheduler configuration now always matches the current system setting value.

Customer communication hub

AI and automation

Renamed the technical user used for AI-generated actions from "ExternalChatAiUser" to "AiAgentUser." Previously, the name of the technical user did not clearly indicate its purpose.

Customer communication hub

AI and automation

Added the Customer communication hub app to the Creatio Sales and Creatio Service products. The app is available in the "Service," "Contact Center Supervisor," "Case management" workplaces. Previously, the app was available on the Creatio Marketplace and had to be installed separately. The Customer communication hub app requires the Case Management or Contact Center app.

Customer communication hub

AI and automation

Added the Customer communication hub section for connecting and monitoring all inbound web chat, Telegram, WhatsApp, Facebook Messenger, SMS chat channels and email channel and the AI that handles them. The section is available in the "Service," "Contact Center Supervisor," "Case management" workplaces. It is delivered as part of the Customer communication hub app. Previously, email, web chat, and social channels relied on different logic, which prevented connecting and tracking them together in one place. The section centralizes setup and monitoring for every inbound channel type.

Customer communication hub

AI and automation

Added the Channel performance block to the Overview tab of the Customer communication hub section. It is delivered as part of the Customer communication hub app. The block lists all connected channels and displays an empty state when no channels are connected. Each channel includes the following columns: "Name," "Channel type," "Status," "AI response," "Volume," "Avg first response time," "AI effectiveness." Creatio refreshes the Channel performance block immediately after adding or removing the channel.

Customer communication hub

AI and automation

Added the ability to open a channel settings page by clicking the channel name in the Channel performance block on the Overview tab of the Customer communication hub section. This change gives the "Supervisor" users direct access to channel settings without additional navigation.

Customer communication hub

AI and automation

Added the Live dashboard block to the Overview tab of the Customer communication hub section. The block displays the current state of contact center operations with metrics that refresh automatically. Available metrics: Chats in progress by AI, Chats in progress by agents, Chats in queue, Cases in progress by agents, Cases in progress by AI, Cases in queue. Each metric is clickable and opens the filtered list of the chats or cases it counts. This change enables the "Supervisor" users to monitor contact center operations in real time from a single view.

Customer communication hub

AI and automation

Added the Chats block to the Overview tab of the Customer communication hub section. The block displays chat throughput and AI-versus-agent performance for a selected period and channels. The Chats block requires the Contact Center app. Available widgets: Chat volume, Completed by AI, Handed off to agents, Completed by agents, Time to first respond AI vs agents, sec, Chats by status. Each widget is clickable and opens the filtered list of the chats it counts. This change gives the "Supervisor" users a unified view of chat activity without switching between sections.

More details
  • Chat volume displays the count of chats or email-originated cases created in the last 7 days.

  • Completed by AI is displayed as a whole percentage.

    • For chats, conversations completed by AI divided by the total conversations in which AI was involved.
    • For email, AI replies sent automatically divided by all cases.
  • Time to first respond AI vs agents, sec displays the average time to the first response.

    • For chats, it is time between the first customer message and the first reply sent.
    • For emails, it is time between case creation and the first status change.

Customer communication hub

AI and automation

Added the Cases block to the Overview tab of the Customer communication hub section. The block displays case throughput and AI-versus-agent performance for a selected period and channels. The Cases block requires the Case Management app. Available widgets: Case volume, Assisted by AI, Completed by AI, Completed by agents, AI responses: drafted for review vs autosent, Cases by status. Each widget is clickable and opens the filtered list of the cases it counts. This change gives the "Supervisor" users a unified view of case activity without switching between sections.

Customer communication hub

AI and automation

Added a connection flow of the email channel in the Customer communication hub section. In the Step 1 of 2 – Setup channel mini page, users select an existing mailbox using the Choose mailbox field or connect a new mailbox using the Connect new mailbox button and select a case registration category using the Case registration category field. In the Step 2 of 2 – Enable AI assistance mini page the Use AI in the channel checkbox is selected with preconfigured AI capabilities and "Sofia, AI assistant" personality with a friendly tone of voice that users can customize. After channel connection, Creatio provides a copyable mailbox address for sending a test email. The email channel requires the Case Management app.

Customer communication hub

AI and automation

Added the General settings tab to the new email channel settings page. The tab includes Mailbox, Case registration, and Message language expanded lists to manage email settings from a single page. Previously, working with the mailbox list was available using the List of mailboxes for case registration lookup only. The email channel requires the Case Management app.

More details
  • Mailbox expanded list includes the following fields:

    • Read-only Address field includes the configured mailbox address.
    • Alias field accepts a single alternate email address for cases where customers write to a different address than the configured mailbox.
    • Description field stores free-text internal notes.
  • Case registration expanded list includes the required Case category field to select the category applied to all cases created from incoming emails to this mailbox. The field includes the "Incident" and "Service request" values from the Case categories lookup.

  • Message language expanded list includes the following elements:

    • Required Language field to select a message language from the active system languages. The field includes values from the Customer languages lookup.
    • Always use mailbox language checkbox. Out of the box, the checkbox is cleared.

Customer communication hub

AI and automation

Added the AI automation tab to the new email channel settings page of the Customer communication hub section. The tab includes AI automation settings for the email channel. Previously, all email responses were composed manually by agents. The email channel requires the Case Management app. This change enables the "Supervisor" users to scale email response handling with AI while keeping human oversight.

More details

The Mode field in the Reply mode expanded list on the AI automation tab of the email channel settings page includes the following values:

  • "Draft for review," where the generated response is posted in the timeline on the Conversation tab of the case page for an agent to review and copy. Out of the box, the Use AI in the channel checkbox on the AI automation tab is selected when the Mode field is set to "Draft for review."
  • "Autoreply," where AI sends the response automatically.

When the Use AI in the channel checkbox is cleared, all emails are handled by agents and bypass AI.

Customer communication hub

AI and automation

Added auto-reply decision logic for the email channel based on the quality score of each AI-generated response. When the Use AI in the channel checkbox is selected on the AI automation tab of the email channel settings page, administrators can define the quality threshold a response must reach to be sent automatically. After a response is generated, its quality score is compared against the selected threshold. The email channel requires the Case Management app. This change enables administrators to control how confidently AI sends automatic email replies and to balance automation against review based on response quality.

More details
  • If the score is equal to or above the threshold, AI sends the reply automatically. Creatio displays reply as an AI-sent message in the feed on the Conversation tab of the case page. Auto-sending also respects the audience rollout percentage.
  • If the score is below the threshold, AI creates a draft for review. Creatio displays a draft for review in the feed on the Conversation tab of the case page.

Out of the box, Creatio provides the following auto-reply modes, each with a default quality threshold:

  • "Cautios" — 0.85
  • "Balanced" — 0.70. Out-of-the-box auto-reply mode.
  • "Bold" — 0.55.

The auto-reply modes are stored in the AI Email Auto-Reply Mode lookup. Out of the box, the lookup is unregistered. To register it, add a lookup based on the "AI Email Auto-Reply Mode" (AiEmailAutoReplyMode code) object. To change a threshold, edit the "Threshold" column.

The calculated quality score is saved on the generated email in the "AI quality score" (AiQualityScore code) column of the "Activity" (Activity code) object. When a valid quality score is not available, AI creates a draft for review instead of sending automatically.

Customer communication hub

AI and automation

Added a quality score calculation mechanism for AI-generated responses in the email channel. The mechanism evaluates each generated response and produces a single QualityScore that is used by the auto-reply decision logic. Every time a response is generated in auto-reply mode, before the response is sent to the end user, the mechanism calls AI Sub-agents to compute the score from weighted components that assess the response and the knowledge used to generate it. Quality scoring applies to the email channel only and is calculated only in auto-reply mode. The email channel requires the Case Management app. This change enables AI to send automatic email replies only when a response meets the required quality level.

More details

The score is calculated using the following formula: QualityScore = 0.5 x Groundedness + 0.3 x Coverage + 0.2 x RetrievalAdequacy, where each component returns a value between "0" and "1."

  • Groundedness measures whether the response is supported by retrieved knowledge base content. Available values: "1.0" — all claims supported, "0.5" — minor unsupported inference, "0.0" — unsupported or contradictory claims. The parameter is generated by the "Groundedness analyzer" AI Sub-agent.
  • Coverage measures whether the response fully answers the customer's question on an intent-by-intent basis. Available values: "1.0" — all intents answered, "0.5" — partially answered, "0.0" — a critical intent missing. The parameter is generated by the "Coverage score analyzer" AI Sub-agent.
  • RetrievalAdequacy measures whether the retrieved knowledge base content is sufficient and relevant. Available values: "1.0" — all required intents fully supported, "0.5" — at least one partially supported with no critical intent missing, "0.0" — a critical intent missing, off-topic, or contradicted. The parameter is generated by the "Adequacy score analyzer" AI Sub-agent.

Customer communication hub

AI and automation

Added prompt-injection protection to the the AI in the email channel to protect AI email responses against prompt-injection attacks. The prompt used for AI email flows — for example, drafting, classifying, and summarizing — now includes a dedicated untrusted-input security policy that instructs the model to treat email body, subject, signatures, quoted text, attachments, and links as untrusted and to never follow instructions embedded in it, switch persona, reveal system-prompt content or internal tools, expose data outside the current case scope, or deviate from its task. The emails sent from the "Emails" sidebar of the communication panel are not affected.

Customer communication hub

AI and automation

Added handling for large email templates and long case chains in AI email response generation so the request stays within the LLM context window. Creatio pre-processes the template to extract only its meaningful content, discarding styles, images, and other visual content before the template is passed to the model, and trims long case chains to keep the request within the context budget while preserving conversation continuity. This change ensures AI email drafts are generated reliably regardless of how the template was authored or how long the case has been running.

Customer communication hub

AI and automation

Added the "AI-generated" tag that marks email replies created by AI in the timeline on the Conversation tab of the case page. Previously, email replies prepared by AI were indistinguishable from manually written replies. The tag is shown next to the existing "Draft" tag when AI generated the reply and its body has not been changed, which covers AI-generated drafts awaiting review and replies sent automatically in auto-reply mode. The tag is removed the first time the email body is edited, so it always indicates content that remains exactly as AI produced it. Replies the agent writes from scratch or copies into a new editor are separate activities and are never tagged. It is delivered as part of the Web chat app available in Creatio Sales, Creatio Service, and Bank Customer Journey. The Web chat app requires the Customer Communication Hub and Case Management apps.

More details
  • The tag is managed by a new "Is AI generated unchanged" (IsAiGeneratedUnchanged code) column of the "Boolean" type to the "Activity" (Activity code) object. The value is set to "true" when an AI draft is created and is wiped to "false" the first time the email body changes.
  • The existing "Is AI generated" (IsAiGenerated code) column in the "Activity" (Activity code) object continues to record provenance — whether the reply was generated by AI — and is not affected by edits.

Customer communication hub

AI and automation

Added the btn_debug_info.png button to the case page for cases where AI participated in generating a response. The button opens the Debug info modal window that shows how the AI response was formed. On the chat page in the Chats section, the button is hidden when AI was enabled for the channel but the chat was excluded due to the audience rollout split. The functionality is managed by the "Can debug skills" (CanDebugSkills code) system operation. Out of the box, only users that have the "System administrators" organizational role can access the debug information. This change gives administrators visibility into how AI responses are generated, making it easier to review and troubleshoot AI behavior on a case.

Customer communication hub

AI and automation

Added a monthly budget cap to Creatio.ai email response generation. AI email processing is now limited by the organization-level monthly AI budget, which protects against high-volume email attacks on a single mailbox. The email channel reuses the same budget-cap system setting already applied to chats, so once the monthly budget is reached, AI stops generating email responses. The cap is applied on the email AI processing path, alongside the existing per-contact rate limit and per-case turn limit checks. The limit is managed by the "AI monthly budget (actions)" (AiMonthlyBudgetActions code) system setting. Out of the box, the value is set to "20,000." This change gives administrators a single, consistent limit that prevents excessive AI usage and cost across both the chat and email channels.

Customer communication hub

AI and automation

Added configurable limits on AI email draft generation: a per-contact daily limit and a per-case limit. The per-contact daily limit is managed by the "AI email max drafts per contact per day" (AiEmailMaxDraftsPerContactDay code) system setting. Out of the box, the value is set to "50." The per-case limit is managed by the "AI email max drafts per case" (AiEmailMaxDraftsPerCase code) system setting. Out of the box, the value is set to "10." Once a limit is reached, AI stops generating new drafts for the affected contact or case. The email channel requires the Case Management app. This change lets administrators control AI draft generation on the email channel and prevents excessive AI usage for a single contact or case.

Web chat

Customer communication hub section

Added a web chat channel to the Customer communication hub section. The channel enables administrators to configure and connect a web chat for their website directly in Creatio, eliminating the need for separate configuration tools and reducing deployment time. It is delivered as part of the Web chat app available in Creatio Sales, Creatio Service, and Bank Customer Journey. The Web chat app requires the Customer Communication Hub app. When providing required details in the Customer communication hub section, Creatio adds the channel from a minimal set of settings and provides a working channel with the embed code for the website. A full channel configuration page provides advanced setup with a live preview of the channel.

More details
  • The full configuration page enables administrators to customize the channel appearance, including multilanguage texts, and preview the result live while adjusting the settings.
  • The configuration page also manages installation settings, including the embed code and the list of allowed domains that controls where the channel can load.

Web chat

Web chat channel settings page

Added the ability to configure the web chat position and spacing in the Layout expanded list on the Appearance tab of the web chat channel settings page in the Customer communication hub section. It is delivered as part of the Web chat app available in Creatio Sales, Creatio Service, and Bank Customer Journey. The Web chat app requires the Customer Communication Hub app.

More details
  • Configure how the chat aligns on the page using the Widget position field. Available values: "Right," "Left." Out of the box, the value is set to "Right."
  • Configure the distance from the side edge of the screen in pixels using the Side spacing, px field. Out of the box, the value is set to "16."
  • Configure the distance from the bottom edge of the screen in pixels using the Bottom spacing, px field. Out of the box, the value is set to "16."

Web chat

Web chat channel settings page

Added the ability to configure multilanguage privacy notice text and a privacy policy URL for the web chat. Administrators can set them using the Privacy notice text and the Privacy policy URL fields in the Privacy notice expanded list on the Security tab of the web chat channel settings page in the Customer communication hub section. The privacy notice text is displayed at the bottom of the chat. Creatio uses the privacy policy URL as the clickable "Open privacy policy" link in the chat that opens in a new modal window. It is delivered as part of the Web chat app available in Creatio Sales, Creatio Service, and Bank Customer Journey. The Web chat app requires the Customer Communication Hub app.

Web chat

AI and automation

Added real-time message testing to the live preview on the web chat channel settings page. Administrators can send messages from the preview after a channel is created, and the messages are delivered to Creatio through the standard web chat messaging flow. When the Use AI in the channel checkbox is selected and the AI Agent is added to the AI capabilities expanded list on the AI automation tab, it processes the incoming message and its reply appears in the preview. Replies from an agent are also shown after a handover. This change enables administrators to validate channel behavior, AI processing, and agent replies before publishing the channel, reducing the risk of configuration issues in production.

Web chat

Web chat channel settings page

Added support for incoming file attachments in the web chat channel. Website visitors can send images and files, and agents receive them in the Agent Inbox panel where images can be opened in full size and other files can be downloaded. It is delivered as part of the Web chat app available in Creatio Sales, Creatio Service, and Bank Customer Journey. The Web chat app requires the Customer Communication Hub app.

More details

File type restrictions are managed by the "File extensions deny list" (FileExtensionsDenyList code) system setting. File size limits are managed by the "Attachment max size" (MaxFileSize code) system setting. Out of the box, the value is set to "10," in MB. If the value of the "Attachment max size" (MaxFileSize code) system setting is less than 25 MB, the chat uses that value as the maximum allowed file size. If the system setting is equal to or greater than 25 MB, the chat applies limit of 25 MB. If a forbidden extension is detected or the limit is exceeded, Creatio displays a detailed error message and no chat message is created.

Web chat

Web chat channel settings page

Added the ability to send file attachments in the web chat channel. Agents can send images and files to website visitors during a web chat conversation. File type restrictions are managed by the "File extensions deny list" (FileExtensionsDenyList code) system setting. File size limits are managed by the "Attachment max size" (MaxFileSize code) system setting. Out of the box, the value is set to "10," in MB. If a forbidden extension is detected or the limit is exceeded, Creatio displays a detailed error message and no chat message is created. It is delivered as part of the Web chat app available in Creatio Sales, Creatio Service, and Bank Customer Journey. The Web chat app requires the Customer Communication Hub app.

Web chat

Web chat channel settings page

Added support for emoji insertion in the web chat channel. It is delivered as part of the Web chat app available in Creatio Sales, Creatio Service, and Bank Customer Journey. The Web chat app requires the Customer Communication Hub app.

Customer communication hub,
Web chat

AI and automation

Added the AI automation tab to the web chat, Telegram, WhatsApp, Facebook Messenger, and SMS chat channel settings pages of the Customer communication hub section. The tab includes AI automation settings for chat channels. Previously, these settings were not available on the channel settings page, requiring the "Supervisor" users to switch between different areas to configure them. This change enables the "Supervisor" users to view and configure AI settings for each chat channel from a single page.

Customer communication hub,
Web chat

AI and automation

Added the Audience rollout expanded list to the AI automation tab of the web chat, Telegram, WhatsApp, Facebook Messenger, and SMS chat channel settings pages. The setting lets the "Supervisor" users control the share of incoming chats handled by AI. Previously, audience rollout could not be defined per channel, so AI handling could not be introduced gradually. Out of the box, the Audience rollout (%) field is set to "100." This change enables the "Supervisor" users to introduce AI gradually in a chat channel and monitor its impact before expanding it to the full audience.

Customer communication hub,
Web chat

AI and automation

Added the AI capabilities expanded list to the AI automation tab of the web chat, Telegram, WhatsApp, Facebook Messenger, SMS chat channel settings pages and email channel settings page of the Customer communication hub section. The list lets the "Supervisor" users manage the AI Agents available for a channel. Previously, managing AI Agents per channel was not available. The expanded list is available in the channel connection step-by-step flow and on the channel settings page. This change enables the "Supervisor" users to limit AI Agents to the intended scope.

More details

The AI capabilities expanded list includes the following elements:

  • Connected AI Agents, including their AI Sub-agents and knowledge sources. Out of the box, the list includes Customer Support Agent.
  • The Change agents button. When clicking the button, Creatio opens the Creatio.ai agents modal window that lists all agents with their name, status, and description. Confirming the selection updates the AI capabilities expanded list on the page and the list of agents passed to the LLM for that channel.

Customer communication hub,
Web chat

AI and automation

Added the ability to connect Telegram, WhatsApp, Facebook Messenger, and SMS chat channels and enable AI in them directly from the Customer communication hub section. Administrators can do this using the Add channel button list in the Manage channels toggle panel and the Use AI in the channel checkbox on the mini page when connecting the channel. Previously, Telegram, WhatsApp, Facebook Messenger, and SMS chat channels could only be connected on the Chat settings page. Creatio collects the connection details and the queue for the added channel, then proceeds to the step for enabling an AI Agent. The channel name and link are generated automatically. After creation, Creatio adds the channel to the Channel performance list on the Overview tab. Clicking the channel opens a dedicated channel settings page with the General tab containing channel details such as name, queue, and language, and the AI automation tab with AI settings such as audience rollout, AI personality, AI capabilities, and handoff rule. Creatio refreshes the Manage channels toggle panel immediately after adding or removing the channel. It is delivered as part of the Contact Center app available in Creatio Sales, Creatio Service, and Bank Customer Journey. The Contact Center app requires the Customer Communication Hub app.

Customer communication hub

AI and automation

Added a separate Enable AI assistance step to the connection flow of the SMS, WhatsApp, Telegram, web chat, and Facebook Messenger chat channels in the Customer communication hub section. Previously, AI configuration for chat channels required a separate step after connection and the "Supervisor" users received no channel-specific guidance on what to do next. In the Step 2 of 2 - Enable AI assistance mini page the Use AI in the channel checkbox is selected out of the box with preconfigured AI capabilities and "Sofia, AI assistant" personality with a friendly tone of voice that users can customize. After channel connection, Creatio provides a next action specific to the channel type.

More details

The final step behavior depends on the chat channel:

  • For SMS chat channel, Creatio displays the connected phone number with the btn_copy.png button. Clicking the number opens the native SMS client with the number prefilled in the To field.
  • For WhatsApp, Telegram, and Facebook chat channels, Creatio displays the Send your first message button that opens the connected bot or channel in a new browser tab.
  • For web chat channel, Creatio displays the Test in preview mode button that opens the web chat channel settings page.
  • For chat channels of other vendors, Creatio displays a message with a link that opens the channel settings page. The final step can be dismissed using the Close button, which returns the user to the channel list.

Customer communication hub

AI and automation

Added a monthly AI budget cap for anonymous external chats, measured in AI Actions. Usage is tracked per app or channel and checked before each AI call in a chat. When the monthly budget is exhausted, AI is disabled for new conversations and they are handed off to an agent. The budget resets at the start of each month in UTC. The cap is managed by the "AI monthly budget (actions)" (AiMonthlyBudgetActions code) system setting. Out of the box, the value is set to "20,000." This change lets administrators control monthly AI consumption per channel and prevents unexpected AI costs.

Customer communication hub

AI and automation

Added a configurable limit on the size of AI responses in chats, measured in output AI Actions. The limit is applied to every AI request and is enforced by the model, so generation stops once the configured number of output AI Actions is reached. This change keeps AI replies concise, controls AI Action cost, and prevents abuse through long-form generation loops, for example, repeated "explain in more detail" requests. The limit is managed by the "AI anonymous chat max output tokens" (AiAnonymousChatMaxOutputTokens code) system setting. Out of the box, the value is set to "400."

Customer communication hub

AI and automation

Added a configurable limit on the number of AI responses per anonymous chat conversation. The limit is tracked per conversation and checked before each AI call. When the limit is reached, AI skips the response and the conversation is handed off to an agent. The limit is managed by the "AI anonymous chat max turns" (AiAnonymousChatMaxTurns code) system setting. Out of the box, the value is set to "50." This change lets administrators control how long AI handles an anonymous chat before escalating to an agent, preventing unbounded AI conversations.

Customer communication hub

AI and automation

Enriched the auto-reply logic in the email channel to send a response automatically only when it fully resolves the case. Previously, a high-scoring response containing a clarification question could be sent automatically, even though it did not resolve the case. A ClarityCheck multiplier was added to the quality score: a response containing a clarification question receives a quality score of "0" and is kept as a draft for agent review, while a response without one is scored as before. When a response is auto-sent, the case status on the case page is set to "Resolved" automatically. This change prevents AI from auto-sending replies that do not actually resolve the case.

More details

The quality score is calculated based on the following formula: QS = ClarityCheck x (0.5 x Groundedness + 0.3 x Coverage + 0.2 x RetrievalAdequacy), where:

  • ClarityCheck. Available values: "0" — the response contains a clarification question, "1" — the response contains no clarification question.
  • Groundedness measures whether the response is supported by retrieved knowledge base content. Available values: "1.0" — all claims supported, "0.5" — minor unsupported inference, "0.0" — unsupported or contradictory claims.
  • Coverage measures whether the response fully answers the customer's question on an intent-by-intent basis. Available values: "1.0" — all intents answered, "0.5" — partially answered, "0.0" — a critical intent missing.
  • RetrievalAdequacy measures whether the retrieved knowledge base content is sufficient and relevant. Available values: "1.0" — all required intents fully supported, "0.5" — at least one partially supported with no critical intent missing, "0.0" — a critical intent missing, off-topic, or contradicted.

Customer communication hub

AI and automation

Changed the context passed to the LLM when generating AI email responses to include the full case communication. The context now also includes data from the feed on the Conversation tab of the case page, including system messages so the model can distinguish between internal and external information. Sensitive information from system messages, for example, passwords or confidential notes, is not used to generate the customer-facing response. The email channel requires the Case Management app. This change enables AI to produce more accurate and context-aware email responses while preventing internal or sensitive details from being exposed to customers.

Customer communication hub

AI and automation

Changed the "Email" timeline object on the Conversation tab of the case page to pre-fill the Subject field for new emails. Previously, the Subject field was empty when an agent composed a new email. Creatio now pre-fills the field using the "Case response {CaseNumber} {CaseSubject}" template, for example, "Case response SR00000003 Cannot login to portal." Automatic naming does not affect replies, forwards, or edited drafts.

Customer communication hub

AI and automation

Changed the chat context provided to the LLM to include the chat ID and the "Object" type schema name of the chat. These values are available to AI sub-agents and the business processes they invoke, enabling developers to identify the originating chat in a business process and use it to route conversations or update connected Creatio records, for example, a lead or opportunity linked to the contact. This change gives developers a reliable way to act on the specific chat from no-code automation.

Customer communication hub

AI and automation

Changed the knowledge source in the Knowledge sources expanded list on the Knowledge sources tab of the Customer Support Agent so it draws only from a dedicated set of customer-support articles instead of the entire knowledge base. Previously, the knowledge source was built from all articles in the knowledge base. The knowledge source is now scoped to a dedicated dynamic "Customer support articles" folder in the Knowledge base section that automatically includes articles tagged "Customer support." To make the article available to the Customer Support Agent, add the "Customer support" tag to it.

Customer communication hub

AI and automation

Fixed a runtime issue where the case Classic UI page closed after saving even though the "Close after saving" column in the Case statuses lookup was set to "No" for the case status.

Industry cases

Category

Feature

Description

Creatio Portal

UI and navigation

Added the ability to replace the default portal registration page with a "Client module" type schema using a new "Portal registration module name" (PortalRegistrationModuleName code) system setting. Out of the box, the value is set to "Registration." Previously, the out-of-the-box registration page could not be replaced, which prevented adding custom fields, validation, and submission logic.

More details
  • The custom registration page schema can extend the standard registration fields with additional fields, client-side validation, and custom validation messages.
  • If additional data must be saved to the contact record or validated against business data, the custom page can call a custom anonymous registration service instead of the out-of-the-box registration endpoint.

Field sales

UI and navigation

Changed the visit logic in the Field sales app to use the "Visit" type instead of the hardcoded "Visit" category. Previously, rule filtering and title generation in the Activities section depended on the hardcoded "Visit" category, which prevented customers from using custom visit categories.

Field sales

UI and navigation

Fixed a layout issue in the Field sales app where long names of visit actions pushed the toggle out of alignment on the Details tab of the activity page. Action names now wrap across multiple lines, keeping the toggle in a fixed position regardless of name length.

Creatio Business Studio

No-code customization

Category

Feature

Description

Localization

Translations

Fixed a runtime issue where custom translations created in the Translation section reverted to their default values. This happened after a page change, for example, when you added or removed a column or changed a summary. Previously, the POST /0/ServiceModel/ClientUnitSchemaDesignerService.svc/GetParentSchemasLocalizableStrings endpoint returned only translations stored in each parent schema's own package without applying translation overrides saved in the current package.

Localization

Translations

Fixed a runtime issue where the Apply translations button in the Translation section failed completely when a translation record contained a data key with an empty schema segment. Previously, the translation cleanup stage accepted a malformed data key whose schema segment was empty and then tried to retrieve a schema by an empty name, which threw an error and aborted the entire "Apply translations" business process run before any unused translation was removed. Such malformed records are not produced by the standard translation flow and typically originate from external data inserts or migrations. The cleanup now treats a data key with an empty schema or column segment as invalid and removes it automatically, so the run completes.

Apps and packages

App management

Changed the application installation flow for single-app, bundle, and Marketplace installation scenarios to prevent app version downgrades. Previously, when an installation included an app version lower than the version already present in the environment, Creatio displayed a warning but continued anyway, overwriting the newer version with the older version. This change detects the downgrade condition before installation proceeds, skips the affected app, and displays an informational message in the Application installation window identifying which app was excluded, while apps without a downgrade condition install as expected, preventing unintended version rollbacks during bundle and Marketplace installations.

Apps and packages

App management

Fixed a runtime issue where the install script for a package could fail to resolve during app installation through Application Hub. Previously, the path to the required library was not reliably located, so an installation could complete with errors even when Application Hub reported success. The path resolution is now improved so that the required library is reliably resolved and the install script is found during package installation.

Apps and packages

Package management

Fixed an issue where installing a valid *.gz package on .NET 8 builds failed with the "Unable to open '{PackageName}.gz'. The file is invalid or corrupted. Check the file integrity or download and reupload it." error, even though the same package installed successfully into .NET Framework builds. Previously, the CompressionUtilities.UnzipDirectory() method read the GZip stream in very small increments. This caused the GZipStream implementation in .NET 8, which supports multi-member gzip streams, to misidentify a false member boundary mid-stream and throw an InvalidDataException. Mainly packages built using Clio utility whose generated "*.deps.json" files used LF line endings were affected. This change updates the read logic to eliminate the small-increment reads that caused the false boundary detection, so valid *.gz packages install successfully into .NET 8 builds while genuinely corrupted archives continue to be rejected.

More details
  • .NET Framework builds are unaffected because their GZipStream implementation does not support multi-member streams and never hits this read path.
  • The LF line endings (instead of the standard CRLF) in Clio-generated "*.deps.json" files produced the specific byte layout that triggered the false boundary detection.

Apps and packages

Page templates

Added the Filters menu and Filters components to the "List page" template available in the Select template modal window of the Application Designer. The components control the visibility of the filters on list pages. Previously, both components were under beta testing.

More details

Out of the box, both components are included on the following pages:

  • Existing and new list pages built based on the "List page" template.
  • New list pages included in the app built based on the "Records & business processes" template. On new list pages, the components link automatically to the data source selected in the List component and filters the list at runtime accordingly.

The Filters component is placed in the same container as the Folders component.

UI Design

Freedom UI components

Added a new Icon component to the Freedom UI Designer. The component lets no-code creators place icons on Freedom UI pages and configure component parameters directly in the setup area.

More details

Available parameter values:

  • Icon. Out of the box, icn_info.png.
  • Color. Out of the box, #0D2E4E.
  • Accessible name
  • Tooltip
  • Size: from S to XL. Out of the box, "S."
  • Padding: from — to 2XL. Out of the box, "—."
  • Background type: "None," "Square," "Circle." Out of the box, "None."
  • Background color. Out of the box, #E7ECFA.

UI Design

Freedom UI components

Added keyboard shortcut support for the Button component whose Action parameter in the Freedom UI Designer is set to "Save data." Previously, records could only be saved by clicking this button. After saving, Creatio preserves the page scroll position. To stop using this functionality, register and enable the DisableHotkeys additional feature.

More details
  • Ctrl+S is used on Windows and Linux. Cmd+S is used on macOS.
  • If a modal window is open over the record page, the shortcut saves only the modal window data.
  • If the record page has multiple data sources, the shortcut saves all of them.
  • If the record page has multiple buttons whose Action parameter in the Freedom UI Designer is set to "Save data," the shortcut takes no action.
  • The ButtonViewConfig interface and the crt.Button component type now include the hotkeys property. This lets developers assign keyboard shortcuts to any button declaratively in the source code of the Freedom UI page.
  • The CrtButtonHotkeyService was added as a new hotkey listener service for crt.Button component types. It helps manage hotkeys consistently across Freedom UI pages.

UI Design

Freedom UI components

Added the Header template parameter to the setup area of the Filters component in the Freedom UI Designer. Out of the box, the value is set to "Show all records that match {menuOperator} of these conditions," where {menuOperator} is rendered as the condition operator button that switches between matching all or any of the conditions. If {menuOperator} is removed, the operator is appended at the end of the header by default, so the operator control remains available. Previously, the header text was fixed and could not be adjusted to fit the placement of the component. The parameter supports localizable strings. The parameter value is managed by the new headerTemplate property in the source code of the Freedom UI page. This change enables no-code creators to adapt the filters header to different use cases while keeping the condition operator available in all configurations.

UI Design

Freedom UI components

Added a new Maximum number of records parameter to the setup area of the Hierarchical list component in the Freedom UI Designer. Previously, the record limit was managed only by the "Maximum number of records in hierarchical list" (HierarchicalListMaxRecordsCount code) system setting, applied uniformly to all component instances. The system setting now defines the default limit that can be overridden using the new parameter — the component-level value takes priority and can be set both above and below the system setting value. Additionally, when the data scope exceeds the configured limit, end users see a notification indicating that not all records were loaded.

UI Design

Freedom UI components

Changed the data loading logic of the Hierarchical list component to allow the "Maximum number of records in hierarchical list" (HierarchicalListMaxRecordsCount code) system setting value to exceed the MaxEntityRowCount setting limit in the "..\Terrasoft.WebApp\Web.config" file, which is set to 20,000 out of the box. Administrators and no-code creators can raise the records limit by updating the system setting value or by configuring it directly in the Freedom UI Designer setup area. To maintain performance, it is still recommended to narrow the data scope using the Apply filter by page data parameter.

UI Design

Freedom UI components

Fixed a runtime issue where deleting a single chat channel from the Message composer component in the Freedom UI Designer removed all chat channels at runtime instead of only the deleted channel.

UI Design

Freedom UI components

Fixed an issue for RTL view in the Freedom UI Designer where the buttons that define filtering options of the Timeline component overlapped each other when the DesignerRtlSupport additional feature was enabled.

UI Design

Freedom UI components

Added the Filters menu and Filters components to the Freedom UI Designer. Previously, both components were under beta testing under the names Advanced filters menu and Advanced filters. The components let users build complex filter conditions, filtering records by object columns and related object columns through forward and backward references. End users can apply filters to records that match all conditions (AND) or any condition (OR). The list of operators depends on the column type to which the filter is applied.

UI Design

Fields and inputs

Added a new "Switch" type field and input to the Freedom UI Designer element library. It renders as a toggle in the UI. The setup area includes the same parameters as the "Checkbox" type field and input.

Business processes

Elements

Fixed an issue where the Send chat message business process element did not send WhatsApp messages.

Integrations and APIs

OAuth authorization

Added the Consent mode field to the Consent mode expanded list on the Authorization code tab of the integration page in the OAuth integrated applications section. The field controls how user consent is handled during the authorization code grant. The functionality is managed by the "Can manage OAuth settings" (CanManageOAuth code) system operation. Out of the box, only users that have the "System administrators" organizational role can change the field value. Previously, the authorization flow always displayed the consent screen on every login and re-login, which added friction for trusted applications and forced users to reconfirm consent after periods of inactivity. Administrators can now configure, per OAuth application, whether consent is requested on every authorization, requested only when it was not granted before, or bypassed entirely. Out of the box, consent is requested on every authorization, and existing OAuth applications keep this behavior after upgrading to version 10X Unlimited.

More details
  • Available values for the Consent mode field: "Ask consent on every connection," "Don't ask for consent," "Remember consent until access is revoked." Out of the box, "Ask consent on every connection."
  • When the Consent mode field is set to "Remember consent until access is revoked," a user who returns after the refresh token has expired authenticates again without reconfirming consent, while a user whose access was revoked by an administrator must pass the full authorization flow, including consent, again.
  • The "Consent mode" (ConsentMode code) column was added to the "OAuth client application" (OAuthClientApp code) object. The "Consent mode" (ConsentMode code) column stores the Consent mode field value.

Integrations and APIs

OAuth authorization

Added support for registering OAuth redirect URLs that use mobile custom URI schemes, enabling OAuth authorization code grant to return users to the mobile app. Previously, OAuth redirect URL validation required the http or https scheme, which blocked configuration of integrations that relied on mobile deep links. Administrators can now register redirect URLs using mobile custom-scheme formats, for example, appscheme://hostname/auth, com.example.mobileapp://oauth2redirect, and customscheme://hostname/auth. Mobile deep-link schemes are accepted, saved, and displayed exactly as entered. Existing web redirect URLs and OAuth integration flows are not affected. Creatio still displays an error for redirect URLs that do not match a supported format.

Integrations and APIs

OAuth authorization

Added an API that registers a new OAuth integration in a single call. Previously, registering an integration required an administrator to manually create an OAuth client application and a technical user and wire them together. A caller can now register an integration by providing an integration name. Creatio atomically creates an OAuth client application and a linked technical user, and returns the client ID, client secret, and technical user ID. The client secret is returned only once at creation time. Technical users who have permission to the "Access to "Register integration" action" (CanRegisterIntegration code) system operation can use this endpoint. Out of the box, only "Creatio.ai Studio" technical user can execute the action. The endpoint exposes only the registration capability — it cannot list, read, update, or delete existing integrations, OAuth applications, or technical users. Every registration is recorded in the audit log. If creation of the OAuth application or the technical user fails, the operation rolls back so that no orphaned artifacts remain.

Integrations and APIs

OAuth authorization

Added the ability to issue a signed JWT Assertion token for the currently authenticated user as part of the OAuth authorization flow, which can be sent to external applications. To use this functionality, enable the EnableIdentityAssertionIssuer additional feature. Creatio signs the token with a private key that is stored in the "Identity Assertion Issuer Private Jwk" (IdentityAssertionIssuerPrivateJwk code) system setting, which never leaves the instance. The corresponding public key can be retrieved using the Clio utility and shared with the external application to validate the token. A valid signature confirms that the token was issued by the trusted Creatio instance and was not altered, and IDs the authenticated user.

Integrations and APIs

OAuth authorization

Changed the default state of the EnablePkceSupport and AddApplicationAccessScopeAutomatically additional features from disabled to enabled. The EnablePkceSupport feature applies PKCE in the OAuth authorization code grant, adding proof-key protection to authorization requests. The AddApplicationAccessScopeAutomatically feature adds the application access scope automatically when an OAuth integration is configured. This change gives administrators more secure authorization code grants by default and reduces manual scope configuration when setting up OAuth integrations.

Integrations and APIs

OAuth authorization

Changed the Client secret parameter on the OAuth integrated application pages to use the secure string component. Previously, the parameter handled its value as a plain text input, which exposed the credential in the UI. The parameter now masks the entered value while still letting users reveal it by clicking the btn_visible.png button. This change reduces the risk of accidental exposure of OAuth client credentials in the UI.

Integrations and APIs

OAuth authorization

Changed the OAuth application model so that a single OAuth application can support multiple OAuth 2.0 grant types at the same time. Previously, an OAuth application was tied to a single grant type, so supporting more than one grant required registering and maintaining separate applications with different client IDs for what was conceptually one application. An OAuth application now carries a configurable set of allowed grant types, and the same client ID can use client credentials and authorization code with PKCE grants together. The token endpoint authorizes each request against the allowed grant types and rejects a grant that is not enabled for the client with the unauthorized_client error. Existing single-grant applications continue to work after upgrading to version 10X Unlimited through an automatic migration.

More details
  • OAuth applications are configured through a unified application page with separated general settings, client credentials, authorization code, and monitoring, plus a setup step-by-step flow with a multi-select for the allowed grant types.
  • An OAuth application must have at least one grant type enabled. An empty grant set cannot be saved.
  • Configuration settings shared across grants — for example, the client ID, client secret, technical user, and owning organization — is defined once, while grant-specific configuration, for example, redirect URIs, is required only when the corresponding grant is enabled.
  • The "Grant type" column was removed from the OAuth integrated applications page.
  • Existing single-flow applications are mapped to the corresponding allowed-grant-types set during the upgrading to version 10X Unlimited and are unchanged.

Integrations and APIs

OData

Fixed an issue where an OData request for a non-existent schema returned the wrong HTTP status code. Previously, when a request used a valid OAuth access token to access an OData schema that did not exist, the OData middleware returned "401 Unauthorized" instead of "404 Not Found" due to incorrect error code handling in the authorization pipeline.

Integrations and APIs

Calendars

Added the ability to disable synchronization of Microsoft Exchange tasks. This change ensures that affected mailboxes synchronize email and calendar without tasks, tailoring mailbox synchronization to customer requirements without additional coding. To stop using this functionality, register and enable the DisableTasksIntegration additional feature.

Integrations and APIs

Calendars

Changed the default mailbox behavior so that Microsoft Graph API mailboxes no longer support task synchronization. Previously, Creatio ran Microsoft 365 tasks synchronization regardless of mailbox type. Graph API mailboxes now synchronize only email and calendars, while Microsoft Exchange/EWS mailboxes keep task synchronization. This change makes mailbox synchronization predictable for administrators. To stop using this functionality, register and enable the DisableOffice365EwsTaskSync additional feature.

Integrations and APIs

Calendars

Changed the meeting cancellation behavior for meetings organized by an external user when several invited users have calendar synchronization. Previously, when the FeatureCancelActivityBySynchronization additional feature was enabled, removing or declining one synchronized participant canceled the whole activity. This change marks only that participant as declined instead of canceling the whole activity. The activity is canceled only when all synchronized participants decline, or when the meeting is canceled for everyone.

Integrations and APIs

Calendars

Fixed an issue where calendar events from Microsoft Exchange with a missing organizer were skipped during synchronization, even when they clearly belonged to the synchronized mailbox. Such events are now imported using the synchronized mailbox as the organizer, while events with an ambiguous owner are still skipped. This change enables users to keep their calendar complete without manually recreating meetings that lack an organizer. To stop using this functionality, register and enable the DisableFallbackOrganizerEmailForExchangeAppointments additional feature.

Integrations and APIs

Calendars

Fixed an issue where reconnecting a Microsoft 365 mailbox with different letter casing created duplicate records in the ContactCommunication database table. Previously, email address validation for the ContactCommunication table was case-sensitive, so re-adding a mailbox with a different case created a duplicate communication record and could raise a save error on environments with custom validation. This change makes email address matching case-insensitive when a mailbox is added, preventing duplicate contact communications and the related save failures.

Integrations and APIs

File processing

Fixed an issue where running the file migration through WorkspaceConsole utility caused blocking locks at the database level, which could stall or hang the migration. The migration logic was updated to avoid the blocking locks.

Integrations and APIs

File storages

Changed the default state of the UseBaseEntityFileDelete additional feature from disabled to enabled. Previously, users could end up with orphaned files in external file storage, for example, Amazon S3, after deleting section records when the feature was disabled. The listener now runs out of the box and ensures that files in external file storage are removed correctly together with their section records. The enabled listener does not affect performance for environments that do not use external file storage.

Integrations and APIs

Telephony

Changed the concurrency control for parallel call updates in the telephony integration. Previously, near-simultaneous UpdateCall requests were serialized with a mutex that did not work across multiple instances and did not guarantee ordering, which could create duplicate call records or apply statuses out of order. This change correlates call updates per call and orders them by event time, including in multi-instance environments, giving contact center teams accurate call records without duplicates under high call volume.

Integrations and APIs

Telephony

Changed the recovery mechanism for transport failures in the Cisco Finesse CTI provider. Previously, a short websocket or XMPP interruption could trigger a full provider re-initialization, repeatedly calling login, settings, and connection steps and producing a reconnect storm of duplicate requests. Ordinary transport failures now recover through a lightweight, controlled reconnect that reuses loaded credentials and cached settings, with guards against parallel reconnect attempts. This change keeps the telephony connection stable during network instability.

Integrations and APIs

Telephony

Fixed an issue where the Cisco Finesse CTI integration created duplicate calls. Previously, when two Finesse events for the same dialog arrived almost simultaneously, both were processed against an empty call collection and two records were saved for a single dialog. This change de-duplicates calls per dialog, so later events reuse the existing call, giving contact center teams accurate call records and reliable telephony reporting.

Integrations and APIs

Telephony

Fixed an issue where reassigning a phone extension to another user resulted in incorrect call ownership and missing WebSocket call updates. Previously, the cached messaging connection was invalidated only when the user identifier changed, so a reassigned extension kept routing calls and updates to the previous owner until the service restarted. This change also invalidates the connection when the user's contact or session changes, so calls route to the correct agent without requiring a service restart.

Integrations and APIs

Telephony

Fixed a runtime issue where the Mute, Hold, and Transfer buttons became unavailable on an active call in the "Calls" sidebar of the communication panel and the Agent Inbox panel of the Contact Center app. Previously, when overlapping ring-all calls arrived and were answered by other agents, a line state change event without a call identifier was applied to the connected call and reset its available actions. This change ignores such events when they carry no call identifier, enabling agents to keep full call control during high call volume.

Integrations and APIs

Email Listener

Changed the validation logic in the Email Listener apiv3/email/send API for empty cc and bcc values. Previously, sending an explicit JSON null for these values was rejected, while omitting the fields worked. This change treats an explicit null the same as an absent field, enabling integrations to send email through the API without failures caused by explicit null recipients.

Integrations and APIs

Chats

Added a new "Closure reason" (ClosureReason code) column of the "Lookup" type to the "Chat" (OmniChat code) object to track how each chat was completed. The field can be added to the Chats section and is populated automatically based on the chat completion scenario. The functionality supports both human-assisted and AI-assisted conversations.

More details

Available column values: "Completed by agent," "Completed by timeout," "Completed by end user," "Transferred." End-user initiated chat completion is detected in the Ada chat channel.

Integrations and APIs

Chats

Added the ability for a website visitor to end a chat with a human agent and start a new conversation in the web chat channel. Clicking the End chat button now opens a confirmation window, and confirming completes the current conversation, sets its closure reason to "Completed by end user," and opens a new, empty conversation in the chat. The completed conversation no longer accepts new messages, and if the completion request fails, the current conversation stays active. This change enables website visitors to close a finished conversation with an agent and start a fresh chat when needed, keeping separate interactions clearly separated.

Integrations and APIs

Chats

Fixed the cleanup process when an SMS chat channel is deleted. Previously, related records in the WhatsAppMsgSetting table were not removed and no deregistration request was sent to the microservice, resulting in orphaned configurations that could affect messaging flows.

Integrations and APIs

Chats

Fixed an error message text displayed when adding an SMS or WhatsApp channel on the Chat settings page without a configured Identity Service.

Integrations and APIs

Emails

Fixed an issue where saving the same email activity several times created duplicate participant records. Previously, repeating the save of the same email activity could insert duplicate records into the ActivityParticipant database table for the same activity, participant, and role. Email participant creation is now idempotent and does not insert a record that already exists for the same combination.

Integrations and APIs

Emails

Fixed an issue where the modified-record business process signal did not fire after editing an unsent email, most often for changes to the Subject, To, or Recipient fields in the email mini page opened from the "Emails" sidebar of the communication panel. Previously, the email auto-relation logic saved the activity a second time during the same save, which reset the record's change tracking, so the signal did not detect the user's edit. This change updates the nested save to persist the relation columns without resetting change tracking, so the modified-record signal reliably sees the original edit and no-code creators can start business processes when an email activity is modified. To use this functionality, register and enable the AutoEmailRelationSkipNestedSave additional feature.

Integrations and APIs

Emails

Fixed a runtime issue with the loading state of the recipient search in the To, CC, and BCC fields in the email mini page opened from the "Emails" sidebar of the communication panel. Previously, these fields displayed "No data" during the search itself, which incorrectly suggested no matches existed. This change shows a loading state while searching and displays "No data" only when the search returns no matches.

Integrations and APIs

Emails

Fixed a runtime issue where the CC and BCC fields did not appear in the email mini page opened from the "Emails" sidebar of the communication panel in the Safari browser. Previously, clicking the CC or BCC button in Safari did not reveal the fields. This change opens the copy and blind-copy fields correctly in Safari.

Integrations and APIs

Emails

Fixed a runtime issue where email participants were not removed when a recipient was deleted from the To, CC, or BCC field in the email mini page opened from the "Emails" sidebar of the communication panel. The issue occurred before email sending. Previously, a participant added to one of these fields remained in the participant list even after the recipient was removed from the draft. This change updates the participant list to match the current recipients when the draft is saved.

Integrations and APIs

Emails

Fixed a runtime issue where signature images were duplicated for outgoing emails on the email page opened from the "Emails" sidebar of the communication panel. Previously, an image from an email signature was added both as an inline attachment and as a separate general attachment. This change adds the image only as an inline attachment.

Integrations and APIs

Emails

Fixed a runtime issue where synchronized email attachments could not be downloaded due to a data integrity issue in the "Emails" sidebar of the communication panel. Previously, some attachments from synchronized emails were stored empty even though their size was recorded in the database.

Integrations and APIs

Emails

Fixed a runtime issue where the mailbox-related lookups returned no result due to a stale local repository cache. Previously, the mailbox setting repository could rely on an empty or outdated local cache snapshot and return no data even when the mailbox existed in the database. This change re-checks a lookup miss against the database before returning no result, making mailbox-related lookups reliable under repeated or concurrent access. The previous behavior is left unchanged when mailbox setting caching is disabled.

Advanced customization

Category

Feature

Description

UI Design

Freedom UI components

Added the ability to configure the current-user photo and attachment loading behavior of the feed. This is available using the new loadCurrentUserPhoto and loadAttachments properties in the source code of the Freedom UI page that includes the Feed component. Out of the box, both properties are set to "true," which keeps the current behavior. When either property is set to "false," the component skips the extra current-user photo lookup in comments or attachment loading in feed items, respectively. This change enables developers to remove unnecessary requests and improve feed performance on pages where those operations are not needed.

UI Design

Freedom UI components

Added the ability to make the email subject read-only in the message composer for the "Email" channel. This is available using the new subjectReadonly property in the source code of the Freedom UI page that includes the Message composer component. When the property is set to "true," the email subject becomes read-only. Previously, this functionality was available in Classic UI only. This change enables developers to enforce a fixed email subject where business or compliance rules require it.

UI Design

Widgets

Added the ability to hide the widget title at runtime and design-time using the new hideTitle and hideTools properties in the source code of the Freedom UI page. To hide the widget title, add the "hideTitle": true property. To hide the title-related parameters in the widget setup area, add the "hideTools": true property. The properties are supported for all widgets except metrics and do not affect the title of a widget opened in full-screen view. Previously, the widget title could not be hidden without additional coding.

Schema design and management

Source Code Designer

Changed the "Provides a class for working with omnichannel chats" (OmnichannelChatProvider code) schema of the "Source code" type to mark the GetChatMessages, GetAllMessages, GetAllMessagesByChat, and GetChatHistory methods with the virtual modifier. Previously, these methods could not be overridden, which prevented developers from customizing chat conversation history retrieval in the OmnichannelChatService web service.

Schema design and management

Configuration section

Changed the configuration compilation process to reduce build time and keep compilation duration predictable as the configuration grows. Previously, compilation processed all packages and ran preparation steps such as dependency restore and OData compilation even when they were not required, which increased build time for large configurations.

More details
  • Only packages whose compiled content changed are compiled. To stop using this functionality, disable the EnableOptimizedPackageCompilation additional feature.
  • Packages that include no compilable content are excluded from compilation, and information about skipped packages is logged. To stop using this functionality, disable the EnableCompileOnlyPackagesWithCompilableSchemas additional feature.
  • Independent standalone packages at the same dependency hierarchy level are compiled in parallel. To stop using this functionality, disable the EnableParallelStandalonePackageCompilationByHierarchyLevel additional feature.
  • OData compilation runs only when the selected packages contain "Object" type schema changes. To stop using this functionality, disable the EnableBuildODataOnlyForPackagesWithEntitySchemas additional feature.
  • Dependency restore (dotnet restore) no longer runs on every compilation. It runs only for new packages and, on the first app launch after deployment, in the background without blocking startup. To stop using this functionality, disable the EnablePackageRestoreSynchronizationOnApplicationStart additional feature.
  • The Compile button in the Configuration section runs dotnet restore only for new packages and compiles only packages with modified compilable content, including their dependencies when corresponding changes exist.
  • The Compile button in the Configuration section for a single assembly package runs dotnet restore only if the package is new and compiles only the selected package without dependencies, provided it has modified compilable content.
  • The Compile all item of the Compile drop-down list in the Configuration section and compilation triggered by package installation run dotnet restore and compile all packages, with parallel compilation and compilation of only packages that contain compilable content enabled.
  • Full compilation runs automatically when generated configuration assemblies are missing, for example, after enabling the file system development mode.
  • A package is considered compilable if it contains at least one schema of the "Object," "Source code," "Business process," or "User task" type maintained by Creatio or a "Reference assembly" type schema.

Schema design and management

Configuration section

Fixed an issue where schema resources were incorrectly marked as deleted when the resource name in the "app-descriptor.json" file and the resource directory name differed only by letter case. Previously, the resource search was case-sensitive, so a name such as CrtCustomer360App did not match a folder named CrtCustomer360App, Creatio lookups returned no result, and the resource was wrongly flagged as deleted. The search is now case-insensitive.

Schema design and management

Configuration section

Fixed an issue where source-regenerating operations in the WorkspaceConsole utility failed to generate campaign schema sources. Previously, WorkspaceConsole did not load the workspace assembly before deserializing campaign flows, so campaign schema source generation failed. Every WorkspaceConsole operation that regenerates campaign schema sources such as RestoreConfiguration, InstallFromRepository, UpdateConfiguration, RegenerateSchemaSources, BuildWorkspace, RebuildWorkspace, reported errors and the offline deployment pipeline failed, even though the configuration itself compiled without errors. WorkspaceConsole now loads package assemblies and then the workspace assembly before campaign schema source generation, mirroring the web application behavior. The web application was not affected.

Schema design and management

Creatio theming

Removed several internal CSS variables as part of the design token-based theming implementation. These variables were not part of the public API and were not subject to backward compatibility guarantees. We recommend reviewing any custom CSS that references the removed variables to ensure compatibility after upgrading to version 10X Unlimited. This change has no impact on customizations that rely exclusively on the public API.

More details
  • Palette variables removed for primary, secondary, navigation-primary, navigation-secondary, foreground, background, interaction, link, error, success, label, border, disabled palettes:

    • --crt-palette-{name}-A100
    • --crt-palette-{name}-A200
    • --crt-palette-{name}-A400
    • --crt-palette-{name}-A700
    • --crt-palette-{name}-contrast-50
    • --crt-palette-{name}-contrast-100
    • --crt-palette-{name}-contrast-200
    • --crt-palette-{name}-contrast-300
    • --crt-palette-{name}-contrast-400
    • --crt-palette-{name}-contrast-500
    • --crt-palette-{name}-contrast-600
    • --crt-palette-{name}-contrast-700
    • --crt-palette-{name}-contrast-800
    • --crt-palette-{name}-contrast-900
    • --crt-palette-{name}-contrast-A100
    • --crt-palette-{name}-contrast-A200
    • --crt-palette-{name}-contrast-A400
    • --crt-palette-{name}-contrast-A700
  • Full palettes removed for navigation-primary, navigation-secondary, foreground, background, interaction, link, label, border, disabled:

    • --crt-palette-{name}-50
    • --crt-palette-{name}-100
    • --crt-palette-{name}-200
    • --crt-palette-{name}-300
    • --crt-palette-{name}-400
    • --crt-palette-{name}-500
    • --crt-palette-{name}-600
    • --crt-palette-{name}-700
    • --crt-palette-{name}-800
    • --crt-palette-{name}-900
  • Typography variables removed for large-1–large-4, headline-1–headline-5, body-1, body-2, caption, button, button-small, overline: --crt-{name}-text-transform

  • Full typography styles removed for caption-large, placeholder, placeholder-large, blankslate:

    • --crt-{name}-font-family
    • --crt-{name}-font-size
    • --crt-{name}-font-weight
    • --crt-{name}-line-height
    • --crt-{name}-letter-spacing

Feature management

Feature toggling

Changed the ShowDesignerDemoItems additional feature so that it no longer affects the Filters menu and Filters components. Previously, the feature was under beta testing.

Framework updates

Angular version update

Changed the Angular framework version used by the Creatio platform to version 21. This change aligns the platform with Angular 21 standards and ensures continued compatibility with the latest framework capabilities.

Administration

Category

Feature

Description

System settings and tools

Lookups

Changed the list of regions in the States/provinces lookup and the list of corresponding cities in the Cities lookup. Previously, both lookups did not include German regions and cities and included an extensive list of Russian regions and cities. Both lookups now include the major German regions and cities, and Russian records are reduced to Moscow Oblast and Leningrad Oblast for regions and Moscow and Saint Petersburg for cities. This change gives users relevant reference data out of the box and reduces manual lookup cleanup.

System settings and tools

Lookups

Fixed a runtime issue in the States/provinces lookup where several US states had an incorrect time zone assigned. Previously, for the Alabama, Texas, Louisiana, Iowa, Minnesota, Missouri, and Mississippi states, the "Time zone" column included the "Central America (GMT-06:00)" value instead of "Central Time (US & Canada) (GMT-06:00)," which showed incorrect local times for contacts in those states.

Logging and monitoring

Audit log

Enabled audit logging for new Creatio installations. Previously, audit logging was inactive after a new install because the Default value checkbox of all system settings in the "Audit log" folder was cleared, which required manual configuration before audit records were captured. The Default value checkbox is now selected for new installations. Existing installations are unchanged, so system settings that were previously stored with an explicit value retain that value after upgrading to version 10X Unlimited.

Logging and monitoring

Configuration activity log

Added logging for the "Clear configuration activity log" operation to the configuration activity log. Each cleanup operation now creates a log record with a summary of deleted records grouped by "Configuration activity log" (ConfActivityLog code), "Compilation history" (CompilationHistory code), "Uploaded file" (SysFile code), and "Localization change log" (LocalizationChangeLog code) object, along with the cutoff date, total number of deleted records, and completion timestamp. This change provides administrators with a reliable audit trail of each cleanup operation.

Logging and monitoring

Configuration activity log

Changed the file deletion mechanism of the configuration activity log cleaner to use a storage abstraction layer instead of directly accessing the SysFile database table. Previously, the cleaner removed only files stored in the database, leaving attached files undeleted when an S3-compatible object storage was configured as the file storage backend. This change resolves the correct storage provider at runtime and deletes files from the configured storage, be it database or S3, without requiring additional configuration.

User and access management

Licensing

Fixed a runtime issue in .NET 8 and .NET Core builds where the License manager page opened from the Creatio login page became inaccessible for users without an active license. Previously, such users could not open the License manager page at all, which prevented them from managing licenses even when administrative access was intended. This change restores access to the License manager page in .NET 8 and .NET Core environments by loading the page correctly regardless of the current user's license status. This lets administrators manage licenses without an active license.

User and access management

Licensing

Fixed an issue where integrations stopped working for the technical user when the Creatio licenses had expired or the wrong customer ID was set. Previously, configuration setup commands ran under the technical user during the licensing process, but the license check failed and returned the "License is missing or expired" error, which blocked the commands from completing. The technical user is now exempt from this license check, so integration and configuration commands continue to run.

User and access management

Technical users

Changed the business logic that determines whether the current user is a technical user. Previously, the logic ran a database query against the SysAdminUnit table on every authenticated HTTP request without caching, which generated a very high volume of database calls under load. The result is now cached in memory per user for a short period and reused across requests. The cache is cleared automatically when the corresponding user record is modified or deleted.

User and access management

2FA

Fixed a runtime issue where password recovery for new users who had not yet configured TOTP (Time-based One-Time Password) required setting up an authenticator app during the recovery flow when 2FA was enabled. Previously, the new password was not saved and the user was redirected to the login page. Password recovery now completes without any 2FA verification or setup step, the new password is saved, and the user is redirected to the login page. The standard 2FA flow starts at the next regular login.

User and access management

Single Sign-On

Changed the SSO logout flow to no longer get blocked on a failed SAML single logout request. Previously, if the SAML single logout request (InitiateSlo) threw an error, logout from Creatio was blocked in Freedom UI. This change terminates the local session and continues the logout flow even when SAML single logout initiation fails, enabling users to log out reliably regardless of the identity provider's single logout response.

User and access management

Single Sign-On

Fixed an issue where the Switch button on the consent page did not work for users logged in through SSO when passing the OAuth authorization code grant. For example, when providing consent for the Creatio.ai add-in for Outlook. Previously, for an SSO user, after logging out the login window reopened with the previous user prefilled, and clicking the button only reloaded the same prefilled state instead of displaying the login form. This happened because the Switch button redirected to the authorization endpoint, where pass-through auto-login silently re-authenticated the user who had just logged out.

End user experience

Category

Feature

Description

UI and navigation

Creatio theming

Added the ability to change the Creatio theme in the user profile. The default theme is managed by the "Default theme" (DefaultTheme code) system setting. Out of the box, the value is empty and the Freedom UI theme is applied. A personal theme applies to a single user only. Other users are unaffected. End users can select their own theme, which overrides the default theme for their profile, using the Theme field on the Basic settings tab of the user profile page. This ability is managed by the "Can change theme on the user profile page" (CanChangeOwnTheme code) system operation. Out of the box, all users can change their own theme. Custom themes can be created using the Creatio AI app development toolkit. Custom theme functionality is not available for the Growth subscription plan.

UI and navigation

Pages

Added a new Change row height option to the list settings menu. Available row height values: "Small," "Medium," "Large," and "Extra large." Out of the box, the value is set to "Small." When the row height is set to "Medium" or above, text column values wrap to multiple lines within the cell. Non-text columns are always displayed in a single line regardless of the selected height. The selected row height is saved in the user's profile and persists across sessions. Inline editing is supported for all row height values.

UI and navigation

Pages

Added support for date and time macros in the filters, including parameterized macros with editable inputs. Previously, filters did not support macro-based filtering and this functionality was available in Classic UI only. When a user adds the "Date/Time," "Date," or "Time" type column and selects an operator, users can switch between a constant value and a macro. When a user selects a macro that accepts a value, an input is displayed for that value, and selecting a different macro updates the input accordingly. When the filter is applied, the selected macro is resolved into the query using the existing macro resolving logic.

More details
  • Available hour macros for "Date/Time" and "Time" type columns: "Exact time," "Previous hours ...," "Following hours ..."
  • Available day macros: "Previous days ...," "Following days ...," "Day of the week ...," "Day of the month ..."
  • Available month macro: "Month ..."
  • Available year macro: "Year ..."
  • Available recurring yearly macros: "Every year, exactly in ...," "Every year, within ... next days," "Every year, within ... previous days."

Date/time macros are not available for the "between" operator.

UI and navigation

Pages

Added the ability to filter "Date/Time," "Date," and "Time" type columns by date, time, or both in the filters. Previously, users had to enter both date and time for a "Date/Time" type column. Filtering by date only or by exact time was not supported, and this functionality was available in Classic UI only. When a user adds a column and selects an operator, Creatio lets the user choose the needed option. This change enables users to build date-only, time-only, and date-and-time filters in Freedom UI.

More details
  • Available constant values for the "Date/Time" type column: "Exact date," "Exact date & time," and "Exact time."
  • Available constant values for the "Date" type column: "Exact date."
  • Available constant values for the "Time" type column: "Exact time."

UI and navigation

Pages

Added support for filtering by related object attributes through backward references in the filters. Previously, the component allowed filtering by columns of the current object and its directly referenced objects only, so users could not build conditions based on objects that reference the current object. The Add new filter button list now includes the "Explore related data" option that opens the Select field modal window. Each selection through a backward reference creates a separate filter group in the Filters toggle panel, with the criteria combined by the all conditions (AND) or any condition (OR) and a header generated automatically.

More details
  • For column types of the "Number" group and "Date" and "Time" type columns, an aggregation function can be applied.
  • For other column types, the attribute can be selected without aggregation once the related object is selected using one of the Number of records, At least one record, No records fields.
  • Out of the box, Creatio truncates a complex path to the last object and displays it when pointing the mouse.
  • A user can switch a filter group between "Have" and "Have no," which are resolved as "exists" and "not exists" in the query.

UI and navigation

Pages

Added support for system variables in the Filters component for "Contact" (Contact code) and "System administration object" (SysAdminUnit code) columns of the "Lookup" type. Previously, the Filters component allowed filtering these columns by a manually selected constant value only and this functionality was available in Classic UI only. Users can now select a system variable for these columns so that the filter resolves dynamically at runtime instead of using a fixed value.

More details
  • For the "Contact" (Contact code) column, the operator to select a constant value is "Specific contact."
  • For the "System administration object" (SysAdminUnit code) column, the operator to select a constant value is "Specific value."

UI and navigation

Pages

Changed the keyboard shortcut for adding new records inline in the list whose Inline editing parameter is selected in the Freedom UI Designer from Shift+Enter to Ctrl+Enter. Previously, it conflicted with adding a new line in multiline text cells.

UI and navigation

Pages

Changed the runtime behavior of the "Lookup" type columns in the list whose Inline editing parameter is selected in the Freedom UI Designer. Previously, editing a cell required an additional click to open the dropdown menu. It now opens automatically.

UI and navigation

Pages

Changed the feed post header to show the specific linked record. Previously, a feed post named only the object in which it was posted, without the specific record title. The post header now shows the primary display value of the linked record, for example, "posted in account Acme." This change enables users to identify the related record directly from the feed without opening it.

UI and navigation

Pages

Changed the Filters component to keep the state of the Filters toggle panel per section in the user profile. Previously, the expanded or collapsed state of the panel was not saved, so the panel did not retain the user's preferred view after a re-login or page reopen.

UI and navigation

Pages

Changed the width of the recipient list in the To, CC, and BCC fields of the message composer to show full email addresses. Previously, the list was too narrow to display complete addresses. This change enables users to see full email addresses when selecting recipients.

UI and navigation

Pages

Changed time selection in the "Date/Time" type fields to use a scrollable time list. Previously, these fields did not offer a list-based time selection. The time interval is managed by the DateTimePickerTimeSelectionInterval system setting. Out of the box, the value is set to "15." To change the time interval, add the DateTimePickerTimeSelectionInterval system setting, set the Type field to "Integer" and set a new interval in the Default value field on the system setting page. For a "Date/Time" type field, Creatio shows the time list next to the calendar and mirrored for RTL locales. To stop using this functionality, register and disable the EnableDateTimeCalendarListPickerView additional feature.

UI and navigation

Pages

Fixed an issue in the button where the button menu sometimes opened downward regardless of the button position on the screen. Previously, the menu could open outside the visible area when the button was positioned near the bottom of the page. The menu now detects available space and opens in the appropriate direction.

UI and navigation

Pages

Fixed a runtime issue in the list where titles and values of the "Number" type columns were aligned to the left in RTL mode. They are now always aligned to the right regardless of the active mode's text direction.

UI and navigation

Pages

Fixed a runtime issue in the attachments where uploaded files disappeared from the attachment list on unsaved records when both the Enable live data update checkbox in the Behavior property block of Object Designer and Use record permissions checkbox on the Permissions tab of the object page in the Object permissions section were selected.

UI and navigation

Pages

Fixed a runtime issue where the To field in the message composer for the "Email" channel showed incomplete recipient suggestions. Previously, a pagination condition in the email search compared the returned record count against the requested row count instead of the actual request size, so results could be cut short after access-rights filtering and valid recipients were missing.

UI and navigation

Pages

Fixed a runtime issue where typing a contact name in the To field of the message composer for the "Email" channel returned no results, even though the same contact was available through the modal window.

UI and navigation

Pages

Fixed a runtime issue where the message body rendered collapsed in the message composer for the "Feed" and "Email" channels. Previously, the body field could appear as a narrow vertical strip, making messages hard to compose. This change renders the body field at its normal size.

UI and navigation

Pages

Fixed a runtime issue where the message composer had no internal scroll, so inserting a template could push the Send button out of the visible area. This change adds an internal scroll to keep the Send button visible.

UI and navigation

Pages

Fixed a runtime issue where unsent draft content was not restored in the message composer for the "Email" channel. Previously, cached draft content was wiped when the record was reopened and ignored when the channel was switched, so typed text and the signature were lost. This change re-applies the cached draft, consistent with the "Feed" channel.

UI and navigation

Pages

Fixed a runtime issue where the timeline stopped loading additional records when the browser zoom was set to certain fractional values, for example, 67%, because the last-row observer was not detected as visible.

UI and navigation

Pages

Fixed a runtime issue where timeline records did not display values from the configured PrimaryDisplayColumn when it was not explicitly included in the object column configuration. Previously, changing the display value of an object to a field such as an "Autonumber" type column could result in empty values in the timeline.

UI and navigation

Pages

Fixed a runtime issue in the "Number" type fields where letters and other non-numeric characters could be entered.

UI and navigation

Pages

Fixed a runtime issue where a full-size record page opened from a "Dropdown" type field whose Lookup view parameter in the Freedom UI Designer was set to "Dropdown list" was displayed underneath the still-visible mini page. Previously, when a user typed a new value in the "Dropdown" type field and clicked the Add new button, and the new record was configured to open on a full page rather than a mini page, the full page opened under the mini page. The mini page is now hidden while the full page is open and restored when the user goes back.

UI and navigation

Pages

Fixed a runtime issue in the iFrame widget where YouTube video previews were displayed in low quality before playback started.

UI and navigation

Pages

Fixed a runtime issue where chat messages sent from business processes showed no delivery status in the timeline or the Agent Inbox panel. The delivery status is now displayed for messages sent from business processes in the same way as for messages sent manually.

UI and navigation

Pages

Added the Filters toggle panel to all list pages built on the out-of-the-box "List page" template and to list pages in apps built on the "Records & business processes" template. The Filters menu component controls the visibility of the panel. The panel includes filters implemented using the Filters component. Previously, both components were under beta testing. Out of the box, the panel width is "400px." Clicking the Add new filter button in the panel displays the filter columns of the object selected in the Object parameter of the List component in the Freedom UI Designer.

UI and navigation

Pages

Changed the visibility behavior of the icn_read_only.png icon at runtime for the "Text," "Number," "Date/Time," "Rich text," "Phone," "Email," "Web link," "Dropdown," "Autonumber," "Encrypted string" type fields. Previously, the icon was displayed only when pointing the mouse, making it invisible to keyboard users navigating via focus. The icon is now also displayed when the field receives focus.

Communications

Message templates

Fixed a runtime issue where emails built from a template in the Message templates section could be sent with unresolved macros and no warning in Creatio, while process-sent emails already removed them out of the box. Unresolved macros are now marked in the UI with a notification. This change enables users to avoid sending emails that contain leftover placeholder text.

Creatio Mobile

Category

Feature

Description

Mobile UI Design

Business rules

Fixed a runtime issue where the "Set values" business rule overwrote field values when opening an existing record page in Creatio Mobile. Previously, this caused the Save and Cancel buttons to appear even though the user had not made any changes. "Set values" business rules are now skipped when an existing record is opened.

Mobile UI Design

Business rules

Fixed a runtime issue in Creatio Mobile where business rules did not react to changes made through the dynamic cases in the Progress bar component.

Mobile UI and navigation

Surveys

Removed success notifications from the survey page in Creatio Mobile. Previously, the notifications overlapped the navigation buttons, occasionally blocking interaction.

Beta testing of new features

Category

Feature

Description

UI Design

Widgets

Added a new pivot table widget to the Freedom UI Designer and the Dashboard Designer. The widget lets no-code creators build and interact with pivot table analytics entirely in Freedom UI, eliminating the need to switch to Classic UI for pivot table configuration. The widget renders at runtime using the existing pivot table component. To use this functionality, register and enable the EnableFreedomUIPivotTable additional feature.

More details

Available parameter values:

  • Title
  • Style: "Fully colored," "Plain white," "Partially colored," "Glass effect." Out of the box, "Plain white."
  • Object
  • Fields display all columns of the object from the Object parameter and support "Add to rows," "Add to columns," "Add to values" actions.
  • Field name. Fields can be added using structure explorer with the Search fields field.
  • Columns
  • Rows
  • Values

The Column, Rows, and Values parameters support btn_edit.png and btn_delete.png actions.

Integrations and APIs

OAuth authorization

Added the ability to create a non-installed OAuth integration in the OAuth integrated applications section. Administrators and developers can prepare and configure an integration without registering it in the Identity Service immediately. This change enables them to deliver the integration as a set of data bindings inside the Creatio package, so the user only needs to install it instead of configuring it manually. Previously, every new OAuth integration was registered in the Identity Service the moment it was created, which required the Identity Service to be available and configured. An integration in a "Not installed" status has no generated credentials, creates no default relations, makes no Identity Service calls, and keeps the Integration is active checkbox in the Application details profile of the integration page disabled until installation. Once ready, the integration can be installed in a single action that validates the configuration, registers the client in the Identity Service, generates the credentials, and activates the integration. If validation fails or the Identity Service is unavailable, the operation rolls back and the integration remains in the "Not installed" status. To use this functionality, enable the OAuthClientAppAllowCreateNotInstalled and OAuthClientAppInstallStatus additional features.

More details
  • When the OAuthClientAppAllowCreateNotInstalled and OAuthClientAppInstallStatus additional features are enabled, the Setup your integration mini page displays the Install integration checkbox when configuring integration in the OAuth integrated applications section. Out of the box, the checkbox is selected. When the checkbox is cleared, Creatio displays the Generate client id checkbox in the Setup your integration mini page, saves the integration as not installed and makes no Identity Service calls. Out of the box, the Generate client id checkbox is cleared. When the checkbox is selected, Creatio generates and stores a Client ID for later use while keeping the Client secret empty. The Client ID is read-only and can be copied for downstream setup.
  • The Not installed block was added to the integration page. Creatio displays the block when the Install integration checkbox was cleared when configuring integration.
  • The Install button was added to the Not installed block of the integration page. Creatio displays the button when the Install integration checkbox was cleared when configuring integration.

Integrations and APIs

Identity Service

Added support for configuring multiple identity provider connections that Creatio uses when authenticating outgoing calls to external applications, and assigning them to specific Creatio services and microservices. This is available using a new Identity providers management section in the Import and integration block in the System Designer. To stop using this functionality, disable the IdentityProvidersManagement additional feature. Previously, Creatio supported only a single system-wide Identity Service configuration for obtaining access tokens for cloud microservices, so to get access to all services and microservices, it was required to authenticate through the same Identity Service instance. Administrators can now register, edit, view, and delete any number of identity provider connections, and bind each connection to a specific service or service group through a services mapping interface. A service requests its access token from the identity provider assigned to it, and falls back to the default identity provider when no binding exists. The existing single Identity Service configuration continues to work after upgrading to version 10X Unlimited. Starting the version 10X Unlimited, a separate identity provider can be configured for Creatio AI Studio and custom services, with support for more Creatio services planned for subsequent releases.

More details
  • The default identity provider is managed by the "Default identity provider" (DefaultIdentityProvider code) system setting. Out of the box, the value is empty. Administrators can change the setting value directly from the Default identity provider field in the Default identity provider expanded list on the Connections & mappings tab in the Identity providers management section. Services without an explicit binding use the default identity provider.
  • An API retrieves an access token for the identity provider linked to a service, referencing the target by service ID, service code, or identity provider ID.
  • Identity provider connection settings can be validated before they are saved.

Logging and monitoring

Audit log

Added access control and audit logging for the Identity providers management section in Import and integration block in the System Designer. The functionality is managed by the "Access to "Identity providers management" workspace" (CanUseIdentityProvidersManagement code) system operation. Out of the box, only users that have the "System administrators" organizational role can access the section and manage identity providers. Creatio records an audit log record when an identity provider is created, changed, or deleted, and when the out-of-the-box identity provider setting is changed. Each log identifies the user, date and time, action type, and the affected identity provider or setting.