{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://velox.dev/schema/methods/rules.upsert.schema.json", "title": "rules.upsert", "description": "Create, replace, or delete rules in one atomic write. 'upsert' carries the rules to store and 'remove' the ruleIds to drop; applying both at once means a reprioritisation never leaves the table in a half-valid state.", "x-privileged": true, "x-transports": [ "uds" ], "x-deadlineMs": 5000, "x-errors": [ -32003 ], "type": "object", "properties": { "params": { "type": "object", "additionalProperties": false, "required": [ "upsert" ], "properties": { "upsert": { "type": "array", "items": { "$ref": "https://velox.dev/schema/types/Rule.schema.json" } }, "remove": { "type": [ "array", "null" ], "items": { "type": "string" } } } }, "result": { "type": "object", "additionalProperties": false, "description": "The full table after the write, in priority order.", "required": [ "items" ], "properties": { "items": { "type": "array", "items": { "$ref": "https://velox.dev/schema/types/Rule.schema.json" } } } } } }