{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://velox.dev/schema/methods/download.refreshUrl.schema.json", "title": "download.refreshUrl", "description": "IDM's 'Refresh Download Address'. Point an existing task at a freshly-issued URL when a signed link has expired, keeping every byte already on disk. The daemon re-probes and compares size and validator: if they still match, the transfer resumes from where it stopped; if they do not, it says so rather than silently restarting.", "x-privileged": false, "x-transports": ["uds", "ws"], "x-deadlineMs": 30000, "x-errors": [-32010, -32013], "type": "object", "properties": { "params": { "type": "object", "additionalProperties": false, "required": ["taskId", "url"], "properties": { "taskId": { "type": "string", "format": "uuid" }, "url": { "type": "string", "format": "uri" }, "headers": { "oneOf": [{ "$ref": "https://velox.dev/schema/types/Headers.schema.json" }, { "type": "null" }] }, "cookies": { "type": ["array", "null"], "items": { "$ref": "https://velox.dev/schema/types/Cookie.schema.json" } } } }, "result": { "type": "object", "additionalProperties": false, "required": ["ok", "resumable", "contentChanged"], "properties": { "ok": { "type": "boolean" }, "resumable": { "type": "boolean" }, "contentChanged": { "type": "boolean", "description": "true when size or validator differ from what was recorded. The GUI must ask before restarting from zero — never discard bytes without consent." }, "sizeBytes": { "type": ["integer", "null"], "minimum": 0 }, "effectiveUrl": { "type": ["string", "null"], "format": "uri" } } } } }