Overview
Pages serve as your primary content structure for individual web pages, articles, landing pages, or any content with a URL. Pages provide advanced functionality that distinguishes them from Collections and Blog Posts. Unique Page capabilities- Components: Structured content blocks including individual components and component picker fields for dynamic layouts
- Repeaters: Fields that allow multiple instances of the same field structure
- Form integrations: Direct integration with third-party form services
- Slug-based retrieval: Human-readable URL identification system
- True versioning: Draft versions can be created over existing published content
Page types
Pages can be structured as Single Pages (unique pages like Homepage) or Page Types (templated pages that share the same field structure). Page Types enable you to create multiple pages with consistent schemas while maintaining individual content.
Pages excel at complex content scenarios requiring flexible layouts, dynamic components, and sophisticated reference relationships.
Publication states
Pages support a three-state lifecycle:
Versioning capability: Pages uniquely support creating new draft versions over existing published content, allowing continuous iteration without taking existing pages offline.
Preview
Preview lets content teams review draft pages in full website context before publishing. Workflow:- Configure preview URLs for Page Types in your ButterCMS dashboard
- Content creators click Preview and are redirected to your preview URL with
preview=1 - Your application detects the parameter and includes it in API calls
- Draft page content is returned and displayed in complete website context
preview=1 in development and staging environments.
Reference architecture
Pages participate in ButterCMS’s reference system, enabling content relationships and reusable data patterns.Page-to-page references
Reference fields pointing to other pages use slugs as identifiers:Page-to-collection references
Pages can reference Collection items using numeric IDs:Managing references
Adding references: Provide the appropriate identifier (slug for pages, ID for collections) in Write API requests. Removing references — use the appropriate empty value:
PATCH vs PUT behavior:
- PATCH: Omitted reference fields remain unchanged
- PUT: For Pages, PUT behaves like PATCH (partial update)
Reference levels
Thelevels parameter controls how deeply reference fields are resolved in API responses.
Performance guidelines:
- Use
levels=1for page listings or navigation menus - Use
levels=2(default) for standard page display - Use
levels=3–5for pages with complex nested references - Note: responses are capped at 10MB — reduce
levelsif approaching this limit
Localization
Pages can maintain separate content versions for each configured locale. Account configuration: Locale support must be configured in your ButterCMS account settings before creating multi-language pages. API integration:- Single-language: Direct
fieldsobject (no localization configured) - Multi-language: Fields nested under locale codes (e.g.,
"en","es")
Next steps
Pages — components
How to work with individual components and component picker fields
Read API — Pages
Fetch pages via the Read API
Write API — Pages
Create and update pages via the Write API
Collections — key concepts
Learn how Collections work