# Content Type Configuration

Defines content types that group related columns and control document behavior and workflows.

Referenced by: SiteCfg.ContentTypes, DocLibCfg.ContentTypes.

# Overview

ContentTypeCfg defines a SharePoint content type, which is a reusable collection of columns with shared properties and behaviors. Content types can be applied to document libraries to control what columns are available and how items are managed.

# Applied when

Content types are created when:

  • The parent SiteCfg is provisioned and references this content type via ContentTypes array
  • OR a DocLibCfg references this content type via ContentTypes array (adds content type to library)
  • Applied during site or library provisioning; content types are created at the site level and then added to libraries
  • All column assignments to the content type (via Columns array) are applied when the content type is created
  • Retroactive changes to content type structure (adding/removing columns, changing parent content type) may require manual SharePoint administration

# Core settings

# Name

Type: string | Required: Yes

Unique name for this content type. Used in configuration references to identify the content type.

Example: "MatterDocument", "Contract"

# Group

Type: string | Required: No

Content type group for UI organization. Groups related content types in SharePoint UI and settings pages.

Example: "Matter Documents", "Legal Documents"

# Description

Type: string | Required: No

Content type description. Shown in SharePoint content type settings and as a help tooltip.

# ParentContentType

Type: string | Required: No | Default: "Document"

Parent content type name or ID to inherit from. Inherits columns and behaviors from the parent.

Valid parent values:

  • "Document" (ID: 0x0101) — Standard document
  • "Folder" (ID: 0x0120) — Folder
  • "Document set" (ID: 0x0120D520) — Document set

Important: When this property changes, ContentTypeID is automatically regenerated. Only change the parent if intentional.

# ContentTypeID

Type: string | Required: No | C#: ContentTypeID

Explicit content type ID (advanced usage). Automatically generated from ParentContentType unless explicitly set.

Auto-generated format uses standard SharePoint GUID-based ID generation (e.g., 0x0101{GUID}).

Only override this if you need a specific content type ID that must be preserved across environments. Changes to this ID can break existing document associations.

# FromContentTypeHub

Type: bool | Required: No | Applies When: SharePoint Online only

Inherit from content type hub. When enabled, the content type is pulled from your SharePoint Online content type hub rather than created locally.

# Field configuration

# Fields

Type: string (list) | Required: No

Array of field references with optional visibility settings. Each field can specify flags for Required, Readonly, and Hidden.

Format: "FieldName" or "FieldName=Flag1,Flag2,Flag3"

Example:

["MatterCode", "MatterName=Required", "Status=Readonly", "Notes=Hidden"]

Valid flags:

  • Required — User must provide a value
  • Readonly — Field cannot be edited
  • Hidden — Field is hidden from the form

# Document set configuration

For document set content types, additional properties:

# DocumentSetAllowedContentTypes

Type: string (list) | Required: No

Content types allowed within this document set. Defines which types of documents can be added to the set.

Example: ["Matter", "Correspondence", "Pleading"]

# DocumentSetSharedFields

Type: string (list) | Required: No

Fields to show at the document set level (not per-document). These fields apply to the entire set, not individual documents.

Example: ["MatterCode", "Status", "Owner"]

# DocumentSetWelcomePageFields

Type: string (list) | Required: No

Fields to display on the document set welcome page. Controls what document set metadata is visible to users opening the set.

Last Updated: 4/20/2026, 12:54:05 PM