.do
ApiContent

Block

A reusable content block or component that can be composed into pages, articles, and other content structures with versioning and publishing support.

Block

A reusable content block or component that can be composed into pages, articles, and other content structures with versioning and publishing support.

Properties

  • id (string): Unique identifier for the block.
  • name (string): The block name or identifier.
  • title (string): Display title of the block.
  • description (string): Description of the block's purpose and content.
  • type (string): Block type (text, image, video, gallery, quote, code, embed, cta, hero, feature, testimonial, faq, form, custom).
  • variant (string): Block style variant or template.
  • content (string): The main block content (HTML, Markdown, or MDX).
  • data (object): Structured data for the block.
  • settings (object): Block configuration and settings.
  • styles (object): Custom CSS or styling configuration.
  • version (number): Current version number of the block.
  • status (string): Publishing status (draft, published, archived).
  • visibility (string): Visibility setting (public, private, internal).
  • isReusable (boolean): Whether block can be reused across content.
  • isEditable (boolean): Whether block content can be edited.
  • isLocked (boolean): Whether block is locked from changes.
  • template ([[Template]]): Template this block is based on.
  • parent ([[Block]]): Parent block if nested.
  • children ([[Block]][]): Child blocks if container.
  • order (number): Display order within parent.
  • tags (string[]): Tags for categorizing blocks.
  • category (string): Block category or group.
  • author ([[User]]): User who created the block.
  • editor ([[User]]): User who last edited the block.
  • usageCount (number): Number of times block is used.
  • usedIn ([[Page]][]): Pages or content using this block.
  • media ([[Media]][]): Media assets used in the block.
  • links ([[Link]][]): Links referenced in the block.
  • anchor (string): HTML anchor ID for the block.
  • className (string): CSS class names for the block.
  • attributes (object): HTML attributes for the block.
  • schema (object): JSON schema for block data validation.
  • validation (object): Validation rules for block content.
  • permissions ([[Permission]][]): Access permissions for the block.
  • publishedAt (number): Timestamp when block was published (Unix timestamp).
  • archivedAt (number): Timestamp when block was archived (Unix timestamp).
  • created (number): Timestamp when block was created (Unix timestamp).
  • updated (number): Timestamp of last update (Unix timestamp).
  • metadata (object): Set of key-value pairs for storing additional information.

Actions

create

Create a new content block.

Input: [[Block]]
Output: [[Block]]

update

Update block content or settings.

Input: [[Block]]
Output: [[Block]]

delete

Delete the block.

Input: [[Block]]
Output: [[Block]]

duplicate

Create a copy of the block.

Input: [[Block]]
Output: [[Block]]

publish

Publish the block to make it available.

Input: [[Block]]
Output: [[Block]]

unpublish

Unpublish the block.

Input: [[Block]]
Output: [[Block]]

archive

Archive the block.

Input: [[Block]]
Output: [[Block]]

restore

Restore archived block.

Input: [[Block]]
Output: [[Block]]

lock

Lock block from changes.

Input: [[Block]]
Output: [[Block]]

unlock

Unlock block for editing.

Input: [[Block]]
Output: [[Block]]

version

Create new version of the block.

Input: [[Block]]
Output: [[Block]]

revert

Revert to previous version.

Input: [[VersionOptions]]
Output: [[Block]]

nest

Add child block.

Input: [[BlockNesting]]
Output: [[Block]]

unnest

Remove child block.

Input: [[Block]]
Output: [[Block]]

reorder

Change block order.

Input: [[ReorderOptions]]
Output: [[Block]]

validate

Validate block content and data.

Input: [[Block]]
Output: [[ValidationResult]]

render

Render block to HTML.

Input: [[RenderOptions]]
Output: string

transform

Transform block to different type.

Input: [[TransformOptions]]
Output: [[Block]]

Events

  • created: Triggered when a new block is created.
  • updated: Triggered when block content is modified.
  • deleted: Triggered when a block is deleted.
  • archived: Triggered when block is archived.
  • duplicated: Triggered when block is duplicated.
  • locked: Triggered when block is locked.
  • published: Triggered when block is published.
  • rendered: Triggered when block is rendered.
  • restored: Triggered when archived block is restored.
  • reverted: Triggered when reverted to previous version.
  • transformed: Triggered when transformed to different type.
  • unlocked: Triggered when block is unlocked.
  • unpublished: Triggered when block is unpublished.
  • Child.added: Triggered when child block is added.
  • Child.removed: Triggered when child block is removed.
  • Order.changed: Triggered when block order changes.
  • Version.created: Triggered when new version is created.