We’ve made it easy to automatically update your Minecraft server to the latest Paper, Velocity, Waterfall or even Travertine version.
If you’ve ever been frustrated with having to download each individual Paper build, you can now use MineAcademy Endpoint to get the latest jar.
We also provide endpoints for both Spigot and Mojang mappings to Paper.
In this tutorial, I’ll show you what the new endpoint is capable of, and how to configure your Minecraft server using cURL to automatically update Paper.
About Our Endpoint
Endpoint Structure
The structure for our endpoint is as follows:
https://mineacademy.org/api/{software}/{version}
Supported Software
At this time, we support the following software:
- Paper (use “paper” for Spigot, and “paper-mojmap” for Mojang mappings, see below)
- Purpur
- Velocity
- Folia (please note that these builds appear outdated on Paper)
- Travertine
- Waterfall
Please note that the versions are compiled by team Paper, and their availability can be checked at “https://api.papermc.io/v2/projects/X” (replace X with the project name such as folia).
Obtaining The Latest Version
The top-most endpoint call will automatically retrieve the latest Paper jar for any Minecraft version.
It is inherently unsafe to use this without strong precaution, as this will serve any given major Minecraft version such as 1.20 and 1.21 as soon as they are available.
We only recommend downloading the latest major version for testing purposes.
https://mineacademy.org/api/paper/latest
If you wish to obtain a jar using Mojang mappings, use “paper-mojmap” instead:
https://mineacademy.org/api/paper-mojmap/latest
https://mineacademy.org/api/purpur/latest
https://mineacademy.org/api/folia/latest
https://mineacademy.org/api/velocity/latest
https://mineacademy.org/api/waterfall/latest
https://mineacademy.org/api/travertine/latest
Obtaining The Latest Build For A Given Version
Our endpoint is capable of retrieving the latest Paper build for a given Minecraft version, such as 1.21, 1.21.2 etc.
For all available versions, visit Paper’s build explorer here and see the panel to the left. Then, simply replace the “.” with “_” with the version you would like to obtain the latest build of.
Examples:
Obtaining Minecraft 1.8.8: Please note that if you wish to 1.8.x, there is no such server build as 1.8.9 and older versions are no longer officially maintained.
https://mineacademy.org/api/paper/1_8_8
To get 1.21, either type 1_21 for the main version, or specify the subversion like:
https://mineacademy.org/api/paper/1_21_1
https://mineacademy.org/api/paper/1_20_6
You can use the same logic for Purpur:
https://mineacademy.org/api/purpur/1_21_1
It is even possible to obtain a snapshot build of a software, here is an example from Velocity:
https://mineacademy.org/api/velocity/3_4_0-SNAPSHOT
Here is an example of getting Waterfall. Note that BungeeCord and Waterfall don’t have subversions:
https://mineacademy.org/api/waterfall/1_21
Auto-Download Latest Paper When Launching Your Server
You can use cURL to automatically download the latest software version directly from Paper using our endpoint.
Windows Script Example
Here is an example of a launching script for Windows. Save the content below to a file ending with “.bat” extensions such as “launch.bat”.
Please note to change the startup flags on line 7 according to your preferences.
@echo off
set "jar_url=https://mineacademy.org/api/paper/latest"
set "downloaded_file=paperclip.jar"
curl -o "%downloaded_file%" "%jar_url%"
java -Xms4G -Xmx4G -jar "%downloaded_file%" nogui
pause
Linux And macOS Script Example
And here is an example of a launching script for Linux and macOS. Save the content below to a file ending with “.sh” extensions such as “launch.sh”.
Please note to change the startup flags on line 7 according to your preferences.
@echo off
set "jar_url=https://mineacademy.org/api/paper/latest"
set "downloaded_file=paperclip.jar"
curl -o "%downloaded_file%" "%jar_url%"
java -Xms4G -Xmx4G -jar "%downloaded_file%" nogui
pause
Security Advisory
There are a few downsides to using an endpoint like this.
As mentioned, automatically updating between major game versions will break your plugins and can corrupt your worlds, especially given that the early builds of every new major Minecraft update are inherently unsafe.
Updating between subversions also comes with the same risk.
Therefore, I only recommend doing this “reckless” strategy on a local test server.
The recommended use case for this endpoint is to update builds of the same sub-version, such as to update from 1.21.0 to 1.21.1 where breaking changes are minimal.
It is highly recommended NOT to blindly update to the latest version due to breaking chances.
Still, if you decide to use this endpoint on a production server, you should set a daily backup mechanism in place that is run before the scripts above.
Take care,
-Matej