Browsing the marketplace
What the Autonnel marketplace is, how plugins and template packs are catalogued, and the public catalog API.
The Autonnel marketplace is where premium plugins and funnel template packs are sold. Open-source Autonnel ships only the free starter template — paid packs (OAuth2 login, ad-platform OAuth connectors, and the premium template packs) live on the marketplace. You buy a pack once and use it across every self-hosted or cloud deployment you own.
There are two ways to get a purchased pack into a project:
- CLI install —
npx autonnel authorizeonce, thennpx autonnel install <item>. This is the recommended path. - Manual download — download the
.zipfrom your account and unpack it by hand.
What is sold
| Kind | Examples | Installs as |
|---|---|---|
plugin | OAuth2 login, ad-platform OAuth | An Astro integration added to your astro.config |
template | Premium funnel template packs | An Astro integration that registers extra page templates |
Every item is versioned. A purchase entitles you to download any published version of that item, including future updates, for the lifetime of the order.
Browsing on the web
The catalog is public — no account is needed to browse:
/marketplace— the browse page: featured items, then Plugins, then Template Packs./marketplace/<slug>— the detail page for one item: summary, gallery, price, version history, and changelog.
Public catalog API
The same catalog is exposed as a read-only JSON API. It needs no authentication and is edge-cached, so you can build your own listing UI or sync the catalog into another tool.
List items
GET /api/marketplace/items.json
Returns every published item:
{
"generatedAt": "2026-06-21T10:00:00.000Z",
"items": [
{
"slug": "plugin-oauth2",
"kind": "plugin",
"title": "OAuth2 Login",
"tagline": "Social and SSO login for your funnels",
"category": "auth",
"tags": ["login", "sso"],
"priceCents": 5900,
"currency": "USD",
"heroImage": "https://.../hero.png",
"featured": true,
"npmPackage": "@autonnel/plugin-oauth2",
"latestVersion": "1.2.0"
}
]
}
Query filters (all optional, combinable):
| Param | Values | Effect |
|---|---|---|
kind | plugin, template (template-pack is also accepted) | Only items of that kind |
category | any category string | Only items in that category |
featured | true | Only featured items |
Only published items appear. Server-only fields (the S3 key, checksum, byte size) are never included.
Get one item
GET /api/marketplace/items/<slug>.json
Returns the full detail object for a published item, including summary, gallery, repoUrl, the latest version detail (version, requiresAutonnel, publishedAt, changelog), and the full versions list. Unknown or unpublished slugs return 404 {"error":"not_found"}.
Caching
Both endpoints send:
Cache-Control: public, s-maxage=300, stale-while-revalidate=600
ETag: "<hash>"
The ETag changes whenever the published catalog changes, so a conditional request (If-None-Match) returns 304 while the catalog is unchanged.
Related
- Buying a plugin or template — checkout, orders, and your perpetual download token
- Manual download and install — download the
.zipand unpack it - CLI install —
authorize,orders, andinstall