Skip to main content
Use these steps once, then follow any framework guide. The code examples assume the exact names and slugs below.

1. Get an API token

  1. Open Settings → API Tokens in the ButterCMS dashboard.
  2. Copy your Read API Token.

2. Create a Page Type (Landing Page)

  1. Go to Content Types → New Content Type → Page Type.
  2. Add fields:
    • Short Text: headline
    • Long Text: subheadline
    • Media: hero_image
    • WYSIWYG: body
  3. Click Create Page Type and name it Landing Page. ButterCMS generates the API slug landing_page (underscore) — this is the page-type identifier the guides pass to page.retrieve/page.list.

3. Create a Page

  1. Go to Pages → New Page → Landing Page.
  2. Title: Home (slug becomes home).
  3. Fill fields and Publish.

4. Create a Collection (Brands)

  1. Go to Content Types → New Content Type → Collection.
  2. Add fields:
    • Short Text: name
    • Media: logo
    • WYSIWYG: description
  3. Click Create Collection and name it Brands (key: brands).

5. Add Collection items

  1. After saving, add a few brand items.
  2. Use Collections → Brands → + to add more.

6. Optional: create a Component and a Page Builder page (for the Dynamic Components examples)

  1. Go to Content Types → Components → +.
  2. Create a Hero component with:
    • Short Text: headline
    • Long Text: subheadline
    • Media: image
    • Short Text: button_label
    • Short Text: button_url
  3. Create a second Page Type named Component Page — ButterCMS generates the slug component_page (the identifier the Dynamic Components examples use). Add a Component Picker field named body and, in its settings, allow the Hero component (add Features, CTA, … the same way if you like).
  4. Create a page of this type (Title Home, slug home) and add a Hero block.
This is a separate page type from Landing Page. A page’s body is one field type or the other: landing_page’s body is WYSIWYG (a string), while component_page’s body is a Component Picker (Page Builder) field — an array of components. The Dynamic Components examples fetch component_page; the Pages examples fetch landing_page.