Courier Create provides a set of properties for customizing the Template, Brand Editor and Template Provider. These properties give developers fine-grained control over editor behavior, visual styling, and data flow, making it easy to tailor the integration to any product or tenant-specific requirement.

Template Provider Properties

The TemplateProvider wraps the Template editor component and manages the template’s state, authentication, and data flow. It provides essential context and functionality needed for the editor to operate.

PropertyTypeRequiredDescription
templateIdstringYesUnique ID for the template. Creates it if it doesn’t exist.
tenantIdstringYesID of the tenant the template belongs to.
tokenstringYesJWT or Client Key used for authenticating API requests.

Template Editor Properties

The TemplateEditor component is the core element that provides the template editing interface. If you are using the Template Editor with the Template provider, required properties will be provided.

PropertyTypeDefaultDescription
autoSavebooleantrueEnables automatic saving of changes.
autoSaveDebouncenumber200msTime in milliseconds before auto-saving after changes.
brandEditorbooleanfalseDisplays brand editor alongside the template editor.
brandPropsBrandEditorPropsConfiguration options for the brand editor when enabled.
hidePublishbooleanfalseHides the default “Publish Changes” button.
onChange(value: ElementalContent) => voidCallback triggered when the editor content changes.
themeThemeObj / cssClassCustomize editor appearance via theme object or CSS class name.
valueElementalContentInitial content loaded into the editor.
variablesRecord<string, any>Template personalization variables available in the editor.

Brand Provider Properties

The Brand Provider component is responsible for managing brand-related state and context in your application. It wraps the Brand Editor component and handles data flow, authentication, and state management for brand customization.

PropertyTypeRequiredDescription
tenantIdstringYesThe tenant identifier for which brand settings are being customized.
tokenstringYesJWT or Client Key used to authorize brand-related API access.

The Brand Editor component accepts properties that allow you to customize its behavior and appearance. These properties provide control over the editing interface and functionality specific to brand management.

PropertyTypeDefaultDescription
autoSavebooleantrueEnables automatic saving of brand changes.
autoSaveDebouncenumber200msDelay in milliseconds before triggering auto-save.
hidePublishbooleanfalseHides the “Publish Changes” button.
onChange(value: BrandSettings) => voidCallback fired on brand settings updates.
themeThemeObj \ cssClassApply custom theme or class name for editor styling.
valueBrandSettingsInitial brand configuration values.
variablesRecord<string, any>Variables available for use in brand footer and related content.