Distribution
List recent serves
The Distribution tab's Recent serves: one row per time a bound server handed the pack to a player, newest first, and what their client did with it. Page with nextOffset until it is null. Only the most recent few hundred are kept; the totals in GET /packs/{pack}/distribution/stats count everything.
/packs/{pack}/distribution/servesPath parameters
packstringrequiredThe pack's slug, as returned by the packs endpoints.
Query parameters
limitinteger1–100default 25How many to return.
offsetintegermin 0default 0From the previous response's nextOffset.
Response · 200
One page of serves.
packstringrequiredThe pack.
servesarray of objectrequiredNewest first.
uuidstringrequiredThe player's UUID.
ignstringrequiredTheir name, when the server said.
platformstringrequiredjava or bedrock, when known.
minecraftVersionstringrequiredThe version their client was on, when it could be placed.
protocolintegerrequiredTheir client's protocol number.
outcomestringrequiredWhat their client did with the pack.
Options: pending, accepted, declined, failed, unsupported
atstringrequiredISO 8601.
nextOffsetintegerrequiredThe offset for the next page, or null at the end.
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's plan does not include the API.
not_found404No such pack, asset or job.