systemd JSON User Record (partial)
Partial schema for the systemd JSON User Record returned by io.systemd.UserDatabase.GetUserRecord. The full record contains additional sections (privileged, perMachine, binding, status, signature); see https://systemd.io/USER_RECORD/ for the normative spec.
Properties
| Name | Type | Description |
|---|---|---|
| userName | string | POSIX user name. |
| realName | string | |
| uid | integer | |
| gid | integer | |
| memberOf | array | |
| homeDirectory | string | |
| shell | string | |
| service | string | Backend that supplied the record (nss-systemd, io.systemd.Home, ...). |
| disposition | string | |
| locked | boolean | |
| notBeforeUSec | integer | |
| notAfterUSec | integer | |
| storage | string | |
| diskSize | integer | |
| perMachine | array | |
| privileged | object | |
| binding | object | |
| status | object | |
| signature | array |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/systemd/refs/heads/main/json-schema/varlink-user-record-schema.json",
"title": "systemd JSON User Record (partial)",
"description": "Partial schema for the systemd JSON User Record returned by io.systemd.UserDatabase.GetUserRecord. The full record contains additional sections (privileged, perMachine, binding, status, signature); see https://systemd.io/USER_RECORD/ for the normative spec.",
"type": "object",
"required": ["userName"],
"properties": {
"userName": { "type": "string", "description": "POSIX user name." },
"realName": { "type": "string" },
"uid": { "type": "integer", "minimum": 0 },
"gid": { "type": "integer", "minimum": 0 },
"memberOf": { "type": "array", "items": { "type": "string" } },
"homeDirectory": { "type": "string" },
"shell": { "type": "string" },
"service": { "type": "string", "description": "Backend that supplied the record (nss-systemd, io.systemd.Home, ...)." },
"disposition": { "type": "string", "enum": ["intrinsic", "system", "dynamic", "regular", "container", "foreign", "reserved"] },
"locked": { "type": "boolean" },
"notBeforeUSec": { "type": "integer" },
"notAfterUSec": { "type": "integer" },
"storage": { "type": "string", "enum": ["luks", "fscrypt", "directory", "subvolume", "cifs"] },
"diskSize": { "type": "integer" },
"perMachine": { "type": "array", "items": { "type": "object" } },
"privileged": { "type": "object" },
"binding": { "type": "object" },
"status": { "type": "object" },
"signature": { "type": "array", "items": { "type": "object" } }
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-schemas/varlink-user-record"
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.