Distribution
Publish a release
What the Distribution tab's Publish does: builds the pack as it is now, once per chosen Minecraft version plus the Bedrock .mcpack, and makes it what every server bound to the pack hands its players. A release is a snapshot: later edits reach players only with the next publish, which replaces it.
Send versions to choose what it is built for (a version older than the pack's assets allow is refused); leave it out to build what was chosen last. The build takes a minute or more: follow it with GET /packs/{pack}/distribution. One version failing does not stop the others.
Needs the distribute permission on the pack. Free, but refused with distribution_cap when this month's players are already at the plan's limit.
/packs/{pack}/publishPath parameters
packstringrequiredThe pack's slug, as returned by the packs endpoints.
Body
versionsarray of stringThe Minecraft versions to build for. Replaces the saved choice.
defaultVersionstringWhich of versions the stable download address serves. Absent is the first.
notesstringmax 500 charactersA note kept with the release.
Response · 202
Building.
packstringrequiredThe pack.
releasestringrequiredThe new release's id.
statusstringrequiredAlways building.
versionsarray of stringrequiredWhat it is being built for.
Error codes
Branch on error.code, never on the message.
invalid_request400Something in the body or query is wrong. message says what.
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.
distribution_cap402The account (or team) has served its plan's players for this month, so a new release cannot be published. Players still get the live one.
account_suspended403The account is suspended, so its keys open nothing. message says until when, if the suspension has an end date.
forbidden403Valid key, but not permitted to do this in this pack.
plan_required403The key is valid, but its account is on Starter. The API needs a paid plan.
not_found404No such pack, asset or job.