Skip to main content
The user settings endpoints store and retrieve an opaque settings blob keyed by Steam ID. The blob content is defined by the client (in-game Lua) and is treated as a raw string by the server. Both endpoints require the Auth-Key header. See Server API Overview for authentication details.

POST /saveOptions

Saves or updates a player’s settings. If a record for the given steamID already exists, the content field is overwritten. Otherwise a new record is created.

Request

POST /saveOptions
Auth-Key: <LodAuthKey>
Content-Type: application/x-www-form-urlencoded

data={...}
Auth-Key
string
required
Shared secret configured in appsettings.json as LodAuthKey.
data
string
required
JSON-encoded user settings object.

Example request

POST /saveOptions
Auth-Key: 9AE2940BA48F394CD13CAB9F813E861334C3E6F814425710EC2ED6AA75560898
Content-Type: application/x-www-form-urlencoded

data={"steamID":"76561197966504115","content":"{\"volume\":80,\"chatWheel\":true}"}

Response

StatusMeaning
200 OKSettings saved successfully.
401 UnauthorizedMissing or invalid Auth-Key header.
The response body is empty on success.

POST /loadOptions

Retrieves the settings blob for a given Steam ID.

Request

POST /loadOptions
Auth-Key: <LodAuthKey>
Content-Type: application/x-www-form-urlencoded

data={...}
Auth-Key
string
required
Shared secret configured in appsettings.json as LodAuthKey.
data
string
required
JSON object with a single field.

Example request

POST /loadOptions
Auth-Key: 9AE2940BA48F394CD13CAB9F813E861334C3E6F814425710EC2ED6AA75560898
Content-Type: application/x-www-form-urlencoded

data={"steamID":"76561197966504115"}

Response

body
string
JSON-serialised content string that was previously saved by /saveOptions. The value is double-encoded — it is a JSON string whose value is itself a JSON object.
"{\"volume\":80,\"chatWheel\":true}"
StatusMeaning
200 OKSettings found; body contains the serialised content.
401 UnauthorizedMissing or invalid Auth-Key header.
404 Not FoundNo settings record exists for the given Steam ID.
The 404 Not Found response is expected for first-time players who have not yet saved any settings. The client should treat a 404 as “use defaults”.

Data Model

The server maps the request to UserSettingsSave:
FieldTypeJSON KeyDescription
SteamIdstringsteamIDPrimary key in the database.
SettingsContentstringcontentRaw settings payload stored verbatim.

Build docs developers (and LLMs) love