Getting Started with FlowCMS

Learn how to set up your workspace, create your first content model, and fetch data using our REST & GraphQL APIs. This guide will have you up and running in under 5 minutes.

Overview

FlowCMS is a headless, API-first content management system designed for modern development teams. Unlike traditional CMS platforms, FlowCMS separates content creation from presentation, giving you the flexibility to deliver content to any channel—web, mobile, IoT, or digital signage—through a unified API.

💡
Prerequisites: You'll need a FlowCMS account, a basic understanding of JSON/GraphQL, and a project ready to consume API data.
STEP 1

Create a Workspace

Workspaces are isolated environments for your content projects. Each workspace includes its own content models, media library, user roles, and API keys.

  1. Log in to your FlowCMS Dashboard.
  2. Click + New Workspace in the top navigation.
  3. Enter a workspace name (e.g., production-marketing-site) and select a region.
  4. Choose a plan (Starter, Professional, or Enterprise) and confirm.

Once created, you'll be redirected to the workspace dashboard where you can manage content, users, and settings.

STEP 2

Define Your Content Model

Content models act as blueprints for your content. They define fields, data types, validation rules, and relationships.

Navigate to Content Models in the sidebar and click Create Model. For this example, we'll build a Blog Post model:

  • title (Single Line Text) — Required
  • slug (Auto-generated from title)
  • excerpt (Multi-line Text)
  • content (Rich Text)
  • author (Reference to User model)
  • publish_date (Date/Time)
  • cover_image (Asset)
⚠️
Tip: Avoid deleting content models with existing entries. Use the "Archive" feature instead to preserve data integrity.
STEP 3

Add & Manage Content

With your model ready, go to ContentBlog Posts and click Create Entry. The visual editor supports markdown, drag-and-drop media, and inline collaboration.

You can filter entries by status (Draft, Reviewed, Published), assign reviewers, and set scheduled publishing times directly from the content interface.

STEP 4

Fetch via API

FlowCMS provides both REST and GraphQL endpoints. Generate your API keys in SettingsAPI Access. Use the preview token for drafts and the live token for published content.

REST Example

cURL
curl -X GET "https://api.flowcms.io/v1/blog-posts?status=published&limit=10" \
  -H "Authorization: Bearer YOUR_LIVE_API_KEY" \
  -H "Content-Type: application/json"

GraphQL Example

GraphQL
{
  blogPosts(status: PUBLISHED, first: 10) {
    nodes {
      id
      title
      slug
      excerpt
      publishDate
      coverImage {
        url(width: 800)
        altText
      }
      author {
        name
        avatar
      }
    }
  }
}
STEP 5

Publish & Deploy

When your content is ready, toggle the status to Published. FlowCMS instantly propagates your data to our global edge network, ensuring sub-100ms response times worldwide.

Webhooks are automatically triggered for content.published, content.updated, and content.deleted events. Configure your endpoints in SettingsWebhooks to sync with your frontend or third-party services.

Troubleshooting

  • 401 Unauthorized: Verify your API key has the correct scope (live vs preview).
  • Empty GraphQL response: Check that your query matches the exact field names and types in your content model.
  • CORS errors: Add your frontend domain to Allowed Origins in workspace settings.
  • Media not loading: Ensure assets are optimized in the Media Library and CDN purging is complete.

Where to go next?