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.calibration | integer |
examples[].machine.calibrationVersion | integer |
examples[].machine.cores | integer |
examples[].machine.cpu | string |
examples[].machine.flags | array of string |
examples[].machine.gc | string |
examples[].machine.gpu | string |
examples[].machine.gpuDriver | string |
examples[].machine.gpuPci | string |
examples[].machine.gpuVendor | string |
examples[].machine.heapMb | integer |
examples[].machine.java | string |
examples[].machine.os | string |
examples[].machine.osVersion | 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.avgFrameMs | number |
examples[].numbers.chunks | integer |
examples[].numbers.cpuBusiestPct | number |
examples[].numbers.emptyTickMs | number |
examples[].numbers.entities | integer |
examples[].numbers.frames | integer |
examples[].numbers.gaveOut | string |
examples[].numbers.gcPauseMaxMs | number |
examples[].numbers.gcPauseMs | integer |
examples[].numbers.gcPauseTotalMs | number |
examples[].numbers.gcPauses | integer |
examples[].numbers.gpuBusyPct | number |
examples[].numbers.heapLiveP90Mb | integer |
examples[].numbers.heapMaxMb | integer |
examples[].numbers.heapMb | integer |
examples[].numbers.heapUsedMb | integer |
examples[].numbers.histogram | object |
examples[].numbers.histogram.counts always | array of integer |
examples[].numbers.histogram.from always | integer |
examples[].numbers.histogram.version always | integer |
examples[].numbers.loadPerPlayer | integer |
examples[].numbers.loadS | number |
examples[].numbers.loadVersion | integer |
examples[].numbers.lowFrameMs | number |
examples[].numbers.measureVersion | integer |
examples[].numbers.medianFrameMs | number |
examples[].numbers.msPerPlayer | number |
examples[].numbers.msPerPlayerError | number |
examples[].numbers.perSecond | array of array of number |
examples[].numbers.players | integer |
examples[].numbers.playersHeld | integer |
examples[].numbers.seconds | number |
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[].numbers.worldLoadS | number |
examples[].scene | integer |
examples[].seconds always | integer |
examples[].source always | string |
examples[].sourceVersion | string |
fingerprint always | string |
74 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