What one set of mods costs a server: how many players it holds, what gives out first, and what each mod in it costs — every number with the count of runs behind it, and no number at all where there are not enough
GET
/api/v1/perf/packs/{fingerprint} - Sign-in
- No scope
- Scope
- None
- MCP tool
perf.pack
Parameters
| Field | Type and meaning |
|---|---|
fingerprint required path | string |
kind query | string |
Response 200
| Field | Type and meaning |
|---|---|
emptyTickMs always | object |
emptyTickMs.confidence always | string |
emptyTickMs.high | number |
emptyTickMs.low | number |
emptyTickMs.median | number |
emptyTickMs.runs always | integer |
examples | array of object |
examples[].at always | string · date-time |
examples[].id always | integer |
examples[].kind always | string |
examples[].loader | string |
examples[].machine always | object |
examples[].machine.cores | integer |
examples[].machine.cpu | string |
examples[].machine.flags | array of string |
examples[].machine.gc | string |
examples[].machine.gpu | string |
examples[].machine.heapMb | integer |
examples[].machine.java | string |
examples[].machine.os | string |
examples[].machine.ramMb | integer |
examples[].machine.storage | string |
examples[].machine.threads | integer |
examples[].minecraft | string |
examples[].modCount always | integer |
examples[].numbers always | object |
examples[].numbers.allocatedMb | integer |
examples[].numbers.averageTickMs | number |
examples[].numbers.chunks | integer |
examples[].numbers.cpuBusiestPct | number |
examples[].numbers.emptyTickMs | number |
examples[].numbers.entities | integer |
examples[].numbers.gaveOut | string |
examples[].numbers.gcPauseMs | integer |
examples[].numbers.gcPauses | integer |
examples[].numbers.gpuPct | number |
examples[].numbers.heapMb | integer |
examples[].numbers.heapUsedMb | integer |
examples[].numbers.loadPerPlayer | integer |
examples[].numbers.loadVersion | integer |
examples[].numbers.lowFrameMs | number |
examples[].numbers.measureVersion | integer |
examples[].numbers.medianFrameMs | number |
examples[].numbers.msPerPlayer | number |
examples[].numbers.players | integer |
examples[].numbers.playersHeld | integer |
examples[].numbers.settings | string |
examples[].numbers.simulationDistance | integer |
examples[].numbers.spreadRadius | integer |
examples[].numbers.tickMs50 | number |
examples[].numbers.tickMs95 | number |
examples[].numbers.tickMs99 | number |
examples[].numbers.ticks | integer |
examples[].numbers.tps | number |
examples[].seconds always | integer |
examples[].source always | string |
examples[].sourceVersion | string |
fingerprint always | string |
flags | array of object |
flags[].flags always | array of string |
flags[].gc | string |
flags[].pauseMs | number |
flags[].runs always | integer |
flags[].tickMs | number |
gaveOut | array of object |
gaveOut[].runs always | integer |
gaveOut[].value always | string |
live always | object |
live.players always | object |
live.players.confidence always | string |
live.players.high | number |
live.players.low | number |
live.players.median | number |
live.players.runs always | integer |
live.samples always | integer |
live.tickMs95 always | object |
live.tickMs95.confidence always | string |
live.tickMs95.high | number |
live.tickMs95.low | number |
live.tickMs95.median | number |
33 more fields deeper down, in the OpenAPI document.
Errors
| Status | Type and meaning |
|---|---|
400 | The request was not understood. |
401 | Sign in and try again. |
404 | There is nothing here, or nothing you may see. |
429 | Too many requests. |
500 | Something on our side went wrong. |
Every error comes back as { code, message, requestId }. Errors