Distribution
Read a pack's distribution
What servers bound to this pack hand their players: which Minecraft versions are built, the live release, and the newest one, with each version's build. Poll it after POST /packs/{pack}/publish until latest.status leaves building.
url is the pack's stable download address, the one a server's server.properties can name.
/packs/{pack}/distributionPath parameters
packstringrequiredThe pack's slug, as returned by the packs endpoints.
Response · 200
The pack's distribution.
packstringrequiredThe pack.
enabledbooleanrequiredWhether bound servers are serving it at all.
versionsarray of stringrequiredThe versions a release is built for.
defaultVersionstringrequiredThe version the stable url serves.
urlstringrequiredThe stable download address.
liveobjectrequiredThe release players get now, or null before the first.
idstringrequiredThe release's id.
statusstringrequiredWhere the build is.
Options: building, ready, failed
errorstringWhy it failed. Absent otherwise.
createdAtstringrequiredISO 8601.
readyAtstringrequiredISO 8601, once built.
artifactsarray of objectrequiredOne per version, plus bedrock when the pack has anything that crosses over.
versionstringrequiredA Minecraft version, or bedrock.
statusstringrequiredWhere this build is.
Options: building, ready, failed
errorstringWhy it failed. Absent otherwise.
bytesintegerrequiredIts size, once built.
latestobjectrequiredThe newest release, live or not, or null before the first.
idstringrequiredThe release's id.
statusstringrequiredWhere the build is.
Options: building, ready, failed
errorstringWhy it failed. Absent otherwise.
createdAtstringrequiredISO 8601.
readyAtstringrequiredISO 8601, once built.
artifactsarray of objectrequiredOne per version, plus bedrock when the pack has anything that crosses over.
versionstringrequiredA Minecraft version, or bedrock.
statusstringrequiredWhere this build is.
Options: building, ready, failed
errorstringWhy it failed. Absent otherwise.
bytesintegerrequiredIts size, once built.
Error codes
Branch on error.code, never on the message.
invalid_api_key401The key isn't one of ours, or it has been revoked.
missing_api_key401No Authorization: Bearer header was sent.
wrong_key_kind401An MCP key sent to the REST API, or an API key sent to the MCP server. Each only opens its own.
account_suspended403The account is suspended, so its keys open nothing. message says until when, if the suspension has an end date.
plan_required403The key is valid, but its account is on Starter. The API needs a paid plan.
not_found404No such pack, asset or job.