diff --git a/lib/routes/api/applications.js b/lib/routes/api/applications.js index 6020bec..50e0d3a 100644 --- a/lib/routes/api/applications.js +++ b/lib/routes/api/applications.js @@ -101,6 +101,20 @@ async function validateUpdate(req, sid) { if (req.body.call_status_hook && typeof req.body.call_hook !== 'object') { throw new DbErrorBadRequest('\'call_status_hook\' must be an object when updating an application'); } + + let urlError; + if (req.body.call_hook) { + urlError = await isInvalidUrl(req.body.call_hook.url); + if (urlError) { + throw new DbErrorBadRequest(`call_hook ${urlError}`); + } + } + if (req.body.call_status_hook) { + urlError = await isInvalidUrl(req.body.call_status_hook.url); + if (urlError) { + throw new DbErrorBadRequest(`call_status_hook ${urlError}`); + } + } } async function validateDelete(req, sid) { @@ -290,9 +304,6 @@ router.put('/:sid', async(req, res) => { obj[`${prop}_sid`] = sid; } } - else { - obj[`${prop}_sid`] = null; - } delete obj[prop]; }