Zenodo Automation Pipeline

One command to register a DOI. No browser. No manual upload. No waiting.

Quick Start

python zenodo_publish.py --token $(cat ~/.zenodo_token) --title "Paper Title" --author "Name" --file "paper.md"

Creates a Zenodo deposition, sets metadata, uploads the file, and publishes — returning a real 10.5281/zenodo.XXXXXXXX DOI.

Pipeline Status

Sandbox Tested — deposit 161914 created, file uploaded, metadata verified.

Production Token validated. Server 500 errors — retry when Zenodo API recovers.

Token Stored at %USERPROFILE%\.zenodo_token — persists across sessions.

Template Registered as ZENODO-PUBLISH — callable from any QWAV agent.

Features

Zero dependencies (Python stdlib only). Supports sandbox testing (--sandbox flag), full metadata (title, author, ORCID, abstract, keywords, license), versioning (update existing DOIs with --doi), and file upload with progress.

Source

zenodo_publish.py — 278 lines, self-contained. MIT licensed. Part of QWAV.