{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/newminecraftservers/main/json-schema/newminecraftservers-server-detail-envelope-schema.json", "title": "ServerDetailEnvelope", "x-generated": "2026-09-21", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/newminecraftservers-openapi.yml#/components/schemas/ServerDetailEnvelope", "type": "object", "required": [ "data" ], "properties": { "data": { "$ref": "#/$defs/ServerDetail" } }, "$defs": { "MotdLines": { "type": "array", "items": { "type": "array", "items": { "type": "object", "required": [ "text" ], "properties": { "text": { "type": "string" }, "color": { "type": "string", "pattern": "^#[0-9a-fA-F]{6}$" }, "bold": { "type": "boolean" }, "italic": { "type": "boolean" }, "underline": { "type": "boolean" }, "strike": { "type": "boolean" } } } } }, "ServerConnection": { "type": "object", "required": [ "id", "edition", "host", "port", "role", "populationRelationship" ], "properties": { "id": { "type": "string" }, "edition": { "type": "string", "enum": [ "java", "bedrock", "unknown" ] }, "host": { "type": "string" }, "port": { "type": "integer" }, "role": { "type": "string", "enum": [ "primary", "alternate" ] }, "populationRelationship": { "type": "string", "enum": [ "shared", "separate", "unknown" ] }, "latest": { "type": "object", "required": [ "outcome", "observedAt" ], "properties": { "outcome": { "type": "string", "enum": [ "online", "offline", "unknown" ] }, "observedAt": { "type": "string", "format": "date-time" }, "playersOnline": { "type": "integer" }, "playersMax": { "type": "integer" }, "latencyMs": { "type": "number" }, "protocol": { "type": "integer" }, "versionName": { "type": "string" }, "motdPlain": { "type": "string" }, "motdLines": { "$ref": "#/$defs/MotdLines" } } } } }, "ServerDetail": { "allOf": [ { "$ref": "#/$defs/ServerSummary" }, { "type": "object", "required": [ "connections", "links", "claimed", "votingOpen", "voteRewards", "firstSeenByUsAt", "lastSeenByUsAt" ], "properties": { "description": { "type": "string" }, "connections": { "type": "array", "items": { "$ref": "#/$defs/ServerConnection" } }, "links": { "type": "object", "properties": { "websiteUrl": { "type": "string" }, "discordUrl": { "type": "string" }, "storeUrl": { "type": "string" }, "trailerUrl": { "type": "string" } } }, "claimed": { "type": "boolean" }, "votingOpen": { "type": "boolean" }, "voteRewards": { "type": "boolean" }, "discoveredAt": { "type": "string", "format": "date-time" }, "firstSeenByUsAt": { "type": "string", "format": "date-time" }, "lastSeenByUsAt": { "type": "string", "format": "date-time" }, "noindex": { "type": "boolean" } } } ] }, "ServerSnapshot": { "type": "object", "required": [ "connectionId", "edition", "outcome", "observedAt" ], "properties": { "connectionId": { "type": "string" }, "edition": { "type": "string", "enum": [ "java", "bedrock", "unknown" ] }, "outcome": { "type": "string", "enum": [ "online", "offline", "unknown" ] }, "observedAt": { "type": "string", "format": "date-time" }, "playersOnline": { "type": "integer" }, "playersMax": { "type": "integer" }, "protocol": { "type": "integer" }, "versionName": { "type": "string" } } }, "ServerSummary": { "type": "object", "required": [ "id", "slug", "name", "classification", "media", "primaryConnection", "primarySnapshot", "availableEditions", "publishedAt" ], "properties": { "id": { "type": "string" }, "slug": { "type": "string" }, "name": { "type": "string" }, "shortDescription": { "type": "string" }, "country": { "type": "string" }, "classification": { "type": "object", "required": [ "genreIds", "tags" ], "properties": { "genreIds": { "type": "array", "items": { "type": "string" } }, "primaryGenreIds": { "type": "array", "items": { "type": "string" } }, "tags": { "type": "array", "items": { "type": "string" } }, "gameMode": { "type": "string" }, "cracked": { "type": "boolean" }, "crossplay": { "type": "boolean" } } }, "media": { "type": "object", "properties": { "bannerUrl": { "type": "string" }, "iconUrl": { "type": "string" }, "motdImageUrl": { "type": "string" }, "motdLines": { "$ref": "#/$defs/MotdLines" } } }, "primaryConnection": { "$ref": "#/$defs/ServerConnection" }, "displayAddress": { "type": "object", "required": [ "host", "port" ], "properties": { "host": { "type": "string" }, "port": { "type": "integer" } } }, "primarySnapshot": { "$ref": "#/$defs/ServerSnapshot" }, "availableEditions": { "type": "array", "items": { "type": "string", "enum": [ "java", "bedrock" ] } }, "publishedAt": { "type": "string", "format": "date-time" }, "votes": { "type": "object", "required": [ "month", "total" ], "properties": { "month": { "type": "integer" }, "total": { "type": "integer" } } }, "award": { "type": "object", "required": [ "kind", "position" ], "properties": { "kind": { "type": "string", "enum": [ "players", "votes" ] }, "position": { "type": "integer", "enum": [ 1, 2, 3 ] }, "genre": { "type": "string" } } } } } } }