ApiCMS: the REST API to automate CartaCMS

Every CartaCMS site is born with a feature that often stays hidden until you really need it: a full REST API, ready to manage content from outside the browser. Its name is ApiCMS.

What you can do with it

With a simple X-API-Key header and an HTTP request to /admin/api.php you can create, read, update and delete articles, shop products, static pages, categories, menu, footer and even the CSS of the active theme. No panel to open, no manual clicks: everything scriptable, everything automatable.

All available actions

Here is the complete list of REST calls supported by ApiCMS:

ActionMethodWhat it does
list_languagesGETList of active languages on the site
list_categoriesGETList of blog categories
list_shop_categoriesGETList of shop categories
list_articlesGETList of blog articles
list_productsGETList of shop products
list_pagesGETList of static pages
get_articleGETReads an existing article
get_productGETReads an existing product
get_pageGETReads an existing page
create_article / update_articlePOSTCreates or updates a blog article
create_product / update_productPOSTCreates or updates a shop product
create_page / update_pagePOSTCreates or updates a static page
delete_article / delete_product / delete_pagePOSTDeletes existing content
create_category / update_category / delete_categoryPOSTManages blog categories
create_shop_category / update_shop_category / delete_shop_categoryPOSTManages shop categories
get_menu / update_menuGET/POSTReads or updates the navigation menu (per language)
get_footer / update_footerGET/POSTReads or updates the footer (per language)
get_theme_css / update_theme_cssGET/POSTReads or updates the CSS of the active theme

A concrete example

Creating a new shop product, with title, price, description and image, takes a single POST call to create_product. The response already returns the public URL of the page you just created, ready to check. The same goes for an article, a page, or even a theme CSS update: read the current state with the matching get_* call, change only the fields you need, and send it all back with update_*.

For anyone who changes content often

Blogs publishing every day, shops with seasonal catalogs, multilingual sites that need to stay in sync: ApiCMS turns repetitive work into an automatable process, keeping the same philosophy as CartaCMS — zero database, zero dependencies, maximum simplicity.