12 lines
1.8 KiB
JSON
12 lines
1.8 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://freecad.org/schemas/freecad-web-cam-save-reopen-v1.json",
|
|
"oneOf": [{ "$ref": "#/$defs/request" }, { "$ref": "#/$defs/result" }, { "$ref": "#/$defs/error" }, { "$ref": "#/$defs/cancel" }],
|
|
"$defs": {
|
|
"request": { "type": "object", "required": ["schema", "version", "kind", "requestId", "command", "payload"], "properties": { "schema": { "const": "freecad-web-facade/v1" }, "version": { "const": 1 }, "kind": { "const": "request" }, "requestId": { "type": "string" }, "command": { "const": "cam.saveReopen" }, "payload": { "type": "object", "required": ["schema", "module", "path"] } }, "additionalProperties": true },
|
|
"result": { "type": "object", "required": ["schema", "version", "kind", "requestId", "result"], "properties": { "schema": { "const": "freecad-web-facade/v1" }, "version": { "const": 1 }, "kind": { "const": "result" }, "requestId": { "type": "string" }, "result": { "type": "object", "required": ["schema", "module", "action", "format", "path", "objectCount", "objectType", "roundTrip", "hasError"] } }, "additionalProperties": true },
|
|
"error": { "type": "object", "required": ["schema", "version", "kind", "requestId", "error"], "properties": { "schema": { "const": "freecad-web-facade/v1" }, "version": { "const": 1 }, "kind": { "const": "error" }, "requestId": { "type": "string" }, "error": { "type": "object", "required": ["code", "message"] } }, "additionalProperties": true },
|
|
"cancel": { "type": "object", "required": ["schema", "version", "kind", "requestId", "cancelOf"], "properties": { "schema": { "const": "freecad-web-facade/v1" }, "version": { "const": 1 }, "kind": { "const": "cancel" }, "requestId": { "type": "string" }, "cancelOf": { "type": "string" } }, "additionalProperties": true }
|
|
}
|
|
}
|