{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "additionalProperties": false, "properties": { "$schema": { "type": "string" }, "name": { "type": "string" }, "available": { "type": "boolean" }, "deprecated": { "type": "boolean" }, "exposable": { "type": "boolean" }, "no_gui": { "type": "boolean" }, "port": { "type": "integer", "minimum": 0, "maximum": 65535 }, "https": { "type": "boolean" }, "uid": { "type": "integer" }, "gid": { "type": "integer" }, "force_expose": { "type": "boolean" }, "generate_vapid_keys": { "type": "boolean" }, "requirements": { "type": "object", "properties": { "ports": { "type": "array", "items": [ { "type": "integer" } ] } } }, "supported_architectures": { "type": "array", "items": [ { "type": "string" } ] }, "id": { "type": "string", "pattern": "^[a-z0-9-_]+$" }, "tipi_version": { "type": "integer" }, "version": { "type": "string" }, "categories": { "type": "array", "items": [ { "type": "string" }, { "type": "string" } ] }, "description": { "type": "string" }, "short_desc": { "type": "string" }, "author": { "type": "string" }, "source": { "type": "string", "format": "uri" }, "website": { "type": "string", "format": "uri" }, "url_suffix": { "type": "string", "pattern": "^/[a-z0-9-_/]+$" }, "form_fields": { "type": "array", "items": [ { "type": "object", "properties": { "type": { "type": "string" }, "label": { "type": "string" }, "max": { "type": "integer" }, "min": { "type": "integer" }, "required": { "type": "boolean" }, "env_variable": { "type": "string" } }, "required": ["type", "label", "env_variable"] } ] }, "dynamic_config": { "type": "boolean" } }, "required": [ "name", "available", "port", "id", "tipi_version", "version", "categories", "description", "short_desc", "author", "source", "form_fields" ] }