Markdown ZIP export
Create an export request for one publication, inspect its state, and download a ZIP archive. The exported archive contains unarchived posts, authors, categories, and tags; it does not include other publication resources.
Authentication
All routes require a bearer token and the listed export capability in the selected publication. Export capabilities are available to publication owners and trusted internal principals.
Routes
| Route | Method | Capability | Required input | Optional input and behavior | Success result |
|---|---|---|---|---|---|
/export/start |
POST |
export.start |
Publication selector | format |
Staged export. |
/export/status |
POST |
export.status |
export_id |
Matching publication selector | export. |
/export/download |
POST |
export.download |
export_id |
Matching publication selector | ZIP attachment. |
/export/cancel |
POST |
export.cancel |
export_id |
Matching publication selector | Cancelled export. |
Start and download
format defaults to and currently only accepts markdown_zip.
curl -sS https://api.blog.service.m7.org/v1/export/start \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"publication_slug":"engineering-notes","format":"markdown_zip"}'
{
"started": true,
"export": {
"export_id": "EXPORT_UUID",
"publication_id": "PUBLICATION_UUID",
"format": "markdown_zip",
"state": "ready",
"selection": { "content": "posts", "include_archived": false },
"archive_filename": "engineering-notes-export-20260819-120000.zip",
"summary": { "post_count": 12, "author_count": 2, "category_count": 3, "tag_count": 9 }
}
}
Use export_id with status, download, and cancel. Download succeeds only while the export state is ready; it returns an application/zip attachment, not the JSON envelope. Use the Content-Disposition filename when saving the response. Cancel changes a ready request to cancelled and does not change publication content.
Archive layout
manifest.json
authors.json
categories.json
tags.json
posts/
release-notes.md
Each post uses importer-compatible front matter. The archive reflects current unarchived data at download time, rather than a permanent snapshot taken at start.