An OJS plugin for exporting articles to Zenodo.
Compatible with OJS 3.6 and later.
- Create a Zenodo sandbox account and API key
- Copy the plugin files to
plugins/generic/zenodo - Run the installation tool:
php lib/pkp/tools/installPluginVersion.php plugins/generic/zenodo/version.xml - Set Zenodo plugin settings in Tools > Zenodo Export Plugin:
- Enter the API key from your sandbox account
- Enable test mode
- If you don't have DOIs set up for your publications, enable Zenodo DOIs
- To test funding metadata, the funding metadata plugin must be installed and enabled.
This plugin uses the Invenio RDM API and does not use Zenodo's legacy API. Refer to the Invenio RDM documentation for more details.
A workflow diagram is available in the docs directory which outlines the steps in the plugin's workflow from selection
of a record to deposit in Zenodo.
By default, the plugin expects that exported records have a DOI, and records will not be exported if a DOI is not set. Zenodo is able to mint their own DOIs, and this option can be enabled in the plugin settings. The DOI minted in Zenodo is not saved in OJS.
If DOI versioning is enabled in OJS, then the user can deposit each major version of an article to Zenodo as an individual record. The previous version will be included in the relations metadata.
By default, the plugin will create a draft record in Zenodo, which can then be published in the Zenodo application. This allows users to review the accuracy of the record or add additional metadata before publishing. This plugin includes a setting for automatic publishing, but it's important to note that a record in Zenodo can't easily be deleted once it has been published (metadata can be updated for the record).
If the funding metadata plugin is installed and enabled, the plugin will attempt to add funding metadata to the exported record. Only funding metadata which is supported by Zenodo will be included in the exported record. The ROR API is used to look up ROR IDs for funders, as the funding plugin currently uses DOIs for funders.
If an article is embargoed and sent to Zenodo, the same embargo date will be set in Zenodo. If an article is only accessible via a subscription model, then the data will be set as restricted in Zenodo.
If a community is enabled in the plugin settings, the plugin will attempt to submit the record to the community in Zenodo. Depending on the community settings, the record may be published immediately or may be published after review. If the community submission fails for any reason, such as insufficient permissions or an API error, the record will still be exported to Zenodo and the status and identifier will be saved.
This plugin is licensed under the GNU General Public License v3.