app-admin_essentials Schemas

On this page:

profiles-schema

{ "$schema": "http://json-schema.org/draft-07/schema", "$id": "profiles-schema", "type": "object", "title": "The root schema", "description": "The root schema comprises the entire JSON document.", "properties": { "applicationProps": { "$id": "#/properties/applicationProps", "type": "object", "title": "The applicationProps schema", "properties": { "description": { "$id": "#/properties/applicationProps/description", "description": "The description property", "default": "Application", "type": "string" }, "directory": { "$id": "#/properties/applicationProps/properties/directory", "type": "string", "title": "The directory schema", "examples": [ "./node_modules/" ] } }, "required": [ "directory" ], "additionalProperties": true }, "uiProps": { "$id": "#/properties/uiProps", "type": "object", "title": "The uiProps schema", "properties": { "description": { "$id": "#/properties/uiProps/properties/description", "type": "string", "title": "The description schema", "examples": [ "UI" ] }, "layout": { "$id": "#/properties/uiProps/properties/layout", "type": "string", "title": "The layout schema", "examples": [ "node_modules/@itential/pronghorn-core/ui/views/layout.jade" ] }, "home": { "$id": "#/properties/uiProps/properties/home", "type": "string", "title": "The home schema", "examples": [ "node_modules/@itential/pronghorn-core/ui/views/home.jade" ] }, "login": { "$id": "#/properties/uiProps/properties/login", "type": "string", "title": "The login schema", "examples": [ "node_modules/@itential/pronghorn-core/ui/views/login.jade" ] }, "profile": { "$id": "#/properties/uiProps/properties/profile", "type": "string", "title": "The profile schema", "examples": [ "node_modules/@itential/pronghorn-core/ui/views/profile.jade" ] }, "fav_icon": { "$id": "#/properties/uiProps/properties/fav_icon", "type": "string", "title": "The fav_icon schema", "examples": [ "node_modules/@itential/pronghorn-core/ui/img/favicon.ico" ] } }, "required": [ "layout", "home", "login", "profile", "fav_icon" ], "additionalProperties": true }, "authenticationProps": { "$id": "#/properties/authenticationProps", "type": "object", "title": "The authenticationProps schema", "properties": { "description": { "$id": "#/properties/authenticationProps/properties/description", "type": "string", "title": "The description schema", "examples": [ "audit" ] }, "uniqueSession": { "$id": "#/properties/authenticationProps/properties/uniqueSession", "type": "boolean", "title": "The uniqueSession schema", "examples": [ false ] }, "admins": { "$id": "#/properties/authenticationProps/properties/admins", "type": "array", "title": "The admins schema", "items": { "anyOf": [ { "$id": "#/properties/authenticationProps/properties/admins/items/anyOf/0", "type": "object", "title": "The first anyOf schema", "examples": [ { "provenance": "Local AAA", "group": "pronghorn_admin" } ], "properties": { "provenance": { "$id": "#/properties/authenticationProps/properties/admins/items/anyOf/0/properties/provenance", "type": "string", "title": "The provenance schema", "examples": [ "Local AAA" ] }, "group": { "$id": "#/properties/authenticationProps/properties/admins/items/anyOf/0/properties/group", "type": "string", "title": "The group schema", "examples": [ "pronghorn_admin" ] } }, "required": [ "provenance", "group" ], "additionalProperties": true } ], "$id": "#/properties/authenticationProps/properties/admins/items" }, "additionalItems": true } }, "required": [ "uniqueSession", "admins" ], "additionalProperties": true }, "expressProps": { "$id": "#/properties/expressProps", "type": "object", "title": "The expressProps schema", "properties": { "cacheControl": { "$id": "#/properties/expressProps/properties/cacheControl", "type": "boolean", "title": "The cacheControl schema", "examples": [ false ] }, "description": { "$id": "#/properties/expressProps/properties/description", "type": "string", "title": "The description schema", "examples": [ "Express Server" ] }, "express_http": { "$id": "#/properties/expressProps/properties/express_http", "type": "object", "title": "The express_http schema", "properties": { "enable": { "$id": "#/properties/expressProps/properties/express_http/properties/enable", "type": "boolean", "title": "The enable schema", "examples": [ true ] }, "port": { "$id": "#/properties/expressProps/properties/express_http/properties/port", "type": "integer", "title": "The port schema", "examples": [ 3000 ] } }, "required": [ "enable", "port" ], "additionalProperties": true }, "express_https": { "$id": "#/properties/expressProps/properties/express_https", "type": "object", "title": "The express_https schema", "properties": { "enable": { "$id": "#/properties/expressProps/properties/express_https/properties/enable", "type": "boolean", "title": "The enable schema", "examples": [ true ] }, "port": { "$id": "#/properties/expressProps/properties/express_https/properties/port", "type": "integer", "title": "The port schema", "examples": [ 3443 ] }, "key": { "$id": "#/properties/expressProps/properties/express_https/properties/key", "type": "string", "title": "The key schema", "examples": [ "./keys/key.pem" ] }, "cert": { "$id": "#/properties/expressProps/properties/express_https/properties/cert", "type": "string", "title": "The cert schema", "examples": [ "./keys/cert.pem" ] }, "secureProtocol": { "$id": "#/properties/expressProps/properties/express_https/properties/secureProtocol", "type": "string", "title": "The secureProtocol schema", "examples": [ "TLSv1_2_method" ] }, "client_reneg_limit": { "$id": "#/properties/expressProps/properties/express_https/properties/client_reneg_limit", "type": "integer", "title": "The client_reneg_limit schema", "examples": [ 1 ] }, "client_reneg_window": { "$id": "#/properties/expressProps/properties/express_https/properties/client_reneg_window", "type": "integer", "title": "The client_reneg_window schema", "examples": [ 600 ] } }, "required": [ "enable", "port", "key", "cert", "secureProtocol", "client_reneg_limit", "client_reneg_window" ], "additionalProperties": true } }, "required": [ "express_http", "express_https" ], "additionalProperties": true }, "loggerProps": { "$id": "#/services/loggerProps", "type": "object", "properties": { "description": { "$id": "#/services/loggerProps/properties/description", "type": "string", "description": "The description property", "title": "Description", "default": "Logger Settings", "examples": [ "Logging" ] }, "log_directory": { "$id": "#/services/loggerProps/properties/log_directory", "type": "string", "title": "Directory", "description": "The directory to store Pronghorn log files.", "default": "/var/log/pronghorn", "examples": [ "/var/log/pronghorn" ] }, "log_filename": { "$id": "#/services/loggerProps/properties/log_filename", "type": "string", "description": "The name of the current Pronghorn log file.", "title": "Filename", "default": "pronghorn.log", "examples": [ "pronghorn.log" ] }, "log_max_file_size": { "$id": "#/services/loggerProps/properties/log_max_file_size", "type": "integer", "title": "Max File Size", "description": "The maximum size of each Pronghorn log file in bytes.", "default": 1048576, "examples": [ 1048576 ] }, "log_max_files": { "$id": "#/services/loggerProps/properties/log_max_files", "type": "integer", "description": "The maximum number of log files maintained on the server.", "title": "Max Number of Files", "default": 100, "examples": [ 100 ] }, "log_timezone_offset": { "$id": "#/services/loggerProps/properties/log_timezone_offset", "type": "integer", "description": "An integer specifying the offset from GMT/UTC time that will be used when writing to the log files.", "title": "Timezone Offset", "default": 0, "examples": [ -5 ], "minimum": -12, "maximum": 12 }, "log_level": { "$ref": "#/definitions/log_level" }, "console_level": { "$ref": "#/definitions/log_level" }, "syslog": { "$id": "#/services/loggerProps/syslog", "type": "object", "description": "The syslog properties allow Pronghorn to send log messages to a local or remote syslog daemon.", "properties": { "level": { "$ref": "#/definitions/sys_log_level" }, "host": { "$id": "#/services/loggerProps/properties/syslog/properties/host", "type": "string", "description": "The host running syslogd.", "title": "Host", "default": "localhost", "examples": [ "localhost" ] }, "port": { "$id": "#/services/loggerProps/properties/syslog/properties/port", "type": "integer", "description": "The port on the host that syslog is running on.", "title": "Port", "default": 514, "minimum": 1, "maximum": 65535, "examples": [ 514 ] }, "protocol": { "$id": "#/services/loggerProps/properties/syslog/properties/protocol", "type": "string", "title": "Protocol", "description": "The network protocol to log over. Can be one of tcp4, udp4, unix or unix-connect.", "default": "udp4", "examples": [ "udp4" ], "enum": [ "tcp4", "udp4", "unix", "unix-connect" ] }, "facility": { "$id": "#/services/loggerProps/properties/syslog/properties/facility", "type": "string", "description": "Syslog facility to use.", "title": "Facility", "default": "local0", "examples": [ "local0" ] }, "type": { "$id": "#/services/loggerProps/properties/syslog/properties/type", "type": "string", "title": "Type", "description": "The type of syslog protocol to use. Possible values are BSD and 5424.", "default": "BSD", "examples": [ "5424" ], "enum": [ "BSD", "5424" ] }, "path": { "$id": "#/services/loggerProps/properties/syslog/properties/path", "type": "string", "title": "Path", "description": "The path to the syslog dgram socket (i.e. /dev/log or /var/run/syslog for OS X).If path is used, host, port and protocol do not need to be configured.", "default": "", "format": "uri-reference", "examples": [ "/dev/log" ] }, "pid": { "$id": "#/services/loggerProps/properties/syslog/properties/pid", "type": "string", "description": "Process identifier (PID) of the process that log messages are coming from (Default is process.pid).", "title": "Process Id", "default": "process.pid", "examples": [ "process.pid" ] }, "localhost": { "$id": "#/services/loggerProps/properties/syslog/properties/localhost", "type": "string", "description": "Host to indicate that log messages are coming from.", "title": "Log Host", "default": "", "examples": [ "localhost" ] }, "app_name": { "$id": "#/services/loggerProps/properties/syslog/properties/app_name", "type": "string", "description": "The name of the application.", "title": "Application Name", "default": "", "examples": [ "process.title" ] }, "eol": { "$id": "#/services/loggerProps/properties/syslog/properties/eol", "type": "string", "title": "End of Line Character", "description": "The end of line character to be added to the end of the message.", "default": "", "examples": [ "CR" ] } }, "allOf": [ { "required": [ "level", "facility", "type" ] }, { "anyOf": [ { "required": [ "host", "port", "protocol" ] }, { "required": [ "path" ] } ] } ], "additionalProperties": false } }, "required": [ "log_max_files", "log_max_file_size", "log_level", "log_directory", "log_filename", "console_level" ], "additionalProperties": false }, "redisProps": { "$id": "#/properties/redisProps", "type": "object", "title": "The redisProps schema", "properties": { "host": { "$id": "/properties/redisProps/properties/host", "type": "string", "description": "The ip or hostname of the server running the redis service.", "title": "Host", "default": "localhost", "format": "hostname", "examples": [ "127.0.0.1", "localhost" ] }, "port": { "$id": "#/properties/redisProps/properties/port", "type": "integer", "title": "The port schema", "examples": [ 6379 ] }, "db": { "$id": "/properties/redisProps/properties/db", "type": "integer", "description": "The redis database number to connect to (may be any of 0-15).", "title": "Database Number", "default": 0, "examples": [ 0 ], "minimum": 0, "maximum": 15 }, "password": { "$id": "/properties/redisProps/properties/password", "type": "string", "title": "Password", "default": "", "description": "The passphrase protecting access to the redis db.", "examples": [ "$ENC87eb897b507afc1796db49409dd1251c87872e85afd2469e" ] }, "sentinels": { "$id": "/properties/redisProps/properties/sentinels", "type": "array", "title": "Sentinels", "items": { "$id": "/properties/redisProps/properties/sentinels/items", "type": "object", "properties": { "host": { "$id": "/properties/redisProps/properties/sentinels/items/properties/host", "type": "string", "title": "The redis host", "default": "localhost", "examples": [ "localhost" ] }, "port": { "$id": "/properties/redisProps/properties/sentinels/items/properties/port", "type": "integer", "title": "The redis port", "default": 0, "examples": [ 26379 ] } } }, "default": [], "description": "List of redis hosts for sentinel configuration." }, "name": { "$id": "/properties/redisProps/properties/name", "type": "string", "title": "Name", "default": "mymaster", "description": "Name of the master node in the redis sentinel group." } }, "oneOf": [ { "required": [ "host", "port" ] }, { "required": [ "sentinels", "name" ] } ], "additionalProperties": true }, "auditProps": { "$id": "#/properties/auditProps", "type": "object", "title": "The auditProps schema", "properties": { "description": { "$id": "#/properties/auditProps/properties/description", "type": "string", "title": "The description schema", "examples": [ "Audit" ] }, "audit": { "$id": "#/properties/auditProps/properties/audit", "type": "boolean", "title": "The audit schema", "examples": [ true ] }, "brokerValidation": { "$id": "#/properties/auditProps/properties/brokerValidation", "type": "boolean", "title": "The brokerValidation schema", "examples": [ true ] } }, "required": [ "audit", "brokerValidation" ], "additionalProperties": true }, "pathProps": { "$id": "#/properties/pathProps", "type": "object", "title": "The pathProps schema", "properties": { "description": { "$id": "#/properties/pathProps/properties/description", "type": "string", "title": "The description schema", "examples": [ "File Path Variables" ] }, "encrypted": { "$id": "#/properties/pathProps/properties/encrypted", "type": "boolean", "title": "The encrypted schema", "examples": [ false ] } }, "required": [ "encrypted" ], "additionalProperties": true }, "alarmProps": { "$id": "#/properties/alarmProps", "type": "object", "title": "The alarmProps schema", "properties": { "ip": { "$id": "#/properties/alarmProps/properties/ip", "type": "string", "title": "The ip schema", "examples": [ "127.0.0.1" ] }, "community": { "$id": "#/properties/alarmProps/properties/community", "type": "string", "title": "The community schema", "examples": [ "public" ] }, "properties": { "$id": "#/properties/alarmProps/properties/properties", "type": "object", "title": "The properties schema", "properties": { "port": { "$id": "#/properties/alarmProps/properties/properties/properties/port", "type": "integer", "title": "The port schema", "examples": [ 161 ] }, "retries": { "$id": "#/properties/alarmProps/properties/properties/properties/retries", "type": "integer", "title": "The retries schema", "examples": [ 1 ] }, "timeout": { "$id": "#/properties/alarmProps/properties/properties/properties/timeout", "type": "integer", "title": "The timeout schema", "examples": [ 5000 ] }, "transport": { "$id": "#/properties/alarmProps/properties/properties/properties/transport", "type": "string", "title": "The transport schema", "examples": [ "udp4" ] }, "trapPort": { "$id": "#/properties/alarmProps/properties/properties/properties/trapPort", "type": "integer", "title": "The trapPort schema", "examples": [ 162 ] }, "version": { "$id": "#/properties/alarmProps/properties/properties/properties/version", "type": "string", "title": "The version schema", "examples": [ "V1" ] } }, "required": [ "port", "retries", "timeout", "transport", "trapPort", "version" ], "additionalProperties": true }, "type": { "$id": "#/properties/alarmProps/properties/type", "type": "string", "title": "The type schema", "examples": [ "trap" ] } }, "required": [ "ip", "community", "properties", "type" ], "additionalProperties": true }, "id": { "$id": "#/properties/id", "type": "string", "title": "The id schema", "examples": [ "profile1" ] }, "services": { "$id": "#/properties/services", "type": "array", "title": "The services schema", "items": { "anyOf": [ { "$id": "#/properties/services/items/anyOf/0", "type": "string", "title": "The first anyOf schema", "examples": [ "WorkflowBuilder", "FormBuilder" ] } ], "$id": "#/properties/services/items" }, "additionalItems": true }, "description": { "$id": "#/properties/description", "type": "string", "title": "The description schema", "examples": [ "An IAP Profile" ] }, "rabbitmq": { "$id": "#/services/rabbitmq", "type": "object", "properties": { "protocol": { "$id": "#/services/rabbitmq/properties/protocol", "type": "string", "default": "amqp", "description": "The protocol used by rabbitmq", "examples": [ "amqp" ] }, "hosts": { "$id": "#/services/rabbitmq/properties/hosts", "type": "array", "title": "Hosts", "default": "rabbitmq", "description": "The hosts used by rabbitmq", "items": { "$id": "#/properties/rabbitmq/hosts/items", "type": "string" } }, "port": { "$id": "#/services/rabbitmq/properties/port", "type": "integer", "description": "HTTP port", "minimum": 1, "maximum": 65535 }, "username": { "$id": "#/services/rabbitmq/properties/username", "type": "string", "default": "", "description": "The username used to validate rabbitmq", "examples": [ "guest" ] }, "password": { "$id": "#/services/rabbitmq/properties/password", "type": "string", "default": "", "description": "The password used to validate rabbitmq", "examples": [ "guest" ] }, "locale": { "$id": "#/services/rabbitmq/properties/locale", "type": "string", "default": "en_US", "description": "The locale used by rabbitmq", "examples": [ "en_US" ] }, "frameMax": { "$id": "#/services/rabbitmq/properties/frameMax", "type": "integer", "default": 0, "description": "The maximum number of frames for rabbitmq", "examples": [ 0 ] }, "heartbeat": { "$id": "#/services/rabbitmq/properties/heartbeat", "type": "integer", "default": 0, "description": "The heartbeat for rabbitmq", "examples": [ 0 ] }, "vhost": { "$id": "#/services/rabbitmq/properties/vhost", "type": "string", "default": "/", "description": "The vhost used by rabbitmq", "examples": [ "/" ] } }, "required": [ "protocol", "hosts", "port", "username", "password", "locale", "frameMax", "heartbeat", "vhost" ] }, "adapterStrategy": { "$id": "#/properties/adapterStrategy", "type": "object", "title": "The adapterStrategy schema", "properties": { "device": { "$id": "#/properties/adapterStrategy/properties/device", "type": "object", "title": "The device schema", "properties": { "adapterTypes": { "$id": "#/properties/adapterStrategy/properties/device/properties/adapterTypes", "type": "array", "title": "The adapterTypes schema", "examples": [ [] ], "items": { "$id": "#/properties/adapterStrategy/properties/device/properties/adapterTypes/items", "type": "string", "enum": [ "NSO", "AutomationGateway" ] }, "additionalItems": true }, "exceptions": { "$id": "#/properties/adapterStrategy/properties/device/properties/exceptions", "type": "object", "title": "The exceptions schema", "properties": { "runCommand": { "$id": "#/properties/adapterStrategy/properties/device/properties/exceptions/properties/runCommand", "type": "string", "title": "The runCommand schema", "examples": [ "" ], "enum": [ "", "NSO", "AutomationGateway" ] } }, "required": [ "runCommand" ], "additionalProperties": true } }, "required": [ "adapterTypes" ], "additionalProperties": true } }, "required": [ "device" ], "additionalProperties": true }, "systemProps": { "$id": "#/properties/systemProps", "type": "object", "title": "System Properties", "description": "Properties used to configure IAP process.", "properties": { "integrationsThreadCount": { "$id": "/properties/systemProps/integrationsThreadCount", "type": "integer", "title": "Integrations Thread Count", "default": 5, "minimum": 1, "maximum": 16, "description": "The number of threads available for API requests.", "examples": [ 5 ] } }, "required": [ "integrationsThreadCount" ] }, "retryStrategy": { "$id": "#/properties/retryStrategy", "type": "object", "title": "Strategy for service level retry on service crash", "description": "Properties used to configure the strategy services use on crash.", "properties": { "maxRetries": { "$id": "/properties/retryStrategy/maxRetries", "type": "integer", "title": "Max Retries", "default": 10, "minimum": 1, "description": "Specifies the amount of times services will retry on crash before stopping.", "examples": [ 5 ] }, "retryResetTimer": { "$id": "/properties/retryStrategy/retryResetTimer", "type": "integer", "title": "Retry Reset Timer", "default": 60000, "minimum": 0, "description": "Specifies the amount of times between each retry before the count will reset in milliseconds.", "examples": [ 30000 ] } }, "required": [ "maxRetries", "retryResetTimer" ] } }, "required": [ "applicationProps", "uiProps", "authenticationProps", "expressProps", "loggerProps", "redisProps", "auditProps", "pathProps", "alarmProps", "id", "services", "description", "rabbitmq", "adapterStrategy", "systemProps", "retryStrategy" ], "additionalProperties": false, "definitions": { "log_level": { "$id": "#/services/log_level", "type": "string", "examples": [ "error", "warn", "info", "debug", "trace", "spam" ], "enum": [ "error", "warn", "info", "debug", "trace", "spam" ] }, "sys_log_level": { "$id": "#/services/sys_log_level", "type": "string", "examples": [ "debug", "info", "warning", "warn", "error" ], "enum": [ "debug", "info", "warning", "warn", "error" ] } } }