Object types supported by continuous integration

Continuous integration supports the following types of Kentico objects:

General

Object type

CI folder name

Notes

Alternative forms

cms.alternativeform

Child object type with the following possible parent types: Custom tables, Forms, Page types, Module classes

Avatars

cms.avatar

Bad words

badwords.word

Badges

cms.badge

The continuous integration data of user objects does not include the activity point values based on which the system assigns automatic badges. As a result, users may have different automatic badges assigned after being synchronized to different instances.

Banned IPs

cms.bannedip

Canned responses for chat

chat.supportcannedresponse

Only includes public canned responses. Personal canned responses created by individual users are not supported by the continuous integration solution.

Countries

cms.country

Supported child objects:

  • States (cms.state)

CSS stylesheets

cms.cssstylesheet

Cultures

cms.culture

Custom tables

cms.customtable

Includes the definitions and settings of custom tables. The data records stored within the tables are represented by a separate object type for each table, named in format customtableitem.<table code name>.

Note: If you change the code name of a custom table with existing data records, the system attempts to re-serialize all data under the new object type. If any problems occur, you may need to manually serialize all objects in the Continuous integration application to bring your CIRepository folder into the correct state.

Supported child objects:

Custom table data

customtableitem.<table code name>

Represents the data records stored within custom tables. Each custom table has a separate object type for its data, named in format customtableitem.<table code name>. For example: customtableitem.customtable.sampletable

Note: The continuous integration solution does not track the data of custom tables without an ItemGUID field. The GUID values are used to identify custom table records and in the names of the corresponding XML files. You can add a GUID field and generate identifier values for all records by clicking Create GUID on the Fields tab of the custom table’s editing interface.

Device profiles

cms.deviceprofile

Email templates

cms.emailtemplate

Facebook apps

sm.facebookapplication

Supported child objects:

  • Facebook pages (sm.facebookaccount)

Facebook pages

sm.facebookaccount

Child object type of Facebook app objects.

The continuous integration data does not include individual Facebook posts or the statistical data (Insights) measured for Facebook pages.

Forms

cms.form
cms.formclass

Only includes form definitions and settings, not the data records stored by individual forms.

The system uses multiple object types to store the definitions and settings of forms. See the Forms section in Continuous integration repository structure for more information.

Supported child objects:

Form controls

cms.formusercontrol

Forum groups

forums.forumgroup

Supported child objects:

  • Forums (forums.forum)

Forum post attachments

forums.forumattachment

Child object type of Forum post objects.

Forum posts

forums.forumpost

Child object type of Forum or Group forum objects.

Supported child objects:

  • Forum attachments (forums.forumattachment)

Forums

forums.forum

Child object type of Forum group objects.

Supported child objects:

  • Forum posts (forums.forumpost)

Help topics for UI elements

cms.helptopic

Child object type of UI element objects.

Integration bus connectors

integration.connector

Includes the definitions of integration bus connectors. Outgoing and incoming integration tasks are dynamic data and are not tracked by continuous integration.

Libraries (DLLs) registered for custom modules

cms.resourcelibrary

Child object type of Module objects.

LinkedIn apps

sm.linkedinapplication

Supported child objects:

  • LinkedIn company profiles (sm.linkedinaccount)

LinkedIn company profiles

sm.linkedinaccount

Child object type of LinkedIn app objects.

The continuous integration data does not include individual company updates (posts) or the statistical data measured for LinkedIn company profiles.

Macro rules

cms.macrorule

Media libraries

media.library

Supported child objects:

Media library files

media.file

Child object type of Media library or Group media library objects.

Only includes media file definitions, not the binary data of individual media files. Binary data is stored in the location configured for the media library.

Memberships

cms.membership

Meta files

cms.metafile

Includes files related to other objects. For example thumbnail images of page types or email template attachments.

Modules

cms.resource

Supported child objects:

  • Module permissions (cms.permission)
  • Libraries (DLLs) registered for custom modules (cms.resourcelibrary)
  • UI elements (cms.uielement)

Module classes

cms.class

Includes the definitions and settings of module classes (object types).

If you wish to use continuous integration for the data stored by custom module classes, you need to enable continuous integration in the corresponding type information code. See: Enabling continuous integration for custom classes

Supported child objects:

Module classes - Customizable

cms.systemtable

Module classes that have the Can be customized property enabled are represented by the separate cms.systemtable object type.

Supported child objects:

Module permissions

cms.permission

Child object type of Module objects.

Notification gateways

notification.gateway

Notification subscriptions

notification.subscription

Child object type of Notification template objects.

Notification templates

notification.template

Supported child objects:

  • Notification subscriptions (notification.subscription)
  • Notification template text (notification.templatetext)

Notification template text

notification.templatetext

Child object type of Notification template objects.

Page layouts (shared)

cms.layout

Page template categories

cms.pagetemplatecategory

Page template scopes

cms.pagetemplatescope

Child object type of Page template objects.

Page templates

cms.pagetemplate

Supported child objects:

Page type scopes

cms.documenttypescope

Page types

cms.documenttype

Supported child objects:

Permissions of classes (Page types or Custom tables)

cms.classpermission

Child object type with the following possible parent types: Custom tables, Page types

Poll answers

polls.pollanswer

Child object type of Poll or Group poll objects.

Polls

polls.poll

Supported child objects:

  • Poll answers (polls.pollanswer)

Queries

cms.query

Child object type with the following possible parent types: Custom tablesPage types, ****Module classes****

Report categories

reporting.reportcategory

Report graphs

reporting.reportgraph

Child object type of Report objects.

Report subscriptions

reporting.reportsubscription

Child object type of Report objects. Report subscriptions are always site-related objects.

Report tables

reporting.reporttable

Child object type of Report objects.

Report values

reporting.reportvalue

Child object type of Report objects.

Reports

reporting.report

Supported child objects:

  • Report graphs (reporting.reportgraph)
  • Report subscriptions (reporting.reportsubscription)
  • Report tables (reporting.reporttable)
  • Report values (reporting.reportvalue)
  • Reports - Saved views (reporting.savedreport)

Reports - Saved graph images

reporting.savedgraph

Child object type of Report - Saved view objects.

Reports - Saved views

reporting.savedreport

Child object type of Report objects.

Supported child objects:

  • Reports - Saved graph images (reporting.savedgraph)

Resource strings (localization)

cms.resourcestring

Includes the basic definitions of resource strings that are stored in the database. For strings stored within resx files in the Kentico project, use your source control system to synchronize the files directly.

The text values (translations) of individual strings are stored separately under the cms.resourcetranslation binding object type.

Roles

cms.role

Scheduled tasks

cms.scheduledtask

Does not include System tasks (dynamically created temporary tasks that the system uses internally).

Search indexes

cms.searchindex

When restoring data from the CIRepository folder, you can configure the restore utility to automatically log rebuild tasks for any new or modified search indexes. The index rebuilds are processed when the application starts up after the restore operation.

See Restoring continuous integration files to the database for more information.

Setting categories and groups

cms.settingscategory

The cms.settingscategory object type includes both setting categories and setting groups.

Settings

cms.settingskey

Settings are supported by continuous integration, but excluded by default in the repository.config file. Settings may contain sensitive data – only remove the exclusion if you agree to make setting values available within the file system used by your application and any connected source control systems. You can configure the repository.config file to include settings in general, but exclude individual setting keys that you consider sensitive.

SharePoint connections

sharepoint.sharepointconnection

SharePoint libraries

sharepoint.sharepointlibrary

Continuous integration does not synchronize files stored in SharePoint libraries. After restoring a new SharePoint library from the CIRepository folder, the system automatically synchronizes the files from the related SharePoint server.

Sites

cms.site

The continuous integration data does not include the status of sites (running, stopped, etc.). When restoring data from the CIRepository folder, any new sites are stopped by default and need to be started manually in the Sites application.

Supported child objects:

Site domain aliases

cms.sitedomainalias

Child object of Site objects.

SMTP servers

cms.smtpserver

Includes the additional servers defined in the SMTP servers application.

States

cms.state

Child object type of Country objects.

Time zones

cms.timezone

Transformations

cms.transformation

Child object type with the following possible parent types: Custom tables, Page types

Translation services

cms.translationservice

Twitter apps

sm.twitterapplication

Supported child objects:

  • Twitter channels (sm.twitteraccount)

Twitter channels

sm.twitteraccount

Child object type of Twitter app objects.

The continuous integration data does not include individual Tweets or the statistical data (Analytics) measured for Twitter channels.

UI elements

cms.uielement

Child object type of Module objects.

Supported child objects:

  • Help topics (cms.helptopic)

Users

cms.user
cms.usersettings

Users in Kentico are a composite object type. The basic properties are stored within cms.user objects, with additional settings within child cms.usersettings objects. See the Users section in Continuous integration repository structure for more information.

Supported child objects:

  • User categories (cms.usercategory)
  • User widget zone content (cms.personalization)
  • Widget dashboard content (cms.dashboard)

User widget zone content

cms.personalization

Child object type of User objects.

Web templates

cms.webtemplate

Web part categories

cms.webpartcategory

Web part containers

cms.webpartcontainer

Web part layouts

cms.webpartlayout

Child object type of Web part objects.

Web parts

cms.webpart

Supported child objects:

Widget categories

cms.widgetcategory

Widget dashboard content

cms.dashboard

Child object type of User objects.

Widgets

cms.widget

Workflows

cms.workflow

Includes the definitions of workflows. Continuous integration does not track the workflow status of pages. Pages under workflow are fully stored in the repository only after they are published.

Supported child objects:

  • Workflow scopes (cms.workflowscope)
  • Workflow steps (cms.workflowstep)

Workflow actions

cms.workflowaction

Workflow scopes

cms.workflowscope

Child object type of Workflow objects.

Note: Unlike other workflow objects, scopes are always related to a specific site and are stored in the corresponding subfolder in CIRepository.

Workflow steps

cms.workflowstep

Child object type of Workflow objects.

Includes steps defined for both basic and advanced workflows.

Page content

Object type

CI folder name

Notes

ACL items

cms.aclitem

Child object type of Page-level permission (ACL) objects.

Attachment image variants

cms.attachmentvariant

Child object type of Attachment objects.

Attachments

cms.attachment

Child object type of Page objects.

Supported child objects:

  • Attachment image variants (cms.attachmentvariant)

Blog comments

blog.comment

Child object type of Page objects.

Note: Only includes comments added to blog posts. Blogs and blog posts are stored as pages.

Categories

cms.category

Includes global and site categories.

Message boards

board.board

Child object type of Page objects. Includes both general message boards and boards created on the pages of community groups.

Supported child objects:

  • Message board messages (board.message)

Message board messages

board.message

Child object type of Message board objects.

Page aliases

cms.documentalias

Child object type of Page objects.

Page-level permissions (ACLs)

cms.acl

Supported child objects:

  • ACL items (cms.aclitem)

Pages

cms.document

When using the page workflow feature, the majority of workflow information is ignored. For more details, see Usage and relationship with other features.

The system uses multiple files to store page data. See the Pages section in Continuous integration repository structure for more information.

Supported child objects:

Page relationship types

cms.relationshipname

Page tags and tag groups

cms.taggroup

Tag groups are represented as a separate object type (cms.taggroup). Tags are stored within the data of individual Page (cms.document) objects.

User categories

cms.usercategory

Includes the personal page categories created by individual users.

Child object type of User objects.

Unsupported page permission scenario

Continuous integration does not support scenarios where different page-level permissions (ACLs) are applied to the same page from different sources and then synchronized.

Developer A

  1. Sets permissions for a user or a role on a page.
  2. Pushes the changes to the source control system.

Developer B

  1. Sets different permissions for the same user or role on the same page.
  2. Downloads the latest version from the source control. No collisions occur, because the ACL items are represented by different files.
  3. Restores objects from the file system to the database. Both ACL item files are processed, but only one is kept in the database, depending on the order in which they are processed.

On-line marketing

Object type

CI folder name

Notes

A/B tests

om.abtest

The continuous integration data does not include the start/end dates and status of A/B tests (not started, running, finished, etc.). When restoring data from the CIRepository folder, any new A/B tests are always created with the Not started status.

Supported child objects:

  • A/B test variants (om.abvariant)

A/B test variants

om.abvariant

Child object type of A/B test objects.

The data only includes the names of the variant and the path of the related page. The actual page variants are stored as standard Pages.

Account statuses

om.accountstatus

Activity types

om.activitytype

Automation actions

ma.automationaction

Automation processes

ma.automationprocess

Only includes the general definitions of marketing automation processes. Process states for individual contacts are dynamic live site data and are not tracked by continuous integration.

Supported child objects:

Automation process steps

ma.automationstep

Child object type of Automation process objects.

Automation process triggers

cms.objectworkflowtrigger

Child object type of Automation process objects.

Note: When restoring data from the CIRepository folder, process triggers of the “Contact scored X or more” type are created only if the related score exists in the given database. To reliably use continuous integration for these types of triggers, you need to manually ensure that the required scores are present on all instances in the environment (Scores are currently not supported by continuous integration).

Banner categories

cms.bannercategory

Banners

cms.banner

Continuous integration data does not include the number of Impressions left and Clicks left for banners.

Campaigns

analytics.campaign

The continuous integration data does not include the status of campaigns (draft, running, etc.). When restoring data from the CIRepository folder, any new campaigns are always created with the Draft status.

Supported child objects:

  • Campaign assets (analytics.campaignasset)
  • Campaign conversions (analytics.campaignconversion)

Campaign assets

analytics.campaignasset

Child object type of Campaign objects. Represents pages or promotional emails assigned to a campaign’s content inventory.

Supported child objects:

  • Campaign asset URLs (analytics.campaignasseturl)

Campaign asset URLs

analytics.campaignasseturl

Child object type of Campaign asset objects. Represents page URLs assigned to a campaign’s content inventory on “content only” (MVC) sites.

Campaign conversions

analytics.campaignconversion

Child object type of Campaign objects.

The continuous integration data of campaign conversions does not include live site statistics (the number of logged conversion hits).

Contact groups

om.contactgroup

Only includes the definitions of contact groups, without information about the contacts or accounts assigned to the groups.

Additionally, the continuous integration data does not contain information about scheduled rebuilds for contact groups. After restoring a new condition-based contact group from the CIRepository folder, you need to manually rebuild the group in the Contact groups application.

Contact roles

om.contactrole

Contact statuses

om.contactstatus

Custom conversions

analytics.conversion

Includes only the definitions of custom conversions, without the count and value statistics logged for conversions.

Email feeds

newsletter.newsletter

Includes the definitions and configuration of both newsletters and email campaigns.

For page-based newsletters, the continuous integration data does not contain information about scheduled mail-outs. After restoring a new page-based newsletter from the CIRepository folder, you need to manually schedule the mail-outs in the Email marketing application.

Supported child objects:

  • Emails (newsletter.issue)

Marketing email templates

newsletter.emailtemplate

Marketing emails

newsletter.issue

The continuous integration data does not include the send status of marketing emails or any live marketing data (the number of opened emails, clicked links, unsubscriptions, etc.). When restoring data from the CIRepository folder, any new emails are always created with the Draft status.

Supported child objects:

  • Email A/B tests (newsletter.abtest)
  • Email variants for A/B tests (newsletter.issuevariant)

Marketing email A/B tests

newsletter.abtest

Child object type of Email campaign email objects.

The continuous integration data of marketing email A/B tests does not include any data collected or specified after the emails are sent out (such as the selection of the test winner).

Marketing email variants for A/B tests

newsletter.issuevariant

Child object type of Email campaign email objects.

The continuous integration data does not include the send status of marketing email variants or any live marketing data (the number of opened emails, clicked links, etc.).

MVT tests

om.mvtest

The continuous integration data does not include the following live data of MVT tests: start/end dates, status (disabled, running, finished, etc.), current conversion counts and values

When restoring data from the CIRepository folder, any new MVT tests are always created with the Disabled status.

MVT combinations

om.mvtcombination
– OR –
om.documentmvtcombination

Combinations of web parts and web part zone MVT variants are stored as om.mvtcombination objects (child object type of Page template objects).

Combinations of editor widget MVT variants are stored as om.documentmvtcombination objects (child object type of Page objects).

MVT variants

om.mvtvariant
– OR –
om.documentmvtvariant

Variants of web parts and web part zones are stored as om.mvtvariant objects (child object type of Page template objects).

Variants of editor widgets are stored as om.documentmvtvariant objects (child object type of Page objects).

Personalization variants

om.personalizationvariant– OR –

om.documentpersonalizationvariant

Variants of web parts and web part zones are stored as om.personalizationvariant objects (child object type of Page template objects).

Variants of editor widgets are stored as om.documentpersonalizationvariant objects (child object type of Page objects).

Search engines (web analytics)

cms.searchengine

E-commerce

Object type

CI folder name

Notes

Buy X Get Y discounts

ecommerce.multibuydiscount

Supported child objects:

Buy X Get Y coupons

ecommerce.multibuycouponcode

Child object type of Buy X Get Y discount objects.

The continuous integration data of individual coupons does not include the current number of redemptions (coupon uses). New coupons restored from the CIRepository folder are always unused.

Carriers

ecommerce.carrier

Currencies

ecommerce.currency

Departments

ecommerce.department

Discounts:

ecommerce.discount

Includes Catalog discounts, Order discounts and Free shipping offers. Volume discounts and Buy X Get Y discounts are stored as separate objects.

Supported child objects:

Discount coupons

ecommerce.couponcode

Child object type of Discount objects (Order discounts or Free shipping offers).

The continuous integration data of individual coupons does not include the current number of redemptions (coupon uses). New coupons restored from the CIRepository folder are always unused.

Exchange tables

ecommerce.exchangetable

Manufacturers

ecommerce.manufacturer

Order statuses

ecommerce.orderstatus

Payment methods

ecommerce.paymentoption

Product coupons

ecommerce.discountcoupon

Product internal statuses

ecommerce.internalstatus

Product option categories

ecommerce.optioncategory

Supported child objects:

  • Product options (ecommerce.skuoption)

Product options

ecommerce.skuoption

Child object type of Product option category objects.

Product public statuses

ecommerce.publicstatus

Product files

ecommerce.skufile

Child object type of Product objects.

Product variants

ecommerce.skuvariant

Child object type of Product objects.

Products

ecommerce.sku

Supported child objects:

  • Product files (ecommerce.skufile)
  • Product variants (ecommerce.skuvariant)

Shipping costs

ecommerce.shippingcost

Child object type of Shipping option objects.

Shipping options

ecommerce.shippingoption

Supported child objects:

  • Shipping costs (ecommerce.shippingcost)

Suppliers

ecommerce.supplier

Tax classes

ecommerce.taxclass

Volume discounts

ecommerce.volumediscount

Child object type of Product objects.

Community groups

Object type

CI folder name

Notes

Groups

community.group

Supported child objects:

  • Group media libraries (media.grouplibrary)
  • Group members (community.groupmember)
  • Group roles (cms.grouprole)

Group forum groups

forums.groupforumgroup

Child object type of Group objects.

Supported child objects:

  • Group forums (forums.groupforum)

Group forums

forums.groupforum

Child object type of Group forum group objects.

Supported child objects:

  • Forum posts (forums.forumpost)

Group media libraries

media.grouplibrary

Child object type of Group objects.

Supported child objects:

Group members

community.groupmember

Child object type of Group objects.

Continuous integration does not track group member invitations.

Group message boards

board.board

Child object type of Page objects. Includes both message boards created on group pages and general message boards.

Supported child objects:

  • Message board messages (board.message)

Group polls

polls.grouppoll

Child object type of Group objects.

Supported child objects:

  • Poll answers (polls.pollanswer)

Group roles

cms.grouprole

Child object type of Group objects.

Binding object types

In addition to the standard object types, continuous integration also supports most related bindings (i.e. objects representing relationships between the supported objects and other objects). For example, the binding objects that store how page templates or page types are assigned to sites.

Binding

CI folder name

Main object type (parent)

Related object type

Allowed child page types

cms.allowedchildclass

Page type

Page type

Applications assigned to the default dashboard of roles

cms.roleapplication

Role

UI element

Categories assigned to pages

cms.documentcategory

Page

Category

Connections between steps in advanced workflows and automation processes

cms.workflowtransition

Workflow step (source)
- OR -
Automation process step (source)

Workflow step (target)
Workflow
- OR -
Automation process step (target)
Automation process

Countries of tax classes

ecommerce.taxclasscountry

Tax class

Country

Cultures allowed for editing by users

cms.userculture

User

Culture
Site

Cultures assigned to sites

cms.culturesite

Culture

Site

Cultures of bad words

badwords.wordculture

Bad word

Culture

Cultures of page search indexes

cms.searchindexculture

Search index

Culture

Departments of Buy X Get Y discounts

ecommerce.multibuydiscountdepartment

Buy X Get Y discount

Department

Device profile layouts of page templates

cms.templatedevicelayout

Page template

Device profile
Page layout (optional)

Exchange rates

ecommerce.exchangerate

Exchange table

Currency

Group permissions assigned to roles

community.grouprolepermission

Group

Group role
Permission

Mapped page layouts of device profiles

cms.deviceprofilelayout

Device profile

Page layout (source)
Page layout (target)

Moderators (users) of forums

forums.forummoderator

Forum
- OR -
Group forum

User

Moderators (users) of message boards

board.moderator

Message board

User

MVT variants in combinations

om.mvtcombinationvariation

MVT combination

MVT variant

Page relationships

cms.relationship

Page

Page
Page relationship type

Pages with fields containing other pages
(see Advanced content modeling)

cms.adhocrelationship

Page

Page
Page relationship type

Permissions assigned to roles

cms.rolepermission

Role

Permission
(module or class)

Product bundles

ecommerce.bundle

Product

Product

Product options allowed for products

ecommerce.skuallowedoption

Product

Product option

Product options of product variants

ecommerce.variantoption

Product variant

Product option

Product option categories of products

ecommerce.skuoptioncategory

Product

Product option category

Products assigned to product coupons

ecommerce.skudiscountcoupon

Product coupon

Product

Products of Buy X Get Y discounts

ecommerce.multibuydiscountsku

Buy X Get Y discount

Product

Resource string translations

cms.resourcetranslation

Resource string

Culture

Role permissions assigned to media libraries

media.libraryrolepermission

Media library
- OR -
Group media library

Role
Permission
- OR -
Group role
Permission

Role permissions assigned to forums

forums.forumrole

Forum
- OR -
Group forum

Role
Permission
- OR -
Group role
Permission

Roles assigned to forms

cms.formrole

Form

Role

Roles assigned to message boards

board.boardrole

Message board

Role

Roles assigned to polls

polls.pollrole

Poll
- OR -
Group poll

Role
- OR -
Group role

Roles assigned to widgets

cms.widgetrole

Role

Widget
Permission

Roles assigned to workflow steps and automation process steps

cms.workflowsteprole

Workflow step
- OR -
Automation process step

Role

Roles in memberships

cms.membershiprole

Membership

Role

Scopes assigned to page types

cms.documenttypescopeclass

Page type scope

Page type

Sites of CSS stylesheets

cms.cssstylesheetsite

CSS stylesheet

Site

Sites of data classes

cms.classsite

Page type
Custom table

Site

Sites of modules

cms.resourcesite

Module

Site

Sites of page templates

cms.pagetemplatesite

Page template

Site

Sites of page relationship types

cms.relationshipnamesite

Page relationship type

Site

Sites of polls

polls.pollsite

Poll

Site

Sites of search indexes

cms.searchindexsite

Search index

Site

Sites of SMTP servers

cms.smtpserversite

SMTP server

Site

Sites of web part containers

cms.webpartcontainersite

Web part container

Site

Sites of users

cms.usersite

User

Site

States of tax classes

ecommerce.taxclassstate

Tax class

State

Tax classes of departments

ecommerce.departmenttaxclass

Department

Tax class

Tax classes of products

ecommerce.skutaxclass

Product

Tax class

Tax classes of shipping options

ecommerce.shippingoptiontaxclass

Shipping option

Tax class

Templates assigned to email campaigns

newsletter.emailtemplatenewsletter

Email campaign

Email campaign template

UI elements allowed for roles (UI personalization)

cms.roleuielement

Role

UI element

Users assigned to workflow steps and automation process steps

cms.workflowstepuser

Workflow step
- OR -
Automation process step

User

Users in roles

cms.userrole

Role
- OR -
Group role

User

Users in memberships

cms.membershipuser

Membership

User

Users who receive email notifications for workflows

cms.workflowuser

Workflow

User