- GET and PUT /_sitemap/api/v1/settings and POST /_sitemap/api/v1/rebuild
resolve the administrator from a backend token, a personal API token or
the MCP dispatch and require the sitemap permission (401/403 otherwise);
bucket sitemap-api
- PUT changes the fields sent with the settings screen's checks (422
validation_failed, nothing stored), merges the HTML sitemap addresses,
writes content types, generates the IndexNow key and queues a rebuild
- GET answers the settings, the content types, the index files with their
counts, the left-out counts, the IndexNow state and the News source
values
- MCP tools sitemap_get_settings, sitemap_update_settings and
sitemap_rebuild bound to those routes, listed with the permission
- the content type settings write and the file listing move to classes,
shared by the form, S1, the index and the API; S1 and the index now list
the image and News files
- GET /_sitemap/api/v1/html?locale= answers the overview: the listed
addresses of the XML sitemaps by group, in the order pages, offers,
services, categories (as a tree), posts (newest first), tags, authors,
other content types, each with its title in the locale, total, the
first html_page_size links and more
- GET /_sitemap/api/v1/html/{group}?locale=&page= answers one page of a
group; past the last page, an unknown group or the HTML sitemap off
answer 404; every answer is noindex; per-IP bucket sitemap-html
- the HTML sitemap tab: html_enabled, the address per locale (html_paths)
and html_page_size 50 to 500, with errors.html_path and errors.page_size
- contract.Listing.Settings answers HTMLEnabled, HTMLPaths, HTMLPageSize
and KeyFile
- one settings tile opening the golem15.sitemap.settings singleton
- Files tab (site address, file size, S1 files partial), Additional
addresses repeater, Content types tab built from signpost at boot
- golem15_sitemap_types; a type switched off leaves the files (reason type)
- a save validates (errors.*) and dispatches a rebuild after commit