Overview
Agent Collections are headless-only structured content stores on Floggy. External systems write structured content into a collection, version it, label it, and A/B-test it; your own site reads it back over a REST API. Floggy is the storage layer. It never renders a collection.
Collections require the Pro plan.
Headless only, on purpose
A collection has no page, no route, and no blog integration on Floggy. Nothing you put in a collection ever shows up on you.floggy.xyz or in your dashboard's blog. The only way in or out is:
- the REST API (
/api/collections/...) - the
@floggy/cmsSDK (floggy.collections.*) - the
floggyCLI (floggy collections ...)
This is different from Floggy posts, which Floggy renders for you. A collection is raw structured data that some other system owns and consumes.
What Floggy does and does not do
Floggy stores, versions, labels, and serves your structured content, and fires webhooks when it changes. That is the whole job.
Floggy does not:
- render your content anywhere
- crawl, analyze, or score your content for SEO
- run analytics or pick A/B winners
- orchestrate agents or run pipelines
Those live in your systems. An SEO automation engine, an AI agent, a localization pipeline, or an analytics tool reads from and writes to Floggy over the API. Floggy is where the content sits and how it is versioned. The intelligence stays outside.
Who this is for
- SEO automation engines that generate landing-page copy, meta tags, and redirects, store them in Floggy, and let your site render them.
- AI agents that draft, revise, and publish structured content on a schedule, keeping every revision as a version.
- Localization pipelines that push per-locale variants as labels and promote them when a translation is approved.
- Any app that wants a small, versioned, headless content store with a published/draft model and branch-like labels.
Core concepts
- Collection - a named store with a JSON schema. Up to 10 per account.
- Entry - a JSON document in a collection. Up to 256KB each.
- Version - every write snapshots a new immutable version. The last 10 are kept; label-pinned versions are never pruned.
- Label - a named pointer to a version, like a git branch.
productionis the published version. Any other label (variant-a,localized-de, ...) is yours to define. - Draft - an entry with no
productionlabel. This is what every write produces by default, over REST, the SDK, and the CLI. Drafts are stored and versioned but not served, so content stays invisible to your site until a label points at it. Publish by setting the label, or by passinglabel: "production"on create (SDK:@floggy/cms0.2.1+) or--publishon the CLI. - Webhook -
entry.created,entry.updated,entry.deleted,label.updated, HMAC-signed like Floggy's post webhooks.
Limits
| Limit | Value |
|---|---|
| Collections per account | 10 |
| Entries per account | 10,000 |
| Entry size | 256KB |
| Total storage | 2GB |
| Versions kept per entry | 10 (label-pinned versions exempt) |
| Bulk operation size | 50 items |
| List page size | 50 |
| Rate limit | 300 req/min per API key |
Next
- Quickstart - key, collection, entry, publish, fetch. End to end.
- Schemas - field types and the
indexesmapping. - API reference - every endpoint.
- Versioning and labels - the branch model, drafts, and rollback.
- A/B testing - variants, the identifier triple, and promotion.
- SEO content - sitemaps and metadata from collections.
- CLI -
pull/push/difffor agent pipelines and CI.