STYGION Documentation Search the docs

Send one measurement of a modpack — a load test from a server, a benchmark from a client

It carries what was loaded, what the machine is and what happened, and nothing that names anybody. Envelope schema 3 (benchmark v2) adds versions, figures under metric-registry keys, per-mod costs with intervals and the evidence they are recomputed from; schemas 1 and 2 are still accepted.

POST
/api/v1/perf/runs

Sign-in
No scope
Scope
None
MCP tool
perf.submit

Parameters

None.

Request body

FieldType and meaning
bench any
display object
display.height required integer
display.width required integer
evidence any
files array of string
hosting object
kind required string
launcher string
loader required string
loaderVersion string
machine required object
machine.calibration integer
machine.calibrationVersion integer
machine.cores integer
machine.cpu string
machine.flags array of string
machine.gc string
machine.gpu string
machine.gpuDriver string
machine.gpuPci string
machine.gpuVendor string
machine.heapMb integer
machine.java string
machine.os string
machine.osVersion string
machine.ramMb integer
machine.storage string
machine.threads integer
measureVersion integer
metrics map of number
minecraft required string
modCosts array of object
modCosts[].ci array of number
modCosts[].inVanillaMs number
modCosts[].layer required string
modCosts[].metric required string
modCosts[].modId required string
modCosts[].n integer
modCosts[].outsideMs number
modCosts[].phase string
modCosts[].typedMs number
modCosts[].value required number
mods required array of object
mods[].cfFingerprint integer
mods[].file string
mods[].id required string
mods[].lateShare number
mods[].modId string
mods[].sha1 string
mods[].things integer
mods[].tickShare number
mods[].version string
nonce string
numbers required object
numbers.allocatedMb integer
numbers.averageTickMs number
numbers.avgFrameMs number
numbers.chunks integer
numbers.cpuBusiestPct number
numbers.emptyTickMs number
numbers.entities integer
numbers.frames integer
numbers.gaveOut string
numbers.gcPauseMaxMs number
numbers.gcPauseMs integer
numbers.gcPauseTotalMs number
numbers.gcPauses integer
numbers.gpuBusyPct number
numbers.heapLiveP90Mb integer
numbers.heapMaxMb integer
numbers.heapMb integer
numbers.heapUsedMb integer
numbers.histogram object
numbers.histogram.counts required array of integer
numbers.histogram.from required integer
numbers.histogram.version required integer
numbers.loadPerPlayer integer
numbers.loadS number
numbers.loadVersion integer

65 more fields deeper down, in the OpenAPI document.

Response 201

FieldType and meaning
badges array of string
codes array of string
fingerprint always string
hwClass string
id string
page string
runs always integer
state string

Errors

StatusType and meaning
400The request was not understood.
401Sign in and try again.
404There is nothing here, or nothing you may see.
429Too many requests.
500Something on our side went wrong.

Every error comes back as { code, message, requestId }. Errors