{
	"$schema": "https://apidocs.iqrf.org/iqrf-gateway-daemon/latest/com.iqrftech.self-desc/schema/jsonschema/1-0-0#",
	"self": {
		"vendor": "com.iqrftech.self-desc",
		"name": "iqmeshNetwork_OtaUpload-request",
		"format": "jsonschema",
		"version": "1-0-0"
	},
	"type": "object",
	"required": [
		"mType",
		"data"
	],
	"additionalProperties": false,
	"properties": {
		"mType": {
			"type": "string",
			"description": "IQMESH Network management - Upload hex or iqrf file request.",
			"enum": [
				"iqmeshNetwork_OtaUpload"
			]
		},
		"data": {
			"type": "object",
			"required": [
				"msgId",
				"req"
			],
			"additionalProperties": false,
			"properties": {
				"msgId": {
					"type": "string",
					"description": "Message identification for binding request with response."
				},
				"repeat": {
					"type": "integer",
					"description": "Number of repetitions of DPA messages.",
					"default": 1
				},
				"req": {
					"type": "object",
					"required": [
						"deviceAddr",
						"fileName",
						"startMemAddr",
						"loadingAction"
					],
					"additionalProperties": false,
					"properties": {
						"deviceAddr": {
							"type": "integer",
							"description": "Device address to write the hex or iqrf file."
						},
						"hwpId": {
							"type": "integer",
							"description": "Hardware profile ID of the devices to write the hex or iqrf file."
						},
						"fileName": {
							"type": "string",
							"description": "Full name of file with source code to load."
						},
						"startMemAddr": {
							"type": "integer",
							"description": "Start address on which will be the data saved into memory."
						},
						"loadingAction": {
							"type": "string",
							"description": "Loading action - WithoutCodeLoading, WithCodeLoading."
						},
						"uploadEepromData": {
							"type": "boolean",
							"description": "Upload internal eeprom data from hex file."
						},
						"uploadEeepromData": {
							"type": "boolean",
							"description": "Upload external eeprom data from hex file."
						}
					}
				},
				"returnVerbose": {
					"type": "boolean",
					"description": "Flag that includes additional parameters in the response."
				}
			}
		}
	}
}